/*
 FusionCharts JavaScript Library
 Copyright FusionCharts Technologies LLP
 License Information at <http://www.fusioncharts.com/license>

 @version 3.12.2
 FusionCharts JavaScript Library
 Copyright FusionCharts Technologies LLP
 License Information at <http://www.fusioncharts.com/license>

 @version 3.12.2
 FusionCharts JavaScript Library
 Copyright FusionCharts Technologies LLP
 License Information at <http://www.fusioncharts.com/license>
 FusionCharts JavaScript Library - KDtree
 Copyright FusionCharts Technologies LLP
 License Information at <http://www.fusioncharts.com/license>

 @version 3.12.2
*/
(function(Ab,Rb){"object"===typeof module&&module.exports?module.exports=Ab.document?Rb(Ab):function(Q){if(!Q.document)throw Error("Window with document not present");return Rb(Q,!0)}:Ab.FusionCharts=Rb(Ab,!0)})("undefined"!==typeof window?window:this,function(Ab,Rb){"undefined"===typeof Ab&&"object"===typeof window&&(Ab=window);var Q=function(b){if(b.FusionCharts&&b.FusionCharts.version)return b.FusionCharts;var v=b.document,J=b.navigator,C={window:b},H=C.modules={},A=C.interpreters={},u=Object.prototype.toString,
a=/msie/i.test(J.userAgent)&&!b.opera,O=/loaded|complete/,q=!1,M=function(){var a=C.ready;C.ready=!0;C.raiseEvent&&(C.readyNotified=!0,C.raiseEvent("ready",{version:C.core.version,now:!a},C.core));C.readyNow=!a},U=function(a,b){var r,k;if(b instanceof Array)for(r=0;r<b.length;r+=1)"object"!==typeof b[r]?a[r]=b[r]:("object"!==typeof a[r]&&(a[r]=b[r]instanceof Array?[]:{}),U(a[r],b[r]));else for(r in b)"object"===typeof b[r]?(k=u.call(b[r]),"[object Object]"===k?("object"!==typeof a[r]&&(a[r]={}),U(a[r],
b[r])):"[object Array]"===k?(a[r]instanceof Array||(a[r]=[]),U(a[r],b[r])):a[r]=b[r]):a[r]=b[r];return a};C.extend=function(a,b,r,k){var m;r&&a.prototype&&(a=a.prototype);if(!0===k)U(a,b);else for(m in b)a[m]=b[m];return a};C.uniqueId=function(){return"chartobject-"+(C.uniqueId.lastId+=1)};C.uniqueId.lastId=0;C.policies={options:{chartTypeSourcePath:["typeSourcePath",""],product:["product","v3"],insertMode:["insertMode","replace"],safeMode:["safeMode",!0],overlayButton:["overlayButton",void 0],containerBackgroundColor:["containerBackgroundColor",
"#ffffff"],containerBackgroundOpacity:["containerBackgroundOpacity",1],containerClassName:["containerClassName","fusioncharts-container"],chartType:["type",void 0],baseChartMessageFont:["baseChartMessageFont","Verdana,sans"],baseChartMessageFontSize:["baseChartMessageFontSize","10"],baseChartMessageColor:["baseChartMessageColor","#666666"],baseChartMessageImageHAlign:["baseChartMessageImageHAlign","middle"],baseChartMessageImageVAlign:["baseChartMessageImageVAlign","middle"],baseChartMessageImageAlpha:["baseChartMessageImageAlpha",
100],baseChartMessageImageScale:["baseChartMessageImageScale",100],dataLoadStartMessage:["dataLoadStartMessage","Retrieving data. Please wait."],dataLoadErrorMessage:["dataLoadErrorMessage","Error in loading data."],dataInvalidMessage:["dataInvalidMessage","Invalid data."],dataEmptyMessage:["dataEmptyMessage","No data to display."],typeNotSupportedMessage:["typeNotSupportedMessage","Chart type not supported."],browserNotSupportedMessage:["browserNotSupportedMessage","This browser is not supported."],
loadMessage:["loadMessage","Loading chart. Please wait."],renderErrorMessage:["renderErrorMessage","Unable to render chart."]},attributes:{lang:["lang","EN"],id:["id",void 0]},width:["width","400"],height:["height","300"],src:["swfUrl",""]};A.stat="swfUrl id width height debugMode registerWithJS backgroundColor scaleMode lang detectFlashVersion autoInstallRedirect".split(" ");C.parsePolicies=function(a,b,r){var k,m,n;for(m in b)if(C.policies[m]instanceof Array)n=r[b[m][0]],a[m]=void 0===n?b[m][1]:
n;else for(k in"object"!==typeof a[m]&&(a[m]={}),b[m])n=r[b[m][k][0]],a[m][k]=void 0===n?b[m][k][1]:n};C.parseCommands=function(a,b,r){var k,m;"string"===typeof b&&(b=A[b]||[]);k=0;for(m=b.length;k<m;k++)a[b[k]]=r[k];return a};C.registrars={module:function(){return C.core.apply(C.core,arguments)}};C.core=function(a){if(!(this instanceof C.core)){if(1===arguments.length&&a instanceof Array&&"private"===a[0]){if(H[a[1]])return;H[a[1]]={};a[3]instanceof Array&&(C.core.version[a[1]]=a[3]);return"function"===
typeof a[2]?a[2].call(C,H[a[1]]):C}if(1===arguments.length&&"string"===typeof a)return C.core.items[a];C.raiseError&&C.raiseError(this,"25081840","run","",new SyntaxError('Use the "new" keyword while creating a new FusionCharts object'))}var b={};this.__state={};1===arguments.length&&"object"===typeof arguments[0]?b=arguments[0]:C.parseCommands(b,A.stat,arguments);1<arguments.length&&"object"===typeof arguments[arguments.length-1]&&(delete b[A.stat[arguments.length-1]],C.extend(b,arguments[arguments.length-
1]));this.id="undefined"===typeof b.id?this.id=C.uniqueId():b.id;this.args=b;C.core.items[this.id]instanceof C.core&&C.raiseWarning(this,"06091847","param","",Error('A FusionCharts object with the specified id "'+this.id+'" already exists. Renaming it to '+(this.id=C.uniqueId())));C.parsePolicies(this,C.policies,b);this.attributes.id=this.id;this.resizeTo&&this.resizeTo(b.width,b.height,!0);this.chartType&&this.chartType(b.type||b.swfUrl,!0);C.raiseEvent("beforeInitialize",b,this);C.core.items[this.id]=
this;C.core.defaultOptions=C.core.options;C.raiseEvent("initialized",b,this);return this};C.core.prototype={};C.core.prototype.constructor=C.core;C.extend(C.core,{id:"FusionCharts",version:["3","12","2"],items:{},options:{},getObjectReference:function(a){return C.core.items[a].ref},register:function(a){return C.registrars[a=a&&a.toString&&a.toString().toLowerCase()]&&C.registrars[a].apply(C.core,Array.prototype.slice.call(arguments,1))},get:function(a){return C.registrars[a=a&&a.toString&&a.toString().toLowerCase()]&&
C.registrars[a].apply(C.core,Array.prototype.slice.call(arguments,1))}});b.FusionCharts=C.core;b.FusionMaps&&b.FusionMaps.legacy&&(C.core(["private","modules.core.geo",b.FusionMaps.legacy,b.FusionMaps.version]),q=!0);O.test(v.readyState)||v.loaded?(C.ready=!0,setTimeout(M,1)):function(){function N(){m||(m=!0,r&&clearTimeout(r),q||(b.FusionMaps&&b.FusionMaps.legacy&&C.core(["private","modules.core.geo",b.FusionMaps.legacy,b.FusionMaps.version]),b.FusionMaps=C.core),setTimeout(M,1))}function E(){O.test(v.readyState)?
N():r=setTimeout(E,10)}var r,k,m;v.addEventListener?v.addEventListener("DOMContentLoaded",N,!1):v.attachEvent&&b.attachEvent("onLoad",N);if(a)try{"https:"===b.location.protocol?v.write('<script id="__ie_onload_fusioncharts" defer="defer" src="//:">\x3c/script>'):v.write('<script id="__ie_onload_fusioncharts" defer="defer" src="javascript:void(0)">\x3c/script>'),k=v.getElementById("__ie_onload_fusioncharts"),k.onreadystatechange=function(){"complete"==this.readyState&&N()}}catch(n){}/WebKit/i.test(J.userAgent)&&
(r=setTimeout(E,10));b.onload=function(a){return function(){N();a&&a.call&&a.call(b)}}(b.onload)}();return b.FusionMaps=C.core}(Ab);Q.register("module",["private","modules.mantle.errormanager",function(){var b=this,v=b.window,J={type:"TypeException",range:"ValueRangeException",impl:"NotImplementedException",param:"ParameterException",run:"RuntimeException",comp:"DesignTimeError",undefined:"UnspecifiedException"},C=function(A,u,a,O,q,M){var C="#"+u+" "+(A?A.id:"unknown-source")+O+" "+M+" >> ";q instanceof
Error?(q.name=J[a],q.module="FusionCharts"+O,q.level=M,q.message=C+q.message,C=q.message,v.setTimeout(function(){throw q;},0)):C+=q;u={id:u,nature:J[a],source:"FusionCharts"+O,message:C};b.raiseEvent(M,u,A);if("function"===typeof v["FC_"+M])v["FC_"+M](u)},H;b.raiseError=function(b,u,a,O,q){C(b,u,a,O,q,"Error")};b.raiseWarning=function(b,u,a,O,q){C(b,u,a,O,q,"Warning")};H={outputHelpers:{text:function(b,u){H.outputTo("#"+b.eventId+" ["+(b.sender.id||b.sender).toString()+'] fired "'+b.eventType+'" event. '+
("error"===b.eventType||"warning"===b.eventType?u.message:""))},event:function(b,u){this.outputTo(b,u)},verbose:function(b,u){H.outputTo(b.eventId,b.sender.id,b.eventType,u)}},outputHandler:function(A,u){"function"!==typeof H.outputTo?b.core["debugger"].outputFailed=!0:(b.core["debugger"].outputFailed=!1,H.currentOutputHelper(A,u))},currentOutputHelper:void 0,outputTo:void 0,enabled:!1};H.currentOutputHelper=H.outputHelpers.text;b.extend(b.core,{"debugger":{syncStateWithCharts:!0,outputFormat:function(b){return b&&
"function"===typeof b.toLowerCase&&"function"===typeof H.outputHelpers[b=b.toLowerCase()]?(H.currentOutputHelper=H.outputHelpers[b],!0):!1},outputTo:function(v){"function"===typeof v?H.outputTo=v:null===v&&(b.core["debugger"].enable(!1),delete H.outputTo)},enable:function(v,u,a){var O;"object"===typeof v&&1===arguments.length&&(O=v,v=O.state,u=O.outputTo,a=O.outputFormat);"function"===typeof v&&("string"!==typeof u||2!==arguments.length&&!O||(a=u),u=v,v=!0);if("boolean"===typeof v&&v!==H.enabled)b.core[(H.enabled=
v)?"addEventListener":"removeEventListener"]("*",H.outputHandler);"function"===typeof u&&(H.outputTo=u);b.core["debugger"].outputFormat(a);return H.enabled},enableFirebugLite:function(){var A;v.console&&v.console.firebug?b.core["debugger"].enable(v.console.log,"verbose"):((A=v.document.getElementsByTagName("html"))&&A[0].setAttribute("debug","true"),b.loadScript("https://getfirebug.com/firebug-lite.js#overrideConsole=false,startOpened=true",function(){b.core["debugger"].enable(v.console.log,"verbose")},
"{ startOpened: true }",!0,!0))}},debugMode:{enabled:function(){v.setTimeout(function(){throw Error("Deprecated! Please use FusionCharts.debugger.enable instead.");},0);return b.core["debugger"].enable.apply(b.core["debugger"],arguments)}}},!1)}]);Q.register("module",["private","modules.renderer.js-schedular",function(){var b=this.core,v=[],J={},C=[],H={},A=0,u=this.window,a=b.schedular={},O=u.requestAnimationFrame||u.webkitRequestAnimationFrame||u.mozRequestAnimationFrame||u.oRequestAnimationFrame||
u.msRequestAnimationFrame||function(a){setTimeout(a,16)},q=function(){var a=(new Date).getTime(),b,N,E;do{a:{b=E;E=N;for(var r=void 0,k=!1,m=void 0,n=void 0;!k;)if(r=v[0]){m=r.fullFrameJob;if(b&&E&&m){b=!1;break a}v.splice(0,1);--C[r.priority];H[r.jobID]&&!r.executed&&(n=k=!0,!b&&0<v.length&&O(q),r.job(),r.executed=!0,delete H[r.jobID])}else k=!0;b={jobFound:n,fullFrameJob:m}}E=!0;N=N||b.fullFrameJob}while(b.jobFound&&15>(new Date).getTime()-a)};a.addJob=function(a,b,N,E){var r,k=0;E=E?b-1:b;"function"===
typeof a&&(r="JOB"+ ++A+(b||1),a={job:a,priority:b,fullFrameJob:N,jobID:r});for(N=0;N<=E;N++)k+=C[N]||0;v.splice(k,0,a);H[r]=a;C[b]=(C[b]||0)+1;1===v.length&&O(q);return r};a.removeJob=function(a){H[a]&&delete H[a]};a.pauseExecution=function(a){if(H[a])J[H[a]]=H[a],delete H[a];else return!1};a.resumeExecution=function(b){var q=J[b];if(q)a.addJob(q),delete J[b];else return!1};b.priorityList={render:1,animation:2,entitydraw:2,label:3,tracker:4,kdTree:4,postRender:5,chartClick:2,chartEvents:1}}]);Q.register("module",
["private","modules.mantle.eventmanager",function(){var b=this,v=b.window,J=b.core,C=J.priorityList,H=J.schedular,A=Object.prototype.toString,u=A.call([]),a=function(a,b,k,m){try{a[0].call(b,k,m||{})}catch(n){setTimeout(function(){throw n;},0)}},O=function(q,r,k){if(q instanceof Array)for(var m=0,n;m<q.length;m+=1){if(q[m][1]===r.sender||void 0===q[m][1])n=q[m][1]===r.sender?r.sender:b.core,a(q[m],n,r,k),!0===r.detached&&(q.splice(m,1),--m,r.detached=!1);if(!0===r.cancelled)break}},q={unpropagator:function(){return!1===
(this.cancelled=!0)},detacher:function(){return!1===(this.detached=!0)},undefaulter:function(){return!1===(this.prevented=!0)},listeners:{},lastEventId:0,addListener:function(a,r,k){var m,n;if(A.call(a)===u){m=[];for(n=0;n<a.length;n+=1)m.push(q.addListener(a[n],r,k));return m}if("string"!==typeof a)b.raiseError(k||b.core,"03091549","param","::EventTarget.addListener",Error("Unspecified Event Type"));else if("function"!==typeof r)b.raiseError(k||b.core,"03091550","param","::EventTarget.addListener",
Error("Invalid Event Listener"));else return a=a.toLowerCase(),q.listeners[a]instanceof Array||(q.listeners[a]=[]),q.listeners[a].push([r,k]),r},removeListener:function(a,r,k){var m;if("function"!==typeof r)b.raiseError(k||b.core,"03091560","param","::EventTarget.removeListener",Error("Invalid Event Listener"));else if(a instanceof Array)for(m=0;m<a.length;m+=1)q.removeListener(a[m],r,k);else if("string"!==typeof a)b.raiseError(k||b.core,"03091559","param","::EventTarget.removeListener",Error("Unspecified Event Type"));
else if(a=a.toLowerCase(),a=q.listeners[a],a instanceof Array)for(m=0;m<a.length;m+=1)a[m][0]===r&&a[m][1]===k&&(a.splice(m,1),--m)},triggerEvent:function(a,r,k,m,n,L){if("string"!==typeof a)b.raiseError(r,"03091602","param","::EventTarget.dispatchEvent",Error("Invalid Event Type"));else{a=a.toLowerCase();var g={eventType:a,eventId:q.lastEventId+=1,sender:r||Error("Orphan Event"),cancelled:!1,stopPropagation:this.unpropagator,prevented:!1,preventDefault:this.undefaulter,detached:!1,detachHandler:this.detacher};
O(q.listeners[a],g,k);O(q.listeners["*"],g,k);switch(g.prevented){case !0:if("function"===typeof L)try{L.call(m||r||v,g,k||{})}catch(l){setTimeout(function(){throw l;},0)}break;default:if("function"===typeof n)try{n.call(m||r||v,g,k||{})}catch(l){setTimeout(function(){throw l;},0)}}return!0}}},M=b.raiseEvent=function(a,b,k,m,n,L){return q.triggerEvent(a,k,b,m,n,L)},U=b.legacyEventList={},N={};b.disposeEvents=function(a){var b,k;for(b in q.listeners)for(k=0;k<q.listeners[b].length;k+=1)q.listeners[b][k][1]===
a&&q.listeners[b].splice(k,1)};b.raiseEventWithLegacy=function(a,b,k,m,n,L,g){var l=U[a];M(a,b,k,n,L,g);l&&"function"===typeof v[l]&&H.addJob(function(){v[l].apply(n||v,m)},C.chartEvents)};b.raiseEventGroup=function(a,b,k,m,n,L,g){var l=m.id,B=a+l;N[B]?(clearTimeout(N[B]),delete N[B]):l&&B?N[B]=H.addJob(function(){M(b,k,m,n,L,g);delete N[B]},C.chartEvents):M(b,k,m,n,L,g)};b.addEventListener=function(a,b){return q.addListener(a,b)};b.removeEventListener=function(a,b){return q.removeListener(a,b)};
b.extend(J,{addEventListener:function(a,b){return q.addListener(a,b)},removeEventListener:function(a,b){return q.removeListener(a,b)},ready:function(a,r,k){b.ready?(J.ready=function(a,n){"function"===typeof a&&setTimeout(function(){a.call(n||J,r||J)},0)},J.ready(a,k)):"function"===typeof a&&J.addEventListener("ready",function(){J.ready(a,r,k)});return this}});J.on=J.addEventListener;b.extend(J.prototype,{addEventListener:function(a,b){return q.addListener(a,b,this)},removeEventListener:function(a,
b){return q.removeListener(a,b,this)}});J.prototype.on=J.prototype.addEventListener;b.policies.options.events=["events",{}];b.addEventListener("beforeInitialize",function(a){a=a.sender;var b=a.options.events,k;if(b)for(k in b)"function"===typeof b[k]&&a.addEventListener(k,b[k])});b.ready&&!b.readyNotified&&(b.readyNotified=!0,b.raiseEvent("ready",{version:b.core.version,now:b.readyNow},b.core))}]);Q.register("module",["private","modules.mantle.ajax",function(){var b=this,v=b.window,J=parseFloat(v.navigator.appVersion.split("MSIE")[1]),
C=5.5<=J&&7>=J?!0:!1,H=/mozilla/i.test(v.navigator.userAgent),A="file:"===v.location.protocol,u=v.ActiveXObject,a=(!u||!A)&&v.XMLHttpRequest,O={objects:0,xhr:0,requests:0,success:0,failure:0,idle:0},q=function(){var b;if(a)return q=function(){O.xhr++;return new a},q();try{b=new u("Msxml2.XMLHTTP"),q=function(){O.xhr++;return new u("Msxml2.XMLHTTP")}}catch(v){try{b=new u("Microsoft.XMLHTTP"),q=function(){O.xhr++;return new u("Microsoft.XMLHTTP")}}catch(N){b=!1}}return b};b.core.ajax={stats:function(a){return a?
O[a]:b.extend({},O)},headers:{"If-Modified-Since":"Sat, 29 Oct 1994 19:43:31 GMT","X-Requested-With":"XMLHttpRequest","X-Requested-By":"FusionCharts",Accept:"text/plain, */*","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}};J=b.ajax=function(a,b){this.onSuccess=a;this.onError=b;this.open=!1;O.objects++;O.idle++};b.extend(J.prototype,{headers:b.core.ajax.headers,transact:function(a,u,N,E){var r=this,k=r.xmlhttp,m=r.headers,n=r.onError,L=r.onSuccess;a="POST"===a;var g,l=Object.prototype.hasOwnProperty,
B;-1!==u.search(/^(http:\/\/|https:\/\/)/)&&v.location.hostname!==/(http:\/\/|https:\/\/)([^\/\:]*)/.exec(u)[2]?delete m["X-Requested-By"]:!l.call(m,"X-Requested-By")&&(m["X-Requested-By"]="FusionCharts");if(!k||C||H)k=q(),r.xmlhttp=k;k.onreadystatechange=function(){try{4===k.readyState&&(!k.status&&A||200<=k.status&&300>k.status||304===k.status||1223===k.status||0===k.status?(L&&L(k.responseText,r,E,u),O.success++):n&&(n(Error("XmlHttprequest Error"),r,E,u),O.failure++),O.idle--,r.open=!1)}catch(a){n&&
n(a,r,E,u),v.FC_DEV_ENVIRONMENT&&setTimeout(function(){throw a;},0),O.failure++}};try{k.open(a?"POST":"GET",u,!0);k.overrideMimeType&&k.overrideMimeType("text/plain");if(a)if("string"===typeof N)g=N;else{g=[];for(B in N)g.push(B+"="+(N[B]+"").replace(/\=/g,"%3D").replace(/\&/g,"%26"));g=g.join("&")}else g=null;for(B in m)k.setRequestHeader(B,m[B]);k.send(g);O.requests++;O.idle++;r.open=!0}catch(e){b.raiseError(b.core,"1110111515A","run","XmlHttprequest Error",e.message)}return k},get:function(a,b){return this.transact("GET",
a,void 0,b)},post:function(a,b,q){return this.transact("POST",a,b,q)},abort:function(){var a=this.xmlhttp;this.open=!1;return a&&"function"===typeof a.abort&&a.readyState&&0!==a.readyState&&a.abort()},dispose:function(){this.open&&this.abort();delete this.onError;delete this.onSuccess;delete this.xmlhttp;delete this.open;O.objects--;return null}})}]);Q.register("module",["private","modules.mantle.runtime;1.1",function(){var b=this,v=b.window,J=/(^|[\/\\])(fusioncharts\.js)([\?#].*)?$/ig,C=/[\\\"<>;&]/,
H=/^[^\S]*?(sf|f|ht)(tp|tps):\/\//i,A={},u={},a={},O={},q=b.purgeDOM=function(a){var b=a.attributes,r,k;if(b)for(r=b.length-1;0<=r;--r)k=b[r].name,"function"===typeof a[k]&&(a[k]=null);if(b=a.childNodes)for(b=b.length,r=0;r<b;r+=1)q(a.childNodes[r])},M=function(a,b,r){var k,m;for(k in a)if(a[k]instanceof Array)b[a[k][0]]=r[k];else for(m in a[k])b[a[k][m][0]]=r[k][m]},U=/^(FusionCharts|FusionWidgets|FusionMaps)/;b.getScriptBaseUri=function(a){var b=v.document.getElementsByTagName("script"),r=b.length,
k,m;for(m=0;m<r;m+=1)if(k=b[m].getAttribute("src"),void 0!==k&&null!==k&&null!==k.match(a))return k.replace(a,"$1")};b.core.options.scriptBaseUri=function(){var a=b.getScriptBaseUri(J);return void 0===a?(b.raiseError(Q,"1603111624","run",">GenericRuntime~scriptBaseUri","Unable to locate FusionCharts script source location (URL)."),""):a}();b.isXSSSafe=function(a,b){return b&&null!==H.exec(a)?!1:null===C.exec(a)};b.xssEncode=function(a){return null===a||void 0===a||"function"!==typeof a.toString?"":
a=a.toString().replace(/&/g,"&amp;").replace(/\'/g,"&#39;").replace(/\"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};b.loadScript=function(q,E,r,k,m){if(!q)return!1;var n=E&&E.success||E,L=E&&E.failure,g,l=b.hcLib,B=l.priorityList,e=l.schedular.addJob,V={type:"script",success:!1},p=function(){O[g]=clearTimeout(O[g]);V.success?n&&n(q,g):L&&L(q,g);b.raiseEvent("externalresourceload",V,b.core)};m=m?"":b.core.options.scriptBaseUri;g=m+q;b.isXSSSafe(g,!1)||(g="function"===typeof v.encodeURIComponent?
v.encodeURIComponent(g):v.escape(g));V.path=m;V.src=g;V.file=q;if(!0===a[g]&&k)return V.success=!0,V.notReloaded=!0,"function"===typeof E&&(E(),b.raiseEvent("externalresourceload",V,b.core)),!0;if(A[g]&&k)return!1;A[g]=!0;u[g]&&u[g].parentNode&&u[g].parentNode.removeChild(u[g]);E=u[g]=v.document.createElement("script");E.type="text/javascript";E.src=g;r&&(E["\v"==="v"?"text":"innerHTML"]=r);"function"===typeof n&&(a[g]=!1,O[g]=clearTimeout(O[g]),E.onload=function(){a[g]=!0;V.success=!0;e(p,B.render)},
E.onerror=function(){a[g]=!1;A[g]=!1;e(p,B.render)},E.onreadystatechange=function(){if("complete"===this.readyState||"loaded"===this.readyState)a[g]=!0,V.success=!0,e(p,B.render)});v.document.getElementsByTagName("head")[0].appendChild(E);"function"===typeof L&&(O[g]=setTimeout(function(){a[g]||p()},b.core.options.html5ResourceLoadTimeout||15E3));return!0};b.capitalizeString=function(a,b){return a?a.replace(b?/(^|\s)([a-z])/g:/(^|\s)([a-z])/,function(a,k,b){return k+b.toUpperCase()}):a};b.extend(b.core,
{clone:function(a,q){var r=typeof a,k,m=b.extend({},this.args,!1,!1);M(b.policies,m,this);M(b.renderer.getRendererPolicy(this.options.renderer),m,this);delete m.id;delete m.animate;delete m.stallLoad;k=m.link;m=b.extend({},m,!1,!1);m.link=k;switch(r){case "object":b.extend(m,a);break;case "boolean":q=a}return q?m:new b.core(m)},isActive:function(){if(!this.ref||v.document.getElementById(this.id)!==this.ref)return!1;try{return U.test(this.ref.signature())}catch(a){return!1}},chartType:function(a,q){var r=
this.src,k=!0===q,m=this.options,n;"string"===typeof a&&(q="object"===typeof q?q:{},r=a.replace(/[\?\#][\s\S]*$/g,""),n=null!==r.match(/\.swf\s*?$/ig),r=r.replace(/\.swf\s*?$/ig,""),m.chartType=r.replace(/^[\s\S]*\//ig,"").replace(/^fcmap_/i,""),m.chartTypeSourcePath=-1===r.indexOf("/")?q.chartTypeSourcePath||this.options.chartTypeSourcePath||b.core.options.chartTypeSourcePath||"":r.replace(/[^\/]*?$/ig,""),this.src=((b.core.options.scriptBaseUri||"")+(m.chartTypeSourcePath||b.core.options.chartTypeSourcePath||
"")).replace(/\/\s*$/g,"")+"/"+m.chartType.replace(/\.swf\s*?$/ig,"")+".swf",n&&(b.raiseWarning(this,"08101320181","comp","FusionCharts#chartType",'Chart type has ".swf" in alias and as such has been deprecated. Please use chart type alias.'),m.chartTypeSourcePath=b.core.options.chartTypeSourcePath||""),void 0!==q.dataSource&&null!==q.dataSource?this.setChartData(q.dataSource,q.dataFormat,q.dataConfiguration):this.isActive()&&!k&&this.render());return(m.chartType||"").toLowerCase()}},!0);v.getChartFromId=
function(a){b.raiseWarning(this,"11133001041","comp","GenericRuntime~getObjectFromId()",'Use of deprecated getChartFromId() or getMapFromId(). Replace with "FusionCharts()" or FusionCharts.items[].');return b.core.items[a]instanceof b.core?b.core.items[a].ref:v.swfobject&&v.swfobject.getObjectById(a)};v.getMapFromId=v.getChartFromId}]);Q.register("module",["private","api.printmanager",function(){var b=this;b.extend(b.core,{printManager:{configure:function(){b.raiseWarning(b.core,"28141714","impl",
".printManager.configure","PrintManager is deprecated")},isReady:function(){b.raiseWarning(b.core,"28141714","impl",".printManager.isReady","PrintManager is deprecated");return!1},enabled:function(){b.raiseWarning(b.core,"28141714","impl",".printManager.enabled","PrintManager is deprecated");return!1},managedPrint:function(){b.raiseWarning(b.core,"28141714","impl",".printManager.managedPrint","PrintManager is deprecated")}}},!1)}]);Q.register("module",["private","modules.interface.renderer",function(){var b=
this,v=b.window,J=v.document,C=v.navigator,H=!(!v.SVGAngle&&!J.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")),A=/trident/i.test(C.userAgent)&&/rv:11/i.test(C.userAgent)&&!v.opera,u=/msie/i.test(C.userAgent)&&!v.opera||A,C=function(){b.raiseError(this,"25081845","run","::RendererManager",Error("No active renderer"))},a=b.FusionChartsDOMInsertModes={REPLACE:"replace",APPEND:"append",PREPEND:"prepend"},O={undefined:{render:C,remove:C,update:C,resize:C,config:C,
policies:{}}},q={},M=function(a){return function(){var k=this.ref;if(void 0===k||null===k||"function"!==typeof k[a])b.raiseError(this,"25081617","run","#"+a+"()","ExternalInterface call failed. Check whether chart has been rendered.");else return k[a].apply(k,arguments)}},U=function(a,k){return"function"===typeof a[k]?function(){return a[k].apply(a,arguments)}:a[k]},N=function(a,k){var g=J.getElementById(a),l=k.id||k.getAttribute("id"),B,e;if(null===g)return!1;if(a===l)return!0;l=k.getElementsByTagName("*");
B=0;for(e=l.length;B<e;B++)if(l[B]===g)return!1;return!0},E=/[^\%\d]*$/ig,r=function(){var a=function(k){var g=k.parentNode;if(!g||9===g.nodeType)return!1;var l="display";v.getComputedStyle?l=v.getComputedStyle(k)[l]:k.currentStyle&&(l=k.currentStyle[l]);return"none"===l?!0:g?a(g):!1};return a}(),k=function(){var a={},k,g=function(){var l=0,B=parseInt(b.core.options.visibilityTrackingInterval,10)||300,e,m,p,q,K;for(e in a)if(l+=1,m=a[e].chart,p=a[e].container,q=a[e].insertMode,K=a[e].callback,m.disposed||
!r(p))delete a[e],--l,!m.disposed&&m.renderChart.call(m,p,q,K);k=l?setTimeout(g,B):clearTimeout(k)};return function(l,B,e,m){a[l.id]={chart:l,container:B,insertMode:e,callback:m};k||(k=setTimeout(g,parseInt(b.core.options.visibilityTrackingInterval,10)||300))}}(),m;b.policies.options.containerElementId=["renderAt",void 0];b.policies.options.renderer=["renderer",void 0];b.policies.options.containerElementType=["containerElementType",void 0];b.policies.options.visibilityTrackingInterval=300;b.normalizeCSSDimension=
function(a,k,g){a=void 0===a?g.offsetWidth||parseFloat(g.style.width):a;k=void 0===k?g.offsetHeight||parseFloat(g.style.height):k;var l={},B=g.style,e;B.width=a=a.toString?a.toString():"0";B.height=k=k.toString?k.toString():"0";if((l.widthIsRelative=a.match(/^\s*\d*\.?\d*\%\s*$/)&&!a.match(/^\s*0\%\s*$/))&&0===g.offsetWidth)for(e=g;e=e.offsetParent;)if(0<e.offsetWidth){a=(e.offsetWidth*parseFloat(a.match(/\d*/)[0])/100).toString();break}if((l.heightIsRelative=k.match(/^\s*\d*\.?\d*\%\s*$/)&&!k.match(/^\s*0\%\s*$/))&&
20>=g.offsetHeight)for(e=g;e=e.offsetParent;)if(0<e.offsetHeight){k=(e.offsetHeight*parseFloat(k.match(/\d*/)[0])/100).toString();break}l.width=a.replace?a.replace(/^\s*(\d*\.?\d*)\s*$/ig,"$1px"):a;l.height=k.replace?k.replace(/^\s*(\d*\.?\d*)\s*$/ig,"$1px"):k;B.width=l.width;B.height=l.height;l.pixelWidth=l.widthIsRelative?g.offsetWidth:parseInt(l.width,10)||0;l.pixelHeight=l.heightIsRelative?g.offsetHeight:parseInt(l.height,10)||0;return l};m=b.renderer={register:function(a,k){if(!a||"function"!==
typeof a.toString)throw Error("#03091436 ~renderer.register() Invalid value for renderer name.");a=a.toString().toLowerCase();if(void 0!==O[a])return b.raiseError(b.core,"03091438","param","::RendererManager>register",'Duplicate renderer name specified in "name"'),!1;O[a]=k;return!0},userSetDefault:!1,setDefault:function(a){if(!a||"function"!==typeof a.toString)return b.raiseError(b.core,"25081731","param","::RendererManager>setDefault",'Invalid renderer name specified in "name"'),!1;if(void 0===
O[a=a.toString().toLowerCase()])return b.raiseError(b.core,"25081733","range","::RendererManager>setDefault","The specified renderer does not exist."),!1;this.userSetDefault=!1;b.policies.options.renderer=["renderer",a];return!0},notifyRender:function(a){var k=b.core.items[a&&a.id];k&&(!1!==a.success||a.silent)||b.raiseError(b.core.items[a.id],"25081850","run","::RendererManager",Error("There was an error rendering the chart. Enable FusionCharts JS debugger for more information."));k.ref=a.ref;b.raiseEvent("internal.DOMElementCreated",
{},k)},protectedMethods:{options:!0,attributes:!0,src:!0,ref:!0,constructor:!0,signature:!0,link:!0,addEventListener:!0,removeEventListener:!0},getRenderer:function(a){return O[a]},getRendererPolicy:function(a){a=O[a].policies;return"object"===typeof a?a:{}},currentRendererName:function(){return b.policies.options.renderer[1]},update:function(a){q[a.id].update.apply(a,Array.prototype.slice.call(arguments,1))},render:function(a){q[a.id].render.apply(a,Array.prototype.slice.call(arguments,1))},remove:function(a){q[a.id].remove.apply(a,
Array.prototype.slice.call(arguments,1))},resize:function(a){q[a.id].resize.apply(a,Array.prototype.slice.call(arguments,1))},config:function(a){q[a.id].config.apply(a,Array.prototype.slice.call(arguments,1))},dispose:function(a){q[a.id].dispose.apply(a,Array.prototype.slice.call(arguments,1))}};b.addEventListener("beforeInitialize",function(a){a=a.sender;var k=a.options.renderer.toLowerCase(),g;"string"===typeof a.options.renderer&&void 0===O[k]&&(a.options.renderer=b.policies.options.renderer[1]);
a.options.renderer=k;q[a.id]=O[a.options.renderer];!0!==q[a.id].initialized&&"function"===typeof q[a.id].init&&(q[a.id].init(),q[a.id].initialized=!0);b.parsePolicies(a,q[a.id].policies||{},a.args);for(g in q[a.id].prototype)a[g]=q[a.id].prototype[g];for(g in q[a.id].events)a.addEventListener(g,q[a.id].events[g])});b.addEventListener(["rendered","dataloaderror","nodatatodisplay","rendercancelled"],function(a,k){var g=a.sender;g instanceof b.core&&g.__state&&g.__state.rendering&&(b.raiseEvent("internal.rendered",
k,g),delete g.__state.rendering)});b.addEventListener("loaded",function(a){var k=a.sender;a=a.sender.ref;var g,l;if(void 0!==a&&null!==a&&"function"===typeof a.getExternalInterfaceMethods){try{g=a.getExternalInterfaceMethods(),g="string"===typeof g?g.split(","):[]}catch(B){g=[],b.raiseError(k,"13111126041","run","RendererManager^Loaded",Error("Error while retrieving data from the chart-object."+(B.message&&0<=B.message.indexOf("NPObject")?" Possible cross-domain security restriction.":"")))}for(a=
0;a<g.length;a+=1)l=g[a],void 0===k[l]&&(k[l]=M(l));if(k.ref)for(l in g=m.protectedMethods,a=m.getRenderer(k.options.renderer).protectedMethods,k)if(a&&!g[l]&&!a[l]&&void 0===k.ref[l])try{k.ref[l]=U(k,l)}catch(B){}}});b.legacyEventList.resized="FC_Resized";b.extend(b.core.prototype,{render:function(a,m,g){g?"function"!==typeof g&&(g=void 0):"function"===typeof m?(g=m,m=void 0):m||"function"!==typeof a||(g=a,a=void 0);void 0===a&&(a=this.options.containerElementId||this.options.containerElement);"string"===
typeof a&&(a=J.getElementById(a));if(void 0===a||null===a)return b.raiseError(this,"03091456","run",".render()",Error("Unable to find the container DOM element.")),this;r(a)?k(this,a,m,g):this.renderChart(a,m,g);return this},renderChart:function(k,m,g){var l=this,B,e,r,p;if(!this.disposed){if((r=v[this.id])&&r.FusionCharts&&r.FusionCharts===this||(r=this.ref)&&r.FusionCharts&&r.FusionCharts===this)b.renderer.dispose(this),r===v[this.id]&&(v[this.id]=void 0);void 0!==v[this.id]&&b.raiseError(this,
"25081843","comp",".render",Error("#25081843:IECompatibility() Chart Id is same as a JavaScript variable name. Variable naming error. Please use unique name forchart JS variable, chart-id and container id."));g?"function"!==typeof g&&(g=void 0):"function"===typeof m?(g=m,m=void 0):m||"function"!==typeof k||(g=k,k=void 0);m=(m||this.options.insertMode).toLowerCase()||a.REPLACE;void 0===k&&(k=this.options.containerElementId);"string"===typeof k&&(k=J.getElementById(k));if(void 0===k||null===k)return b.raiseError(this,
"03091456","run",".render()",Error("Unable to find the container DOM element.")),this;if(N(this.id,k))return b.raiseError(this,"05102109","run",".render()",Error("A duplicate object already exists with the specific Id: "+this.id)),this;B=J.createElement(this.options.containerElementType||"span");B.setAttribute("id",this.id);(p=J.getElementById("fusioncharts-tooltip-element"))&&J.body.appendChild(p);if("append"!==m&&"prepend"!==m)for(;k.hasChildNodes();)k.removeChild(k.firstChild);"prepend"===m&&k.firstChild?
k.insertBefore(B,k.firstChild):k.appendChild(B);this.options.containerElement=k;this.options.containerElementId=k.id;if(m=B.style)m.position="relative",m.textAlign="left",m.lineHeight="normal",m.display="inline-block",m.zoom="1",m["vertical-align"]="middle",m.fontWeight="normal",m.fontVariant="normal",m.fontStyle="normal",m.textDecoration="none",m["*DISPLAY"]="inline",m.padding="0",m.margin="0",m.border="none",m.direction="ltr",u&&H&&(m["-ms-touch-action"]="none");this.options.containerClassName&&
(B.className=this.options.containerClassName);m=b.normalizeCSSDimension(this.width,this.height,B);this.__state.renderedWidth=m.pixelWidth;this.__state.renderedHeight=m.pixelHeight;this.__state.rendering=!0;b.raiseEvent("beforeRender",e={container:k,width:this.width,height:this.height,renderer:this.options.renderer},this,void 0,function(a,e){!0!==this.disposed&&b.renderer.render(l,B,function(){b.renderer.notifyRender.apply(this,arguments);if(g)try{g.call(a.sender,e.container)}catch(l){setTimeout(function(){throw l;
})}})},function(){b.raiseEvent("renderCancelled",e,l)});return this}},remove:function(){b.renderer.remove(this);return this},resizeTo:function(a,k,g){var l=this,B=l.width,e=l.height,m=l.__state;(l.apiInstance&&l.apiInstance.config||{}).resize=!0;"object"===typeof a&&(g=k,k=a.h,a=a.w);a=null===a||void 0===a?B:a.toString().replace(E,"");k=null===k||void 0===k?e:k.toString().replace(E,"");!0!==g?b.raiseEvent("beforeresize",{currentWidth:B,currentHeight:e,newWidth:a,newHeight:k},l,void 0,function(){l.width=
a;l.height=k;b.renderer.resize(l,{width:a,height:k});b.raiseEventWithLegacy("resized",{width:l.width,height:l.height,prevWidth:B,prevHeight:e,pixelWidth:l.ref&&l.ref.offsetWidth||0,pixelHeight:l.ref&&l.ref.offsetHeight||0,originalWidth:m.renderedWidth,originalHeight:m.renderedHeight},l,[l.id,l.width,l.height])},function(){b.raiseEvent("resizecancelled",{currentWidth:B,currentHeight:e,cancelledTargetWidth:a,cancelledTargetHeight:k},l)}):(l.width=a,l.height=k);return this},dispose:function(){var a=
this,k={};b.raiseEvent("beforeDispose",k,a,void 0,function(){b.renderer.dispose(a);b.raiseEvent("disposed",k,a);b.disposeEvents(a);delete b.core.items[a.id];for(var g in a)a.hasOwnProperty(g)&&delete a[g];a.disposed=!0},function(){b.raiseEvent("disposeCancelled",k,a)})},configure:function(a,k){var g;a&&("string"===typeof a?(g={},g[a]=k):g=a,b.renderer.config(this,g))}});b.extend(b.core,{setCurrentRenderer:function(){var a=m.setDefault.apply(m,arguments);m.userSetDefault=!0;return a},getCurrentRenderer:function(){return m.currentRendererName.apply(m,
arguments)},render:function(a,k){return a instanceof b.core?(a.render(k),a):(new b.core(a)).render(k)}},!1)}]);Q.register("module",["private","modules.interface.transcoder",function(){var b=this,v=b.window,J=b.transcoders={},C={},H={},A=/url$/i,u=b._interactiveCharts={selectscatter:[!0,!1],dragcolumn2d:[!0,!0],dragarea:[!0,!0],dragline:[!0,!0],dragnode:[!0,!0]},a=function(a,m,n,L){var g=n.obj;n=n.args;n.dataSource=a;n.xmlHttpRequestObject=m;n.source="XmlHttpRequest";n.url=L;b.raiseEvent("dataLoadRequestCompleted",
n,g,void 0,q,M)},O=function(a,m,n){var L=n.obj;n=n.args;n.error=a;n.httpStatus=m.xhr&&m.xhr.status?m.xhr.status:-1;n.xmlHttpRequestObject=m;b.raiseEvent("dataLoadError",n,L);"function"===typeof v.FC_DataLoadError&&v.FC_DataLoadError(L.id,n)},q=function(a,b){a.sender.setChartData(b.dataSource,b.dataFormat,b.config,b.successcallback,b.silent)},M=function(a,m){b.raiseEvent("dataLoadCancelled",m,a.sender);m.xmlHttpRequestObject.abort()},U=function(k,m){var n=k.sender,L=n.__state,g=m.url;n.options.dataSource=
m.url;L.dhmXhrObj||(L.dhmXhrObj=new b.ajax(a,O));L.dhmXhrObj.get("function"===typeof v.decodeURIComponent?v.decodeURIComponent(g):v.unescape(g),{obj:n,args:m})},N=function(a,m){var n=a.sender,L=n.__state;b.raiseEvent("dataLoadRequestCancelled",m,n);L&&L.dhmXhrObj&&L.dhmXhrObj.abort()},E=function(a,m){var n=a.sender,L=n.__state,g=n.id;C[g]=m;H[g]&&delete H[g];H[g]={};L.dataReady=void 0;L.dataAvailable=!0;!0!==m.silent&&(!0!==n.options.safeMode||!0!==L.rendering||n.isActive()?(delete L.args,b.renderer.update(n,
m)):(L.updatePending=m,b.raiseWarning(n,"23091255","run","::DataHandler~update","Renderer update was postponed due to async loading.")));b.raiseEvent("dataUpdated",m,n,void 0,m.successcallback)},r=function(a,m){b.raiseEvent("dataUpdateCancelled",m,a.sender,void 0,m.failurecallback)};b.dataFormats={};b.policies.options.dataSource=["dataSource",void 0];b.policies.options.dataFormat=["dataFormat",void 0];b.policies.options.dataConfiguration=["dataConfiguration",void 0];b.policies.options.showDataLoadingMessage=
["showDataLoadingMessage",!1];b.addDataHandler=function(a,m){if("string"!==typeof a||void 0!==J[a.toLowerCase()])b.raiseError(b.core,"03091606","param","::DataManager.addDataHandler",Error("Invalid Data Handler Name"));else{var n={},L=a.toLowerCase();J[L]=m;m.name=a;n["set"+a+"Data"]=function(g,l,B){return this.setChartData(g,a,l,B)};m.transportable&&(n["set"+a+"Url"]=function(g,l,B){return this.setChartDataUrl(g,a,l,B)},b.dataFormats[a+"URL"]=L+"Url");n["get"+a+"Data"]=function(){return this.getChartData(a)};
b.dataFormats[a]=L;b.extend(b.core,n,!0)}};b.extend(b.core.prototype,{setChartDataUrl:function(a,m,n,L,g){if(void 0===m||null===m||"function"!==typeof m.toString)m=this.options.dataFormat,b.raiseWarning(this,"03091609","param","FusionCharts#setChartDataUrl","Invalid Data Format. Reverting to current data format - "+m);m=m.toString().toLowerCase();m=A.test(m)?m.slice(0,-3):m;b.raiseEvent("dataLoadRequested",{source:"XmlHttpRequest",url:a,dataFormat:m,silent:!!g,config:n,successcallback:L},this,void 0,
U,N)},setChartData:function(a,m,n,L,g){var l=this.options,B,e;if(void 0===m||null===m||"function"!==typeof m.toString)m=l.dataFormat,b.raiseWarning(this,"03091610","param","FusionCharts#setChartData","Invalid Data Format. Reverting to current data format - "+m);m=m.toString().toLowerCase();A.test(m)?this.setChartDataUrl(a,m,n,L,g):(l.dataSource=a,B=m,l.dataFormat=m,e=J[B],"undefined"===typeof e?b.raiseError(b.core,"03091611","param","FusionCharts#setChartData",Error("Data Format not recognized")):
(m=(m=b.renderer&&b.renderer.getRenderer(l.renderer||b.renderer.currentRendererName()))&&m.dataFormat,n=m===B?e.passthrough?e.passthrough(a,n,l.chartType):{data:a}:e.encode(a,this,n||l.dataConfiguration)||{},n["native"]=m===B,n.format=n["native"]?m:"xml",n.dataFormat=B,n.dataSource=a,n.silent=!!g,"function"===typeof L&&(n.successcallback=L),b.raiseEvent("beforeDataUpdate",n,this,void 0,E,r)))},getChartData:function(a,m){var n=this.options,L=this.id,g;if(void 0===a||"function"!==typeof a.toString||
void 0===(g=J[a=a.toString().toLowerCase()]))b.raiseError(this,"25081543","param","::transcoder~getChartData()",Error('Unrecognized data-format specified in "format"'));else return H[L][a]&&(H[L][a]=null),H[L][a]?n=H[L][a]:C[L]?(a===C[L].format?H[L][a]=C[L]:(H[L].xml||(H[L].xml="xml"===C[L].format?C[L]:J[C[L].format].encode(C[L].data,this,n.dataConfiguration)),H[L][a]||(H[L][a]=g.decode(H[L].xml.data,this,n.dataConfiguration))),n=H[L][a]):n={error:Error("Data not defined")},!0===!!m?n:n.data},dataReady:function(a){return a?
this.__state.dataAvailable:this.__state.dataReady}});b.extend(b.core,{transcodeData:function(a,m,n,L,g){if(m&&"function"===typeof m.toString&&n&&"function"===typeof n.toString&&void 0!==J[n=n.toString().toLowerCase()]&&void 0!==J[m=m.toString().toLowerCase()])return a=J[m].encode(a,this,g),m=J[n].decode(a.data,this,g,m),m.error instanceof Error||(m.error=a.error),L?m:m.data;b.raiseError(this,"14090217","param",".transcodeData()",Error("Unrecognized data-format specified during transcoding."))}},!1);
b.getRenderer&&!b.getRenderer("flash")||b.addEventListener("DataLoadRequested",function(a){var b=a.sender;b.options&&"flash"===b.options.renderer&&b.options.useLegacyXMLTransport&&a.preventDefault()});b.addEventListener("beforeInitialize",function(a){a=a.sender;var m=a.options,n=m.dataSource,L=b.renderer&&b.renderer.getRenderer(m.renderer);delete C[a.id];H[a.id]={};if(void 0!==n&&null!==n){a.__state.dataSetDuringConstruction=!0;if("string"!==typeof m.dataFormat)switch(typeof n){case "function":n=
m.dataSource=n.call(a,m.dataConfiguration);m.dataFormat="JSON";break;case "string":m.dataFormat=/^\s*?\{[\s\S]*\}\s*?$/g.test(a.options.dataFormat)?"JSON":"XML";break;case "object":m.dataFormat="JSON"}m.dataFormat&&m.dataFormat.toString&&(a.__state.dataFetchDuringConstruction=A.test(m.dataFormat.toString()));a.setChartData(n,m.dataFormat,void 0,void 0,!0)}else L&&(a.__state.dataSetDuringConstruction=!1,b.raiseWarning(a,"1810131922A","param",":dataHandler~event:beforeInitialize","Data source was not defined during construction, hence set to blank renderer default - "+
L.dataFormat),a.setChartData("",L.dataFormat,void 0,void 0,!0),a.__state.dataAvailable=!1)});b.addEventListener("beforeDispose",function(a){var b=a.sender;delete C[a.sender.id];delete H[a.sender.id];b&&b.__state&&b.__state.dhmXhrObj&&b.__state.dhmXhrObj.abort()});b.addEventListener("disposed",function(a){delete H[a.sender.id]});b.addEventListener("loaded",function(a){a=a.sender;var m=a.__state.updatePending;a instanceof b.core&&void 0!==m&&(delete a.__state.updatePending,b.renderer.update(a,m))});
b.addEventListener("dataUpdated",function(a,m){var n=a.sender,L=n.__state;L.rendering&&(L.dataFetchDuringConstruction||L.updatePending)&&(delete L.dataFetchDuringConstruction,delete L.updatePending,b.renderer.update(n,m))});b.addEventListener(["dataLoadError","dataInvalid"],function(a){a.sender.__state.dataAvailable=!1});b.addEventListener("loaded",function(a){a=a.sender;var m=a.__state,n,L,g;g=function(a,g){return function(e){return!1===e?g.apply(this):this.ref.getUpdatedXMLData?b.core.transcodeData(this.ref.getUpdatedXMLData(),
"xml",a):this.getData?this.getData(a):g.apply(this)}};if(a.chartType&&u[a.chartType()]&&u[a.chartType()][0]){for(n in b.transcoders)L=b.transcoders[n].name,L="get"+L+"Data",a[L]=g(n,a.constructor.prototype[L]),a[L]._dynamicdatarouter=!0;m.dynamicDataRoutingEnabled=!0}else if(m.dynamicDataRoutingEnabled){for(n in b.transcoders)L=b.transcoders[n].name,L="get"+L+"Data",a.hasOwnProperty(L)&&a[L]._dynamicdatarouter&&delete a[L];m.dynamicDataRoutingEnabled=!1}})}]);Q.register("module",["private","modules.data.json",
function(){var b=this,v=b.window,J=v.document,C=b.xssEncode,H,A,u=function(a){var b,q;for(b in a)a.hasOwnProperty(b)&&(q=b.toLowerCase(),b!==q&&(a[q]=a[b],delete a[b]),"object"===typeof a[q]&&"data"!==q&&u(a[q]))};void 0===v.JSON&&b.raiseError(this,"1113062012","run","JSONDataHandler",Error("Could not find library support for JSON parsing."));b.policies.options.allowIESafeXMLParsing=["_allowIESafeXMLParsing",!0];H=function(){var a={set:!0,trendlines:!0,vtrendlines:!0,line:{trendlines:!0,vtrendlines:!0},
data:!0,dataset:!0,lineset:!0,categories:!0,category:!0,tasks:!0,linkeddata:!0,application:!0,definition:!0,axis:!0,connectors:!0,connector:{connectors:!0},trendset:!0,row:{rows:!0},column:{columns:!0},label:{labels:!0},color:{colorrange:!0},dial:{dials:!0},pointer:{pointers:!0},point:{trendpoints:!0},process:{processes:!0},task:{tasks:!0},milestone:{milestones:!0},datacolumn:{datatable:!0},text:{datacolumn:!0},item:{legend:!0},alert:{alerts:!0},groups:{annotations:!0},items:{groups:!0,data:!0},shapes:!0,
shape:{shapes:!0},entitydef:!0,entity:{entitydef:!0}},O={chart:"linkedchart",map:"linkedmap",set:"data",vline:{chart:"data",graph:"data",dataset:"data",categories:"category",linkedchart:"data"},apply:{application:"application"},style:{definition:"definition"},marker:{application:"application",definition:"definition",data:"items"},entity:{entitydef:"entitydef",data:"data"},shape:{shapes:"shapes"},connector:{connectors:{chart:"connector",linkedchart:"connector",map:"connectors",linkedmap:"connectors"}},
annotationgroup:{annotations:"groups"},annotation:{groups:"items"}},q={vline:{vline:"true"}},M={chart:!0,map:!0,graph:!0},u={dataset:"data",categories:"category"},N={target:"target",value:"value"},E={styles:{definition:!0,application:!0},chart:{value:!0,target:!0},graph:{value:!0,target:!0},linkedchart:{value:!0,target:!0},markers:{definition:!0,application:!0,shapes:!0,connectors:!0,data:!0},map:{entitydef:!0,data:!0},linkedmap:{entitydef:!0,data:!0}},r,k,m;r={append:function(k,b,g,l){!a[g]||!0!==
a[g]&&!0!==a[g][l]?b[g]=k:(b[g]instanceof Array||(b[g]=[]),b[g].push(k))},child:function(a,k,g,l){var B,e,m,p,T,K;for(B=0;B<k.length;B+=1)switch(m=k[B],e=m.nodeName.toLowerCase(),m.nodeType){case 1:p=r.attr(m.attributes);K=M[e];!0===K&&(T=p,p={},p[e]=T);K=q[e];"object"===typeof K&&b.extend(p,K);if(K=O[e])if("object"===typeof K&&"object"===typeof K[g])for(T in T=void 0,K[g]){if(l[T]){e=K[g][T];break}}else"object"===typeof K&&"string"===typeof K[g]?e=K[g]:"string"===typeof K&&(e=K);m.childNodes.length&&
((K=E[g])&&K[e]?r.child(a,m.childNodes,e,l):r.child(p,m.childNodes,e,l));(K=E[g])&&K[e]||r.append(p,a,e,g);break;case 3:if(K=N[g])e=K,p=m.data,r.append(p,a,e,g);K=u[g];"string"===typeof K&&l.chart&&parseInt(l.chart.compactdatamode,10)&&(e=K,p=m.data,a[e]=a[e]?a[e]+p:p)}},attr:function(a){var k,g={};if(!a||!a.length)return g;for(k=0;k<a.length;k+=1)"xml"===m&&(a[k].value?a[k].value=a[k].value.replace(/</g,"&lt;").replace(/>/g,"&gt;"):a[k].nodeValue&&(a[k].nodeValue=a[k].nodeValue.replace(/</g,"&lt;").replace(/>/g,
"&gt;"))),g[a[k].nodeName.toLowerCase()]=a[k].value||a[k].nodeValue;return g}};k=function(a){var m={},g,l,B,e,V,p,q,K,t;if("object"!==typeof a&&a&&"function"!==typeof a.toString)return k.errorObject=new TypeError("xml2json.parse()"),m;a=a.toString().replace(/<\!--[\s\S]*?--\x3e/g,"").replace(/<\?xml[\s\S]*?\?>/ig,"").replace(/&(?!([^;\n\r]+?;))/g,"&amp;$1");a=a.replace(/^\s\s*/,"");for(var Z=/\s/,P=a.length;Z.test(a.charAt(--P)););a=a.slice(0,P+1);if(!a)return m;try{v.DOMParser?g=(new v.DOMParser).parseFromString(a,
"text/xml"):J.body&&b.core.options.allowIESafeXMLParsing?(l=J.createElement("xml"),l.innerHTML=a,J.body.appendChild(l),g=l.XMLDocument,J.body.removeChild(l)):(g=new v.ActiveXObject("Microsoft.XMLDOM"),g.async="false",g.loadXML(a));if(!(g&&g.childNodes&&1===g.childNodes.length&&(B=g.childNodes[0])&&B.nodeName&&(e=B.nodeName.toLowerCase()))||"chart"!==e&&"map"!==e&&"graph"!==e)return k.errorObject=new TypeError("xml2json.parse()"),m;if("graph"===e){V=g.createElement("chart");for(t=(q=B.attributes)&&
q.length||0;t--;)V.setAttribute(q[t].name,q[t].value),q.removeNamedItem(q[t].name);if(t=(K=B.childNodes)&&K.length||0)--t,p=B.removeChild(K[t]),V.appendChild(p);for(;t--;)p=B.removeChild(K[t]),V.insertBefore(p,V.firstChild);g.replaceChild(V,B);B=V}}catch(S){k.errorObject=S}B?(B.attributes&&(m[e]=r.attr(B.attributes)),B.childNodes&&r.child(m,B.childNodes,e,m),delete k.errorObject):k.errorObject=new TypeError("xml2json.parse()");return m};return function(a){delete k.errorObject;m=arguments[arguments.length-
1];return{data:k(a),error:k.errorObject}}}();A=function(){var a,b;a={items:{explode:{data:"set",groups:{annotations:"annotationgroup"},items:{groups:"annotation"}},text:{chart:{target:"target",value:"value"},graph:{target:"target",value:"value"}},dsv:{dataset:{data:"dataset"},categories:{category:"categories"}},attr:{chart:{chart:"chart"},graph:{graph:"graph"},map:{map:"map"},linkedmap:{map:"map"},linkedchart:{chart:"chart"}},group:{styles:{definition:"style",application:"apply"},map:{data:"entity",
entitydef:"entity"},markers:{definition:"marker",application:"marker",shapes:"shape",connectors:"connector",items:"marker"}},tag:{markers:{items:"data"}}},qualify:function(a,b,O){return"object"===typeof this.items[a][O]?this.items[a][O][b]:this.items[a][O]}};b=function(q,M,u,N){var E="",r="",k="",m="",n,L,g;M&&"function"===typeof M.toLowerCase&&(M=M.toLowerCase());if(void 0===u&&q[M])for(n in q[M])L=n.toLowerCase(),"compactdatamode"===L&&(N.applyDSV=1==q[M][n]);if(q instanceof Array)for(n=0;n<q.length;n+=
1)k="string"===typeof q[n]?k+C(q[n]):k+b(q[n],M,u,N);else{for(n in q)L=n.toLowerCase().replace(/[`~!@#$%^&*()|+\=?;:'", <>\{\}\[\]\\\/]/gi,""),q[n]instanceof Array&&(g=a.qualify("group",L,M))?(k=a.qualify("tag",L,M)||L,r+="<"+k+">"+b(q[n],g,M,N)+"</"+k+">"):"object"===typeof q[n]?(g=a.qualify("attr",L,M))?(m=b(q[n],g,M,N).replace(/\s*\/\>/ig,""),M=L):r+=b(q[n],L,M,N):N.applyDSV&&(g=a.qualify("dsv",L,M))?r+=q[n]:(g=a.qualify("text",L,M))?(k=a.qualify("tag",L,M)||g,r+="<"+k+">"+q[n]+"</"+k+">"):"vline"===
L&&q[n]?M="vline":E+=" "+L+'="'+C(q[n]).toString().replace(/\"/ig,"&quot;")+'"';if(g=a.qualify("explode",u,M))M=g;k=M;k=(""!==m?m:"<"+k)+E+(""!==r?">"+r+"</"+k+">":" />")}return k};return function(a){delete b.errorObject;if(a&&"string"===typeof a)try{a=JSON.parse(a)}catch(M){b.errorObject=M}return{data:b(a,a&&a.graph?"graph":a&&a.map?"map":"chart",void 0,{}),error:b.errorObject}}}();b.addDataHandler("JSON",{encode:A,decode:H,passthrough:function(a,b,q){b={data:{}};q=!!/zoomscatter/ig.test(q);if(!a)return b;
if("string"!==typeof a)try{a=JSON.stringify(a)}catch(M){return b.error=M,b}try{q?(b.data=JSON.parse(a),u(b.data)):b.data=JSON.parse(a.replace(/"([^"]+)"[\s]*:/g,function(a,b){return'"'+b.toLowerCase()+'":'}))}catch(M){console.log(M),b.error=M}return b},transportable:!0})}]);Q.register("module",["private","modules.data.xml",function(){var b=function(b){return{data:b,error:void 0}};this.addDataHandler("XML",{encode:b,decode:b,transportable:!0})}]);Q.register("module",["private","modules.data.csv",function(){var b=
this,v=b.window,J=b.core,C=v.parseInt,H=v.parseFloat,A=function(a){return a},u;u=function(a){this.data=[];this.columnCount=this.rowCount=0;this.configure(a)};u.decodeLiterals=function(a,b){return void 0!==a&&null!==a&&a.toString?a.replace("{tab}","\t").replace("{quot}",'"').replace("{apos}","'"):b};u.prototype.set=function(a,b,q){var M;if(this.rowCount<=a){for(M=this.rowCount;M<=a;M+=1)this.data[M]=[];this.rowCount=a+1}this.columnCount<=b&&(this.columnCount=b+1);this.data[a][b]=q};u.prototype.setRow=
function(a,b){var q;if(this.rowCount<=a){for(q=this.rowCount;q<=a;q+=1)this.data[q]=[];this.rowCount=a+1}this.columnCount<b.length&&(this.columnCount=b.length);this.data[a]=b};u.prototype.get=function(a,b){var q=this.data;return q[a]&&q[a][b]};u.prototype.configure=function(a){var b=u.decodeLiterals;this.delimiter=b(a.delimiter,",");this.qualifier=b(a.qualifier,'"');this.eolCharacter=b(a.eolCharacter,"\r\n");this.numberFormatted=!!C(a.numberFormatted,0)};u.prototype.clear=function(){this.data=[];
this.columnCount=this.rowCount=0};u.prototype.toString=function(){var a,b,q="";for(a=0;a<this.rowCount;a+=1)b=this.qualifier+this.data[a].join(this.qualifier+this.delimiter+this.qualifier)+this.qualifier,q+='""'===b?this.eolCharacter:b+this.eolCharacter;0<this.rowCount&&(q=q.slice(0,q.length-2));return q};b.addDataHandler("CSV",{encode:function(a,u){b.raiseError(u,"0604111215","run","::CSVDataHandler.encode()","FusionCharts CSV data-handler only supports encoding of data.");throw Error("FeatureNotSupportedException()");
},decode:function(a,b){var q=J.transcodeData(a,"xml","json")||{},M=b.jsVars,v=M&&M.instanceAPI,N=v&&v.components,E,r,k,m,n,L,g=q.chart||q.map||q.graph||{},l=!!g.exporterrorcolumns,B=q.categories&&q.categories[0]&&q.categories[0].category||[],e=q.map&&!q.chart||M&&M.instanceAPI&&"geo"===M.instanceAPI.defaultSeriesType,V=!1,p=!1,T=!1,K=!1,t=!1,Z=A,P={},S,z,R,w,F,X,h,d,f,c;k=0;var D=-1,G;E=new u({separator:g.exportdataseparator,qualifier:g.exportdataqualifier,numberFormatted:g.exportdataformattedval});
J.formatNumber&&E.numberFormatted&&(Z=function(c,d){return J.formatNumber(c,g,d)});if(e)for(r in P.geo=!0,B=(e=N&&M.instanceAPI.components.dataset&&M.instanceAPI.components.dataset[0])&&e.components.data||[],E.setRow(0,["Id"," Short Name","Long Name","Value","Formatted Value"]),M=0,B)p=B[r],c=p.config,e=c.cleanValue,!0!==p.hidden&&E.setRow(++M,[r,c.shortLabel,c.label,null===e?"":e,c.formattedValue]);else if(void 0!==(S=q.dials&&q.dials.dial||q.pointers&&q.pointers.pointer||q.value))if(P.gauge=!0,
"string"===typeof S)E.set(0,0,Z(S)),P.singlevalue=!0,"string"===typeof q.target&&(E.set(0,1,Z(q.target)),P.bullet=!0);else for(E.setRow(0,["Id","Value"]),P.multivalue=!0,M=0,L=1,n=S.length;M<n;M+=1,L+=1)E.setRow(L,[L,Z(S[M].value)]);else if(S=q.dataset||!(q.data instanceof Array)&&[]){P.multiseries=!0;k=1;if(z=q.lineset)S=S.concat(z),P.lineset=!0;if(R=q.axis)S=S.concat(R),P.multiaxis=!0;e=v.defaultDatasetType&&v.defaultDatasetType.toLowerCase();"dragnode"!==e&&"dragcolumn"!==e&&"dragline"!==e&&"dragarea"!==
e||!v.getJSONData||(S=v.getJSONData().dataset);X=S.length;F=B.length;if(!(X=S.length)){for(M=0;M<F;M+=1)h=B[M],E.set(M+1,0,h.label||h.name);P.multilevel=!0}for(M=0;M<X;M+=1)for(d=S,d[M].dataset?(d=d[M].dataset,m=0,w=d.length):(d=S,m=M,w=m+1);m<w&&!V&&!T;m+=1)if(t=d[m],D++,!(N&&N.dataset&&N.dataset[D]&&!1===N.dataset[D].visible)){G=(e=N&&N.dataset&&N.dataset[D])&&e.config&&e.config.parentYAxis;E.set(0,k,t.seriesname);"string"===typeof t.data&&(P.compactdata=!0,t.data=t.data.split(g.dataseparator||
"|"));L=n=0;for(f=t.data&&t.data.length||0;n<f||n<F;n+=1){h=B[n];r=L+1;e=t.data&&t.data[L]||{};if(void 0!==e.x&&void 0!==e.y){V=P.xy=!0;break}if(void 0!==e.open||void 0!==e.high||void 0!==e.close||void 0!==e.low){K=P.ohlc=!0;break}if(void 0!==e.rowid&&void 0!==e.columnid){T=P.heatmap=!0;break}if(n<F&&!h.vline){E.set(r,0,h.label||h.name);h=H(e?e.value:"");h=isNaN(h)?"":Z(h,G);E.set(r,k,h);if(p||l||e.errorvalue)p||E.set(0,k+1,"Error"),c=1,E.set(r,k+1,Z(e.errorvalue));L+=1}}c&&(k+=c,c=0);k+=1}z&&(S=
S.slice(0,-z.length));R&&(S=S.slice(0,-R.length))}else if(S=q.data){E.set(0,1,g.yaxisname||"Value");P.singleseries=!0;t="1"==g.showsumatend;M=0;for(F=S.length;M<F;M+=1)e=S[M],e.vline||(h=H(e.value?e.value:""),E.setRow(M+1,[e.label||e.name,isNaN(h)?"":(k+=h,Z(h))]));t&&(P.summation=!0,E.setRow(M+1,[g.sumlabel||"Total",Z(k)]))}if(K)for(E.clear(),E.setRow(0,["Open","Close","High","Low"]),M=0,r=1,S=q.dataset,w=S.length;M<w;M+=1)for(n=0,t=S[M]&&S[M].data||[],X=t.length;n<X;n+=1,r+=1)e=t[n]||{},E.setRow(n+
1,[Z(e.open),Z(e.close),Z(e.high),Z(e.low)]);else if(V)for(E.clear(),p=!1,c=0,E.setRow(0,["Series","x","y"]),M=0,r=1,S=q.dataset,w=S.length;M<w;M+=1){if(!(N&&N.dataset&&N.dataset[M]&&!1===N.dataset[M].visible))for(e=v.defaultDatasetType&&v.defaultDatasetType.toLowerCase(),"dragnode"===e&&v.getJSONData&&(S=v.getJSONData().dataset),n=0,t=S[M]&&S[M].data||[],X=t.length;n<X;n+=1,r+=1){e=t[n]||{};h=[S[M].seriesname,Z(e.x),Z(e.y)];void 0!==e.z&&(h.push(Z(e.z)),c||(E.set(0,3,"z"),c=1));if(p||l||void 0!==
e.errorvalue||void 0!==e.horizontalerrorvalue||void 0!==e.verticalerrorvalue)q=Z(e.errorvalue),h.push(e.errorvalue,void 0===e.horizontalerrorvalue?q:Z(e.horizontalerrorvalue),void 0===e.verticalerrorvalue?q:Z(e.verticalerrorvalue)),p||(E.set(0,c+3,"Error"),E.set(0,c+4,"Horizontal Error"),E.set(0,c+5,"Vertical Error")),p=P.error=!0;E.setRow(r,h)}}else if(T){E.clear();l={};V={};M=0;n=1;B=q.rows&&q.rows.row||[];for(v=B.length;M<v;M+=1,n+=1)h=B[M],h.id&&(l[h.id.toLowerCase()]=n,E.set(n,0,h.label||h.id));
M=0;n=1;B=q.columns&&q.columns.column||[];for(v=B.length;M<v;M+=1,n+=1)h=B[M],h.id&&(V[h.id.toLowerCase()]=n,E.set(0,n,h.label||h.id));t=q.dataset&&q.dataset[0]&&q.dataset[0].data||[];N=N&&N.dataset&&N.dataset[0]&&N.dataset[0].components&&N.dataset[0].components.data||[];M=0;for(v=t.length;M<v;M+=1)e=t[M],r=e.rowid.toLowerCase(),k=e.columnid.toLowerCase(),N[M]&&!1===N[M].visible||(l[r]||(l[r]=E.rowCount,E.set(E.rowCount,0,e.rowid)),V[k]||(V[k]=E.columnCount,E.set(0,E.columnCount,e.columnid)),E.set(l[r],
V[k],Z(e.value)))}S=B=z=R=null;0<E.rowCount&&void 0===E.get(0,0)&&E.set(0,0,g.xaxisname||"Label");return{data:E.toString(),error:void 0,predictedFormat:P}},transportable:!1});J.addEventListener("Loaded",function(a){a=a.sender;"javascript"!==a.options.renderer||a.getDataAsCSV||(a.getDataAsCSV=a.ref.getDataAsCSV=a.getCSVData)})}]);Q.register("module",["private","modules.renderer.js",function(){var b=this,v=b.window,J=v.document,C=b.core.options,H=/msie/i.test(v.navigator.userAgent)&&!v.opera,A=!(!v.SVGAngle&&
!J.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")),u=function(){},a=b.hcLib={cmdQueue:[]},O=a.moduleCmdQueue={base:[],charts:[],powercharts:[],widgets:[],maps:[]},q=a.moduleDependencies={},M=a.moduleMeta={base:"fusioncharts.js",charts:"fusioncharts.charts.js",powercharts:"fusioncharts.powercharts.js",widgets:"fusioncharts.widgets.js",maps:"fusioncharts.maps.js"},U={},N=a.getMetaSentence=function(){var a={};return function(g){g=g&&g.replace(/(^\s*)|(\s*$)/g,"")||
"";return a[g]||(a[g]={key:g,subject:g.replace(/[^\/]*?$/ig,""),predicate:g.replace(/^.*\//ig,"")})}}(),E=a.getDependentModuleName=function(a){var g=[],e,b;a=N(a).predicate;for(e in q)void 0!==(b=q[e][a])&&(g[b]=e);return g},r=a.hasModule=function(a){var g,e;if(a instanceof Array){g=0;for(e=a.length;g<e;g+=1)if(!b.modules["modules.renderer.js-"+N(a[g]).predicate])return!1;return!0}return!!b.modules["modules.renderer.js-"+N(a).predicate]},k=a.loadModule=function(a,g,e,k){a instanceof Array||(a=[a]);
var p=a.length,m=0,K;K=function(){if(m>=p)g&&g();else{var t=a[m],n=t&&t.match(/[^\/]*$/i)[0],P=M[t];m+=1;if(t){if(r(n)){K();return}if(U[n]){b.raiseError(k||b.core,"1112201445A","run","JavaScriptRenderer~loadModule() ","required resources are absent or blocked from loading.");e&&e(n);return}}else e&&e(n);t=b.core.options["html5"+b.capitalizeString(n)+"Src"];b.loadScript(void 0===t?P:t,{success:function(){r(n)?K():e&&e(n)},failure:e&&function(){e(n)}},void 0,!0)}};K()},m=a.executeWaitingCommands=function(a){for(var g;g=
a.shift();)"object"===typeof g&&u[g.cmd].apply(g.obj,g.args)},n=function(a){delete a.sender.jsVars._reflowData;a.sender.jsVars._reflowData={};delete a.sender.jsVars._reflowClean},L=function(){var a=function(){};a.prototype={LoadDataErrorText:"Error in loading data.",XMLLoadingText:"Retrieving data. Please wait",InvalidXMLText:"Invalid data.",ChartNoDataText:"No data to display.",ReadingDataText:"Reading data. Please wait",ChartNotSupported:"Chart type not supported.",PBarLoadingText:"",LoadingText:"Loading chart. Please wait",
RenderChartErrorText:"Unable to render chart."};return a.prototype.constructor=a}(),g=a.getContainerBackgroundColor=function(l){l=l.chartInstance;var g=l.options,e=g.containerBackgroundColor,g=g.containerBackgroundOpacity,b=l.jsVars.transparent;void 0!==b&&null!==b?g=l.jsVars.transparent?0:1:(g=parseFloat(g),0>g?g=0:1<g&&(g=1));e||(e="#ffffff");if(H&&!A)return g?e:"transparent";e=e.replace(/^#?([a-f0-9]+)/ig,"$1");e=a.graphics.HEXtoRGB(e);e[3]=g.toString();return"rgba("+e.join(",")+")"};a.injectModuleDependency=
function(l,g,e){var b=!1,k=N(l).subject;l=N(l).predicate;g=void 0===g?l:N(g).predicate;q[l]||(q[l]={},O[l]||(O[l]=[],a.moduleMeta[l]=k+C.html5ScriptNamePrefix+(g&&g.replace&&g.replace(/^[\s\S]*\//ig,"").replace(/\?/g,"%3F").replace(/\#/g,"%23").replace(/\:/g,"%3A")||"")+C.html5ScriptNameSuffix),b=!0);q[l][g]=e||0;return b};a.needsModule=function(l,g){l=N(l).predicate;g=N(g).predicate;return void 0!==(a.moduleDependencies[l]&&a.moduleDependencies[l][g])};a.cleanupWaitingCommands=function(a){for(var g=
a.chartType(),g=E(g),e,b=[],k;e=g.shift();){for(e=O[e]||[];k=e.shift();)"object"===typeof k&&k.obj!==a&&b.push(k);e.concat(b);b=[]}};b.extend(b.core.options,{html5ScriptNameSuffix:".js",html5ScriptNamePrefix:"fusioncharts."});b.extend(u,{dataFormat:"json",ready:!1,policies:{jsVars:{},options:{showChartLoadingMessage:["showChartLoadingMessage",!0]}},init:function(){r("base")?u.ready=!0:k("base",function(){u.ready=!0;m(a.cmdQueue)},void 0,b.core)},render:function(l){var b=l,e=this.jsVars.msgStore;b&&
this.options.showChartLoadingMessage&&(b.innerHTML='<small style="display: inline-block; *zoom:1; *display:inline; width: 100%; font-family: Verdana,sans; font-size: 10px; color: #666666; text-align: center; padding-top: '+(parseInt(b.style.height,10)/2-5)+'px">'+(e.PBarLoadingText||e.LoadingText)+"</small>",b.style.backgroundColor=g(this));a.cmdQueue.push({cmd:"render",obj:this,args:arguments})},update:function(){a.cmdQueue.push({cmd:"update",obj:this,args:arguments})},resize:function(){a.cmdQueue.push({cmd:"resize",
obj:this,args:arguments})},dispose:function(){var l=a.cmdQueue,g,e;g=0;for(e=l.length;g<e;g+=1)l[g].obj===this&&(l.splice(g,1),--e,--g)},load:function(){a.cmdQueue.push({cmd:"load",obj:this,args:arguments})},config:function(a,g){var e,b=this.jsVars,k=b.msgStore,b=b.cfgStore,m=this.options,K;K={LoadingText:"loadMessage",ChartNotSupported:"typeNotSupportedMessage",RenderChartErrorText:"renderErrorMessage",XMLLoadingText:"dataLoadStartMessage",ChartNoDataText:"dataEmptyMessage",LoadDataErrorText:"dataLoadErrorMessage",
InvalidXMLText:"dataInvalidMessage"};"string"===typeof a&&1<arguments.length&&(e=a,a={},a[e]=g);for(e in a)void 0!==k[e]?k[e]=a[e]:b[e.toLowerCase()]=a[e],K[e]?m[K[e]]=a[e]:m[e]=a[e]},protectedMethods:{},events:{beforeInitialize:function(l){var g=l.sender;l=g.jsVars;var e;l.fcObj=g;l.msgStore=l.msgStore||new L;l.cfgStore=l.cfgStore||{};l.previousDrawCount=-1;l.drawCount=0;l._reflowData={};g.addEventListener("beforeRender",function(e){e.sender.jsVars.smartLabel=new a.SmartLabelManager(g.id,J.body||
J.getElementsByTagName("body")[0]);e.detachHandler()});l.userModules instanceof Array||(e=l.userModules,l.userModules=[],"string"===typeof e&&(l.userModules=l.userModules.concat(e.split(","))));a.chartAPI&&a.chartAPI[void 0]||(l.needsLoaderCall=!0)},initialized:function(a){a=a.sender;var g=a.jsVars;g.needsLoaderCall&&(delete g.needsLoaderCall,u.load.call(a))},beforeDataUpdate:n,beforeDispose:function(a){var g=a.sender.jsVars;g.smartLabel&&!g.smartLabel.disposed&&g.smartLabel.dispose();n.apply(this,
arguments)},beforeRender:function(a){var g=a.sender.jsVars;delete g.drLoadAttempted;delete g.waitingModule;delete g.waitingModuleError;n.apply(this,arguments)},dataLoadRequested:function(a){a=a.sender;var g=a.jsVars;delete g.loadError;a.ref&&a.options.showDataLoadingMessage?g.hcObj&&!g.hasNativeMessage&&g.hcObj.showLoading?g.hcObj.showMessage(g.msgStore.XMLLoadingText):a.ref.showChartMessage?a.ref.showChartMessage("XMLLoadingText"):g.stallLoad=!0:g.stallLoad=!0},dataLoadRequestCompleted:function(a){delete a.sender.jsVars.stallLoad},
dataLoadError:function(a){var g=a.sender,e=g.jsVars,b=g.args,k=g.options;delete e.stallLoad;e.loadError=!0;g._chartMessageImageStyle={imageHAlign:b.dataLoadErrorMessageImageHAlign||k.baseChartMessageImageHAlign,imageVAlign:b.dataLoadErrorMessageImageVAlign||k.baseChartMessageImageVAlign,imageAlpha:b.dataLoadErrorMessageImageAlpha||k.baseChartMessageImageAlpha,imageScale:b.dataLoadErrorMessageImageScale||k.baseChartMessageImageScale};g._chartMessageStyle={color:b.dataLoadErrorMessageColor||k.baseChartMessageColor,
fontFamily:b.dataLoadErrorMessageFont||k.baseChartMessageFont,fontSize:b.dataLoadErrorMessageFontSize||k.baseChartMessageFontSize};g.apiInstance.setChartMessage&&(g.apiInstance.setChartMessage(k.dataLoadErrorMessage,g),g.apiInstance.drawChartMessage());g.__state.dataFetchDuringConstruction&&delete g.__state.dataFetchDuringConstruction;n.apply(this,arguments)}},_call:function(a,g,e){a.apply(e||v,g||[])}});b.extend(u.prototype,{getSWFHTML:function(){b.raiseWarning(this,"11090611381","run","JavaScriptRenderer~getSWFHTML()",
"getSWFHTML() is not supported for JavaScript charts.")},addVariable:function(){b.raiseWarning(this,"11090611381","run","JavaScriptRenderer~addVariable()",'Use of deprecated "addVariable()". Replace with "configure()".');b.core.prototype.configure.apply(this,arguments)},getXML:function(){b.raiseWarning(this,"11171116291","run","JavaScriptRenderer~getXML()",'Use of deprecated "getXML()". Replace with "getXMLData()".');return this.getXMLData.apply(this,arguments)},setDataXML:function(){b.raiseWarning(this,
"11171116292","run","JavaScriptRenderer~setDataXML()",'Use of deprecated "setDataXML()". Replace with "setXMLData()".');return this.setXMLData.apply(this,arguments)},setDataURL:function(){b.raiseWarning(this,"11171116293","run","JavaScriptRenderer~setDataURL()",'Use of deprecated "SetDataURL()". Replace with "setXMLUrl()".');return this.setXMLUrl.apply(this,arguments)},hasRendered:function(){return!(!this.jsVars.hcObj||!this.jsVars.hcObj.hasRendered)},setTransparent:function(a){var g;if(g=this.jsVars)"boolean"!==
typeof a&&null!==a&&(a=!0),g.transparent=null===a?!1:!0===a?!0:!1}});b.extend(b.core,{_fallbackJSChartWhenNoFlash:function(){v.swfobject.hasFlashPlayerVersion(b.core.options.requiredFlashPlayerVersion)||b.renderer.setDefault("javascript")},_enableJSChartsForSelectedBrowsers:function(a){void 0!==a&&null!==a&&b.renderer.setDefault((new RegExp(a)).test(v.navigator.userAgent)?"javascript":"flash")},_doNotLoadExternalScript:function(a){var g,e;for(g in a)e=g.toLowerCase(),M[e]&&(U[e]=!!a[g])},_preloadJSChartModule:function(){throw"NotImplemented()";
}});b.renderer.register("javascript",u);A||H?b.renderer.setDefault("javascript"):v.swfobject&&v.swfobject.hasFlashPlayerVersion&&!v.swfobject.hasFlashPlayerVersion(b.core.options.requiredFlashPlayerVersion)&&(b.raiseWarning(b.core,"1204111846","run","JSRenderer","Switched to JavaScript as default rendering due to absence of required Flash Player."),b.renderer.setDefault("javascript"))}]);Q.register("module",["private","modules.renderer.polyfill",function(){"function"!=typeof Object.create&&(Object.create=
function(){function b(){}var J=Object.prototype.hasOwnProperty;return function(C){var H,A,u;if("object"!=typeof C)throw new TypeError("Object prototype may only be an Object or null");b.prototype=C;u=new b;b.prototype=null;if(1<arguments.length)for(A in H=Object(arguments[1]),H)J.call(H,A)&&(u[A]=H[A]);return u}}());Array.prototype.indexOf||(Array.prototype.indexOf=function(b,J){var C,H,A;if(null==this)throw new TypeError('"this" is null or not defined');H=Object(this);A=H.length>>>0;if(0===A)return-1;
C=+J||0;Infinity===Math.abs(C)&&(C=0);if(C>=A)return-1;for(C=Math.max(0<=C?C:A-Math.abs(C),0);C<A;){if(C in H&&H[C]===b)return C;C++}return-1});Array.prototype.forEach||(Array.prototype.forEach=function(b,J){var C,H,A,u,a;if(null==this)throw new TypeError(" this is null or not defined");A=Object(this);u=A.length>>>0;if("function"!==typeof b)throw new TypeError(b+" is not a function");1<arguments.length&&(C=J);for(H=0;H<u;)H in A&&(a=A[H],b.call(C,a,H,A)),H++});Array.prototype.indexOf||(Array.prototype.indexOf=
function(b,J){var C;if(null==this)throw new TypeError('"this" is null or not defined');var H=Object(this),A=H.length>>>0;if(0===A)return-1;C=+J||0;Infinity===Math.abs(C)&&(C=0);if(C>=A)return-1;for(C=Math.max(0<=C?C:A-Math.abs(C),0);C<A;){if(C in H&&H[C]===b)return C;C++}return-1});"function"!=typeof Object.create&&(Object.create=function(){function b(){}var J=Object.prototype.hasOwnProperty;return function(C){var H,A,u;if("object"!=typeof C)throw TypeError("Object prototype may only be an Object or null");
b.prototype=C;H=new b;b.prototype=null;if(1<arguments.length)for(u in A=Object(arguments[1]),A)J.call(A,u)&&(H[u]=A[u]);return H}}());Function.prototype.bind||(Function.prototype.bind=function(b){if("function"!==typeof this)throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");var J=Array.prototype.slice.call(arguments,1),C=this,H=function(){},A=function(){return C.apply(this instanceof H?this:b,J.concat(Array.prototype.slice.call(arguments)))};this.prototype&&
(H.prototype=this.prototype);A.prototype=new H;return A});Array.prototype.reduce||(Array.prototype.reduce=function(b){if(null==this)throw new TypeError("Array.prototype.reduce called on null or undefined");if("function"!==typeof b)throw new TypeError(b+" is not a function");var J=Object(this),C=J.length>>>0,H=0,A;if(2==arguments.length)A=arguments[1];else{for(;H<C&&!(H in J);)H++;if(H>=C)throw new TypeError("Reduce of empty array with no initial value");A=J[H++]}for(;H<C;H++)H in J&&(A=b(A,J[H],H,
J));return A});Object.keys||(Object.keys=function(){var b=Object.prototype.hasOwnProperty,J=!{toString:null}.propertyIsEnumerable("toString"),C="toString toLocaleString valueOf hasOwnProperty isPrototypeOf propertyIsEnumerable constructor".split(" "),H=C.length;return function(A){if("object"!==typeof A&&("function"!==typeof A||null===A))throw new TypeError("Object.keys called on non-object");var u=[],a;for(a in A)b.call(A,a)&&u.push(a);if(J)for(a=0;a<H;a++)b.call(A,C[a])&&u.push(C[a]);return u}}());
Array.prototype.map||(Array.prototype.map=function(b){var J,C,H;if(null==this)throw new TypeError("this is null or not defined");var A=Object(this),u=A.length>>>0;if("function"!==typeof b)throw new TypeError(b+" is not a function");1<arguments.length&&(J=arguments[1]);C=Array(u);for(H=0;H<u;){var a;H in A&&(a=A[H],a=b.call(J,a,H,A),C[H]=a);H++}return C});Array.prototype.filter||(Array.prototype.filter=function(b){if(void 0===this||null===this)throw new TypeError;var J=Object(this),C=J.length>>>0;
if("function"!==typeof b)throw new TypeError;for(var H=[],A=2<=arguments.length?arguments[1]:void 0,u=0;u<C;u++)if(u in J){var a=J[u];b.call(A,a,u,J)&&H.push(a)}return H});var b=this.window.Node;b&&!b.prototype.contains&&(b.prototype.contains=function(b){for(;b=b.parentNode;)if(b===this)return!0;return!1})}]);Q&&Q.register("module",["private","vendor.svgdecanvo",function(){var b=this.window,v=this.hcLib;(function(b){var v=b.document,H={},A={},u;u=function(a,b,q,M,v,N,E){var r={svg:"",context:"",callBack:"",
imageArr:[],canvas:"",dimention:{}};if(!(this instanceof u))throw"This function should be used as class";this._getStore=function(a){return"undefined"!=typeof r[a]?r[a]:!1};this._setStore=function(a,b){"undefined"!=typeof r[a]&&(r[a]=b)};this._setStore("dimention",{x:q,y:M,width:v,height:N});a&&this.setSVG(a);b&&this.setContext(b);E&&this.setCallback(E);this.drawOnCanvas()};u.prototype.setContext=function(a){var b;if(a.getContext&&a.getContext("2d"))b=a.getContext("2d"),this._setStore("canvas",a),
this._setStore("context",b);else throw"Please provide valid canvas";};u.prototype.getContext=function(){return this._getStore("context")};u.prototype.setSVG=function(a){if("undefined"!=typeof a.documentElement)this._setStore("svg",a);else if("<"==a.substr(0,1))a=A.StrToDom(a),this._setStore("svg",a);else throw"Please provide valid SVG";};u.prototype.getSVG=function(){return this._getStore("svg")};u.prototype.setCallback=function(a){"function"===typeof a&&this._setStore("callBack",a)};u.prototype.getCallback=
function(){return this._getStore("callBack")};u.prototype.drawOnCanvas=function(a,b,q,M,u,N,E){var r,k,m,n;a&&this.setSVG(a);b&&this.setContext(b);E&&this.setCallback(E);b=b||this._getStore("canvas");m=this._getStore("dimention");E=this.getCallback();r=this.getContext();(a=this.getSVG())&&r&&(n=A.getSvgDimention(a),k=n.width,b=n.height,q=q||m.x||0,M=M||m.y||0,u=u||m.width||k,N=N||m.height||b,k=n.width?u/k:1,b=n.height?N/b:1,A.startTransform("translate("+q+","+M+") scale("+k+","+b+")",r),r.save(),
r.fillStyle="#ffffff",r.fillRect(0,0,u,N),r.restore(),A.storeImagesInArr(this),A.drawNodes([a],[],this,r,function(){"function"===typeof E&&E();A.resetTransform(r)}))};H.common=function(a,b,q,M,u){var N=a.childNodes,E,r=function(){a.attributes&&M.restore();u&&u()};for(E in b)b.hasOwnProperty(E)&&"class"!=b[E].name&&"id"!=b[E].name&&"transform"!=b[E].name&&"clip-path"!=b[E].name&&"object"==typeof b[E]&&a.attributes&&!a.attributes[b[E].name]&&a.setAttribute([b[E].name],b[E].value);if(a.attributes&&a.attributes.style)for(E in styleArr=
a.attributes.style.value.replace(/;$/,"").split(";"),styleArr)if(styleArr.hasOwnProperty(E)&&(styleName=styleArr[E].split(":")[0].trim(),!a.attributes[styleName]||"undefined"==a.attributes[styleName].value))try{a.setAttribute(styleName,styleArr[E].split(":")[1].trim())}catch(k){}a.attributes&&(M.save(),a.attributes.transform&&A.startTransform(a.attributes.transform.value,M),a.attributes["clip-path"]&&A.applyClip(a.attributes["clip-path"].value,M,q));if(0===N.length||1===N.length&&!N[0].tagName)if("undefined"!==
typeof a.tagName)if(b="draw"+a.tagName,H[b])if(a.attributes.display&&"none"==a.attributes.display.value)r();else H[b](a,M,q,"draw",r);else r();else r();else A.drawNodes(N,"svg"==a.tagName?[]:a.attributes,q,M,r)};H.drawtext=function(a,b,q,M,u){this.drawtspan(a,b,q,M,u)};H.drawtspan=function(a,u,q,M,H){var N=a.innerHTML||a.textContent,E=a.attributes.x?a.attributes.x.value:0,r=a.attributes.y?a.attributes.y.value:0,k=a.attributes.dx?a.attributes.dx.value:0,m=a.attributes.dy?a.attributes.dy.value:0,n=
"serief",L="normal",g="16px",l=[],B;v.getElementsByTagName("body")[0]&&(B=b.getComputedStyle(v.getElementsByTagName("body")[0],null),B.getPropertyValue("font-family")&&(n=B.getPropertyValue("font-family")),B.getPropertyValue("font-weight")&&(L=B.getPropertyValue("font-weight")),B.getPropertyValue("font-size")&&(g=B.getPropertyValue("font-size")));n=a.attributes["font-family"]?a.attributes["font-family"].value:n;L=a.attributes["font-weight"]?a.attributes["font-weight"].value:L;B=a.attributes["text-anchor"]?
a.attributes["text-anchor"].value:"start";g=a.attributes["font-size"]?a.attributes["font-size"].value:g;E=Number(E)+Number(k);r=Number(r)+Number(m);N=N.trim();B="middle"==B?"center":B;u.save();u.font=L+" "+g+" "+n;u.textAlign=B;if("draw"===M){if(!a.attributes.fill||a.attributes.fill&&"none"!=a.attributes.fill.value)A.applyFillEffect(a,u,q,l),u.fillText(N,E,r),A.endFillEffect(a,u);if(!a.attributes.stroke||a.attributes.stroke&&"none"!=a.attributes.stroke.value)A.applyStrokeEffect(a,u,q,l),u.strokeText(N,
E,r),A.endStrokeEffect(a,u)}u.restore();"function"===typeof H&&H()};H.drawcircle=function(a,b,q,u,v){var N=Number(a.attributes.cx.value),E=Number(a.attributes.cy.value),r=Number(a.attributes.r.value),k=[];b.beginPath();b.arc(N,E,r,0,2*Math.PI);A.bBoxFromPoint([N,1*N+1*r,1*N-1*r],[E,1*E+1*r,1*E-1*r],k);if("draw"===u){if(!a.attributes.fill||a.attributes.fill&&"none"!=a.attributes.fill.value)A.applyFillEffect(a,b,q,k),b.fill(),A.endFillEffect(a,b);if(!a.attributes.stroke||a.attributes.stroke&&"none"!=
a.attributes.stroke.value)A.applyStrokeEffect(a,b,q,k),b.stroke(),A.endStrokeEffect(a,b)}b.closePath();"function"===typeof v&&v()};H.drawrect=function(a,b,q,u,v){var N=Number(a.attributes.x.value),E=Number(a.attributes.y.value),r=a.attributes.rx?Number(a.attributes.rx.value):0,k=a.attributes.ry?Number(a.attributes.ry.value):0,m=Number(a.attributes.height.value),n=Number(a.attributes.width.value),L=[];A.bBoxFromPoint([N,N+n],[E,E+m],L);b.beginPath();b.moveTo(N+r,E);b.lineTo(N+n-r,E);b.quadraticCurveTo(N+
n,E,N+n,E+k);b.lineTo(N+n,E+m-k);b.quadraticCurveTo(N+n,E+m,N+n-r,E+m);b.lineTo(N+r,E+m);b.quadraticCurveTo(N,E+m,N,E+m-k);b.lineTo(N,E+k);b.quadraticCurveTo(N,E,N+r,E);if("draw"===u){if(!a.attributes.fill||a.attributes.fill&&"none"!=a.attributes.fill.value)A.applyFillEffect(a,b,q,L),b.fill(),A.endFillEffect(a,b);if(!a.attributes.stroke||a.attributes.stroke&&"none"!=a.attributes.stroke.value)A.applyStrokeEffect(a,b,q,L),b.stroke(),A.endStrokeEffect(a,b)}b.closePath();"function"===typeof v&&v()};H.drawellipse=
function(a,b,q,u,v){var N=Number(a.attributes.cx.value),E=Number(a.attributes.cy.value),r=Number(a.attributes.rx.value),k=Number(a.attributes.ry.value),m=.5522848*r,n=.5522848*k,L=N+r,g=E+k,l=[];b.beginPath();b.moveTo(N-r,E);b.bezierCurveTo(N-r,E-n,N-m,E-k,N,E-k);b.bezierCurveTo(N+m,E-k,L,E-n,L,E);b.bezierCurveTo(L,E+n,N+m,g,N,g);b.bezierCurveTo(N-m,g,N-r,E+n,N-r,E);A.bBoxFromPoint([N+r,N-r],[E+k,E-k],l);if("draw"===u){if(!a.attributes.fill||a.attributes.fill&&"none"!=a.attributes.fill.value)A.applyFillEffect(a,
b,q,l),b.fill(),A.endFillEffect(a,b);if(!a.attributes.stroke||a.attributes.stroke&&"none"!=a.attributes.stroke.value)A.applyStrokeEffect(a,b,q,l),b.stroke(),A.endStrokeEffect(a,b)}b.closePath();"function"===typeof v&&v()};H.drawimage=function(a,b,q,u,v){var N=a.attributes.x?Number(a.attributes.x.value):0,E=a.attributes.y?Number(a.attributes.y.value):0,r=a.attributes.height?Number(a.attributes.height.value):0,k=a.attributes.width?Number(a.attributes.width.value):0,m,n=q._getStore("imageArr");b.save();
a.attributes.opacity&&(b.globalAlpha=a.attributes.opacity.value);a.attributes["xlink:href"]?(m=a.attributes["xlink:href"].value,"complete"===n[m].status?(b.drawImage(n[m].obj,N,E,k,r),b.globalAlpha=1,b.restore(),"function"===typeof v&&v()):"error"===n[m].status?(b.globalAlpha=1,b.restore(),"function"===typeof v&&v()):"progress"===n[m].status?(n[m].callback=function(){b.drawImage(n[m].obj,N,E,k,r);b.globalAlpha=1;b.restore();"function"===typeof v&&v()},n[m].errCallback=function(){b.globalAlpha=1;b.restore();
"function"===typeof v&&v()}):(b.globalAlpha=1,b.restore(),"function"===typeof v&&v())):(b.globalAlpha=1,b.restore(),"function"===typeof v&&v())};H.drawpath=function(a,b,q,u,v){var N=a.attributes.d.value.match(/[a-z][^a-z"]*/ig),E=[],r,k,m,n=0,L=0,g;b.beginPath();for(r in N)if(N.hasOwnProperty(r))switch(k=N[r].substring(0,1),m=A.getArgsAsArray(N[r].substring(1,N[r].length)),k){case "M":n=Number(m[0]);L=Number(m[1]);b.moveTo(n,L);break;case "m":n+=Number(m[0]);L+=Number(m[1]);b.moveTo(n,L);break;case "L":for(g=
0;m[g];g+=2)A.bBoxFromPoint([n,m[g]],[L,m[g+1]],E),n=Number(m[g]),L=Number(m[g+1]),b.lineTo(n,L);break;case "l":for(g=0;m[g];g+=2)A.bBoxFromPoint([n,1*n+1*m[g]],[L,1*L+1*m[g+1]],E),n+=Number(m[g]),L+=Number(m[g+1]),b.lineTo(n,L);break;case "V":for(g=0;m[g];g+=1)A.bBoxFromPoint([n],[L,m[g]],E),L=Number(m[g]),b.lineTo(n,L);break;case "v":for(g=0;m[g];g+=1)A.bBoxFromPoint([n],[L,1*L+1*m[g]],E),L+=Number(m[g]),b.lineTo(n,L);break;case "H":for(g=0;m[g];g+=1)A.bBoxFromPoint([n,m[g]],[L],E),n=Number(m[g]),
b.lineTo(n,L);break;case "h":for(g=0;m[g];g+=1)A.bBoxFromPoint([n,1*n+1*m[g]],[L],E),n+=Number(m[g]),b.lineTo(n,L);break;case "Q":for(g=0;m[g];g+=4)A.qBezierBBox(n,L,m[g],m[g+1],m[g+2],m[g+3],E),b.quadraticCurveTo(Number(m[g]),Number(m[g+1]),Number(m[g+2]),Number(m[g+3])),n=Number(m[g+2]),L=Number(m[g+3]);break;case "q":for(g=0;m[g];g+=4)A.qBezierBBox(n,L,n+1*m[g],L+1*m[g+1],1*n+1*m[g+2],1*L+1*m[g+3],E),b.quadraticCurveTo(n+1*m[g],L+1*m[g+1],n+=Number(m[g+2]),L+=Number(m[g+3]));break;case "C":for(g=
0;m[g];g+=6)A.cBezierBBox(n,L,m[g],m[g+1],m[g+2],m[g+3],m[g+4],m[g+5],E),b.bezierCurveTo(m[g],m[g+1],m[g+2],m[g+3],m[g+4],m[g+5]),n=Number(m[g+4]),L=Number(m[g+5]);break;case "c":for(g=0;m[g];g+=6)A.cBezierBBox(n,L,n+1*m[g],1*L+1*m[g+1],n+1*m[g+2],1*L+1*m[g+3],n+1*m[g+4],1*L+1*m[g+5],E),b.bezierCurveTo(n+Number(m[g]),L+Number(m[g+1]),n+Number(m[g+2]),L+Number(m[g+3]),n+=Number(m[g+4]),L+=Number(m[g+5]));break;case "a":case "A":for(g=0;m[g];g+=7){var l=Number(m[g]),B=Number(m[g+1]),e,V,p,T,K,t,Z,P,
S,z,R,w,F,X;e=Math.PI/180*Number(m[g+2]);V=Number(m[g+3]);p=Number(m[g+4]);T=Number(m[g+5]);K=Number(m[g+6]);t=Math.cos(e)*(n-T)/2+Math.sin(e)*(L-K)/2;Z=-Math.sin(e)*(n-T)/2+Math.cos(e)*(L-K)/2;l=0>l?-l:l;B=0>B?-B:B;w=Math.pow(t,2)/Math.pow(l,2)+Math.pow(Z,2)/Math.pow(B,2);1<w&&(l*=Math.sqrt(w),B*=Math.sqrt(w));w=l>B?l:B;F=l>B?1:l/B;X=l>B?B/l:1;V=(V==p?-1:1)*Math.sqrt((Math.pow(l,2)*Math.pow(B,2)-Math.pow(l,2)*Math.pow(Z,2)-Math.pow(B,2)*Math.pow(t,2))/(Math.pow(l,2)*Math.pow(Z,2)+Math.pow(B,2)*Math.pow(t,
2)));isNaN(V)&&(V=0);P=V*l*Z/B;S=-V*B*t/l;z=P*Math.cos(e)-S*Math.sin(e)+(n+T)/2;R=P*Math.sin(e)+S*Math.cos(e)+(L+K)/2;V=A.angleBetweenVectors(1,0,(t-P)/l,(Z-S)/B);t=A.angleBetweenVectors((t-P)/l,(Z-S)/B,(-t-P)/l,(-Z-S)/B);0===p&&0<t&&(t-=Math.PI/180*360);1==p&&0>t&&(t+=Math.PI/180*360);if(0===l&&0===B){b.lineTo(T,K);break}b.save();l=A.combineTransformMatrix([[1,0,z,0,1,R],[Math.cos(e),Math.sin(e),0,Math.sin(e),Math.cos(e),0],[F,0,0,0,X,0]]);b.transform(l[0],l[3],l[1],l[4],l[2],l[5]);b.arc(0,0,w,V,
V+t,1-p);b.restore();A.arcBBox(0,0,w,V,V+t,1-p,[l[0],l[3],l[1],l[4],l[2],l[5]],E);"A"==k?(n=Number(m[g+5]),L=Number(m[g+6])):(n+=Number(m[g+5]),L+=Number(m[g+6]))}break;case "Z":case "z":b.closePath()}if("draw"===u){if(!a.attributes.fill||a.attributes.fill&&"none"!=a.attributes.fill.value)A.applyFillEffect(a,b,q,E),b.fill(),A.endFillEffect(a,b);if(!a.attributes.stroke||a.attributes.stroke&&"none"!=a.attributes.stroke.value)A.applyStrokeEffect(a,b,q,E),b.stroke(),A.endStrokeEffect(a,b);v()}};A.drawNodes=
function(a,b,q,u,v){var N=a.length,E=-1,r=0,k=0,m=function(){var n;E+=1;E<N?(n=a[E],n.tagName&&"defs"===n.tagName&&(E+=1,n=a[E]),n.attributes&&(n.attributes.dy&&(k=n.attributes.dy.value=1*n.attributes.dy.value+1*k),n.attributes.dx&&(r=n.attributes.dx.value=1*n.attributes.dx.value+1*r)),H.common(n,b,q,u,m)):v&&v()};m()};A.getSvgDimention=function(a){var b={width:0,height:0};node=a.childNodes&&a.childNodes[0]&&a.childNodes[0].attributes;b.width=Number(node.width&&node.width.value||0);b.height=Number(node.height&&
node.height.value||0);return b};A.storeImagesInArr=function(a){var b=a.getSVG(),q,u;q=a._getStore("imageArr");a=b.getElementsByTagName("image");for(u in a)a.hasOwnProperty(u)&&a[u].attributes&&a[u].attributes["xlink:href"]&&(b=a[u].attributes["xlink:href"].value,q[b]||(q[b]=[],q[b].status="progress",q[b].callback=null,q[b].obj=new Image,q[b].obj.onload=function(a){return function(){var b=q[a].callback;b?(q[a].status="complete",b()):q[a].status="complete"}}(b),q[b].obj.onerror=function(a){return function(){var b=
q[a].errCallback;b?(q[a].status="error",b()):q[a].status="error"}}(b),q[b].obj.src=b))};A.startTransform=function(a,b){var q=a.match(/[^\s][a-z,0-9.\-(\s]+\)/gi),u,v;for(v in q)q.hasOwnProperty(v)&&(-1<q[v].indexOf("matrix")&&(u=A.stringToArgs(q[v]),b.transform(u[0],u[1],u[2],u[3],u[4],u[5])),-1<q[v].indexOf("translate")&&(u=A.stringToArgs(q[v]),b.translate(u[0]||0,u[1]||0)),-1<q[v].indexOf("rotate")&&(u=A.stringToArgs(q[v]),3==u.length?(b.translate(u[1],u[2]),b.rotate(Math.PI/180*u[0]),b.translate(-u[1],
-u[2])):b.rotate(Math.PI/180*u[0])),-1<q[v].indexOf("scale")&&(u=A.stringToArgs(q[v]),1==u.length?b.scale(u[0]||1,u[0]||1):b.scale(u[0]||1,u[1]||1)),-1<q[v].indexOf("skewX")&&(u=A.stringToArgs(q[v]),b.transform(1,0,Math.tan(Math.PI/180*u[0]),1,0,0)),-1<q[v].indexOf("skewY")&&(u=A.stringToArgs(q[v]),b.transform(1,Math.tan(Math.PI/180*u[0]),0,1,0,0)))};A.resetTransform=function(a){a.setTransform(1,0,0,1,0,0)};A.stringToArgs=function(a){a=/\(([^\)]+)/.exec(a)[1];return A.getArgsAsArray(a)};A.getArgsAsArray=
function(a){var b;a=a.trim().split(/[\s,]+/);for(b=0;b<a.length;b++)a[b].trim(),0===a[b].length&&a.splice(b,1);return a};A.applyFillEffect=function(a,b,q,u){b.globalAlpha=a.attributes["fill-opacity"]&&"none"!=a.attributes["fill-opacity"].value?a.attributes["fill-opacity"].value:1;a.attributes.fill&&-1<a.attributes.fill.value.indexOf("url(")?(a=A.getFillStyleById(/url\(.*#([^\)'"]+)/.exec(a.attributes.fill.value)[1],b,q,u),b.fillStyle=a):b.fillStyle=a.attributes.fill?a.attributes.fill.value:"#000000"};
A.endFillEffect=function(a,b){b.globalAlpha=1};A.applyStrokeEffect=function(a,b,q,u){a.attributes["stroke-opacity"]&&"none"!=a.attributes["stroke-opacity"].value&&(b.globalAlpha=a.attributes["stroke-opacity"].value);a.attributes["stroke-width"]&&(b.lineWidth=a.attributes["stroke-width"].value,0===a.attributes["stroke-width"].value&&(b.globalAlpha=0));a.attributes["stroke-linecap"]&&"none"!=a.attributes["stroke-linecap"].value&&(b.lineCap=a.attributes["stroke-linecap"].value);a.attributes["stroke-linejoin"]&&
"none"!=a.attributes["stroke-linejoin"].value&&(b.lineJoin=a.attributes["stroke-linejoin"].value);a.attributes["stroke-dasharray"]&&"none"!=a.attributes["stroke-dasharray"].value&&b.setLineDash&&b.setLineDash(A.getArgsAsArray(a.attributes["stroke-dasharray"].value));b.strokeStyle=a.attributes.stroke?a.attributes.stroke.value:"#000000"};A.endStrokeEffect=function(a,b){a.attributes["stroke-opacity"]&&"none"!=a.attributes["stroke-opacity"].value&&(b.globalAlpha=1,b.setLineDash&&b.setLineDash([]),b.lineWidth=
1);b.globalAlpha=1};A.applyClip=function(a,b,q){var u=q.getSVG(),v,N;if(-1!==a.indexOf("url(")){a=/url\(.*#([^\)'"]+)/.exec(a)[1];u=u.getElementById(a);u.attributes&&(b.save(),u.attributes.transform&&A.startTransform(u.attributes.transform.value,b));a=u.childNodes;for(v in a)a.hasOwnProperty(v)&&a[v].tagName&&a[v].constructor!==Array&&(N="draw"+a[v].tagName,a[v].attributes&&(b.save(),a[v].attributes.transform&&A.startTransform(a[v].attributes.transform.value,b)),H[N]&&(H[N](a[v],b,q,"clip"),b.closePath()),
a[v].attributes&&b.restore());u.attributes&&b.restore();b.clip()}};A.getFillStyleById=function(a,b,q,u){a=q.getSVG().getElementById(a);return"linearGradient"==a.tagName?A.getLinearGradient(a,b,u):"radialGradient"==a.tagName?A.getRadialGradient(a,b,u):"#FFFFFF"};A.getLinearGradient=function(a,b,q){var u=a.attributes.x1?A.getPercentValue(a.attributes.x1.value,q.xMax-q.xMin,q.xMin):0,v=a.attributes.y1?A.getPercentValue(a.attributes.y1.value,q.yMax-q.yMin,q.yMin):0,N=a.attributes.x2?A.getPercentValue(a.attributes.x2.value,
q.xMax-q.xMin,q.xMin):0;q=a.attributes.y2?A.getPercentValue(a.attributes.y2.value,q.yMax-q.yMin,q.yMin):0;var E;linGrad=b.createLinearGradient(u,v,N,q);a=a.childNodes;for(E in a)a.hasOwnProperty(E)&&a[E].attributes&&a[E].attributes["stop-color"]&&(b=A.toRGB(a[E].attributes["stop-color"].value),u=a[E].attributes["stop-opacity"]?a[E].attributes["stop-opacity"].value:1,b.status?linGrad.addColorStop(A.getPercentValue(a[E].attributes.offset.value,1,0),"rgba("+b.r+","+b.g+","+b.b+","+Number(u)+")"):linGrad.addColorStop(A.getPercentValue(a[E].attributes.offset.value,
1,0),a[E].attributes["stop-color"].value));return linGrad};A.getRadialGradient=function(a,b,q){var u=a.attributes.cx?A.getPercentValue(a.attributes.cx.value,q.xMax-q.xMin,q.xMin):q.xMin+.5*(q.xMax-q.xMin),v=a.attributes.cy?A.getPercentValue(a.attributes.cy.value,q.yMax-q.yMin,q.yMin):q.yMin+.5*(q.yMax-q.yMin),N=a.attributes.fx?A.getPercentValue(a.attributes.fx.value,q.xMax-q.xMin,q.xMin):q.xMin+.5*(q.xMax-q.xMin),E=a.attributes.fy?A.getPercentValue(a.attributes.fy.value,q.yMax-q.yMin,q.yMin):q.yMin+
.5*(q.yMax-q.yMin);q=a.attributes.r?A.getPercentValue(a.attributes.r.value,(q.yMax-q.yMin+q.xMax-q.xMin)/2,0):A.getPercentValue("50%",(q.yMax-q.yMin+q.xMax-q.xMin)/2,0);var r;b=b.createRadialGradient(N,E,0,u,v,q);a=a.childNodes;for(r in a)a.hasOwnProperty(r)&&a[r].attributes&&a[r].attributes["stop-color"]&&(u=A.toRGB(a[r].attributes["stop-color"].value),v=a[r].attributes["stop-opacity"]?a[r].attributes["stop-opacity"].value:1,u.status?b.addColorStop(A.getPercentValue(a[r].attributes.offset.value,
1,0),"rgba("+u.r+","+u.g+","+u.b+","+Number(v)+")"):b.addColorStop(A.getPercentValue(a[r].attributes.offset.value,1,0),a[r].attributes["stop-color"].value));return b};A.getPercentValue=function(a,b,q){return-1!=a.indexOf("%")?(a=/(\d.*)%/.exec(a)[1],100<a&&(a=100),a*b/100+1*q):1<a?a:a*b+1*q};A.bBoxFromPoint=function(a,b,q){"undefined"!==typeof q.xMin&&(a.push(q.xMin,q.xMax),b.push(q.yMin,q.yMax));q.xMin=Math.min.apply(this,a);q.xMax=Math.max.apply(this,a);q.yMin=Math.min.apply(this,b);q.yMax=Math.max.apply(this,
b)};A.arcBBox=function(a,b,q,u,v,N,E,r){var k,m,n;E instanceof Array&&(a=a*E[0]+a*E[2]+E[4],b=b*E[1]+b*E[3]+E[5]);n=function(a,b,l){a=(a+2*Math.PI)%(2*Math.PI);b=(b+2*Math.PI)%(2*Math.PI);if(a<=b)return a<=l&&l<=b?!0:!1;if(a>=b)return a>=l&&l>=b?!1:!0};E=u%(2*Math.PI);k=v%(2*Math.PI);N&&(E=v%(2*Math.PI),k=u%(2*Math.PI));N=a+q*Math.cos(E);u=b+q*Math.sin(E);m=a+q*Math.cos(k);v=b+q*Math.sin(k);N=[N,m];u=[u,v];n(E,k,0)&&(N.push(1*a+1*q),u.push(b));n(E,k,.5*Math.PI)&&(N.push(a),u.push(1*b+1*q));n(E,k,
Math.PI)&&(N.push(a-1*q),u.push(b));n(E,k,1.5*Math.PI)&&(N.push(a),u.push(b-1*q));a=Math.max.apply(this,N);b=Math.min.apply(this,N);q=Math.max.apply(this,u);E=Math.min.apply(this,u);"undefined"!==typeof r.xMin?(r.xMin=Math.min(b,r.xMin),r.xMax=Math.max(a,r.xMax),r.yMin=Math.min(E,r.yMin),r.yMax=Math.max(q,r.yMax)):(r.xMin=b,r.xMax=a,r.yMin=E,r.yMax=q)};A.qBezierBBox=function(a,b,q,u,v,N,E){var r=1*a-2*q+1*v,k=1*b-2*u+1*N;0===r||0===k?(u=Math.max(a,v),a=Math.min(a,v),v=Math.max(b,N),b=Math.min(b,N)):
(r=(a-q)/r,k=(b-u)/k,q=a*Math.pow(1-r,2)+2*q*(1-r)*r+v*Math.pow(r,2),k=b*Math.pow(1-k,2)+2*u*(1-k)*k+N*Math.pow(k,2),u=Math.max(a,v,q),a=Math.min(a,v,q),v=Math.max(b,N,k),b=Math.min(b,N,k));"undefined"!==typeof E.xMin?(E.xMin=Math.min(a,E.xMin),E.xMax=Math.max(u,E.xMax),E.yMin=Math.min(b,E.yMin),E.yMax=Math.max(v,E.yMax)):(E.xMin=a,E.xMax=u,E.yMin=b,E.yMax=v)};A.cBezierBBox=function(a,b,q,u,v,N,E,r,k){var m,n,L,g,l,B,e;null===v&&null===N&&(q=a+2/3*(q-a),v=b+2/3*(u-b),u=q+1/3*(E-a),N=v+1/3*(r-b));
e=function(a,b,e,l,g){return a*Math.pow(1-g,3)+3*b*g*Math.pow(1-g,2)+3*e*g*g*(1-g)+l*g*g*g};L=3*E-9*v+9*q-3*a;g=6*a-12*q+6*v;l=Math.pow(g,2)-4*L*(3*q-3*a);n=m=a;E<m&&(m=E);E>n&&(n=E);0<=l&&(B=(-g+Math.sqrt(l))/(2*L),0<B&&1>B&&(B=e(a,q,v,E,B),B<m&&(m=B),B>n&&(n=B)),L=(-g-Math.sqrt(l))/(2*L),0<L&&1>L&&(B=e(a,q,v,E,L),B<m&&(m=B),B>n&&(n=B)));L=3*r-9*N+9*u-3*b;g=6*b-12*u+6*N;l=Math.pow(g,2)-4*L*(3*u-3*b);q=a=b;r<a&&(a=r);r>q&&(q=r);0<=l&&(B=(-g+Math.sqrt(l))/(2*L),0<B&&1>B&&(v=e(b,u,N,r,B),v<a&&(a=v),
v>q&&(q=v)),L=(-g-Math.sqrt(l))/(2*L),0<L&&1>L&&(v=e(b,u,N,r,L),v<a&&(a=v),v>q&&(q=v)));"undefined"!==typeof k.xMin?(k.xMin=Math.min(m,k.xMin),k.xMax=Math.max(n,k.xMax),k.yMin=Math.min(a,k.yMin),k.yMax=Math.max(q,k.yMax)):(k.xMin=m,k.xMax=n,k.yMin=a,k.yMax=q)};A.combineTransformMatrix=function(a){var b=a.length-1,q;if(0>=b)return a[0];q=a[0];for(i=1;i<=b;i++)q[0]=q[0]*a[i][0]+q[1]*a[i][3],q[1]=q[0]*a[i][1]+q[1]*a[i][4],q[2]=q[0]*a[i][2]+q[1]*a[i][5]+1*q[2],q[3]=q[3]*a[i][0]+q[4]*a[i][3],q[4]=q[3]*
a[i][1]+q[4]*a[i][4],q[5]=q[3]*a[i][2]+q[4]*a[i][5]+1*q[5];return q};A.angleBetweenVectors=function(a,b,q,u){return(a*u<b*q?-1:1)*Math.acos((a*q+b*u)/(Math.sqrt(Math.pow(a,2)+Math.pow(b,2))*Math.sqrt(Math.pow(q,2)+Math.pow(u,2))))};A.toRGB=function(a){var b={r:0,g:0,b:0,status:0},q,u;q=function(a){for(u in a)a.hasOwnProperty(u)&&(0>a[u]||isNaN(a[u])?a[u]=0:255<a[u]&&(a[u]=255));return b={r:a[0],g:a[1],b:a[2],status:1}};a=a.trim();a.match(/^rgb\(|^rgba\(/i)?(a=/\(\s*(\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})/.exec(a),
q([parseInt(a[1]),parseInt(a[2]),parseInt(a[3])])):a.match(/^#/)&&(a=/(\w{2})(\w{2})(\w{2})/.exec(a),q([parseInt(a[1],16),parseInt(a[2],16),parseInt(a[3],16)]));return b};A.StrToDom=function(a){var u;b.DOMParser?(u=new DOMParser,u=u.parseFromString(a,"text/xml")):(u=new ActiveXObject("Microsoft.XMLDOM"),u.async=!1,u.loadXML(a));return u};b.SvgDeCanvo=u})(this.window||window);b.SvgDeCanvo&&(v.SvgDeCanvo=b.SvgDeCanvo,b.SvgDeCanvo=void 0)}]);Q.register("module",["private","modules.renderer.js-lib-attr",
function(){var b={},v=this.hcLib||(this.hcLib={}),J=Math.max,C=v.attrTypeNum=1,H=v.attrTypeBool=2;v.parseConfiguration=function(A,u,a,J,q,M){var U=v.attribDefs||b,N,E,r,k=1,m;J=J||b;M=M||b;q=q||{};for(N in A)if(!J[N]&&((E=A[N])||!1===E||0===E))switch(r=(m=M[N]||U[N])&&m.type,r){case C:E=Number(E);isNaN(E)||(u[N]=E);break;case H:E=Number(E);isNaN(E)||(u[N]=!!E);break;default:u[N]=E}if(a)for(N in u)void 0===u[N]&&(m=M[N]||U[N])&&m.pAttr&&(u[N]=a[m.pAttr]);for(;k;)for(N in k=0,u)void 0===u[N]&&(m=M[N]||
U[N])&&(m.attr?void 0!==(E=u[m.attr])&&(u[N]=E,k+=1):m.parser&&void 0!==(E=m.parser(u,a,q))&&(u[N]=E,k+=1))};v.setAttribDefs=function(b,u){var a=v.attribDefs,C,q;"string"===typeof b?(C={},C[b]=u):C=b;for(q in C)a[q]||(a[q]=C[q])};v.hasAttribDefs=function(b){return!!v.attribDefs[b]};v.attribDefs={setBorderWidth:{type:C,pAttr:"plotborderthickness"},plotborderthickness:{type:C,pAttr:"plotborderthickness"},showBorderEffect:{parser:function(b,u){return 1===+u.showplotborder&&.1===u.plotborderthickness?
1:0}},alphaanimation:{type:C},showplotborder:{type:C,pAttr:"showplotborder"},zeroplanethickness:{type:C},showzeroplaneontop:{type:C},stickytracking:{type:C},usemessagelog:{type:C},showtooltip:{type:C,pAttr:"showtooltip"},seriesnameintooltip:{type:C},plothovereffect:{type:C,attr:"anchorhovereffect"},anchorhovereffect:{type:C,attr:"showhovereffect"},showhovereffect:{type:C,attr:"drawcrossline"},drawcrossline:{type:C},linethickness:{type:C,pAttr:"linethickness"},dashed:{type:C,pAttr:"linedashed"},linedashed:{type:C,
attr:"plotborderdashed"},plotborderdashed:{type:C,pAttr:"plotborderdashed"},linedashlen:{type:C,pAttr:"linedashlen"},linedashgap:{type:C,pAttr:"linedashgap"},anchoralpha:{pAttr:"anchoralpha"},anchorsides:{type:C,pAttr:"anchorsides"},anchorradius:{type:C,pAttr:"anchorradius"},anchorbgalpha:{pAttr:"anchorbgalpha"},anchorbgcolor:{pAttr:"anchorbgcolor"},anchorbordercolor:{pAttr:"anchorbordercolor"},anchorstartangle:{type:C,pAttr:"anchorstartangle"},anchorimageurl:{pAttr:"anchorimageurl"},anchorimagescale:{type:C,
pAttr:"anchorimagescale"},anchorimagealpha:{pAttr:"anchorimagealpha"},anchorimagepadding:{type:C,pAttr:"anchorimagepadding"},anchorborderthickness:{type:C,pAttr:"anchorborderthickness"},anchorshadow:{type:C,pAttr:"anchorshadow"},valuepadding:{type:C,pAttr:"valuepadding"},valueposition:{pAttr:"valueposition"},plotfillangle:{type:C,pAttr:"plotfillangle"},useplotgradientcolor:{type:C},rotatevalues:{type:C,pAttr:"rotatevalues"},includeinlegend:{type:C},connectnulldata:{type:C},plotfillalpha:{pAttr:"plotfillalpha"},
alpha:{pAttr:"linealpha"},linealpha:{pAttr:"plotfillalpha"},showvalues:{type:C,pAttr:"showvalues"},showpercentvalues:{type:C,parser:function(b){return b.isstacked&&b.stack100percent?1:0}},showpercentintooltip:{type:C,parser:function(b){return b.isstacked&&b.stack100percent?1:0}},stack100percent:{type:C,attr:"usepercentdistribution"},drawfullareaborder:{type:C},use3dlineshift:{type:C},parentyaxis:{type:C},radarborderthickness:{type:C},radarborderradius:{type:C},gaugeoriginx:{type:C},hasgaugeoriginx:{attr:"gaugeoriginx"},
gaugeoriginy:{type:C},hasgaugeoriginy:{attr:"gaugeoriginy"},gaugeradius:{type:C},hasgaugeradius:{attr:"gaugeradius"},showgaugeborder:{type:C},setAdaptiveMin:{type:C},adjustDiv:{type:C},axisNameWidth:{type:C},rotateAxisName:{type:C},useEllipsesWhenOverflow:{type:C},showZeroPlane:{type:C},zeroPlaneAlpha:{type:C},showZeroPlaneValue:{type:C},zeroPlaneOnTop:{type:C},trendlineThickness:{type:C},showTrendlinesOnTop:{type:C},trendlinesAreDashed:{type:C},trendlinesDashLen:{type:C},trendlinesDashGap:{type:C},
showTrendlines:{type:C},showTrendlineLabels:{type:C},showLabels:{type:C},rotateLabels:{type:C},slantLabel:{type:C},showAxisValues:{type:C},showTooltip:{type:C},maxLabelHeight:{type:C},useroundedges:{type:C,pAttr:"useroundedges"},placevaluesinside:{type:C},plotpaddingpercent:{type:C},use3dlighting:{type:C,pAttr:"use3dlighting"},usedataplotcolorforlabels:{type:C},plotspacepercent:{type:C,parser:function(b){return J(b.plotspacepercent%100,0)}},ratio:{pAttr:"plotfillratio"},base:{type:C},showMinorDivLineValues:{type:C},
numMinorDivLines:{type:C},majorTMNumber:{type:C},majorTMHeight:{type:C},showTickMarks:{type:C},majorTMThickness:{type:C},adjustTM:{type:H},minorTMNumber:{type:C},minorTMThickness:{type:C},tickMarkDistance:{type:C},placeTicksInside:{type:C},placeValuesInside:{type:C},axisValuePadding:{type:C},gridLineWidth:{type:C},showRadarBorder:{type:C},radarBorderThickness:{type:C},maxcolwidth:{type:C,parser:function(b){return Math.abs(b.maxcolwidth)}},maxbarheight:{type:C,parser:function(b){return Math.abs(b.maxbarheight)}},
plotborderalpha:{parser:function(b,u){return u.plotborderalpha||b.plotfillalpha}},autoscale:{type:C},plotborderdashlen:{type:C,pAttr:"plotborderdashlen"},plotborderdashgap:{type:C,pAttr:"plotborderdashgap"},plotfillratio:{pAttr:"plotfillratio"},drawverticaljoins:{type:C,pAttr:"drawverticaljoins"},useforwardsteps:{type:C,pAttr:"useforwardsteps"},minimizetendency:{type:C},usepercentdistribution:{type:C},stepatmiddle:{type:C}}}]);Q.register("module",["private","modules.renderer.js-lib",function(){var b=
this,v=b.window,J=b.core,C,H,A,u="https:"===v.location.protocol?"https://export.api3.fusioncharts.com/":"http://export.api3.fusioncharts.com/",a="https:"===v.location.protocol?"https://export.api3.fusioncharts.com/api/v1.0/logs":"http://export.api3.fusioncharts.com/api/v1.0/logs",O={DOWNLOAD:"download",SAVE:"save",DOWNLOADSAVE:"download-save"},q={CLIENT:"client",SERVER:"server",AUTO:"auto"},M=v.document,U=v.navigator,N=!(!v.SVGAngle&&!M.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure",
"1.1")),E=/msie/i.test(U.userAgent)&&!v.opera,r=/trident/i.test(U.userAgent)&&/rv:11/i.test(U.userAgent)&&!v.opera,k=v.parseFloat,m=/\s+/g,n=/^#?/,L=/^rgba/i,g=/[#\s]/ig,l=/\{br\}\s*/ig,B=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i,e=Math.abs,V=Math.pow,p=Math.round,T=V(2,-24),K=Object.prototype.toString,t="ontouchstart"in M,Z=t&&!(U.maxTouchPoints||U.msMaxTouchPoints),P="http://www.fusioncharts.com?BS=FCHSEvalMark&utm_source=FCS_trial&pver="+escape(b.core.version),S=/fusioncharts\.com|fusioncharts\.github\.io$/i,
z=!S.test(v.location.hostname),R=Math,w=R.max,F=R.min,X=v.Image,h={pageX:0,pageY:0},d="createTouch"in M,f=d&&!(v.navigator.maxTouchPoints||v.navigator.msMaxTouchPoints),c=b.hcLib||(b.hcLib={}),D=c.SvgDeCanvo,G=function(c){var a=c.data,d=a.chart,f=d.components.paper,h=c.state,b=ka(ra(c.originalEvent)),I=b.target||b.originalTarget||b.srcElement||b.relatedTarget||b.fromElement,l=d.components.resizeBox,g=a.layerX=b.pageX-a.chartPosLeft,D=a.layerY=b.pageY-a.chartPosTop,G=g-a.ox,k=D-a.oy,t=a.bBox,ba=a.ox,
Ba=a.oy,p=a.zoomX,m=a.zoomY,t=a.canvasY,z=a.canvasX,B=a.canvasW,Oa=a.canvasH,aa=a.canvasX2,K=a.canvasY2,n=a.strokeWidth,G=a.attr;switch(h){case "start":c=sa(this);a.chartPosLeft=c.left;a.chartPosTop=c.top;g=b.pageX-a.chartPosLeft;D=b.pageY-a.chartPosTop;a.oy=D;a.ox=g;a.allowMove=!1;l||(l=d.components.resizeBox=f.rect(d.graphics.trackerGroup).attr(G));g>z&&g<aa&&D>t&&D<K&&(a.allowMove=!0);I&&I.ishot&&(a.allowMove=!1);l.attr({x:0,y:0,width:0,height:0}).show();break;case "end":t=l.getBBox();d={chart:d,
selectionLeft:t.x,selectionTop:t.y,selectionHeight:t.height,selectionWidth:t.width,originalEvent:c.originalEvent};a.isDragged&&(a.selectionEnd&&a.selectionEnd(d),a.isDragged=0);l.hide();delete a.oy;delete a.ox;break;default:a.allowMove&&(G=g-a.ox,k=D-a.oy,ba=a.ox,Ba=a.oy,a.isDragged||(d={chart:d,selectionLeft:(p?F(ba,ba+G):z)+.5*n,selectionTop:(m?F(Ba,Ba+k):t)+.5*n,selectionHeight:0,selectionWidth:0,originalEvent:c.originalEvent},a.selectionStart&&a.selectionStart(d),a.isDragged=1),G=-(ba-F(ba-(ba-
w(ba+G,z)),aa)),k=-(Ba-F(Ba-(Ba-w(Ba+k,t)),K)),l.attr({x:(p?F(ba,ba+G):z)+.5*n,y:(m?F(Ba,Ba+k):t)+.5*n,width:p?e(G):B,height:m?e(k):Oa}))}},aa=function(c){var a=c.data;c=c.originalEvent;var d=c.target||c.originalTarget||c.srcElement||c.relatedTarget||c.fromElement,f=c.type,h=c.layerX,b=c.layerY;void 0===h&&(h=c.pageX-a.chartPosLeft,b=c.pageY-a.chartPosTop);"mousedown"===f&&(d.ishot=h>a.canvasX&&h<a.canvasX2&&b>a.canvasY&&b<a.canvasY2);"mouseup"===f&&setTimeout(function(){d.ishot=!1},1)},Ra=function(){var c=
"innerWidth",a="innerHeight",d=M.documentElement||M.body,f=d;"innerWidth"in v?f=v:(c="clientWidth",a="clientHeight");return function(){return{width:f[c],height:f[a],scrollTop:d.scrollTop,scrollLeft:d.scrollLeft}}}(),Ia=function(c){c.data&&(c.data.elScroll=!1)},sa=function(a,d,f){d={top:0,left:0};var h,e,I,l,g,D;f&&(I=f.config,l=f.linkedItems,l=l.eventListeners||(l.eventListeners=[]),D=I.isEvntAdded||(I.isEvntAdded=!1));if(a){if(b._fullScreenMode)d=a.getBoundingClientRect();else{d.top=a.offsetTop;
d.left=a.offsetLeft;for(h=a;(h=h.parentNode)&&"BODY"!==h.tagName;)f&&(e=v.getComputedStyle(h).getPropertyValue("position"),/fixed/.test(e)&&(g=!0)),d.top-=h.scrollTop||0,d.left-=h.scrollLeft||0,f&&!D&&l.push(va(h,"scroll",Ia,I));f&&(I.itemFixed=g,c.toolTip.inform(f.chartInstance.id,g));for(;h;)d.top-=h.scrollTop||0,d.left-=h.scrollLeft||0,h=h.parentNode;for(;a=a.offsetParent;)d.top+=a.offsetTop,d.left+=a.offsetLeft;d.top+=v.pageYOffset||v.scrollY||M.documentElement.scrollTop;d.left+=v.pageXOffset||
v.scrollX||M.documentElement.scrollLeft}f&&!D&&(l.push(va(v,"resize scroll",Ia,I)),I.isEvntAdded=!0)}return d},wa=function(c){return c&&c.replace(/\$/g,"$$$$")},ca=function(c,a){return c||!1===c||0===c?c:a},ma=function(){var c,a,d;a=0;for(d=arguments.length;a<d;a+=1)if((c=arguments[a])||!1===c||0===c)return c;return""},qa=function(){var c,a,d;a=0;for(d=arguments.length;a<d;a+=1)if((c=arguments[a])||!1===c||0===c)return c},va=function(a,d,f,h){return c.dem.listen(a,d,f,h)},ha=function(a,d,f){return c.dem.unlisten(a,
d,f)},ra=function(c){c=c&&(c.sourceEvent||c.originalEvent||c);return t&&c&&c.touches&&c.touches[0]||c||h},ka=function(){return function(c){void 0===c.pageX&&(c.pageX=c.clientX+M.body.scrollLeft+M.documentElement.scrollLeft,c.pageY=c.clientY+M.body.scrollTop+M.documentElement.scrollTop);return c}}(),na=function(c,a,d){var f=ka(ra(a)),h=b._fullScreenMode?f.clientX:f.pageX,f=b._fullScreenMode?f.clientY:f.pageY,e=d&&d.config;a=a.type;var I=e&&e.itemFixed,l=I?v.pageYOffset||v.scrollY||M.documentElement.scrollTop:
0,I=I?v.pageXOffset||v.scrollX||M.documentElement.scrollLeft:0;e&&e.elScroll?c=e.posOb:(e&&(e.elScroll=!0),c=sa(c,void 0,d),e&&(e.posOb=c));if("touchend"===a)isNaN(h)&&(h=C),isNaN(f)&&(f=H);else if("touchmove"===a||"touchstart"===a)C=h,H=f;return{chartX:h-c.left-I,chartY:f-c.top-l,pageX:h,pageY:f}},da=function(c,a,d){c=M.createElement(c);for(var f in a)c.setAttribute(f,a[f]);d&&d.appendChild&&d.appendChild(c);return c},oa=function(c){return c&&c.replace(/^#?([a-f0-9]+)/ig,"#$1")||"none"},Y=function(){var c,
a,d;a=0;for(d=arguments.length;a<d;a+=1)if(((c=arguments[a])||!1===c||0===c)&&!isNaN(c=Number(c)))return c},za=function(c,a){c=c||!1===c||0===c?Number(c):NaN;return isNaN(c)?null:a?e(c):c},fa=function(c){return"string"===typeof c?c.replace(l,"<br />"):""},Aa=function(c,a){c=c.split(",")[a||0];c=c.replace(m,"");""==c&&(c="000000");return c.replace(n,"#")},ua=function(c){c=parseInt(c,10);if(isNaN(c)||100<c||0>c)c=100;return c},ia=function(c,a){for(var d=a.length,f=-1;d--;)if(c===a[d]){f=d;break}return f},
xa=function(){if(Array.isArray)return Array.isArray;var c=Object.prototype.toString,a=c.call([]);return function(d){return c.call(d)===a}}(),ja=function(c,a,d,f,h){var b,e,I,l;h?(f.push(c),h.push(a)):(f=[c],h=[a]);if(a instanceof Array)for(b=0;b<a.length;b+=1){try{e=c[b],I=a[b]}catch(g){continue}if("object"!==typeof I)d&&void 0===I||(c[b]=I);else{if(null===e||"object"!==typeof e)e=c[b]=I instanceof Array?[]:{};l=ia(I,h);-1!==l?e=c[b]=f[l]:ja(e,I,d,f,h)}}else for(b in a){try{e=c[b],I=a[b]}catch(g){continue}if(null!==
I&&"object"===typeof I)if(l=K.call(I),"[object Object]"===l){if(null===e||"object"!==typeof e)e=c[b]={};l=ia(I,h);-1!==l?e=c[b]=f[l]:ja(e,I,d,f,h)}else"[object Array]"===l?(null!==e&&e instanceof Array||(e=c[b]=[]),l=ia(I,h),-1!==l?e=c[b]=f[l]:ja(e,I,d,f,h)):c[b]=I;else c[b]=I}return c},ya=function(c,a,d){if("object"!==typeof c&&"object"!==typeof a)return null;if("object"!==typeof a||null===a)return c;"object"!==typeof c&&(c=a instanceof Array?[]:{});ja(c,a,d);return c},W=function(c,a){var d;if(a instanceof
Array)for(d=a.length-1;0<=d;--d)"object"!==typeof a[d]?!0===a[d]&&c&&c.splice&&c.splice(d,1):K.call(a[d])===K.call(c[d])&&W(c[d],a[d]);else for(d in a)"object"!==typeof a[d]?!0===a[d]&&c&&c.splice&&c.splice(d,1):K.call(a[d])===K.call(c[d])&&W(c[d],a[d]);return c},Ma=function(){var c=/^@window_/g;return function(a,d,f){a=a.replace(/\[[\'\"]/g,".").replace(/[\'\"]\]/g,"").replace(/\[/g,".@window_").replace(/\]/g,"").split(".");var h=v,b,e;e="";var I,l,g;l=a.length;for(g=0;g<l;g+=1){I=a[g];b=h;if(I.match(c))e=
v[I.replace(c,"")],h=h[e];else{if(void 0===h||null===h)throw(e||I).replace(c,"")+" is not defined";h=h[I]}e=I}!h||"function"!==typeof h.call&&h!==v.alert?"void"!==e&&setTimeout(function(){throw I.replace(c,"")+"() is not a function";},0):h===v.alert?h(d):f?h.apply(b,d.split("-")):h.call(b,d)}}(),ea=function(c,a){var d;c=c.replace(/^j\s*\-/i,"j-");d=c.indexOf("-",2);-1===d?Ma(c.slice(2)):Ma(c.substr(2,d-2).replace(/\s/g,""),c.slice(d+1),a)},ga=function(c){var a=c.split("(");c=a.pop().split(")")[0].split(",");
var d=c.length,f;f="j-"+a[0];for(a=0;a<d;a++)f+="-"+c[a].replace(/\s*/,"").replace(/\s*$/,"").replace(/[\'|\"]/g,"");ea(f,!0)},la=function(c){var a={image:!1};void 0!==c&&(c=c.replace(/^\s+/,"").replace(/\s+$/,""),/^i\s*[\-]\s*/i.test(c)?(a.image=!0,a.string=c.replace(/^i\s*[\-]\s*/i,"")):a.string=c.replace(/^\\/,""));return a},Ca=function(c,a){c=Number(c);c=isNaN(c)?100:c;void 0!==a&&(c=c*a/100);return c%101},Ha=function(c,a,d){c=c.split(",");var f;void 0!==d&&(d=Y(d.split(",")[0]));c[0]=Ca(c[0],
d);for(f=1;f<a;f+=1)c[f]=c[0]*Ca(c[f],d)/100;return c.join(",")},pa=function(c,a,d){var f=0,h=0,b=0;d&&d.match(L)&&(d=d.split(","),f=d[0].slice(d[0].indexOf("(")+1),h=d[1],b=d[2],a||0===a||(a=parseInt(100*d[3].slice(0,d[3].indexOf(")")),10)));if(c)if(c.match(L))d=c.split(","),f=d[0].slice(d[0].indexOf("(")+1),h=d[1],b=d[2];else{c=c.replace(g,"").split(",")[0];switch(c.length){case 3:c=c.charAt(0)+c.charAt(0)+c.charAt(1)+c.charAt(1)+c.charAt(2)+c.charAt(2);break;case 6:break;default:c=(c+"FFFFFF").slice(0,
6)}f=parseInt(c.slice(0,2),16);h=parseInt(c.slice(2,4),16);b=parseInt(c.slice(4,6),16)}a||0===a||(a=100);"string"===typeof a&&(a=a.split(",")[0]);a=parseInt(a,10)/100;return"rgba("+f+","+h+","+b+","+a+")"},La=function(){var c={};return function(a){var d=(a=a||this)&&a.FCcolor||a,f=d.color,h=d.ratio,b=d.angle,e=d.alpha,I=d.r,l=d.cx,g=d.cy,D=d.fx,G=d.fy,t=d.gradientUnits,ba=d.x1,Ba=d.y1,p=d.x2,F=d.y2,m=1,z,B,Oa,w;if("string"===typeof a)return c[w="~"+a]||(c[w]=a.replace(/^#?([a-f0-9]{3,6})/ig,"#$1"));
f=f||"";if(!f)return z;w=[f,e,h,b,I,l,g,t,D,G,ba,p,Ba,F].join("_").replace(/[\(\)\s,\xb0#]/g,"_");if(c[w])return c[w];h=h&&(h+"").split(",")||[];e=(e||0===e)&&(e+"").split(",")||[];if(f=f.split(","))if(z="",1===f.length)Oa=f[0].replace(/^#?([a-f0-9]{3,6})/ig,"$1"),z=e.length?"rgba("+Ea(Oa).join(",")+","+.01*k(e[0])+")":Oa.replace(/^#?([a-f0-9]{3,6})/ig,"#$1");else{a=0;for(B=f.length;a<B;a++)Oa=f[a].replace(/^#?([a-f0-9]{3,6})/ig,"$1"),isNaN(h[a])||(h[a]=k(h[a]),Oa+=":"+h[a],isNaN(h[a+1])||(h[a+1]=
k(h[a+1])+h[a])),isNaN(e[a])||""===e[a]||(m=.01*e[a]),f[a]="rgba("+Ea(Oa).join(",")+","+m+")",isNaN(h[a])||(f[a]=f[a]+":"+h[a]);z+=f.join("-");if(void 0!==I||void 0!==D||void 0!==l||d.radialGradient)z="xr("+[D,G,I,l,g,t].join()+")"+z;else{z="-"+z;if(void 0!==ba||void 0!==Ba||void 0!==p||void 0!==F)z="("+[ba,Ba,p,F,t].join()+")"+z;void 0===b&&(b=0);z=360-k(b)%360+z}}return c[w]=z}}(),Ja=function(){return function(){return""}}(),Fa=function(c){return c.replace(g,"").replace(n,"#")},ta=function(c,a){a=
(0>a||100<a?100:a)/100;c=c.replace(g,"");var d=parseInt(c,16),f=Math.floor(d/65536),h=Math.floor((d-65536*f)/256);return("000000"+(f*a<<16|h*a<<8|(d-65536*f-256*h)*a).toString(16)).slice(-6)},Ka=function(c,a){a=(0>a||100<a?100:a)/100;c=c.replace(g,"");var d=parseInt(c,16),f=Math.floor(d/65536),h=Math.floor((d-65536*f)/256);return("000000"+(256-(256-f)*a<<16|256-(256-h)*a<<8|256-(256-(d-65536*f-256*h))*a).toString(16)).slice(-6)},Ea=function(c){c=parseInt(c,16);var a=Math.floor(c/65536),d=Math.floor((c-
65536*a)/256);return[a,d,Math.floor(c-65536*a-256*d)]},Da=function(a,d){if("object"!==typeof a)return"";if(a.fontSize||a["font-size"])!a.fontSize&&a["font-size"]&&(a.fontSize=a["font-size"],delete a["font-size"]),a.lineHeight=(parseFloat(a.fontSize)||d||10)*c.lineHeightFactor+"px",delete a["line-height"];!a.lineHeight&&a["line-height"]&&(a.lineHeight=a["line-height"],delete a["line-height"]);return a.lineHeight},Ga=function(c,a,d,f,h){var b=ma(c.labelbordercolor,a.bordercolor,d.labelbordercolor,""),
e=qa(c.labelbgcolor,a.bgcolor,d.labelbgcolor),I=Y(c.labelborderthickness,a.borderthickness,d.labelborderthickness,1);h=Y(d.usedataplotcolorforlabels,0)?h||f.color:f.color;b=b?pa(b,Y(c.labelborderalpha,a.borderalpha,d.labelborderalpha,c.labelalpha,a.alpha,d.labelalpha,100)):"";c={fontFamily:qa(c.labelfont,a.font,d.labelfont,f.fontFamily),fontSize:qa(c.labelfontsize,a.fontsize,d.labelfontsize,parseInt(f.fontSize,10))+"px",color:pa(qa(c.labelfontcolor,a.fontcolor,d.labelfontcolor,h),Y(c.labelfontalpha,
a.fontalpha,d.labelfontalpha,c.labelalpha,a.alpha,d.labelalpha,100)),fontWeight:Y(c.labelfontbold,a.fontbold,d.labelfontbold)?"bold":"normal",fontStyle:Y(c.labelfontitalic,a.fontitalic,d.labelfontitalic)?"italic":"normal",border:b||e?I+"px solid":"",borderColor:b,borderThickness:I,borderPadding:Y(c.labelborderpadding,a.borderpadding,d.labelborderpadding,2),borderRadius:Y(c.labelborderradius,a.borderradius,d.labelborderradius,0),backgroundColor:e?pa(e,Y(c.labelbgalpha,a.bgalpha,d.labelbgalpha,c.labelalpha,
a.alpha,d.labelalpha,100)):"",borderDash:Y(c.labelborderdashed,a.borderdashed,d.labelborderdashed,0)?Xa(Y(c.labelborderdashlen,a.borderdashlen,d.labelborderdashlen,4),Y(c.labelborderdashgap,a.borderdashgap,d.labelborderdashgap,2),I):"none"};c.lineHeight=Da(c);return c},Na=function(){var c={top:{align:"center",verticalAlign:"top",textAlign:"center"},right:{align:"right",verticalAlign:"middle",textAlign:"left"},bottom:{align:"center",verticalAlign:"bottom",textAlign:"center"},left:{align:"left",verticalAlign:"middle",
textAlign:"right"}},a=/([^\,^\s]+)\)$/g,d=function(c,a){var d;/^(bar|bar3d)$/.test(c)&&(this.isBar=!0,this.yPos="bottom",this.yOppPos="top",this.xPos="left",this.xOppPos="right");d=parseInt(a.labelstep,10);this.labelStep=1<d?d:1;this.showLabel=Y(a.showlabels,a.shownames,1);this.is3D=/3d$/.test(c)};d.prototype={isBar:!1,yPos:"left",yOppPos:"right",xPos:"bottom",xOppPos:"top",addAxisGridLine:function(d,f,h,b,e,I,l,g){var D=""===h?!1:!0,G=0<b||0<I.match(a)[1]?!0:!1,k;if(D||G)G||(I="rgba(0,0,0,0)",b=
.1),k={isGrid:!0,width:b,dashStyle:e,color:I,value:f,zIndex:void 0===l?2:l},D&&(f=d.opposite?g?this.xOppPos:this.yOppPos:g?this.xPos:this.yPos,f=c[f],k.label={text:h,style:d.labels.style,textAlign:f.textAlign,align:f.align,verticalAlign:f.verticalAlign,rotation:0,x:0,y:0}),d.plotLines.push(k);return k},addAxisAltGrid:function(c,a){if(!this.is3D){var d=Y(c._lastValue,c.min),f=qa(c._altGrid,!1);f&&c.plotBands.push({isGrid:!0,color:c.alternateGridColor,to:a,from:d,zIndex:1});c._lastValue=a;c._altGrid=
!f}},addXaxisCat:function(a,d,f,h,b,e,I,l){var g=c[a.opposite?this.xOppPos:this.xPos];d={isGrid:!0,isDataLabel:!0,width:.1,color:"rgba(0,0,0,0)",value:d,label:{text:h,link:qa(b.labellink,e.link,I.labellink),style:Ga(b,e,I,a.labels.style,l),textAlign:g.textAlign,align:g.align,verticalAlign:g.verticalAlign,rotation:0,x:0,y:0}};0!==f%this.labelStep&&(d.stepped=!0,d.label.style=a.steppedLabels.style);a.plotLines.push(d)},addVline:function(c,a,d,f){f=f._FCconf;var h=f.isBar,b=f.divlineStyle,e=fa(a.label),
I=!!Y(a.showlabelborder,f.showVLineLabelBorder,1),l=!!Y(a.showlabelbackground,1),g=qa(a.labelhalign,h?"left":"center"),D=qa(a.labelvalign,h?"middle":"bottom").toLowerCase(),G=Y(a.labelposition,0),k=Y(a.lineposition,.5),t=Y(a.showvlines,f.showVLines,1),ba=Y(a.alpha,f.vLineAlpha,80),Ba=qa(a.color,f.vLineColor).replace(/^#?/,"#"),p=l?qa(a.labelbgcolor,f.vLineLabelBgColor,"333333").replace(/^#?/,"#"):"",F=qa(a.labelcolor,f.vLineLabelColor,a.color,f.vLineColor).replace(/^#?/,"#"),z=Y(a.thickness,f.vLineThickness,
1),m=.5*z,B=!!Number(qa(a.dashed,0)),Oa=Y(a.dashlen,5),w=Y(a.dashgap,2),aa=f.smartLabel,K=parseInt(b.fontSize,10)+2,n=0,R=Y(a.rotatelabel,f.rotateVLineLabels)?270:0,k=0>k||1<k?.5:k,G=0>G||1<G?0:G;aa.setStyle(b);aa=aa.getOriSize(e);Ba=pa(Ba,t?ba:"0");if(h){switch(D){case "top":K-=aa.height+m+2;break;case "middle":K-=.5*aa.height+1;break;default:K+=m}a.labelhalign||(n-=aa.width*G)}else{switch(D){case "top":K=.5*-aa.height+1;break;case "middle":K=0;break;default:K=.5*aa.height}switch(g){case "left":n+=
z;break;case "right":n-=z+1}}c.plotLines.push({isVline:!0,color:Ba,width:z,value:d-1+k,zIndex:Y(a.showontop,f.showVLinesOnTop)?5:3,dashStyle:B?Xa(Oa,w,z):"none",label:{text:e,align:h?"left":"center",offsetScale:G,rotation:R,y:K,x:n,textAlign:g,backgroundColor:p,borderWidth:t&&I?1:0,borderType:t&&I?"solid":"",borderColor:t&&I?F:"",backgroundOpacity:t&&l?qa(a.labelbgalpha,f.vLineLabelBgAlpha)/100:0,style:{color:t?F:Ba,fontSize:b.fontSize,fontFamily:b.fontFamily,lineHeight:b.lineHeight,backgroundColor:p}}})}};
return d.prototype.constructor=d}(),Ua=function(){var c=function(c,d,f,h,b){c=Math.abs(d-c);d=c/(f+1);a(c,f,h)||(b&&Number(d)/Number(h)<(1<h?2:.5)&&(h/=10),d=(Math.floor(d/h)+1)*h,c=d*(f+1));return c},a=function(c,a,f){return d(c/(a+1))>d(f)?!1:!0},d=function(c){c=Math.abs(c);c=String(c);var a=0,d=c.indexOf(".");-1!=d&&(a=c.length-d-1);return a};return function(d,f,h,b,e,I,l,g){var D,G,k,t,ba,Ba,p,z=0;d=!0===isNaN(d)||void 0===d?.1:d;f=!0===isNaN(f)||void 0===f?0:f;d===f&&0===d&&(d=.1);G=Math.max(Math.floor(Math.log(Math.abs(f))/
Math.LN10),Math.floor(Math.log(Math.abs(d))/Math.LN10));D=Math.pow(10,G);2>Math.abs(d)/D&&2>Math.abs(f)/D&&(G--,D=Math.pow(10,G));G=Math.floor(Math.log(d-f)/Math.LN10);k=Math.pow(10,G);0<d-f&&10<=D/k&&(D=k);G=(Math.floor(d/D)+1)*D;0>f?k=-1*(Math.floor(Math.abs(f/D))+1)*D:I?k=0:(k=Math.floor(Math.abs(f/D)-1)*D,k=0>k?0:k);e&&0>=d&&(G=0);e=h||0===h?!0:!1;I=b||0===b?!0:!1;d=!1===e||!0===e&&Number(h)<d&&d-Number(h)>T?G:Number(h);f=!1===I||!0===I&&Number(b)>f&&Number(b)-f>T?k:Number(b);b=Math.abs(d-f);
if(!1===I&&!1===e&&g)if(0<d&&0>f)for(h=!1,e=10<D?D/10:D,g=c(f,d,l,e,!1),I=g-(l+1)*e;!1===h;){if(I+=(l+1)*e,a(I,l,e))if(g=I-b,G=I/(l+1),t=Math.min(Math.abs(f),d),k=t==Math.abs(f)?-1:1,0===l)h=!0;else for(Ba=1;Ba<=Math.floor((l+1)/2);Ba++)ba=G*Ba,!(ba-t>g)&&ba>t&&(p=I-ba,p/G==Math.floor(p/G)&&ba/G==Math.floor(ba/G)&&(b=I,d=-1==k?p:ba,f=-1==k?-ba:-p,h=!0))}else h=c(f,d,l,D,!0),g=h-b,b=h,0<d?d+=g:f-=g;else g&&(h=function(c,d,f){for(var h=0,b=1,e;;){e=c+h*b;e=0===e?1:e;if(a(d,e,f))break;h=-1==b||h>c?++h:
h;if(25<h){e=0;break}b=h<=c?-1*b:1}return e},0<l&&(g=h(l,b,D),0===g&&(g=h(l,b+1,D),z=1),l=g));return{Max:d,Min:f,Range:b,interval:D,divGap:(d-f+z)/(l+1)}}}(),Pa=function(){var c=function(c,a,d){var f=d.jsVars&&d.jsVars.smartLabel,h=c.offsetWidth,b=c.offsetHeight,e=this.chart;c=this.title;var I=d._chartMessageImageStyle,l=la(a);c.y=b/2;c.x=h/2;e.bgSWF=c.text=void 0;a=l.string;l.image?(e.bgSWF=a,e.bgImageHAlign=I.imageHAlign,e.bgImageVAlign=I.imageVAlign,e.bgImageScale=I.imageScale,e.bgSWFAlpha=I.imageAlpha):
void 0!==a&&(f?(Da(c.style),f.setStyle(c.style),a=f.getSmartText(fa(a),h,b),c.text=a.text):c.text=fa(a),c.verticalAlign="middle");c.style=d._chartMessageStyle;delete d._chartMessageImageStyle;delete d._chartMessageStyle};c.prototype={chart:{events:{},margin:[0,0,0,0],backgroundColor:{FCcolor:{alpha:0}}},credits:{href:P,text:"",enabled:z},legend:{enabled:!1},title:{text:"",style:{fontFamily:"Verdana,sans",fontSize:"10px",color:"#666666"}},plotOptions:{series:{}},series:[{}],exporting:{enabled:!1},
nativeMessage:!0};return c.prototype.constructor=c}(),Sa={"true":{"true":{"true":"center","false":"center"},"false":{"true":"center","false":"center"}},"false":{"true":{"true":"right","false":"left"},"false":{"true":"left","false":"right"}}},ab=function(){return function(c,a,d,f,h,b,e){var I,l=d.trendStyle,g,D,G,k,t,ba,Ba,p,z,F,m,B,Oa,w=b?"xAxis":"dataLabels";if(b?d.showVLines:d.showTrendlines)for(I=0,D=c.length;I<D;I+=1)if((Oa=c[I])&&Oa.line)for(g=0,G=Oa.line.length;g<G;g+=1)k=Oa.line[g],F=d.numberFormatter.getCleanValue(qa(k.startvalue,
k.value,0)),m=d.numberFormatter.getCleanValue(qa(k.endvalue,qa(k.startvalue,k.value,0))),b?p=a:f&&k.parentyaxis&&/^s$/i.test(k.parentyaxis)?(p=a[1],B=1):p=a[0],ba=p.max,Ba=p.min,t=!1,ba>=F&&ba>=m&&Ba<=F&&Ba<=m&&(f&&k.parentyaxis&&/^s$/i.test(k.parentyaxis)?t="1"!==qa(k.valueonleft,d.trendlineValuesOnOpp):f||(t="1"===qa(k.valueonright,d.trendlineValuesOnOpp)),ba=!!Y(k.istrendzone,b?1:0),(Ba=(b?d.showVLineLabels:d.showTrendlineLabels)?fa(qa(k.displayvalue,d.numberFormatter[w](t?m:F,B))):"")?(z=F<m,
t={text:Ba,textAlign:h?"center":t?"left":"right",align:h?Sa[ba][!e][z]:t?"right":"left",verticalAlign:h?"bottom":"middle",rotation:0,x:0,y:0,style:l},Ba=qa(k.color,d.trendlineColor),k.alwaysVisible=ba,Ba&&(t.style=ya({},l),t.style.color=pa(Ba,Y(k.alpha,100)))):t=void 0,Ba=ca(fa(qa(k.tooltext,Oa.tooltext,d.trendLineToolText))),Ba=eb(Ba,[7,15,16,17,18,19],{startValue:F,startDataValue:d.numberFormatter[w](F,B),endValue:m,endDataValue:d.numberFormatter[w](m,B),axisName:p.title&&p.title.text},k),z=Y(k.thickness,
d.trendlineThickness,1),ba?p.plotBands.push({isTrend:!0,color:pa(qa(k.color,d.trendlineColor),qa(k.alpha,d.trendlineAlpha,40)),from:F,to:m,label:t,zIndex:d.is3d||"1"!==qa(k.showontop,d.showTrendlinesOnTop)?3:5,tooltext:Ba,alwaysVisible:k.alwaysVisible}):p.plotLines.push({isTrend:!0,color:pa(qa(k.color,d.trendlineColor,d.trendlineColor),qa(k.alpha,d.trendlineAlpha,99)),value:F,to:m,width:z,dashStyle:"1"==qa(k.dashed,d.trendlinesAreDashed)?Xa(Y(k.dashlen,d.trendlinesDashLen),Y(k.dashgap,d.trendlinesDashGap),
z):"none",label:t,zIndex:d.is3d||"1"!==qa(k.showontop,d.showTrendlinesOnTop)?3:5,tooltext:Ba}))}}(),Xa=function(c,a,d,f){return f||void 0===f?[c,a]:"none"},Za=function(){},bb=function(c,a,d,f,h){var b,e=bb[c],I;e||(I=function(){},I.prototype=d instanceof Za?d:new Za,I.prototype.constructor=I,e=bb[c]=new I,d&&(e.base=d),e.name=c,e.config={},null!==h&&(c=(h instanceof Za?h:d instanceof Za?d:{}).config)&&ya(e.config,c));f&&ya(e.config,f);for(b in a)switch(typeof a[b]){case "object":if(a[b]instanceof
Za){e[b]=a[b][b];break}default:e[b]=a[b];break;case "undefined":delete e[b]}return this instanceof bb?(a=function(){this.config={};this.__setDefaultConfig=function(){e&&e.config&&ya(this.config,e.config)};this.__setDefaultConfig()},a.prototype=e,a.prototype.constructor=a,new a):e},eb=function(){var c=[{regex:/((^|[^\\])((\\)\\)*\$cleanvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$cleanvalue))/ig,argIndex:2,argKey:"cleanvalue"},{regex:/((^|[^\\])((\\)\\)*\$datavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$datavalue))/ig,
argIndex:2,argKey:"formattedValue"},{regex:/((^|[^\\])((\\)\\)*\$value)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$value))/ig,argIndex:3,argKey:"value"},{regex:/((^|[^\\])((\\)\\)*\$label)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$label))/ig,argIndex:2,argKey:"label"},{regex:/((^|[^\\])((\\)\\)*\$seriesname)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$seriesname))/ig,argIndex:5,argKey:"seriesname"},{regex:/((^|[^\\])((\\)\\)*\$yaxisname)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$yaxisname))/ig,argIndex:2,argKey:"yaxisName"},
{regex:/((^|[^\\])((\\)\\)*\$xaxisname)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$xaxisname))/ig,argIndex:2,argKey:"xaxisName"},{regex:/((^|[^\\])((\\)\\)*\$displayvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$displayvalue))/ig,argIndex:3,argKey:"displayvalue"},{regex:/((^|[^\\])((\\)\\)*\$xdatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$xdatavalue))/ig,argIndex:2,argKey:"xDataValue"},{regex:/((^|[^\\])((\\)\\)*\$ydatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$ydatavalue))/ig,argIndex:2,argKey:"yDataValue"},
{regex:/((^|[^\\])((\\)\\)*\$xvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$xvalue))/ig,argIndex:3,argKey:"x"},{regex:/((^|[^\\])((\\)\\)*\$yvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$yvalue))/ig,argIndex:3,argKey:"y"},{regex:/((^|[^\\])((\\)\\)*\$zvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$zvalue))/ig,argIndex:3,argKey:"z"},{regex:/((^|[^\\])((\\)\\)*\$name)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$name))/ig,argIndex:3,argKey:"name"},{regex:/((^|[^\\])((\\)\\)*\$percentValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$percentValue))/ig,
argIndex:2,argKey:"percentValue"},{regex:/((^|[^\\])((\\)\\)*\$startValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$startValue))/ig,argIndex:2,argKey:"startValue"},{regex:/((^|[^\\])((\\)\\)*\$startDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$startDataValue))/ig,argIndex:2,argKey:"startDataValue"},{regex:/((^|[^\\])((\\)\\)*\$endValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$endValue))/ig,argIndex:2,argKey:"endValue"},{regex:/((^|[^\\])((\\)\\)*\$endDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$endDataValue))/ig,
argIndex:2,argKey:"endDataValue"},{regex:/((^|[^\\])((\\)\\)*\$axisName)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$axisName))/ig,argIndex:2,argKey:"axisName"},{regex:/((^|[^\\])((\\)\\)*\$cumulativevalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$cumulativevalue))/ig,argIndex:2,argKey:"cumulativeValue"},{regex:/((^|[^\\])((\\)\\)*\$cumulativedatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$cumulativedatavalue))/ig,argIndex:2,argKey:"cumulativeDataValue"},{regex:/((^|[^\\])((\\)\\)*\$cumulativePercentValue)/ig,
escapeRegex:/((^|[^\\])((\\)\\)*\\(\$cumulativePercentValue))/ig,argIndex:2,argKey:"cumulativePercentValue"},{regex:/((^|[^\\])((\\)\\)*\$cumulativepercentdatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$cumulativepercentdatavalue))/ig,argIndex:2,argKey:"cumulativePercentDataValue"},{regex:/((^|[^\\])((\\)\\)*\$sum)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$sum))/ig,argIndex:2,argKey:"sum"},{regex:/((^|[^\\])((\\)\\)*\$unformattedsum)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$unformattedsum))/ig,argIndex:2,
argKey:"unformattedSum"},{regex:/((^|[^\\])((\\)\\)*\$targetvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$targetvalue))/ig,argIndex:2,argKey:"targetValue"},{regex:/((^|[^\\])((\\)\\)*\$targetdatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$targetdatavalue))/ig,argIndex:2,argKey:"targetDataValue"},{regex:/((^|[^\\])((\\)\\)*\$processname)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$processname))/ig,argIndex:2,argKey:"processName"},{regex:/((^|[^\\])((\\)\\)*\$start)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$start))/ig,
argIndex:2,argKey:"start"},{regex:/((^|[^\\])((\\)\\)*\$end)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$end))/ig,argIndex:2,argKey:"end"},{regex:/((^|[^\\])((\\)\\)*\$percentcomplete)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$percentcomplete))/ig,argIndex:2,argKey:"percentComplete"},{regex:/((^|[^\\])((\\)\\)*\$taskpercentcomplete)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$taskpercentcomplete))/ig,argIndex:2,argKey:"taskPercentComplete"},{regex:/((^|[^\\])((\\)\\)*\$taskstartdate)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$taskstartdate))/ig,
argIndex:2,argKey:"taskStartDate"},{regex:/((^|[^\\])((\\)\\)*\$taskenddate)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$taskenddate))/ig,argIndex:2,argKey:"taskEndDate"},{regex:/((^|[^\\])((\\)\\)*\$tasklabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$tasklabel))/ig,argIndex:2,argKey:"taskLabel"},{regex:/((^|[^\\])((\\)\\)*\$date)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$date))/ig,argIndex:2,argKey:"date"},{regex:/((^|[^\\])((\\)\\)*\$percentofprevvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$percentofprevvalue))/ig,
argIndex:2,argKey:"percentOfPrevValue"},{regex:/((^|[^\\])((\\)\\)*\$sname)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$sname))/ig,argIndex:2,argKey:"sName"},{regex:/((^|[^\\])((\\)\\)*\$lname)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$lname))/ig,argIndex:2,argKey:"lName"},{regex:/((^|[^\\])((\\)\\)*\$fromid)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromid))/ig,argIndex:2,argKey:"fromId"},{regex:/((^|[^\\])((\\)\\)*\$fromlabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromlabel))/ig,argIndex:2,argKey:"fromLabel"},
{regex:/((^|[^\\])((\\)\\)*\$toid)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$toid))/ig,argIndex:2,argKey:"toId"},{regex:/((^|[^\\])((\\)\\)*\$tolabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$tolabel))/ig,argIndex:2,argKey:"toLabel"},{regex:/((^|[^\\])((\\)\\)*\$fromxvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromxvalue))/ig,argIndex:2,argKey:"fromXValue"},{regex:/((^|[^\\])((\\)\\)*\$fromyvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromyvalue))/ig,argIndex:2,argKey:"fromYValue"},{regex:/((^|[^\\])((\\)\\)*\$fromxdatavalue)/ig,
escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromxdatavalue))/ig,argIndex:2,argKey:"fromXDataValue"},{regex:/((^|[^\\])((\\)\\)*\$fromydatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromydatavalue))/ig,argIndex:2,argKey:"fromYDataValue"},{regex:/((^|[^\\])((\\)\\)*\$fromlabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromlabel))/ig,argIndex:2,argKey:"fromLabel"},{regex:/((^|[^\\])((\\)\\)*\$toxvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$toxvalue))/ig,argIndex:2,argKey:"toXValue"},{regex:/((^|[^\\])((\\)\\)*\$toyvalue)/ig,
escapeRegex:/((^|[^\\])((\\)\\)*\\(\$toyvalue))/ig,argIndex:2,argKey:"toYValue"},{regex:/((^|[^\\])((\\)\\)*\$toxdatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$toxdatavalue))/ig,argIndex:2,argKey:"toXDataValue"},{regex:/((^|[^\\])((\\)\\)*\$toydatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$toydatavalue))/ig,argIndex:2,argKey:"toYDataValue"},{regex:/((^|[^\\])((\\)\\)*\$tolabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$tolabel))/ig,argIndex:2,argKey:"toLabel"},{regex:/((^|[^\\])((\\)\\)*\$openvalue)/ig,
escapeRegex:/((^|[^\\])((\\)\\)*\\(\$openvalue))/ig,argIndex:2,argKey:"openValue"},{regex:/((^|[^\\])((\\)\\)*\$closevalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$closevalue))/ig,argIndex:2,argKey:"closeValue"},{regex:/((^|[^\\])((\\)\\)*\$highvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$highvalue))/ig,argIndex:2,argKey:"highValue"},{regex:/((^|[^\\])((\\)\\)*\$lowvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$lowvalue))/ig,argIndex:2,argKey:"lowValue"},{regex:/((^|[^\\])((\\)\\)*\$opendatavalue)/ig,
escapeRegex:/((^|[^\\])((\\)\\)*\\(\$opendatavalue))/ig,argIndex:2,argKey:"openDataValue"},{regex:/((^|[^\\])((\\)\\)*\$closedatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$closedatavalue))/ig,argIndex:2,argKey:"closeDataValue"},{regex:/((^|[^\\])((\\)\\)*\$highdatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$highdatavalue))/ig,argIndex:2,argKey:"highDataValue"},{regex:/((^|[^\\])((\\)\\)*\$lowdatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$lowdatavalue))/ig,argIndex:2,argKey:"lowDataValue"},
{regex:/((^|[^\\])((\\)\\)*\$maxvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$maxvalue))/ig,argIndex:2,argKey:"maxValue"},{regex:/((^|[^\\])((\\)\\)*\$maxdatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$maxdatavalue))/ig,argIndex:2,argKey:"maxDataValue"},{regex:/((^|[^\\])((\\)\\)*\$minvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$minvalue))/ig,argIndex:2,argKey:"minValue"},{regex:/((^|[^\\])((\\)\\)*\$mindatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$mindatavalue))/ig,argIndex:2,argKey:"minDataValue"},
{regex:/((^|[^\\])((\\)\\)*\$q1)/ig,argIndex:2,argKey:"Q1"},{regex:/((^|[^\\])((\\)\\)*\$unformattedQ1)/ig,argIndex:2,argKey:"unformattedQ1"},{regex:/((^|[^\\])((\\)\\)*\$q3)/ig,argIndex:2,argKey:"Q3"},{regex:/((^|[^\\])((\\)\\)*\$unformattedQ3)/ig,argIndex:2,argKey:"unformattedQ3"},{regex:/((^|[^\\])((\\)\\)*\$median)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$median))/ig,argIndex:2,argKey:"median"},{regex:/((^|[^\\])((\\)\\)*\$unformattedMedian)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$unformattedMedian))/ig,
argIndex:2,argKey:"unformattedMedian"},{regex:/((^|[^\\])((\\)\\)*\$SD)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$SD))/ig,argIndex:2,argKey:"SD"},{regex:/((^|[^\\])((\\)\\)*\$unformattedsd)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$unformattedsd))/ig,argIndex:2,argKey:"unformattedsd"},{regex:/((^|[^\\])((\\)\\)*\$QD)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$QD))/ig,argIndex:2,argKey:"QD"},{regex:/((^|[^\\])((\\)\\)*\$unformattedQD)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$unformattedQD))/ig,argIndex:2,
argKey:"unformattedQD"},{regex:/((^|[^\\])((\\)\\)*\$MD)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$MD))/ig,argIndex:2,argKey:"MD"},{regex:/((^|[^\\])((\\)\\)*\$unformattedMD)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$unformattedMD))/ig,argIndex:2,argKey:"unformattedMD"},{regex:/((^|[^\\])((\\)\\)*\$mean)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$mean))/ig,argIndex:2,argKey:"mean"},{regex:/((^|[^\\])((\\)\\)*\$unformattedMean)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$unformattedMean))/ig,argIndex:2,argKey:"unformattedMean"},
{regex:/((^|[^\\])((\\)\\)*\$unformattedMean)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$unformattedMean))/ig,argIndex:2,argKey:"unformattedMean"},{regex:/((^|[^\\])((\\)\\)*\$volumeValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$volumeValue))/ig,argIndex:2,argKey:"volumeValue"},{regex:/((^|[^\\])((\\)\\)*\$volumeDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$volumeDataValue))/ig,argIndex:2,argKey:"volumeDataValue"},{regex:/((^|[^\\])((\\)\\)*\$fromXValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromXValue))/ig,
argIndex:2,argKey:"fromXValue"},{regex:/((^|[^\\])((\\)\\)*\$fromYValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromYValue))/ig,argIndex:2,argKey:"fromYValue"},{regex:/((^|[^\\])((\\)\\)*\$fromXDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromXDataValue))/ig,argIndex:2,argKey:"fromXDataValue"},{regex:/((^|[^\\])((\\)\\)*\$fromYDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromYDataValue))/ig,argIndex:2,argKey:"fromYDataValue"},{regex:/((^|[^\\])((\\)\\)*\$fromLabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$fromLabel))/ig,
argIndex:2,argKey:"fromLabel"},{regex:/((^|[^\\])((\\)\\)*\$toXValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$toXValue))/ig,argIndex:2,argKey:"toXValue"},{regex:/((^|[^\\])((\\)\\)*\$toYValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$toYValue))/ig,argIndex:2,argKey:"toYValue"},{regex:/((^|[^\\])((\\)\\)*\$toXDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$toXDataValue))/ig,argIndex:2,argKey:"toXDataValue"},{regex:/((^|[^\\])((\\)\\)*\$toYDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$toYDataValue))/ig,
argIndex:2,argKey:"toYDataValue"},{regex:/((^|[^\\])((\\)\\)*\$tolabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$tolabel))/ig,argIndex:2,argKey:"toLabel"},{regex:/((^|[^\\])((\\)\\)*\$tlLabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$tlLabel))/ig,argIndex:5,argKey:"tlLabel"},{regex:/((^|[^\\])((\\)\\)*\$trlabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$trlabel))/ig,argIndex:5,argKey:"trLabel"},{regex:/((^|[^\\])((\\)\\)*\$bllabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$bllabel))/ig,argIndex:5,argKey:"blLabel"},
{regex:/((^|[^\\])((\\)\\)*\$brlabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$brlabel))/ig,argIndex:5,argKey:"brLabel"},{regex:/((^|[^\\])((\\)\\)*\$rowlabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$rowlabel))/ig,argIndex:5,argKey:"rowLabel"},{regex:/((^|[^\\])((\\)\\)*\$columnlabel)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$columnlabel))/ig,argIndex:5,argKey:"columnLabel"},{regex:/((^|[^\\])((\\)\\)*\$errorvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$errorvalue))/ig,argIndex:2,argKey:"errorValue"},
{regex:/((^|[^\\])((\\)\\)*\$errordatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$errordatavalue))/ig,argIndex:2,argKey:"errorDataValue"},{regex:/((^|[^\\])((\\)\\)*\$errorpercentvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$errorpercentvalue))/ig,argIndex:2,argKey:"errorPercentValue"},{regex:/((^|[^\\])((\\)\\)*\$errorpercentdatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$errorpercentdatavalue))/ig,argIndex:2,argKey:"errorPercentDataValue"},{regex:/((^|[^\\])((\\)\\)*\$horizontalErrorValue)/ig,
escapeRegex:/((^|[^\\])((\\)\\)*\\(\$horizontalErrorValue))/ig,argIndex:2,argKey:"horizontalErrorValue"},{regex:/((^|[^\\])((\\)\\)*\$horizontalErrorDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$horizontalErrorDataValue))/ig,argIndex:2,argKey:"horizontalErrorDataValue"},{regex:/((^|[^\\])((\\)\\)*\$verticalErrorValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$verticalErrorValue))/ig,argIndex:2,argKey:"verticalErrorValue"},{regex:/((^|[^\\])((\\)\\)*\$verticalErrorDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$verticalErrorDataValue))/ig,
argIndex:2,argKey:"verticalErrorDataValue"},{regex:/((^|[^\\])((\\)\\)*\$horizontalErrorPercent)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$horizontalErrorPercentValue))/ig,argIndex:2,argKey:"horizontalErrorPercentValue"},{regex:/((^|[^\\])((\\)\\)*\$horizontalErrorPercentDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$horizontalErrorPercentDataValue))/ig,argIndex:2,argKey:"horizontalErrorPercentDataValue"},{regex:/((^|[^\\])((\\)\\)*\$verticalErrorPercent)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$verticalErrorPercentValue))/ig,
argIndex:2,argKey:"verticalErrorPercentValue"},{regex:/((^|[^\\])((\\)\\)*\$verticalErrorPercentDataValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$verticalErrorPercentDataValue))/ig,argIndex:2,argKey:"verticalErrorPercentDataValue"},{regex:/((^|[^\\])((\\)\\)*\$xaxispercentvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$xaxispercentvalue))/ig,argIndex:2,argKey:"xAxisPercentValue"},{regex:/((^|[^\\])((\\)\\)*\$percentdatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$percentdatavalue))/ig,argIndex:2,
argKey:"percentDataValue"},{regex:/((^|[^\\])((\\)\\)*\$trType)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$trType))/ig,argIndex:4,argKey:"trtype"},{regex:/((^|[^\\])((\\)\\)*\$tlType)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$tlType))/ig,argIndex:4,argKey:"tltype"},{regex:/((^|[^\\])((\\)\\)*\$brType)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$brType))/ig,argIndex:4,argKey:"brtype"},{regex:/((^|[^\\])((\\)\\)*\$blType)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$blType))/ig,argIndex:4,argKey:"bltype"},{regex:/((^|[^\\])((\\)\\)*\$colorRangeLabel)/ig,
escapeRegex:/((^|[^\\])((\\)\\)*\\(\$colorRangeLabel))/ig,argIndex:5,argKey:"colorRangeLabel"},{regex:/((^|[^\\])((\\)\\)*\$zdatavalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$zdatavalue))/ig,argIndex:2,argKey:"zDataValue"},{regex:/((^|[^\\])((\\)\\)*\$svalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$svalue))/ig,argIndex:3,argKey:"svalue"},{regex:/((^|[^\\])((\\)\\)*\$positiveErrorValue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$positiveErrorValue))/ig,argIndex:2,argKey:"positiveErrorValue"},{regex:/((^|[^\\])((\\)\\)*\$negativeErrorValue)/ig,
escapeRegex:/((^|[^\\])((\\)\\)*\\(\$negativeErrorValue))/ig,argIndex:2,argKey:"negativeErrorValue"},{regex:/((^|[^\\])((\\)\\)*\$datasvalue)/ig,escapeRegex:/((^|[^\\])((\\)\\)*\\(\$datasvalue))/ig,argIndex:2,argKey:"formattedsValue"}],a=[],d,f=c.length;for(d=0;d<f;d+=1)a.push(d);return function(){var d=arguments[0],f=arguments[1],h,b,e,I,l;xa(f)||(f=a);if(d)for(l=f.length,I=0;I<l;I+=1)if(e=c[f[I]])h=wa(ca((b=arguments[e.argIndex])&&b[e.argKey],"")+""),d=d.replace(e.regex,"$2$4"+(e.parsingMethod?
e.parsingMethod(h):h)),d=d.replace(e.escapeRegex,"$2$4$5");return d}}(),Va=function(){var c=M.createElement("canvas");return!(!c.getContext||!c.getContext("2d"))},Ya=function(c){var a,d,f;a=0<=c.split(",")[0].indexOf("base64")?v.atob(c.split(",")[1]):v.unescape(c.split(",")[1]);c=c.split(",")[0].split(":")[1].split(";")[0];d=new Uint8Array(a.length);for(f=0;f<a.length;f++)d[f]=a.charCodeAt(f);return new v.Blob([d],{type:c})},$a=function(){var c=v.navigator.userAgent,a;return-1!==(a=c.indexOf("Edge"))?
{name:"Edge",version:c.substring(a+5,a+11)}:-1!==(a=c.indexOf("Chrome"))?{name:"Chrome",version:c.substring(a+7,a+11)}:-1!==(a=c.indexOf("MSIE"))?{name:"ie",version:c.substring(a+5,a+9)}:-1!==(a=c.indexOf("rv"))&&-1!==c.indexOf("Trident")?{name:"ie",version:c.substring(a+5,a+9)}:-1!==(a=c.indexOf("Firefox"))?{name:"Firefox",version:c.substring(a+8,a+12)}:-1!==(a=c.indexOf("Safari"))?{name:"Safari",version:c.substring(a+7,a+11)}:{name:"default",version:"Not Known"}},Ta=function(c){var a=document.createElement("div");
a.innerHTML="<a></a>";a.firstChild.href=c;a.innerHTML=a.innerHTML;return a.firstChild},kb=function(c,a){var d,f,h,b,e;a=void 0===a?!0:a;d=/<image [^\>]*href=["']([^\>'"]*)["'][^\>]*\>/g;f=/^\s*data:([a-z]+\/[a-z]+(;[a-z\-]+\=[a-z\-]+)?)?(;base64)?,[a-z0-9\!\$\&\'\,\(\)\*\+\,\;\=\-\.\_\~\:\@\/\?\%\s]*\s*$/i;h=[];do b=d.exec(c),null!==b&&(e=b[1],f.test(e)||(a&&(e=Ta(e).href),h.push(e)));while(b&&null!==b);return h},hb=function(){var c;c={cacheCompleted:!1};return{cacheAllImages:function(a,d,f){var h,
b,e,I;d=d||!1;h=kb(a);b=h.length;if(Va()&&!d&&b)for(I=e=0;I<b;I++)(function(){var a,d;a=h[I];a in c?(e++,b===e&&(c.cacheCompleted=!0,f())):(d=new X,d.crossOrigin="",d.onload=function(){var h,I;h=document.createElement("canvas");h.width=d.width;h.height=d.height;h.getContext("2d").drawImage(this,0,0);try{I=h.toDataURL("image/png"),c[a]={loaded:!0,notCORS:!0,imageUri:I}}catch(l){c[a]={loaded:!0,notCORS:!1}}finally{e++,b===e&&(c.cacheCompleted=!0,f())}},d.onerror=function(){c[a]={loaded:!1};e++;b===
e&&(c.cacheCompleted=!0,f())},d.src=a)})();else f()},getImageCachedDetails:function(a){return c[a]},isCacheAllImagesCompleted:function(){return c.cacheCompleted}}}(),ib=hb.cacheAllImages,ob=hb.getImageCachedDetails,ba=hb.isCacheAllImagesCompleted,Ba=function(c){return c=c.replace(/<image [^\>]*\>/gi,function(c){return c=c.replace(/(:href=")([^"]*)(")/gi,function(c,a,d,f){return a+Ta(d).href+f})})},Oa=function(c){var a,d,f,h;c=Ba(c);ba();a=kb(c);for(d=0;d<a.length;d++)f=a[d],h=ob(f),void 0!==h&&h.loaded&&
h.notCORS&&h.imageUri&&(c=c.replace(f,h.imageUri));return c},Qa=function(c){var a,d;a=c;var f,h,b,e,I;d=/(<image [^\>]*href=["']([^\>'"]*)["'][^\>]*\>)/g;f=/^\s*data:([a-z]+\/[a-z]+(;[a-z\-]+\=[a-z\-]+)?)?(;base64)?,[a-z0-9\!\$\&\'\,\(\)\*\+\,\;\=\-\.\_\~\:\@\/\?\%\s]*\s*$/i;h=[];do b=d.exec(a),null!==b&&(e=b[1],I=b[2],f.test(I)||h.push(e));while(b&&null!==b);for(a=0;a<h.length;a++)d=h[a],c=c.replace(d,"");return c},I=function(c,a,d,f){var h=$a(),b=f.chartId,e=f.exportCallback,I=f.paper,l;"Chrome"===
h.name||"Firefox"===h.name?("blob"===c&&(a=v.URL.createObjectURL(a)),l=M.createElement("a"),l.download=d,l.href=a,M.body.appendChild(l),l.onclick=function(){e&&v[e]&&"function"===typeof v[e]&&v[e].call(v,{statusCode:1,statusMessage:"success",DOMId:b,width:I&&I.width,height:I&&I.height});l.parentNode.removeChild(l)},l.click()):"ie"!==h.name&&"Edge"!==h.name||!v.navigator.msSaveBlob||(c="url"===c?Ya(a):a,v.navigator.msSaveBlob(c,d)&&e&&v[e]&&"function"===typeof v[e]&&v[e].call(v,{statusCode:1,statusMessage:"success",
DOMId:b,width:I&&I.width,height:I&&I.height}))},cb=function(c,a){var d,f,h,e;h=a.exportAction;var I=a.exportTargetWindow,l=a.exportCallback,g=a.fusionCharts,D=a.paper,k=a.chartId;f=a.exportHandler;e=c.parameters;var G;if(h===O.DOWNLOAD||h===O.DOWNLOADSAVE){/(webkit|gecko)/ig.test(v.navigator.userAgent)&&"_self"===I&&(I=h=k+"export_iframe",G||(G=h=da("IFRAME",{name:h,width:"1px",height:"1px"},M.body),h.style.cssText="position:absolute;left:-10px;top:-10px;"));f=da("form",{method:"POST",action:f,target:I,
style:"display:none;"},M.body);for(d in c)da("input",{type:"hidden",name:d,value:c[d]},f);f.submit();M.body.removeChild(f);f=void 0;d=e.match(/exportfilename=([^|]+)/)[1];e=e.match(/exportformat=([^|]+)/)[1];b.raiseEvent("exported",{DOMId:k,height:D.height,width:D.width,fileName:d+"."+e,statusCode:void 0,statusMessage:void 0,notice:void 0},g.chartInstance);l&&v[l]&&"function"===typeof v[l]&&v[l].call(v,{statusCode:1,statusMessage:"success",DOMId:k,width:D&&D.width,height:D&&D.height});return!0}e=
new b.ajax(function(c){var a={};c.replace(RegExp("([^?=&]+)(=([^&]*))?","g"),function(c,d,f,h){a[d]=h});l&&v[l]&&"function"===typeof v[l]&&v[l].call(v,a);b.raiseEvent("exported",a,g.chartInstance)},function(c){c={statusCode:0,statusMessage:"failure",error:c,DOMId:k,width:D&&D.width,height:D&&D.height};l&&v[l]&&"function"===typeof v[l]&&v[l].call(v,c);b.raiseEvent("exported",c,g.chartInstance,[c])});for(d in c)c.hasOwnProperty(d)&&(c[d]=encodeURIComponent(c[d]));e.post(f,c)},vb=function(c){if("chrome"===
$a().name.toLowerCase()){var a,d,f;a=c.length;for(f=c.length-1;0<=f;f--)d=c.charCodeAt(f),127<d&&2047>=d?a++:2047<d&&65535>=d&&(a+=2),56320<=d&&57343>=d&&f--;if(2E6<a)return!0}return!1},sb=function(c,a){var d=new b.ajax(function(){},function(){}),f;for(f in c)c.hasOwnProperty(f)&&(c[f]=encodeURIComponent(c[f]));d.post(a.logHandler,c)},pb=function(c){return c="data:image/svg+xml;base64,"+v.btoa(v.unescape(encodeURIComponent('<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">'+
c)))},gb=function(){var c,a,d,f,h,b,e,I;if(this&&this!==v){this.disposing=!0;if(c=this.components)for(d in c)if(a=c[d],a instanceof Array)for(f=a.length,h=0;h<f;h++)(I=a[h])&&!this.disposing&&(I.dispose?I.dispose():gb.call(I));else a&&!a.disposing&&(a.dispose?a.dispose():gb.call(a));c=this.graphics;for(b in c)if(a=c[b])if(a.hide)a.hide(),a.followers&&a.followers[0]&&(a=a.followers[0].el)&&a.hide&&a.hide();else for(e in a)f=a[e],f.hide&&f.hide();for(d in this)delete this[d]}},qb=function(c,a){return(c.pIndex||
0)-(a.pIndex||0)},mb={},nb=$a();nb.hasCanvas=Va();nb.hasSvg=N;b.registrars.component=function(c){var a,d,f,h,b,e,I,l,g;if(c&&c.length&&c[0]&&c[0].toLowerCase&&(e=c[0].toLowerCase(),l=mb[e]||(mb[e]={}),c[1]&&c[1].toLowerCase)){e=c[1].toLowerCase();if(2==c.length){if("undefined"===typeof l[e])return}else{f=l[e]=l[e]||{constructor:function(){this.config={};this.__setDefaultConfig=function(){f&&f.defConfig&&ya(this.config,f.defConfig)};this.__setDefaultConfig()},defConfig:{}};h=f.constructor;g=f.defConfig;
"undefined"!==typeof c[3]&&(I=c[3].toLowerCase(),d=l[I]);if(I&&d){a=new d.constructor;h.prototype=a;h.prototype.constructor=h;I=c[2]||{};for(b in I)h.prototype[b]="undefined"!==typeof I[b]?I[b]:a[b];h.prototype.__base__=new d.constructor}else if(l[e])for(a in b=c[2],b)h.prototype[a]=b[a];else h.prototype=c[2],h.prototype.constructor=h;null!==c[5]&&("undefined"!==typeof c[5]&&(I=c[5].toLowerCase(),d=l[I]),d&&(d=d.defConfig,ya(g,d)));"undefined"!==typeof c[4]&&ya(g,c[4])}return l[e]&&l[e].constructor}};
b.core._setLineHeightFactor=function(a){!(a=k(a))||0>a||(c.lineHeightFactor=a)};c.ColorRange=A=function(c){this.linkedItems={iapi:c};this.configure()};A.prototype={configure:function(){var a=this.linkedItems.iapi,d=a.jsonData,f=d.colorrange&&ya({},d.colorrange).color,d=F(w(Y(d.chart.palette,0)-1,0),4),d=a.defaultPaletteOptions&&a.defaultPaletteOptions.paletteColors[d||0]||c.defaultPaletteOptions.paletteColors[d||0],h=function(c,a){return c.minvalue-a.minvalue},b=a.components,e,I,l,g,D;delete this.defaultAsigned;
d instanceof Array||(d=b.colorManager.getPlotColor(0));if(f&&0<f.length){for(I=l=f.length-1;0<=I;--I)if(a=f[I])a.minvalue=b.numberFormatter.getCleanValue(a.minvalue),a.maxvalue=b.numberFormatter.getCleanValue(a.maxvalue),null===a.minvalue&&(null!==a.maxvalue?a.minvalue=a.maxvalue:I!==l&&f.splice(I,1)),void 0!==a.label&&(a.label=fa(a.label)),void 0!==a.name&&(a.name=fa(a.name)),null!==a.maxvalue&&a.minvalue>a.maxvalue&&(g=a.minvalue,a.minvalue=a.maxvalue,a.maxvalue=g);f.sort(h);f[0].code||(f[0].code=
d[0]);void 0===ca(f[0].alpha)&&(f[0].alpha="100");I=0;for(l=f.length-1;I<l;I+=1)if(b=I+1,a=f[I],h=f[b],h.code||(h.code=d[b]),void 0===ca(h.alpha)&&(h.alpha="100"),null===a.maxvalue&&(a.maxvalue=h.minvalue),a.maxvalue>h.minvalue){if(a.maxvalue>h.maxvalue){b=ya(a);b.maxvalue=a.maxvalue;D=b.minvalue=h.maxvalue;for(g=I+2;g<l&&f[g].minvalue<D;g+=1);f.splice(g,0,b);l+=1}a.maxvalue=h.minvalue}a=f[I];null===a.maxvalue&&(a.maxvalue=a.minvalue)}f&&0<f.length||(e||(e={code:"CCCCCC",alpha:"100",bordercolor:"000000",
borderalpha:"100"}),f=[e],this.defaultAsigned=!0);this.colorArr=f},getColorObj:function(c){for(var a=this.colorArr,d=0,f=a.length,h,b,e={};d<f;d+=1){e.index=d;h=a[d];b=a[d+1];if(c<h.minvalue)return e.nextObj=h,e;if(c>=h.minvalue&&c<=h.maxvalue)return e.colorObj=h,b&&c==b.minvalue&&(e.nextObj=b,e.isOnMeetPoint=!0),e;e.prevObj=h}e.index=d-1;return e},getColorRangeArr:function(c,a){var d,f=this.colorArr,h,b,e=[],I,l;if(!this.defaultAsigned&&(c>a&&(d=c,c=a,a=d),c<a&&(h=this.getColorObj(c),b=this.getColorObj(a),
h&&b))){d=c;h=h.index;for(b=b.index;h<=b;h+=1)I=ya({},f[h]),I.minvalue!==d&&(I.minvalue=d),e.push(I),l=I,d=I.maxvalue;l.maxvalue=a}return e}};A.prototype.constructor=A;c.nonGradientColorRange=A=function(c){var a=c.sortLegend||!1,d=c.mapByCategory||!1,f=c.numberFormatter;c=(c.colorRange||{}).color;var h=this.colorArr=[],b,e,I,l,g,D,k=function(c,a){return c.maxvalue-a.maxvalue};this.mapByCategory=d;if(c&&(b=c.length)){for(e=0;e<b;e+=1)l=c[e],I=qa(l.color,l.code),g=Y(l.maxvalue),D=Y(l.minvalue),l=qa(l.label,
l.displayvalue,d?"":f.dataLabels(D)+" - "+f.dataLabels(g)),(I&&g>D||d&&l)&&h.push({code:I,maxvalue:g,minvalue:D,label:fa(l),labelId:l.toLowerCase()});h.length?a&&h.sort(k):this.noValidRange=!0}};A.prototype={getColorObj:function(c){var a=this.colorArr,d=this.gradient?1:0,f=a[d],h;if(this.mapByCategory){for(c=fa(c).toLowerCase();f;){if(f.labelId===c)return{code:f.code,seriesIndex:d};d+=1;f=a[d]}return{outOfRange:!0}}if(this.gradient){if(this.scaleMin<=c&&this.scaleMax>=c){for(;f&&f.maxvalue<c;)d+=
1,f=a[d];c=(c-f.minvalue)/f.range;a=a[d-1].codeRGB;f=f.codeRGB;d=a[0];h=a[1];a=a[2];return{code:("000000"+(d+(f[0]-d)*c<<16|h+(f[1]-h)*c<<8|a+(f[2]-a)*c).toString(16)).slice(-6)}}return{outOfRange:!0}}for(;f;){if(f.maxvalue>c&&f.minvalue<=c)return{code:f.code,seriesIndex:d};f.maxvalue===c&&(h=d);d+=1;f=a[d]}return(f=a[h])&&f.maxvalue===c?{code:f.code,seriesIndex:h}:{outOfRange:!0}}};A.prototype.constructor=A;c.priorityList=J.priorityList;c.schedular=J.schedular;b.extend(c,{BLANKSTRINGPLACEHOLDER:"#BLANK#",
BLANKSTRING:"",COLOR_BLACK:"000000",COLOR_GLASS:"rgba(255, 255, 255, 0.3)",COLOR_WHITE:"FFFFFF",COLOR_TRANSPARENT:"rgba(0,0,0,0)",HASHSTRING:"#",BREAKSTRING:"<br />",STRINGSTRING:"string",OBJECTSTRING:"object",COMMASTRING:",",ZEROSTRING:"0",SAMPLESTRING:"Ay0",TESTSTR:"Ag",ONESTRING:"1",DECIMALSTRING:".",STRINGUNDEFINED:"undefined",POSITION_TOP:"top",POSITION_RIGHT:"right",POSITION_BOTTOM:"bottom",POSITION_LEFT:"left",POSITION_CENTER:"center",POSITION_MIDDLE:"middle",POSITION_START:"start",POSITION_END:"end",
FC_CONFIG_STRING:"_FCconf",SHAPE_RECT:"rect",HUNDREDSTRING:"100",PXSTRING:"px",COMMASPACE:", ",TEXTANCHOR:"text-anchor",TOUCH_THRESHOLD_PIXELS:15,CLICK_THRESHOLD_PIXELS:5,DEFAULT_EXPORT_URL:u,DEFAULT_LOG_URL:a,EXPORTACTION:O,EXPORTMODE:{CLIENT:"client",SERVER:"server",AUTO:"auto"},LOGMODE:q,EXPORTFORMAT:{PNG:"png",SVG:"svg",JPEG:"jpeg",JPG:"jpg",PDF:"pdf",XLS:"xls"},regex:{stripWhitespace:m,dropHash:n,startsRGBA:L,cleanColorCode:g,breakPlaceholder:l,hexcode:/^#?[0-9a-f]{6}/i},fireEvent:function(a,
d,f,h){c.dem.fire(a,d,f,h)},plotEventHandler:function(a,h,e,I){h=h||{};var l=h.type,g=na(a.linkedItems.container,h,a);I=this.data("eventArgs")||I;g=ya(g,I);I=a.fireGroupEvent;var D=this.data("groupId"),k=function(a,d){h.FusionChartsPreventEvent=!0;E&&d.toolText&&c.toolTip&&c.toolTip.preventTooltip()};"index"in g&&!("dataIndex"in g)&&(g.dataIndex=g.index);"value"in g&&!("dataValue"in g)&&(g.dataValue=g.value);e=qa(e,"dataplotclick").toLowerCase();"dataplotrollover"===e?(h.FusionChartsPreventEvent=
!1,I?b.raiseEventGroup(D,e,g,a.chartInstance,void 0,void 0,k):b.raiseEvent(e,g,a.chartInstance,void 0,void 0,k)):I&&"dataplotclick"!==e?b.raiseEventGroup(D,e,g,a.chartInstance):b.raiseEvent(e,g,a.chartInstance);if(("click"===l||"mouseup"===l||"touchend"===l)&&/click/i.test(e)){if(d&&!f){e=(new Date).getTime();if(this.lastClickTimeStamp&&400>e-this.lastClickTimeStamp){h&&(h.originalEvent||h).preventDefault();return}this.lastClickTimeStamp=e}a.linkedItems&&a.linkedItems.linkClickFN.call({link:g.link},
a)}},getEventCoordinate:ka,getMouseCoordinate:na,addEvent:va,removeEvent:ha,getTouchEvent:ra,extend2:ya,deltend:function(c,a){if("object"!==typeof c||"object"!==typeof a)return null;W(c,a);return c},imprint:function(c,a,d){var f;if("object"!==typeof c||null===c)return a;if("object"!==typeof a||null===a)return c;for(f in a)if(void 0===c[f]||!d&&null===c[f])c[f]=a[f];return c},pluck:qa,pluckNumber:Y,getFirstDefinedValue:function(){var c,a,d;a=0;for(d=arguments.length;a<d;a+=1)if((c=arguments[a])||!1===
c||0===c||""==c)return c},createElement:da,hashify:oa,dehashify:function(c){return c&&c.replace(/^#?([a-f0-9]+)/ig,"$1")||"none"},pluckFontSize:function(){var c,a,d;a=0;for(d=arguments.length;a<d;a+=1)if(((c=arguments[a])||!1===c||0===c)&&!isNaN(c=Number(c)))return 1>c?1:c;return 1},getValidValue:ca,getPosition:sa,getViewPortDimension:Ra,bindSelectionEvent:function(c,a){a=a||{};var d=c.config,f=c.linkedItems,h=f.container,b=d.zoomType,e=ya({},a.attr||{}),I=e["stroke-width"]=Y(e.strokeWidth,e["stroke-width"],
1),f=f.eventListeners||(f.eventListeners=[]),l=sa(h,void 0,c);a=ya({chart:c,zoomX:/x/.test(b),zoomY:/y/.test(b),canvasY:d.canvasTop,canvasX:d.canvasLeft,canvasW:d.canvasWidth,canvasH:d.canvasHeight,canvasX2:d.canvasLeft+d.canvasWidth,canvasY2:d.canvasTop+d.canvasHeight,strokeWidth:I,chartPosLeft:l.left,chartPosTop:l.top,attr:e},a);e.stroke=ma(e.stroke,"rgba(51,153,255,0.8)");e.fill=ma(e.fill,"rgba(185,213,241,0.3)");e.ishot=!0;h&&(ha(h,"pointerdrag",G),f.push(va(h,"pointerdrag",G,a)));d.link&&(ha(c.linkedItems.container,
"mouseup mousedown",aa),f.push(va(c.linkedItems.container,"mouseup mousedown",aa,a)))},createContextMenu:function(a){var d=a.chart,f=d.smartLabel,h=d.logic.hcJSON&&d.logic.hcJSON.chart.useRoundEdges,b=c.Raphael,e=function(c){var a=c.menufillcolor&&oa(c.menufillcolor),d=c.menulabelcolor&&oa(c.menulabelcolor),f=c.menufillhovercolor&&oa(c.menufillhovercolor);c=c.menulabelhovercolor&&oa(c.menulabelhovercolor);return{attrs:{backgroundColor:a,color:d},hover:{backgroundColor:f,color:c}}}(d.definition.chart),
I=function(c,a,d){a=a||{};c=(c=(c=c&&b.tintshade(c.color,.7))&&b.getRGB(c))&&"rgb("+[c.r,c.g,c.b].join()+")";return{backgroundColor:a.backgroundHoverColor||d.backgroundColor||c||"rgb(64, 64, 64)",color:a.hoverColor||d.color||"#FFFFFF"}}(a.basicStyle,a.hover,e.hover),l=function(c,a,d){a=ya({},a||{});a=ya(a,c);return{fontFamily:a.fontFamily||"Verdana,sans",fontSize:a.fontSize||"10px",color:a.color||d.color||"#000000",backgroundColor:a.backgroundColor||d.backgroundColor||"rgb(255, 255, 255)"}}(a.basicStyle,
a.attrs,e.attrs),g={textAlign:"left",align:"left",paddingLeft:"5px",paddingRight:"5px",paddingTop:"5px",cursor:"pointer",borderWidth:"0px"},D=a.items,k=a.position,G=a.verticalPadding||3,t=a.horizontalPadding||6,ba={},Ba,p,z,F,m,B,Oa,aa,K,n,R,Qa,P;if(d)Ba=sa(d.linkedItems.container);else return!1;F=function(){var a=ba.items,d=a.length,b=0,e=0,I=0,D,k;ba.menuItems||(ba.menuItems=[]);for(f.setStyle(l);d--;)D=a[d],D=f.getOriSize(D.text),I||(I=D.height+2*G),b+=I,e=w(e,D.width+2*t);ba.height=b;ba.width=
e;ba.itemH=I;this.style.width=e+"px";ba.menuRect||(b=ba.menuRect=M.createElement("div"),b.style.border="1px solid rgb(100, 100, 100)",h&&(b.style.mozBorderRadius="4px",b.style.webkitBorderRadius="4px",b.style.borderRadius="4px",b.style.overflow="hidden"),E&&!N?b.style.filter="progid:DXImageTransform.Microsoft.Shadow(Color=#999999,direction=135,strength=3)":(b.style.mozBoxShadow="3px 3px 3px #999",b.style.webkitBoxShadow="3px 3px 3px #999",b.style.boxShadow="3px 3px 3px #999"),this.appendChild(b));
e=a.length;for(d=0;d<e;d+=1)if(D=a[d],ba.menuItems[d])ba.menuItems[d].label.innerHTML=D.text;else{ba.menuItems[d]={};b=ba.menuItems[d].box=M.createElement("div");b.style.height=I+"px";b.style.lineHeight=I+"px";for(k in g)b.style[k]=g[k];for(k in l)b.style[k]=l[k];ba.menuRect.appendChild(b);b.innerHTML=D.text;c.dem.listen(b,"click",P);c.dem.listen(b,"pointerhover",n);ba.menuItems[d].box._itemIdx=d}for(;ba.menuItems[d];)ba.menuItems[d].box.parentNode.removeChild(ba.menuItems[d].box),ba.menuItems.splice(d,
1)};m=function(){z||(z=M.createElement("div"),z.style.position="absolute",z.style.zIndex="50",z.style.display="none",d.linkedItems.container.appendChild&&d.linkedItems.container.appendChild(z));return z};B=function(){p=setTimeout(ba.hide,800)};Oa=function(){p&&clearTimeout(p)};aa=function(c){var a=c.x;c=c.y;var f={x:a,y:c},h=ba.width,b=ba.height,e=d.chartHeight,I=d.chartWidth;a+h>I&&0<a-h?f.x-=h:a+h>I&&(f.x=0);c+b>e&&0<c-b&&(f.y-=b);return f};K=function(){ba.hide()};n=function(c){c.target&&c.target.parentNode&&
("start"===c.state?R:Qa).call(c.target)};R=function(){var c=ba.menuItems[this._itemIdx],a;Oa();for(a in I)c.box.style[a]=I[a]};Qa=function(){var c=ba.menuItems[this._itemIdx],a;for(a in l)c.box.style[a]=l[a];B()};P=function(c){var a=ba.items[this._itemIdx];a.onclick&&a.onclick.call(a,c);c.originalEvent.stopPropagation?c.originalEvent.stopPropagation():c.originalEvent.cancelBubble=!0;ba.hide()};ba.showItem=function(c){c=this.menuItems[c];var a=this.height,d=this.itemH;c&&c._isHidden&&(c.box.style.display=
"",this.height=a+d,c._isHidden=!1,c=aa(k),this.left=c.x,this.top=c.y)};ba.hideItem=function(c){c=this.menuItems[c];var a=this.height,d=this.itemH;c&&!c._isHidden&&(c.box.style.display="none",this.height=a-d,c._isHidden=!0,c=aa(k),this.left=c.x,this.top=c.y)};ba.redraw=function(){var c=this.menuContainer;this.items=D;c?F.call(this.menuContainer):k&&void 0!==k.x&&void 0!==k.y?(this.menuContainer=m(),F.call(this.menuContainer),c=aa(k),this.left=c.x,this.top=c.y,this.menuContainer.style.left=this.left+
"px",this.menuContainer.style.top=this.top+"px"):(this.menuContainer=m(),F.call(this.menuContainer))};ba.show=function(c){var a=this;c&&void 0!==c.x&&void 0!==c.y?(c=aa(c),a.menuContainer.style.left=c.x+"px",a.menuContainer.style.top=c.y+"px"):(a.menuContainer.style.left=a.left+"px",a.menuContainer.style.top=a.top+"px");a.menuContainer.style.display="";setTimeout(function(){a.visible=!0;b.click(K)},400)};ba.hide=function(){this.visible&&(this.visible=!1,ba.menuContainer.style.display="none",ba.menuContainer.style.left=
-ba.width+"px",ba.menuContainer.style.top=-ba.height+"px",b.unclick(K))};ba.update=function(c){c&&c.length&&(this.items=c,this.redraw())};ba.updatePosition=function(c){var a=Ba.left,f=Ba.top;Ba=sa(d.linkedItems.container);c?(k=c,c=aa(c),this.left=c.x,this.top=c.y):(this.left-=a-Ba.left,this.top-=f-Ba.top)};ba.add=function(a){var d=this.menuItems,h=d.length,b;f.setStyle(l);this.width=w(this.width,f.getOriSize(a.text).width);d[h]={};d=d[h].box=M.createElement("div");d.style.height=this.itemH+"px";d.style.lineHeight=
this.itemH+"px";for(b in g)d.style[b]=g[b];for(b in l)d.style[b]=l[b];ba.menuRect.appendChild(d);d.innerHTML=a.text;c.dem.listen(d,"click",P);c.dem.listen(d,"pointerhover",n);ba.menuItems[h].box._itemIdx=h;this.height+=this.itemH};ba.removeItems=function(){for(var a=this.menuItems,d=a&&a.length,f;d--;)f=a[d],c.dem.unlisten(f.box,"click",P),c.dem.unlisten(f.box,"pointerhover",n),f.box&&f.box.parentNode&&f.box.parentNode.removeChild(f.box);delete this.menuItems;delete this.items};ba.setPosition=function(c){void 0!==
c.x&&void 0!==c.y&&(this.menuContainer.style.x=c.x,this.menuContainer.style.y=c.y)};ba.destroy=function(){this.removeItems();this.menuContainer.parentNode.removeChild(this.menuContainer)};D&&D.length&&(ba.redraw(),ba.hide());return ba},each:function(c,a,d,f){var h;d||(d=c);f||(f={});if(xa(c))for(h=0;h<c.length;h+=1){if(!1===a.call(d,c[h],h,c,f))return h}else if(null!==c&&void 0!==c)for(h in c)if(!1===a.call(d,c[h],h,c,f))return h},getDefinedColor:function(c,a){return c||0===c||""===c?c:a},getFirstValue:ma,
getFirstColor:Aa,getColorCodeString:function(c,a){var d="",f,h,b=0,e=a.split(",");for(h=e.length;b<h;b+=1)f=e[b].split("-"),d=2===f.length?"-1"!==f[0].indexOf("dark")?d+(Ka(c,100-parseInt(f[1],10))+","):d+(ta(c,100-parseInt(f[1],10))+","):d+(e[b]+",");return d.substring(0,d.length-1)},pluckColor:function(c){if(ca(c))return c=c.split(",")[0],c=c.replace(m,""),""==c&&(c="000000"),c.replace(n,"#")},toRaphaelColor:La,gradientify:Ja,trimString:function(c){c=c.replace(/^\s\s*/,"");for(var a=/\s/,d=c.length;a.test(c.charAt(--d)););
return c.slice(0,d+1)},getFirstAlpha:ua,parsePointValue:za,parseUnsafeString:fa,parseTooltext:eb,toPrecision:function(c,a){var d=V(10,a);return p(c*d)/d},hasTouch:Z,CREDIT_HREF:P,CREDIT_STRING:"",getSentenceCase:function(c){c=c||"";return c.charAt(0).toUpperCase()+c.substr(1)},getCrispValues:function(c,a,d){var f=d%2/2;d=p(c+f)-f;c=p(c+a+f)-f-d;return{position:d,distance:c}},regescape:function(c){return c&&c.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},regReplaceEscape:wa,getImageURL:la,
isArray:xa,preDefStr:{colors:{B90000:"B90000",FFFFFF:"FFFFFF",AAAAAA:"AAAAAA",c000000:"000000"},defaultFontStr:"Verdana,sans",line:"line",bar:"bar",column:"column",volume:"volume",HUNDREDSTRING:"100",SEVENTYSTRING:"70",NINETYSTRING:"90",AUTOSTRING:"auto",configStr:"config",animationObjStr:"animationObj",showHoverEffectStr:"showHoverEffect",hiddenStr:"hidden",visibleStr:"visible",columnStr:"columns",barStr:"bars",barHotStr:"bar-hot",colHotStr:"col-hot",shadowStr:"shadow",dataLabelStr:"datalabel",errorBarStr:"errorBar",
errorHotStr:"error-hot",errorShadowStr:"error-shadow",negativeValueStr:"negative-values",positiveValueStr:"positive-values",zeroPlaneStr:"zero-plane",categoryPlotsStr:"categoryplots",noneStr:"NONE",setRolloverAttrStr:"setRolloverAttr",setRolloutAttrStr:"setRolloutAttr",elementStr:"element",hotElementStr:"hotElement",strokeWidthStr:"stroke-width",strokeDashStr:"stroke-dasharray",strokeLineJoinStr:"stroke-linejoin",miterStr:"miter",visiblilityStr:"visibility",ROUND:"round",PERCENTAGESTRING:"%",pStr:"p",
sStr:"s",divLineAlpha3DStr:"divLineAlpha3D",divLineAlphaStr:"divLineAlpha",altVGridColorStr:"altVGridColor",altVGridAlphaStr:"altVGridAlpha",altHGridColorStr:"altHGridColor",altHGridAlphaStr:"altHGridAlpha",PLOTFILLCOLOR_STR:"plotFillColor",UNDERSCORE:"_",gaugeFillColorStr:"gaugeFillColor",gaugeBorderColorStr:"gaugeBorderColor",NORMAL:"normal",BOLD:"bold",POINTER:"pointer",DEFAULT:"default",POSITION_MIDDLE:"middle",POSITION_START:"start",POSITION_TOP:"top",POSITION_BOTTOM:"bottom",POSITION_END:"end"},
stubFN:function(){},falseFN:function(){return!1},stableSort:function(c,a){var d=c.length,f;for(f=0;f<d;f++)c[f].ssI=f;c.sort(function(c,d){var f=a(c,d);return 0===f?c.ssI-d.ssI:f});for(f=0;f<d;f++)delete c[f].ssI},hasSVG:N,CREDIT_REGEX:S,isIE:E,isIE11:r,lineHeightFactor:1.2,getLinkAction:function(a,d){var f=function(c){return c};return function(h){var e=a.chart||a.map||{},I=Y(e.unescapelinks,1),e=Y(e.clickurloverridesplotlinks,0),l=ma(this.link,"");h=h.config&&h.config.link||"";var g=e?qa(h,l):qa(l,
h),D=g,k,G,ba,t,Ba,p,z,F,m,B;void 0!==g&&(I&&(g=v.decodeURIComponent?v.decodeURIComponent(g):v.unescape(g)),g=g.replace(/^\s+/,"").replace(/\s+$/,""),-1!==g.search(/^[a-z]*\s*[\-\:]\s*/i)&&(Ba=g.split(/\s*[\-\:]\s*/)[0].toLowerCase(),B=Ba.length),c.schedular.addJob(function(){var c;switch(Ba){case "j":ea(g);break;case "javascript":ga(g.replace(/^javascript\s*\:/i,""));break;case "n":g.replace(/^n\s*\-/i,"n-");v.open(f(g.slice(2),I));break;case "f":g=g.replace(/^f\s*\-/i,"f-");k=g.indexOf("-",2);-1!==
k?(G=g.substr(2,k-2))&&v.frames[G]?v.frames[G].location=f(g.slice(k+1),I):v.open(f(g.slice(k+1),I),G):v.open(f(g.slice(2),I));break;case "p":g=g.replace(/p\s*\-/i,"p-");k=g.indexOf("-",2);ba=g.indexOf(",",2);-1===k&&(k=1);t=f(g.slice(k+1),I);(c=v.open(t,g.substr(2,ba-2),g.substr(ba+1,k-ba-1)))&&c.focus();break;case "newchart":case "newmap":":"===g.charAt(B)&&(k=g.indexOf("-",B+1),m=g.substring(B+1,k),B=k);k=g.indexOf("-",B+1);p=g.substring(B+1,k).toLowerCase();switch(p){case "xmlurl":case "jsonurl":F=
g.substring(k+1,g.length);break;case "xml":case "json":c=z=g.substring(k+1,g.length);var h={chart:{}},e;c=c.toLowerCase();if(a.linkeddata)for(e=0;e<a.linkeddata.length;e+=1)a.linkeddata[e].id.toLowerCase()===c&&(h=a.linkeddata[e].linkedchart||a.linkeddata[e].linkedmap);F=h;p="json"}b.raiseEvent("linkedChartInvoked",{alias:m,linkType:p.toUpperCase(),data:F},d);break;default:v.location.href=g}b.raiseEvent("linkClicked",{linkProvided:D,linkInvoked:g,linkAction:Ba&&Ba.toLowerCase()},d)},c.priorityList.chartEvents))}},
graphics:{parseAlpha:Ha,convertColor:pa,getDarkColor:ta,getLightColor:Ka,mapSymbolName:function(c,a){var d="circle";c=za(c);3<=c&&(d=(a?"spoke_":"poly_")+c);return d},getColumnColor:function(c,a,d,f,h,b,e,I,l){var g,D;g=c.split(",");D=a.split(",");b=b.split(",");e=e.split(",");c=c.replace(/\s/g,"").replace(/\,$/,"");l?I={FCcolor:{color:g[0],alpha:D[0]}}:h?(c=g[0],D=D[0],I={FCcolor:{color:ta(c,75)+","+Ka(c,10)+","+ta(c,90)+","+Ka(c,55)+","+ta(c,80),alpha:D+","+D+","+D+","+D+","+D,ratio:"0,11,14,57,18",
angle:I?"90":"0"}},b=[ta(c,70)]):(a=Ha(a,g.length),I={FCcolor:{color:c,alpha:a,ratio:d,angle:I?-f:f}});return[I,{FCcolor:{color:b[0],alpha:e[0]}}]},getPointColor:function(c,a){var d,f;c=Aa(c);a=ua(a);d=Ka(c,70);f=ta(c,50);return{FCcolor:{gradientUnits:"objectBoundingBox",cx:.4,cy:.4,r:"100%",color:d+","+f,alpha:a+","+a,ratio:void 0,radialGradient:!0}}},getAngle:function(c,a,d){c=180*Math.atan(a/c)/Math.PI;2==d?c=180-c:3==d?c+=180:4==d&&(c=360-c);return c},parseColor:Fa,getValidColor:function(c){return B.test(Fa(c))&&
c},HSBtoRGB:function(c){var a=c[0],d=0,f=0,h=0,b=[],b=c[1]/100;c=c[2]/100;var e=a/60-Math.floor(a/60),I=c*(1-b),l=c*(1-e*b),b=c*(1-(1-e)*b);switch(Math.floor(a/60)%6){case 0:d=c;f=b;h=I;break;case 1:d=l;f=c;h=I;break;case 2:d=I;f=c;h=b;break;case 3:d=I;f=l;h=c;break;case 4:d=b;f=I;h=c;break;case 5:d=c,f=I,h=l}return b=[p(255*d),p(255*f),p(255*h)]},RGBtoHSB:function(c){var a=c[0],d=c[1];c=c[2];var f=Math.max(Math.max(a,d),c),h=Math.min(Math.min(a,d),c),b=0,e=0;f==h?b=0:f==a?b=(60*(d-c)/(f-h)+360)%
360:f==d?b=60*(c-a)/(f-h)+120:f==c&&(b=60*(a-d)/(f-h)+240);e=0===f?0:(f-h)/f;return[p(b),p(100*e),p(f/255*100)]},RGBtoHex:function(c){return("000000"+(c[0]<<16|c[1]<<8|c[2]).toString(16)).slice(-6)},rawRGBtoHEX:function(c){c=c.match(/[\d+]+/g).splice(0,3);return("000000"+(c[0]<<16|c[1]<<8|c[2]).toString(16)).slice(-6)},HEXtoRGB:Ea,getCubePathOutline:function(c){var a=c[2]||0,d=c[4]||0,f=c[5]||0;return["M",c[0]||0,c[1]||0,"l",d,-f,a,0,0,c[3]||0,-d,f,-a,0,"Z"]}},appliedCSS:["fontFamily","fontSize",
"fontWeight","fontStyle"],setImageDisplayMode:function(c,a,d,f,h,b,e,I){var l=f/100*I.width;f=f/100*I.height;I={};var g,D=b-2*h;g=e-2*h;var k=function(c,a,d,f,b,e){var I={};switch(c){case "top":I.y=h;break;case "bottom":I.y=e-f-h;break;case "middle":I.y=(e-f)/2}switch(a){case "left":I.x=h;break;case "right":I.x=b-d-h;break;case "middle":I.x=(b-d)/2}return I};switch(c){case "center":I.width=l;I.height=f;I.y=e/2-f/2;I.x=b/2-l/2;break;case "stretch":I.width=b-2*h;I.height=e-2*h;I.y=h;I.x=h;break;case "tile":I.width=
l;I.height=f;I.tileInfo={};I.tileInfo.xCount=c=Math.ceil(D/l);I.tileInfo.yCount=g=Math.ceil(g/f);a=k(a,d,l*c,f*g,b,e);I.y=a.y;I.x=a.x;break;case "fit":c=l/f>D/g?D/l:g/f;I.width=l*c;I.height=f*c;a=k(a,d,I.width,I.height,b,e);I.y=a.y;I.x=a.x;break;case "fill":c=l/f>D/g?g/f:D/l;I.width=l*c;I.height=f*c;a=k(a,d,I.width,I.height,b,e);I.y=a.y;I.x=a.x;break;default:a=k(a,d,l,f,b,e),I.width=l,I.height=f,I.y=a.y,I.x=a.x}return I},setLineHeight:Da,parsexAxisStyles:Ga,supportedStyle:{font:"font",fontFamily:"font-family",
"font-family":"font-family",fontWeight:"font-weight","font-weight":"font-weight",fontSize:"font-size","font-size":"font-size",lineHeight:"line-height","line-height":"line-height",textDecoration:"text-decoration","text-decoration":"text-decoration",color:"color",whiteSpace:"white-space","white-space":"white-space",padding:"padding",margin:"margin",background:"background",backgroundColor:"background-color","background-color":"background-color",backgroundImage:"background-image","background-image":"background-image",
backgroundPosition:"background-position","background-position":"background-position",backgroundPositionLeft:"background-position-left","background-position-left":"background-position-left",backgroundPositionTop:"background-position-top","background-position-top":"background-position-top",backgroundRepeat:"background-repeat","background-repeat":"background-repeat",border:"border",borderColor:"border-color","border-color":"border-color",borderStyle:"border-style","border-style":"border-style",borderThickness:"border-thickness",
"border-thickness":"border-thickness",borderTop:"border-top","border-top":"border-top",borderTopColor:"border-top-color","border-top-color":"border-top-color",borderTopStyle:"border-top-style","border-top-style":"border-top-style",borderTopThickness:"border-top-thickness","border-top-thickness":"border-top-thickness",borderRight:"border-right","border-right":"border-right",borderRightColor:"border-right-color","border-right-color":"border-right-color",borderRightStyle:"border-right-style","border-right-style":"border-right-style",
borderRightThickness:"border-right-thickness","border-right-thickness":"border-right-thickness",borderBottom:"border-bottom","border-bottom":"border-bottom",borderBottomColor:"border-bottom-color","border-bottom-color":"border-bottom-color",borderBottomStyle:"border-bottom-style","border-bottom-style":"border-bottom-style",borderBottomThickness:"border-bottom-thickness","border-bottom-thickness":"border-bottom-thickness",borderLeft:"border-left","border-left":"border-left",borderLeftColor:"border-left-color",
"border-left-color":"border-left-color",borderLeftStyle:"border-left-style","border-left-Style":"border-left-style",borderLeftThickness:"border-left-thickness","border-left-thickness":"border-left-thickness"},getAxisLimits:Ua,createTrendLine:ab,getDashStyle:Xa,axisLabelAdder:Na,chartAPI:bb,createDialog:Pa,isCanvasElemSupported:Va,componentDispose:gb,componentConfigurer:function(c){var a,d,f=[],h,b,e,I={};c=c||this;a=c.components;for(e in a)if(d=a[e],d instanceof Array)for(b=d.length,h=0;h<b;h+=1)f.push(d[h]);
else f.push(d);f.sort(qb);b=f.length;for(h=0;h<b;h+=1)d=f[h],a=d.customConfigFn,null!==a&&(a&&c[a]?I[a]||(c[a](),I[a]=!0):d.configure&&d.configure())},svgStrToDataUrl:pb,createExportActionOldString:function(c){return{download:O.DOWNLOAD,"download-save":O.DOWNLOAD,save:O.SAVE}[c]},createVersionNumberString:function(){var c;c=Q.version;return[c[0],c[1],c[2]].join(".")},cacheAllImages:ib,makeImageUrlsAbsolute:Ba,embedImagesWithNonDataURL:Oa,replaceImagesWithNonDataUrl:function(c){c=Oa(c);return c=Qa(c)},
hasUndownloadableImage:function(c){c=Oa(c);return c!==Qa(c)},isImageNotCORS:function(c){c=ob(c);return ba()?c.loaded?c.notCORS:!1:null},logCharts:function(c,a){a.logEnabled&&a.logMode!==q.SERVER&&sb(c,a)},logChartsWithoutCheck:sb,getBrowserDetails:$a,dataurlToBlob:Ya,downloadCharts:function(c,a,d,f,h){a&&!vb(a)?I(c,a,d,h):f&&cb(f,h)},isDataURITooLong:vb,browserDetails:nb,drawSvgOnCanvas:function(c,a,d,f,h,b,e){if("ie"==nb.name)new D(c,a,d,f,h,b,function(){e()});else{var I,l;c=pb(c);I=a.getContext("2d");
l=new X;l.onload=function(){I.drawImage(l,d,f,h,b);e()};l.onerror=function(){};l.src=c}},executeJS:ea,pseudoEval:ga});v.getComputedStyle||(v.getComputedStyle=function(c){this.el=c;this.getPropertyValue=function(a){var d=/(\-([a-z]){1})/g;"float"==a&&(a="styleFloat");d.test(a)&&(a=a.replace(d,function(c,a,d){return d.toUpperCase()}));return c.currentStyle[a]?c.currentStyle[a]:null};return this})}]);Q.register("module",["private","modules.renderer.js-mousetracker",function(){var b=this.hcLib,v=b.addEvent,
J=b.removeEvent,C=b.parseConfiguration,H={};Q.register("component",["tracker","mouse",{pIndex:1,init:function(b){this.eventsList="mousedown touchstart mouseup touchend mousemove touchmove click".split(" ");this.linkedItems={chart:b}},configure:function(){this.__setDefaultConfig();C(H,this.config,this.linkedItems.chart.config);this._addEvents()},_mouseEvtHandler:function(b){b.data.chart._mouseEvtHandler(b)},_getMouseEvents:function(b,u,a){var v=this._lastDatasetIndex,q=this._lastPointIndex,M={fireOut:!1,
events:[]};b=b.type;if(this.hasTouchEvent&&("mousedown"===b||"mouseout"===b))return M;switch(b){case "click":M.events.push("click");break;case "touchmove":case "mousemove":v===u&&q===a?M.events.push("mousemove"):(M.events.push("mouseover"),M.fireOut=!0);break;case "touchstart":this.hasTouchEvent=!0;case "mousedown":if(v!==u||q!==a)M.fireOut=!0,M.events.push("mouseover");M.events.push("mousedown");break;case "touchend":case "mouseup":M.events.push("mouseup");break;case "mouseout":if(v!==u||q!==a)M.fireOut=
!0,M.events.push("mouseover")}return M},_addEvents:function(){var b=this.linkedItems.chart,u=b.linkedItems.container,a=this.eventsList;b.config.enableMouseOutEvent&&a.push("mouseout");this._removeListners();v(u,a.join(" "),this._mouseEvtHandler,{chart:b,mouseTracker:this})},_removeListners:function(){var b=this.linkedItems.chart.linkedItems.container,u=this.eventsList,a,v=u.length;for(a=0;a<v;a+=1)J(b,u[a],this._mouseEvtHandler)},dispose:function(){this._removeListners()}},void 0,{stickytracking:void 0}])}]);
Q&&Q.register("module",["private","vendor.redraphael",function(){var b=this.hcLib,v=this.window,J=v.Raphael,C;(function(v){(function(b,u){var a=/[\.\/]/,v=function(){},q=function(a,b){return a-b},M,C,N={n:{}},E=function(a,b){a=String(a);var m=C,n=Array.prototype.slice.call(arguments,2),L=E.listeners(a),g=0,l,B=[],e={},V=[],p=M;M=a;for(var u=C=0,K=L.length;u<K;u++)"zIndex"in L[u]&&(B.push(L[u].zIndex),0>L[u].zIndex&&(e[L[u].zIndex]=L[u]));for(B.sort(q);0>B[g];)if(l=e[B[g++]],V.push(l.apply(b,n)),C)return C=
m,V;for(u=0;u<K;u++)if(l=L[u],"zIndex"in l)if(l.zIndex==B[g]){V.push(l.apply(b,n));if(C)break;do if(g++,(l=e[B[g]])&&V.push(l.apply(b,n)),C)break;while(l)}else e[l.zIndex]=l;else if(V.push(l.apply(b,n)),C)break;C=m;M=p;return V.length?V:null};E._events=N;E.listeners=function(b){b=b.split(a);var k=N,m,n,L,g,l,B,e,q=[k],p=[];L=0;for(g=b.length;L<g;L++){e=[];l=0;for(B=q.length;l<B;l++)for(k=q[l].n,m=[k[b[L]],k["*"]],n=2;n--;)if(k=m[n])e.push(k),p=p.concat(k.f||[]);q=e}return p};E.on=function(b,k){b=
String(b);if("function"!=typeof k)return function(){};for(var m=b.split(a),n=N,L=0,g=m.length;L<g;L++)n=n.n,n=n.hasOwnProperty(m[L])&&n[m[L]]||(n[m[L]]={n:{}});n.f=n.f||[];L=0;for(g=n.f.length;L<g;L++)if(n.f[L]==k)return v;n.f.push(k);return function(a){+a==+a&&(k.zIndex=+a)}};E.f=function(a){var b=[].slice.call(arguments,1);return function(){E.apply(null,[a,null].concat(b).concat([].slice.call(arguments,0)))}};E.stop=function(){C=1};E.nt=function(a){return a?(new RegExp("(?:\\.|\\/|^)"+a+"(?:\\.|\\/|$)")).test(M):
M};E.nts=function(){return M.split(a)};E.off=E.unbind=function(b,k){if(b){var m=b.split(a),n,L,g,l,B,e,q=[N];l=0;for(B=m.length;l<B;l++)for(e=0;e<q.length;e+=g.length-2){g=[e,1];n=q[e].n;if("*"!=m[l])n[m[l]]&&g.push(n[m[l]]);else for(L in n)n.hasOwnProperty(L)&&g.push(n[L]);q.splice.apply(q,g)}l=0;for(B=q.length;l<B;l++)for(n=q[l];n.n;){if(k){if(n.f){e=0;for(m=n.f.length;e<m;e++)if(n.f[e]==k){n.f.splice(e,1);break}!n.f.length&&delete n.f}for(L in n.n)if(n.n.hasOwnProperty(L)&&n.n[L].f){g=n.n[L].f;
e=0;for(m=g.length;e<m;e++)if(g[e]==k){g.splice(e,1);break}!g.length&&delete n.n[L].f}}else for(L in delete n.f,n.n)n.n.hasOwnProperty(L)&&n.n[L].f&&delete n.n[L].f;n=n.n}}else E._events=N={n:{}}};E.once=function(a,b){var m=function(){E.unbind(a,m);return b.apply(this,arguments)};return E.on(a,m)};E.version="0.4.2";E.toString=function(){return"You are running Eve 0.4.2"};"undefined"!=typeof module&&module.exports?module.exports=E:b.eve=E})(this,!0);"undefined"===typeof v&&"object"===typeof window&&
(v=window);(function(b,u,a){u(b,"object"===typeof module&&"undefined"!==typeof module.exports?module.exports:b.eve)})(v,function(A,u){function a(c){var d,f;void 0===a._url&&(a._url="");if(a.is(c,"function"))return p?c():u.on("raphael.DOMload",c);if(a.is(c,t))return a._engine.create[T](a,c.splice(0,3+a.is(c[0],K))).add(c);d=Array.prototype.slice.call(arguments,0);return a.is(d[d.length-1],"function")?(f=d.pop(),p?f.call(a._engine.create[T](a,d)):u.on("raphael.DOMload",function(){f.call(a._engine.create[T](a,
d))})):a._engine.create[T](a,arguments)}function J(c){this._comparator=c;this._elements=[]}function q(){return this.hex}function M(c,a){for(var d=[],f=0,h=c.length;h-2*!a>f;f+=2){var b=[{x:+c[f-2],y:+c[f-1]},{x:+c[f],y:+c[f+1]},{x:+c[f+2],y:+c[f+3]},{x:+c[f+4],y:+c[f+5]}];a?f?h-4==f?b[3]={x:+c[0],y:+c[1]}:h-2==f&&(b[2]={x:+c[0],y:+c[1]},b[3]={x:+c[2],y:+c[3]}):b[0]={x:+c[h-2],y:+c[h-1]}:h-4==f?b[3]=b[2]:f||(b[0]={x:+c[f],y:+c[f+1]});d.push(["C",(-b[0].x+6*b[1].x+b[2].x)/6,(-b[0].y+6*b[1].y+b[2].y)/
6,(b[1].x+6*b[2].x-b[3].x)/6,(b[1].y+6*b[2].y-b[3].y)/6,b[2].x,b[2].y])}return d}function U(c,a,d,f,h,b,e,I,l){null==l&&(l=1);l=(1<l?1:0>l?0:l)/2;for(var g=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],D=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],k=0,G=0;12>G;G++)var ba=l*g[G]+l,t=ba*(ba*(-3*c+9*d-9*h+3*e)+6*c-12*d+6*h)-3*c+3*d,ba=ba*(ba*(-3*a+9*f-9*b+3*I)+6*a-12*f+6*b)-3*a+3*f,k=k+D[G]*oa(t*t+ba*ba);return l*k}function N(c,a,d,f,h,
b,e,I,l){if(!(0>l||U(c,a,d,f,h,b,e,I)<l)){var g=.5,D=1-g,k;for(k=U(c,a,d,f,h,b,e,I,D);.01<ra(k-l);)g/=2,D+=(k<l?1:-1)*g,k=U(c,a,d,f,h,b,e,I,D);return D}}function E(c,d,f){c=a._path2curve(c);d=a._path2curve(d);for(var h,b,e,I,l,g,D,k,G,ba,t=f?0:[],Ba=0,p=c.length;Ba<p;Ba++)if(G=c[Ba],"M"==G[0])h=l=G[1],b=g=G[2];else{"C"==G[0]?(G=[h,b].concat(G.slice(1)),h=G[6],b=G[7]):(G=[h,b,h,b,l,g,l,g],h=l,b=g);for(var z=0,F=d.length;z<F;z++)if(ba=d[z],"M"==ba[0])e=D=ba[1],I=k=ba[2];else{"C"==ba[0]?(ba=[e,I].concat(ba.slice(1)),
e=ba[6],I=ba[7]):(ba=[e,I,e,I,D,k,D,k],e=D,I=k);var m;var B=G,Oa=ba;m=f;var w=a.bezierBBox(B),aa=a.bezierBBox(Oa);if(a.isBBoxIntersect(w,aa)){for(var w=U.apply(0,B),aa=U.apply(0,Oa),w=va(~~(w/5),1),aa=va(~~(aa/5),1),K=[],n=[],R={},Qa=m?0:[],P=0;P<w+1;P++){var Ra=a.findDotsAtSegment.apply(a,B.concat(P/w));K.push({x:Ra.x,y:Ra.y,t:P/w})}for(P=0;P<aa+1;P++)Ra=a.findDotsAtSegment.apply(a,Oa.concat(P/aa)),n.push({x:Ra.x,y:Ra.y,t:P/aa});for(P=0;P<w;P++)for(B=0;B<aa;B++){var r=K[P],L=K[P+1],Oa=n[B],Ra=n[B+
1],Z=.001>ra(L.x-r.x)?"y":"x",q=.001>ra(Ra.x-Oa.x)?"y":"x",S;S=r.x;var X=r.y,V=L.x,ca=L.y,u=Oa.x,T=Oa.y,E=Ra.x,v=Ra.y;if(va(S,V)<ha(u,E)||ha(S,V)>va(u,E)||va(X,ca)<ha(T,v)||ha(X,ca)>va(T,v))S=void 0;else{var cb=(S*ca-X*V)*(u-E)-(S-V)*(u*v-T*E),sa=(S*ca-X*V)*(T-v)-(X-ca)*(u*v-T*E),Ia=(S-V)*(T-v)-(X-ca)*(u-E);if(Ia){var cb=cb/Ia,sa=sa/Ia,Ia=+cb.toFixed(2),ma=+sa.toFixed(2);S=Ia<+ha(S,V).toFixed(2)||Ia>+va(S,V).toFixed(2)||Ia<+ha(u,E).toFixed(2)||Ia>+va(u,E).toFixed(2)||ma<+ha(X,ca).toFixed(2)||ma>+va(X,
ca).toFixed(2)||ma<+ha(T,v).toFixed(2)||ma>+va(T,v).toFixed(2)?void 0:{x:cb,y:sa}}else S=void 0}S&&R[S.x.toFixed(4)]!=S.y.toFixed(4)&&(R[S.x.toFixed(4)]=S.y.toFixed(4),r=r.t+ra((S[Z]-r[Z])/(L[Z]-r[Z]))*(L.t-r.t),Oa=Oa.t+ra((S[q]-Oa[q])/(Ra[q]-Oa[q]))*(Ra.t-Oa.t),0<=r&&1.001>=r&&0<=Oa&&1.001>=Oa&&(m?Qa++:Qa.push({x:S.x,y:S.y,t1:ha(r,1),t2:ha(Oa,1)})))}m=Qa}else m=m?0:[];if(f)t+=m;else{w=0;for(aa=m.length;w<aa;w++)m[w].segment1=Ba,m[w].segment2=z,m[w].bez1=G,m[w].bez2=ba;t=t.concat(m)}}}return t}function r(c,
a,d,f,h,b){null!=c?(this.a=+c,this.b=+a,this.c=+d,this.d=+f,this.e=+h,this.f=+b):(this.a=1,this.c=this.b=0,this.d=1,this.f=this.e=0)}function k(){return this.x+" "+this.y+" "+this.width+" × "+this.height}function m(c,a,d,f,h,b){function e(c,a){var d,f,h,b;h=c;for(f=0;8>f;f++){b=((g*h+l)*h+I)*h-c;if(ra(b)<a)return h;d=(3*g*h+2*l)*h+I;if(1E-6>ra(d))break;h-=b/d}d=0;f=1;h=c;if(h<d)return d;if(h>f)return f;for(;d<f;){b=((g*h+l)*h+I)*h;if(ra(b-c)<a)break;c>b?d=h:f=h;h=(f-d)/2+d}return h}var I=3*a,l=3*
(f-a)-I,g=1-I-l,D=3*d,k=3*(h-d)-D,G=1-D-k;return function(c,a){var d=e(c,a);return((G*d+k)*d+D)*d}(c,1/(200*b))}function n(c,a){var d=[],f={};this.ms=a;this.times=1;if(c){for(var h in c)c.hasOwnProperty(h)&&(f[ca(h)]=c[h],d.push(ca(h)));d.sort(Ka)}this.anim=f;this.top=d[d.length-1];this.percents=d}function L(c,a,d){function f(c,a,d){c.isRadial&&!a.isRadial&&(a[0]={f1:c[0].f1,f2:c[0].f2},a.isRadial=!0);d||f(a,c,!0)}function h(c){var a=0,f=0,b=0,b=[],e={},I,l=e=0,g=0,a=e=b=0,f={f1:.5,f2:.5};1===c.length&&
("none"===c[0]&&(c[0]="rgba(0,0,0,0)"),c.unshift(0),c.defaultAngleSet=!0);isNaN(c[0])?~"rx".indexOf(c[0].charAt(0))?(c.isRadial=!0,b=1,-1!==c[0].indexOf(")")&&(b=c[0].indexOf(")"),e=c[0].indexOf("(")+1,a=b,b=c[0].substr(e,a-e).split(","),f.f1=parseInt(b[0])||0,f.f2=parseInt(b[1])||0,~b[2].indexOf("%")&&(b[2]=parseInt(b[2])/100),f.f3=parseInt(b[2])||0,f.f4=parseInt(b[3])||0,f.f5=parseInt(b[4])||0,f.f6=b[5]),c[0]=c[0].substr(a+1),c.unshift(f)):c[0]=0:c[0]=+c[0];a=1;for(f=c.length;a<f;++a)b=c[a].split(":"),
e=d(b[0]),c[a]={},c[a].r=e.r,c[a].g=e.g,c[a].b=e.b,c[a].opacity=e.opacity,c[a].opacity=+c[a].opacity,isNaN(c[a].opacity)&&(c[a].opacity=1),c[a].position=+b[1];c.sort(function(c,a){return"number"===typeof c||c.f1?-1:"number"===typeof a||c.f2?1:isNaN(c.position)&&isNaN(a.position)?0:isNaN(c.position)?-1:isNaN(a.position)?1:c.position-a.position});if(0!==+c[1].position)if(isNaN(c[1].position))c[1].position=0;else{e={};for(I in c[1])e[I]=c[1][I];e.position=0;c.push({});for(a=c.length-1;1!==a;--a)c[a]=
c[a-1];c[1]=e}f=c.length-1;if(100!==c[f].position)if(isNaN(c[f].position))c[f].position=100;else{e={};for(I in c[f])e[I]=c[f][I];e.position=100;c.push(e)}a=2;for(f=c.length;a<f;++a)if(!c[a].position){e=c[a-1].position;g=1;for(b=a+1;b<f;++b)if(++g,!isNaN(c[b].position)){l=+c[b].position;break}c[a].position=e+(l-e)/g}c.getColorAtPosition=function(c){for(var a=-1,d=this.length,f=1,h=this.length,b=0,e="",I={r:0,g:0,b:0};f<h-1;++f)if(this[f].position<=c&&(a=f,d=f+1),!(this[f].position<c)&&this[f].position>=
c){d=f;break}b=(c-this[a].position)/(this[d].position-this[a].position);isNaN(b)&&(b=0);for(e in I)I[e]=Db((1-b)*this[a][e]+b*this[d][e]);I.position=c;I.opacity=(1-b)*this[a].opacity+b*this[d].opacity;return I};return c}var b=c.split("-"),e=a.split("-"),I=0,l=0,g=[],D=[],k={},k=0,G=[];if(1===b.length&&1===e.length)return[c,a];b=h(b);e=h(e);!b.defaultAngleSet&&e.defaultAngleSet&&(e[0]=b[0]);!e.defaultAngleSet&&b.defaultAngleSet&&(b[0]=e[0]);f(b,e);I=1;for(l=b.length;I<l;++I)k=b[I].position,-1===G.indexOf(k)&&
G.push(k);I=1;for(l=e.length;I<l;++I)k=e[I].position,-1===G.indexOf(k)&&G.push(k);G.push(0);G.sort(function(c,a){return c-a});g=[b[0]];I=1;for(l=G.length;I<l;++I)k=G[I],k=b.getColorAtPosition(k),g.push(k);D=[e[0]];I=1;for(l=G.length;I<l;++I)k=G[I],k=e.getColorAtPosition(k),D.push(k);g.isRadial=b.isRadial;D.isRadial=e.isRadial;return[g,D]}function g(c,a){function d(c){var a=[],f=0,h=c.length;if("string"===typeof c)return c;for(f=0;f<h;++f)if(c[f].join)f&&c[f+1]&&"M"===c[f+1][0]&&"M"===c[f][0]||a.push(c[f].join(" "));
else return;a=a.join("");a=a.split(/[Mm]/).slice(1);f=0;for(h=a.length;f<h;++f)a[f]="M"+a[f];return a}function f(c){var a=0,d=0,h=[];c=c||[];d=c.length;for(a=0;a<d;++a)c[a].length-1&&h.push(c[a].join(" "));return h.join("")}function h(c,a){for(var d=c.length;d-- -1;)if(c[d].slice(1).toString()===c[d-1].slice(1).toString())c.pop();else break;1===c.length&&a&&(c.length=0)}function b(c,a){for(var d=[],f=[],h=c.length,e=0,I=0,l=0,g=0,g=0,h=a-h;0<=h;)e=c.length-1,c.push(c.slice(e)),--h;h=c.length;for(e=
0;e<=a;++e)f.push(Math.round(e/a*h));e=0;for(I=f.length-1;e<I;++e)d.push(c.slice(f[e],f[e+1])),"M"!==d[e][0][0]&&"m"!==d[e][0][0]&&(g=d[e-1].length-1,l=d[e-1][g][1],g=d[e-1][g][2],d[e].unshift(["M",l,g]));return d}var e=[],I=[],l=d(c),g=d(a),D=0,k=0,G,ba=(D=document.createElementNS&&document.createElementNS.bind(document))&&D("http://www.w3.org/2000/svg","path");if(!(l&&g&&ba&&!function(c,a){function d(c){for(var a=c.length;a-- -1;)if(c[a].join("")===c[a-1].join(""))c.pop();else break}function f(c){for(var a=
"",d=0,h=c.length;d<h;++d)a+=c[d].join(" ");return a}var h="",b="";ba.setAttribute("d","M300 10 L300 300 C50 310,50 640,350 650C600 640,600 310,400 300 L400 10 L295 10");h=ba.getTotalLength();b=ba.getPointAtLength(10);if(1829.1>h||1829.2<h||300!==Math.round(b.x)||20!==Math.round(b.y))return!0;d(c);d(a);h=f(c);b=f(a);return 2<h.split(/[Mm]/).length||2<b.split(/[Mm]/).length?!1:c.length===a.length?!0:!1}(c,a)&&c&&a))return[c,a];if(!document.createElementNS)return[c,a];l=d(c);g=d(a);if(-1!==l.join().indexOf("undefined")||
-1!==g.join().indexOf("undefined")||!ba.getTotalLength||!ba.getPointAtLength)return[c,a];k=Math.max(l.length,g.length);for(D=0;D<k;++D)G=B(l[D],g[D]),l[D]=G[0],g[D]=G[1];for(D=l.length;D--;)h(l[D],D),l[D].length||l.pop();for(D=g.length;D--;)h(g[D],D),g[D].length||g.pop();(function(c){var a=[],d=[],f=[],h=0,e=0,I=!0;if(0!==c){0<c?(a=g,I=!1):(c=-c,a=l);h=0;for(e=a.length;h<e;++h)d.push(1);for(;c--;)--h,0>h&&(h=e-1),d[h]++;for(h=0;h<e;++h)1===d[h]?f.push(a[h]):f.push.apply(f,b(a[h],d[h]));I?l=f:g=f}})(l.length-
g.length);k=Math.max(l.length,g.length);for(D=0;D<k;++D)G=B(f(l[D]),f(g[D])),l[D]=G[0],g[D]=G[1];D=0;for(k=l.length;D<k;++D)e=e.concat(l[D]);D=0;for(k=g.length;D<k;++D)I=I.concat(g[D]);return[e,I]}function l(c,a){function d(c){var a=0,f=0;c=c.split(/[MCLmcl]/).slice(1);a=0;for(f=c.length;a<f;++a)c[a]=c[a].split(" ").slice(1),a||c[a].unshift("M"),a&&(2===c[a].length&&c[a].unshift("L")||c[a].unshift("C"));return c}function f(c,a){for(var d=0,h=c.length,b,e,d=0,h=c.length;d<h;++d)b=c[d].join(" "),e=
c[d],"C"===e[0]&&e[3]===e[5]&&e[4]===e[6]?c[d].stringValue=["L",e[3],e[4]].join(" "):e.stringValue=b,a[e.stringValue]&&a[e.stringValue].push(d),a[e.stringValue]||(a[e.stringValue]=[d])}function h(c,a,d,f,b){for(var e=d,I=0,l=0,g;e<f;++e)if(g=a[c[e].stringValue])for(I=0,l=g.length;I<l;++I)if(g[I]>=b)return{index:e,mapValue:g[I],diff:e-d};return-1}function b(c){var a=c.length-1;return["M",c[a-1],c[a]].join(" ")}var e=0,I=0,l=0,g=0,D=0,k=0,G,ba,t={},Ba={},p=[],m=[],z=-1,F=-1,D=!0;c=d(c);a=d(a);f(c,t);
f(a,Ba);l=c.length;g=a.length;for(I=e=0;e<l&&I<g;){++z;++F;p[z]=[];m[F]=[];D=c[e].stringValue===a[I].stringValue;e&&(p[z].push(b(c[e-1])),m[F].push(b(a[I-1])));if(D)for(;e<l&&I<g&&c[e].stringValue===a[I].stringValue;)p[z].push(c[e].stringValue),m[F].push(a[I].stringValue),++e,++I;else{G=h(c,Ba,e,l,I);ba=h(a,t,I,g,e);D=G.index;k=G.mapValue;if(!~G||G.diff>ba.diff)D=ba.mapValue,k=ba.index;~G||~ba||(D=l-1,k=g-1);for(;e<=D;)p[z].push(c[e].stringValue),++e;for(;I<=k;)m[F].push(a[I].stringValue),++I}p[z]=
p[z].join("");m[F]=m[F].join("")}if(e<l){++z;p[z]=[];p[z].push(b(c[e-1]));++F;m[F]=[];for(m[F].push(b(a[I-1]));e<l;)p[z].push(c[e].stringValue),++e;p[z]=p[z].join("")}if(I<g){++z;p[z]=[];p[z].push(b(c[e-1]));++F;m[F]=[];for(m[F].push(b(a[I-1]));I<g;)m[F].push(a[I].stringValue),++I;m[F]=m[F].join("")}return[p,m]}function B(c,a){var d=0,f=0,h=[],b=[],e,I;c&&"M  "!==c||(c=a.split(" ").slice(0,3).join(" ").replace(/[LC]/,""));a&&"M  "!==a||(a=c.split(" ").slice(0,3).join(" ").replace(/[LC]/,""));e=l(c,
a);d=0;for(f=e[0].length;d<f;++d){I=e[0][d];var g=e[1][d],D=void 0,k=void 0,G=0,ba={},t=0,Ba=0,p=[],z=[],m=0,F=Math.round,D=document.createElementNS("http://www.w3.org/2000/svg","path");D.setAttribute("d",I);k=document.createElementNS("http://www.w3.org/2000/svg","path");k.setAttribute("d",g);t=D.getTotalLength();Ba=k.getTotalLength();m=.15*Math.max(t,Ba);m=Math.ceil(m);if(!m||!isFinite(m)||10>m)m=10;for(G=0;G<=m;++G)ba=D.getPointAtLength(G/m*t),p.push([G?"L":"M",F(ba.x),F(ba.y)]),ba=k.getPointAtLength(G/
m*Ba),z.push([G?"L":"M",F(ba.x),F(ba.y)]);I=[p,z];d?(h=h.concat(I[0].slice(1)),b=b.concat(I[1].slice(1))):(h=h.concat(I[0]),b=b.concat(I[1]))}return[h,b]}function e(c,d,f,h,b,e,I,l){f=ca(f);var D,k,G,ba,t,Ba,p,z=c.ms,F={},B={},Oa={};if(null!==d.type){l=l||{};l.hookFn&&l.hookFn.call(d);l.from=l.from||{};if(h)for(w=0,p=db.length;w<p;w++){if(Ba=db[w],Ba.el.id==d.id&&Ba.anim==c){Ba.percent!=f?(delete Ba.el.e,delete Ba.el,db.splice(w,1),G=1):k=Ba;d.attr(Ba.totalOrigin);break}}else h=+B;var w=0;for(p=c.percents.length;w<
p;w++)if(c.percents[w]==f||c.percents[w]>h*c.top){f=c.percents[w];t=c.percents[w-1]||0;z=z/c.top*(f-t);ba=c.percents[w+1];D=c.anim[f];break}else h&&d.attr(c.anim[c.percents[w]]);if(D){if(k)k.initstatus=h,k.start=new Date-k.ms*h;else{for(var aa in D)if(D.hasOwnProperty(aa))if(Fa.hasOwnProperty(aa)||d.ca[aa]){F[aa]=l.from[aa]||d.attr(aa);null==F[aa]&&(F[aa]=Ja[aa]);B[aa]=D[aa];Ba=!1;switch(Fa[aa]){case K:((p=B[aa]-F[aa])||isNaN(p))&&(Ba=!0);Oa[aa]=p/z;break;case "colour":if(F[aa]===B[aa])break;else Ba=
!0;w=L(F[aa],B[aa],a.getRGB);F[aa]=w[0];var n=w[1];if("string"===typeof n)"none"!==F[aa].toLowerCase()?(F[aa]=a.getRGB(F[aa]),F[aa].opacity||(F[aa].opacity=1)):F[aa]={r:0,g:0,b:0,opacity:0},"none"!==B[aa].toLowerCase()?(n=a.getRGB(B[aa]),n.opacity||(n.opacity=1)):n={r:0,g:0,b:0,opacity:0},Oa[aa]={r:(n.r-F[aa].r)/z,g:(n.g-F[aa].g)/z,b:(n.b-F[aa].b)/z,opacity:(n.opacity-F[aa].opacity)/z};else for(Oa[aa]=[],w=0,p=F[aa].length;w<p;++w)0===w?Oa[aa].push(n[0]):Oa[aa].push({r:(n[w].r-F[aa][w].r)/z,g:(n[w].g-
F[aa][w].g)/z,b:(n[w].b-F[aa][w].b)/z,opacity:(n[w].opacity-F[aa][w].opacity)/z});break;case "path":w=mb(F[aa],B[aa]);l.smartMorph&&(w=g(w[0],w[1],l));n=w[1];F[aa]=w[0];Oa[aa]=[];w=0;for(p=F[aa].length;w<p;w++){Oa[aa][w]=[0];var R;R=F[aa][w]?F[aa][w].length:0;for(var Qa=1;Qa<R;Qa++)Oa[aa][w][Qa]=(n[w][Qa]-F[aa][w][Qa])/z,!Ba&&Oa[aa][w][Qa]&&(Ba=!0)}break;case "transform":w=d._;p=Hb(w[aa],B[aa]);Ba=!0;if(p)for(F[aa]=p.from,B[aa]=p.to,Oa[aa]=[],Oa[aa].real=!0,w=0,p=F[aa].length;w<p;w++)for(Oa[aa][w]=
[F[aa][w][0]],Qa=1,R=F[aa][w].length;Qa<R;Qa++)Oa[aa][w][Qa]=(B[aa][w][Qa]-F[aa][w][Qa])/z;else p=d.matrix||new r,w={_:{transform:w.transform},getBBox:function(){return d.getBBox(1)}},F[aa]=[p.a,p.b,p.c,p.d,p.e,p.f],Bb(w,B[aa]),B[aa]=w._.transform,Oa[aa]=[(w.matrix.a-p.a)/z,(w.matrix.b-p.b)/z,(w.matrix.c-p.c)/z,(w.matrix.d-p.d)/z,(w.matrix.e-p.e)/z,(w.matrix.f-p.f)/z];break;case "csv":n=wa(D[aa]).split(ja);R=wa(F[aa]).split(ja);if("clip-rect"==aa)for(F[aa]=R,Oa[aa]=[],w=R.length;w--;)((p=n[w]-F[aa][w])||
isNaN(p))&&(Ba=!0),Oa[aa][w]=p/z;B[aa]=n;break;default:for(n=[].concat(D[aa]),R=[].concat(F[aa]),Oa[aa]=[],w=d.ca[aa].length;w--;)((p=(n[w]||0)-(R[w]||0))||isNaN(p))&&(Ba=!0),Oa[aa][w]=p/z}Ba||(delete F[aa],delete B[aa],delete D[aa],delete Oa[aa])}else if(a._availableAttrs.hasOwnProperty(aa)||"text"===aa||d.ca[aa])d.attr(aa,D[aa]),delete D[aa];Ba=D.easing;aa=a.easing_formulas[Ba];if(!aa)if((aa=wa(Ba).match(Ma))&&5==aa.length){var P=aa;aa=function(c){return m(c,+P[1],+P[2],+P[3],+P[4],z)}}else aa=
Da;Ba=D.start||c.start||+new Date;d.e=Ba={anim:c,percent:f,timestamp:Ba,start:Ba+(c.del||0),status:0,initstatus:h||0,stop:!1,ms:z,easing:aa,from:F,diff:Oa,to:B,el:d,callback:D.callback,prev:t,next:ba,repeat:e||c.times,origin:d.attr(),totalOrigin:b,parentEl:I,delayend:l&&l.end,delaystart:l&&l.start};db.push(Ba);if(h&&!k&&!G&&(Ba.stop=!0,Ba.start=new Date-z*h,1==db.length))return Vb();G&&(Ba.start=new Date-Ba.ms*h);1==db.length&&(ac||a.getAnimFrameFn())(Vb)}!1!==a.stopEvent&&u("raphael.anim.start."+
d.id,d,c)}}}function V(c){for(var a=0;a<db.length;a++)db[a].el.paper==c&&db.splice(a--,1)}a.upgrade="1.0.0";a.version="2.1.0";a.eve=u;C=a;var p,T="apply",K="number",t="array",Z=Array.prototype.slice,P=Array.prototype.splice,S=Array.prototype.shift,z=function(){return function(){}.hasOwnProperty("prototype")}(),R={doc:A.document,win:A},w=Object.prototype.hasOwnProperty.call(R.win,"Raphael"),F=R.win.Raphael,X=R.doc,h=R.win,d=a.supportsTouch="createTouch"in X,f=a.supportsOnlyTouch=d&&!(h.navigator.maxTouchPoints||
h.navigator.msMaxTouchPoints),c=function(){};a.ca=a.customAttributes=c.prototype;var D=function(){this.ca=this.customAttributes=new c;this._CustomAttributes=function(){};this._CustomAttributes.prototype=this.ca;this._elementsById={};this.id=a._oid++;u("raphael.new",this)},G=a.fn=D.prototype=a.prototype,aa={circle:1,rect:1,path:1,ellipse:1,text:1,image:1,group:1},Ra="click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel dragstart dragmove dragend".split(" "),
Ia=a._touchMap={mousedown:"touchstart",mousemove:"touchmove",mouseup:"touchend"},sa=a._dragEventMap={dragstart:"mousedown",dragmove:"mousemove",dragend:"mouseup"},wa=String,ca=h.parseFloat,ma=h.parseInt,qa=Math,va=qa.max,ha=qa.min,ra=qa.abs,ka=qa.pow,na=qa.cos,da=qa.sin,oa=qa.sqrt,Y=qa.round,za=qa.PI,fa=za/180,Aa=180/za,ua=wa.prototype.toLowerCase,ia=wa.prototype.toUpperCase,xa=Object.prototype.toString,ja=/[, ]+/,ya=/\{(\d+)\}/g;a._ISURL=/^url\(['"]?([^\)]+?)['"]?\)$/i;var W=/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?)%?\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?)%?\s*\))\s*$/i,
Ma=/^(?:cubic-)?bezier\(([^,]+),([^,]+),([^,]+),([^\)]+)\)/,ea=/[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*/,ga=/,?([achlmqrstvxz]),?/gi,la=/([achlmrqstvz])[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)/ig,
Ca=/([rstm])[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)/ig,Q=/(-?\d*\.?\d*(?:e[\-+]?\d+)?)[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*/ig;
a._radial_gradient=/^x?r(?:\(([^\)]*?)\))?/;var pa={NaN:1,Infinity:1,"-Infinity":1},La={hs:1,rg:1},Ja=a._availableAttrs={"arrow-end":"none","arrow-start":"none",blur:0,"clip-rect":"0 0 1e9 1e9","clip-path":"",cursor:"default",cx:0,cy:0,fill:"#fff","fill-opacity":1,font:'10px "Arial"',"font-family":'"Arial"',"font-size":"10","font-style":"normal","font-weight":400,gradient:0,height:0,href:"about:blank","letter-spacing":0,"line-height":12,"vertical-align":"middle",opacity:1,path:"M0,0",r:0,rx:0,ry:0,
src:"",stroke:"#000","stroke-dasharray":"","stroke-linecap":"butt","stroke-linejoin":"butt","stroke-miterlimit":0,"stroke-opacity":1,"stroke-width":1,target:"_blank","text-anchor":"middle",visibility:"",title:"",transform:"",rotation:0,width:0,x:0,y:0,alpha:K},Fa=a._availableAnimAttrs={blur:K,"clip-rect":"csv","clip-path":"path",cx:K,cy:K,fill:"colour","fill-opacity":K,"font-size":K,height:K,opacity:K,path:"path",r:K,rx:K,ry:K,stroke:"colour","stroke-opacity":K,"stroke-width":K,transform:"transform",
width:K,x:K,y:K,color:"colour",borderColor:"colour",borderWidth:K,alpha:K},ta={},Ka=function(c,a){return ca(c)-ca(a)},Ea=function(){},Da=function(c){return c},Ga=a._rectPath=function(c,a,d,f,h){return h?[["M",c+h,a],["l",d-2*h,0],["a",h,h,0,0,1,h,h],["l",0,f-2*h],["a",h,h,0,0,1,-h,h],["l",2*h-d,0],["a",h,h,0,0,1,-h,-h],["l",0,2*h-f],["a",h,h,0,0,1,h,-h],["z"]]:[["M",c,a],["l",d,0],["l",0,f],["l",-d,0],["z"]]},Na=function(c,a,d,f){null==f&&(f=d);return[["M",c,a],["m",0,-f],["a",d,f,0,1,1,0,2*f],["a",
d,f,0,1,1,0,-2*f],["z"]]},Ua=a._getPath={group:function(){return!1},path:function(c){return c.attr("path")},circle:function(c){c=c.attrs;return Na(c.cx,c.cy,c.r)},ellipse:function(c){c=c.attrs;return Na(c.cx,c.cy,c.rx,c.ry)},rect:function(c){c=c.attrs;return Ga(c.x,c.y,c.width,c.height,c.r)},image:function(c){c=c.attrs;return Ga(c.x,c.y,c.width,c.height)},text:function(c){c=c._getBBox();return Ga(c.x,c.y,c.width,c.height)}},Pa=a.mapPath=function(c,a){if(!a)return c;var d,f,h,b,e,I,l;c=mb(c);h=0;for(e=
c.length;h<e;h++)for(l=c[h],b=1,I=l.length;b<I;b+=2)d=a.x(l[b],l[b+1]),f=a.y(l[b],l[b+1]),l[b]=d,l[b+1]=f;return c};a.pick=function(){for(var c,a=0,d=arguments.length;a<d;a+=1)if((c=arguments[a])||!1===c||0===c)return c};var Sa=a._lastArgIfGroup=function(c,d){var f=c.length-1,h=c[f];if(h&&h.constructor===a.el.constructor&&"group"===h.type)return d&&(c[f]=void 0,delete c[f],P.call(c,f,1)),h},ab=a._serializeArgs=function(c){var d=c[0],f,h;if(a.is(d,"object")&&!a.is(d,"array")&&"group"!==d.type)for(f=
d,d.path&&(d=d.path)&&!a.is(d,"string")&&a.is(d[0],t),d=1,h=arguments.length;d<h;d+=2)f[arguments[d]]||(f[arguments[d]]=arguments[d+1]);else for(f={},d=1,h=arguments.length;d<h;d+=2)f[arguments[d]]=c[(d-1)/2]||arguments[d+1];return f},Xa=a.merge=function(c,a,d,f,h){var b,e,I,l;h?(f.push(c),h.push(a)):(f=[c],h=[a]);if(a instanceof Array)for(b=0;b<a.length;b+=1){try{e=c[b],I=a[b]}catch(g){continue}if("object"!==typeof I)d&&void 0===I||(c[b]=I);else{if(null===e||"object"!==typeof e)e=c[b]=I instanceof
Array?[]:{};l=checkCyclicRef(I,h);-1!==l?e=c[b]=f[l]:Xa(e,I,d,f,h)}}else for(b in a){try{e=c[b],I=a[b]}catch(g){continue}if(null!==I&&"object"===typeof I)if(l=xa.call(I),"[object Object]"===l){if(null===e||"object"!==typeof e)e=c[b]={};l=checkCyclicRef(I,h);-1!==l?e=c[b]=f[l]:Xa(e,I,d,f,h)}else"[object Array]"===l?(null!==e&&e instanceof Array||(e=c[b]=[]),l=checkCyclicRef(I,h),-1!==l?e=c[b]=f[l]:Xa(e,I,d,f,h)):c[b]=I;else c[b]=I}return c};a.extend=function(c,a,d){if("object"!==typeof c&&"object"!==
typeof a)return null;if("object"!==typeof a||null===a)return c;"object"!==typeof c&&(c=a instanceof Array?[]:{});Xa(c,a,d);return c};var Za=a.is=function(c,a){a=ua.call(a);return"finite"==a?!pa.hasOwnProperty(+c):a==t?c instanceof Array:"object"!==a||void 0!==c&&null!==c?"null"==a&&null===c||a==typeof c&&null!==c||"object"==a&&c===Object(c)||"array"==a&&Array.isArray&&Array.isArray(c)||xa.call(c).slice(8,-1).toLowerCase()==a:!1};a.createUUID=function(c,a){return function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(c,
a).toUpperCase()}}(/[xy]/g,function(c){var a=16*qa.random()|0;return("x"==c?a:a&3|8).toString(16)});a.getElementID=function(c){return"rr-"+c};var bb=a.clone=z?function(c){if(Object(c)!==c)return c;var a=new c.constructor,d;for(d in c)"prototype"!==d&&c.hasOwnProperty(d)&&(a[d]=bb(c[d]));return a}:function(c){if(Object(c)!==c)return c;var a=new c.constructor,d;for(d in c)c.hasOwnProperty(d)&&(a[d]=bb(c[d]));return a},eb=A.Node;eb&&!eb.prototype.contains&&(eb.prototype.contains=function(c){for(;c=c.parentNode;)if(c===
this)return!0;return!1});a._g=R;J.prototype.isEmpty=function(){return 0===this.size()};J.prototype.peek=function(){return this.isEmpty()?null:this._elements[0]};J.prototype.deq=function(){var c=this.peek(),a=this._elements.pop(),d=this.size();if(0===d)return c;this._elements[0]=a;for(a=0;a<d;){var f=a,h=2*a+1,b=2*a+2;h<d&&0<=this._compare(h,f)&&(f=h);b<d&&0<=this._compare(b,f)&&(f=b);if(f===a)break;this._swap(f,a);a=f}return c};J.prototype.enq=function(c){c=this._elements.push(c);for(var a=c-1;0<
a;){var d=Math.floor((a-1)/2);if(0>=this._compare(a,d))break;this._swap(d,a);a=d}return c};J.prototype.size=function(){return this._elements.length};J.prototype._compare=function(c,a){return this._comparator(this._elements[c],this._elements[a])};J.prototype._swap=function(c,a){var d=this._elements[c];this._elements[c]=this._elements[a];this._elements[a]=d};a.type=h.ENABLE_RED_CANVAS&&(h.CanvasRenderingContext2D||X.createElement("canvas").getContext)?"CANVAS":h.SVGAngle||X.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure",
"1.1")?"SVG":"VML";if("VML"==a.type){var Va=X.createElement("div"),Ya;Va.innerHTML='<v:shape adj="1"/>';Ya=Va.firstChild;Ya.style.behavior="url(#default#VML)";if(!Ya||"object"!=typeof Ya.adj)return a.type="";Va=null}a.svg=!((a.vml="VML"==a.type)||(a.canvas="CANVAS"==a.type));a._Paper=D;a._id=0;a._oid=0;a.angle=function(c,d,f,h,b,e){return null==b?(c-=f,d-=h,c||d?(qa.atan2(-d,-c)*Aa+540)%360:0):a.angle(c,d,b,e)-a.angle(f,h,b,e)};a.rad=function(c){return c%360*fa};a.deg=function(c){return c*Aa%360};
a.snapTo=function(c,a,d){var f;Za(d,"finite")||(d=10);if(Za(c,t))for(f=c.length;f--;){if(ra(c[f]-a)<=d)return c[f]}else{c=+c;f=a%c;if(f<d)return a-f;if(f>c-d)return a-f+c}return a};a.setWindow=function(c){u("raphael.setWindow",a,R.win,c);h=R.win=c;X=R.doc=R.win.document;a._engine.initWin&&a._engine.initWin(R.win)};var $a=function(c){if(a.vml){var d=/^\s+|\s+$/g,f;try{var h=new ActiveXObject("htmlfile");h.write("<body>");h.close();f=h.body}catch(b){f=createPopup().document.body}var e=f.createTextRange();
$a=ba(function(c){try{f.style.color=wa(c).replace(d,"");var a=e.queryCommandValue("ForeColor");return"#"+("000000"+((a&255)<<16|a&65280|(a&16711680)>>>16).toString(16)).slice(-6)}catch(h){return"none"}})}else{var I=R.doc.createElement("i");I.title="Raphaël Colour Picker";I.style.display="none";R.doc.body.appendChild(I);$a=ba(function(c){I.style.color=c;return R.doc.defaultView.getComputedStyle(I,"").getPropertyValue("color")})}return $a(c)},Ta=function(){return"hsb("+[this.h,this.s,this.b]+")"},kb=
function(){return"hsl("+[this.h,this.s,this.l]+")"},hb=function(){return this.hex},ib=function(c,d,f){null==d&&Za(c,"object")&&"r"in c&&"g"in c&&"b"in c&&(f=c.b,d=c.g,c=c.r);null==d&&Za(c,"string")&&(f=a.getRGB(c),c=f.r,d=f.g,f=f.b);if(1<c||1<d||1<f)c/=255,d/=255,f/=255;return[c,d,f]},ob=function(c,d,f,h){var b={r:c*=255,g:d*=255,b:f*=255,hex:a.rgb(c,d,f),toString:hb};Za(h,"finite")&&(b.opacity=h);return b};a.color=function(c){var d;a.is(c,"object")&&"h"in c&&"s"in c&&"b"in c?(d=a.hsb2rgb(c),c.r=
d.r,c.g=d.g,c.b=d.b,c.hex=d.hex):a.is(c,"object")&&"h"in c&&"s"in c&&"l"in c?(d=a.hsl2rgb(c),c.r=d.r,c.g=d.g,c.b=d.b,c.hex=d.hex):(a.is(c,"string")&&(c=a.getRGB(c)),a.is(c,"object")&&"r"in c&&"g"in c&&"b"in c?(d=a.rgb2hsl(c),c.h=d.h,c.s=d.s,c.l=d.l,d=a.rgb2hsb(c),c.v=d.b):(c={hex:"none"},c.r=c.g=c.b=c.h=c.s=c.v=c.l=-1));c.toString=hb;return c};a.hsb2rgb=function(c,a,d,f){this.is(c,"object")&&"h"in c&&"s"in c&&"b"in c&&(d=c.b,a=c.s,c=c.h,f=c.o);var h,b,e;c=360*c%360/60;e=d*a;a=e*(1-ra(c%2-1));d=h=
b=d-e;c=~~c;d+=[e,a,0,0,a,e][c];h+=[a,e,e,a,0,0][c];b+=[0,0,a,e,e,a][c];return ob(d,h,b,f)};a.hsl2rgb=function(c,a,d,f){this.is(c,"object")&&"h"in c&&"s"in c&&"l"in c&&(d=c.l,a=c.s,c=c.h);if(1<c||1<a||1<d)c/=360,a/=100,d/=100;var h,b,e;c=360*c%360/60;e=2*a*(.5>d?d:1-d);a=e*(1-ra(c%2-1));d=h=b=d-e/2;c=~~c;d+=[e,a,0,0,a,e][c];h+=[a,e,e,a,0,0][c];b+=[0,0,a,e,e,a][c];return ob(d,h,b,f)};a.rgb2hsb=function(c,a,d){d=ib(c,a,d);c=d[0];a=d[1];d=d[2];var f,h;f=va(c,a,d);h=f-ha(c,a,d);c=((0==h?null:f==c?(a-
d)/h:f==a?(d-c)/h+2:(c-a)/h+4)+360)%6*60/360;return{h:c,s:0==h?0:h/f,b:f,toString:Ta}};a.rgb2hsl=function(c,a,d){d=ib(c,a,d);c=d[0];a=d[1];d=d[2];var f,h,b;f=va(c,a,d);h=ha(c,a,d);b=f-h;c=((0==b?null:f==c?(a-d)/b:f==a?(d-c)/b+2:(c-a)/b+4)+360)%6*60/360;f=(f+h)/2;return{h:c,s:0==b?0:.5>f?b/(2*f):b/(2-2*f),l:f,toString:kb}};a._path2string=function(){return this.join(",").replace(ga,"$1")};var ba=a._cacher=function(c,a,d){function f(){var h=Z.call(arguments,0),b=h.join("␀"),e=f.cache=f.cache||{},I=f.count=
f.count||[];if(e.hasOwnProperty(b)){a:for(var h=I,I=b,l=0,g=h.length;l<g;l++)if(h[l]===I){h.push(h.splice(l,1)[0]);break a}return d?d(e[b]):e[b]}1E3<=I.length&&delete e[I.shift()];I.push(b);e[b]=c[T](a,h);return d?d(e[b]):e[b]}return f};a._preload=function(c,a){var d=X.createElement("img");d.style.cssText="position:absolute;left:-9999em;top:-9999em";d.onload=function(){a.call(this);this.onload=null;X.body.removeChild(this)};d.onerror=function(){X.body.removeChild(this)};X.body.appendChild(d);d.src=
c};a.getRGB=ba(function(c){var d,f,h,b,e;c&&Za(c,"object")&&"opacity"in c&&(d=c.opacity);if(!c||(c=wa(c)).indexOf("-")+1)return{r:-1,g:-1,b:-1,hex:"none",error:1,toString:q};if("none"==c)return{r:-1,g:-1,b:-1,hex:"none",toString:q};!La.hasOwnProperty(c.toLowerCase().substring(0,2))&&"#"!==c.charAt()&&(c=$a(c));if(c=c.match(W)){c[2]&&(b=ma(c[2].substring(5),16),h=ma(c[2].substring(3,5),16),f=ma(c[2].substring(1,3),16));c[3]&&(b=ma((e=c[3].charAt(3))+e,16),h=ma((e=c[3].charAt(2))+e,16),f=ma((e=c[3].charAt(1))+
e,16));c[4]&&(e=c[4].split(ea),f=ca(e[0]),"%"==e[0].slice(-1)&&(f*=2.55),h=ca(e[1]),"%"==e[1].slice(-1)&&(h*=2.55),b=ca(e[2]),"%"==e[2].slice(-1)&&(b*=2.55),"rgba"==c[1].toLowerCase().slice(0,4)&&(d=ca(e[3])),e[3]&&"%"==e[3].slice(-1)&&(d/=100));if(c[5])return e=c[5].split(ea),f=ca(e[0]),"%"==e[0].slice(-1)&&(f*=2.55),h=ca(e[1]),"%"==e[1].slice(-1)&&(h*=2.55),b=ca(e[2]),"%"==e[2].slice(-1)&&(b*=2.55),"deg"!=e[0].slice(-3)&&"°"!=e[0].slice(-1)||(f/=360),"hsba"==c[1].toLowerCase().slice(0,4)&&(d=ca(e[3])),
e[3]&&"%"==e[3].slice(-1)&&(d/=100),a.hsb2rgb(f,h,b,d);if(c[6])return e=c[6].split(ea),f=ca(e[0]),"%"==e[0].slice(-1)&&(f*=2.55),h=ca(e[1]),"%"==e[1].slice(-1)&&(h*=2.55),b=ca(e[2]),"%"==e[2].slice(-1)&&(b*=2.55),"deg"!=e[0].slice(-3)&&"°"!=e[0].slice(-1)||(f/=360),"hsla"==c[1].toLowerCase().slice(0,4)&&(d=ca(e[3])),e[3]&&"%"==e[3].slice(-1)&&(d/=100),a.hsl2rgb(f,h,b,d);c={r:f,g:h,b:b,toString:q};c.hex="#"+(16777216|b|h<<8|f<<16).toString(16).slice(1);a.is(d,"finite")&&(c.opacity=d);return c}return{r:-1,
g:-1,b:-1,hex:"none",error:1,toString:q}},a);a.tintshade=ba(function(c,d){var f=a.getRGB(c),h;h=255;0>d&&(d*=-1,h=0);1<d&&(d=1);h=0===d?f:{r:h-(h-f.r)*d,g:h-(h-f.g)*d,b:h-(h-f.b)*d,toString:q};h.hex=a.rgb(h.r,h.g,h.b);f.error&&(h.error=f.error);"opacity"in f?(h.rgba="rgba("+[h.r,h.g,h.b,f.opacity].join()+")",h.opacity=f.opacity):h.rgba="rgb("+[h.r,h.g,h.b].join()+")";return h},a);a.hsb=ba(function(c,d,f){return a.hsb2rgb(c,d,f).hex});a.hsl=ba(function(c,d,f){return a.hsl2rgb(c,d,f).hex});a.rgb=ba(function(c,
a,d){return"#"+(16777216|d|a<<8|c<<16).toString(16).slice(1)});a.getColor=function(c){c=this.getColor.start=this.getColor.start||{h:0,s:1,b:c||.75};var a=this.hsb2rgb(c.h,c.s,c.b);c.h+=.075;1<c.h&&(c.h=0,c.s-=.2,0>=c.s&&(this.getColor.start={h:0,s:1,b:c.b}));return a.hex};a.getColor.reset=function(){delete this.start};a.parsePathString=function(c){if(!c)return null;var d=Ba(c);if(d.arr)return Qa(d.arr);var f={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},h=[];a.is(c,t)&&a.is(c[0],t)&&(h=Qa(c));h.length||
wa(c).replace(la,function(c,a,d){var b=[];c=a.toLowerCase();d.replace(Q,function(c,a){a&&b.push(+a)});"m"==c&&2<b.length&&(h.push([a].concat(b.splice(0,2))),c="l",a="m"==a?"l":"L");if("r"==c)h.push([a].concat(b));else for(;b.length>=f[c]&&(h.push([a].concat(b.splice(0,f[c]))),f[c]););});h.toString=a._path2string;d.arr=Qa(h);return h};a.parseTransformString=ba(function(c){if(!c)return null;var d=[];a.is(c,t)&&a.is(c[0],t)&&(d=Qa(c));d.length||wa(c).replace(Ca,function(c,a,f){var h=[];ua.call(a);f.replace(Q,
function(c,a){a&&h.push(+a)});d.push([a].concat(h))});d.toString=a._path2string;return d});var Ba=function(c){var a=Ba.ps=Ba.ps||{};a[c]?a[c].sleep=100:a[c]={sleep:100};setTimeout(function(){for(var d in a)a.hasOwnProperty(d)&&d!=c&&(a[d].sleep--,!a[d].sleep&&delete a[d])});return a[c]};a.findDotsAtSegment=function(c,a,d,f,h,b,e,I,l){var g=1-l,D=ka(g,3),k=ka(g,2),G=l*l,ba=G*l,t=D*c+3*k*l*d+3*g*l*l*h+ba*e,D=D*a+3*k*l*f+3*g*l*l*b+ba*I,k=c+2*l*(d-c)+G*(h-2*d+c),ba=a+2*l*(f-a)+G*(b-2*f+a),Ba=d+2*l*(h-
d)+G*(e-2*h+d),G=f+2*l*(b-f)+G*(I-2*b+f);c=g*c+l*d;a=g*a+l*f;h=g*h+l*e;b=g*b+l*I;I=90-180*qa.atan2(k-Ba,ba-G)/za;(k>Ba||ba<G)&&(I+=180);return{x:t,y:D,m:{x:k,y:ba},n:{x:Ba,y:G},start:{x:c,y:a},end:{x:h,y:b},alpha:I}};a.bezierBBox=function(c,d,f,h,b,e,I,l){a.is(c,"array")||(c=[c,d,f,h,b,e,I,l]);c=qb.apply(null,c);return{x:c.min.x,y:c.min.y,x2:c.max.x,y2:c.max.y,width:c.max.x-c.min.x,height:c.max.y-c.min.y}};a.isPointInsideBBox=function(c,a,d){return a>=c.x&&a<=c.x2&&d>=c.y&&d<=c.y2};a.isBBoxIntersect=
function(c,d){var f=a.isPointInsideBBox;return f(d,c.x,c.y)||f(d,c.x2,c.y)||f(d,c.x,c.y2)||f(d,c.x2,c.y2)||f(c,d.x,d.y)||f(c,d.x2,d.y)||f(c,d.x,d.y2)||f(c,d.x2,d.y2)||(c.x<d.x2&&c.x>d.x||d.x<c.x2&&d.x>c.x)&&(c.y<d.y2&&c.y>d.y||d.y<c.y2&&d.y>c.y)};a.pathIntersection=function(c,a){return E(c,a)};a.pathIntersectionNumber=function(c,a){return E(c,a,1)};a.isPointInsidePath=function(c,d,f){var h=a.pathBBox(c);return a.isPointInsideBBox(h,d,f)&&(1==E(c,[["M",d,f],["H",h.x2+10]],1)%2||1==E(c,[["M",d,f],["V",
h.y2+10]],1)%2)};a._removedFactory=function(c){return function(){u("raphael.log",null,"Raphaël: you are calling to method “"+c+"” of removed object",c)}};var Oa=a.pathBBox=function(c){var a=Ba(c);if(!c)return{x:0,y:0,width:0,height:0,x2:0,y2:0};c=mb(c);for(var d=0,f=0,h=[],b=[],e,I=0,l=c.length;I<l;I++)e=c[I],"M"==e[0]?(d=e[1],f=e[2],h.push(d),b.push(f)):(d=qb(d,f,e[1],e[2],e[3],e[4],e[5],e[6]),h=h.concat(d.min.x,d.max.x),b=b.concat(d.min.y,d.max.y),d=e[5],f=e[6]);c=ha[T](0,h);e=ha[T](0,b);h=va[T](0,
h);b=va[T](0,b);b={x:c,y:e,x2:h,y2:b,width:h-c,height:b-e};a.bbox=bb(b);return b},Qa=function(c){c=bb(c);c.toString=a._path2string;return c},I=a._pathToRelative=function(c){var d=Ba(c);if(d.rel)return Qa(d.rel);a.is(c,t)&&a.is(c&&c[0],t)||(c=a.parsePathString(c));var f=[],h=0,b=0,e=0,I=0,l=0;"M"==c[0][0]&&(h=c[0][1],b=c[0][2],e=h,I=b,l++,f.push(["M",h,b]));for(var g=c.length;l<g;l++){var D=f[l]=[],k=c[l];if(k[0]!=ua.call(k[0]))switch(D[0]=ua.call(k[0]),D[0]){case "a":D[1]=k[1];D[2]=k[2];D[3]=k[3];
D[4]=k[4];D[5]=k[5];D[6]=+(k[6]-h).toFixed(3);D[7]=+(k[7]-b).toFixed(3);break;case "v":D[1]=+(k[1]-b).toFixed(3);break;case "m":e=k[1],I=k[2];default:for(var G=1,ba=k.length;G<ba;G++)D[G]=+(k[G]-(G%2?h:b)).toFixed(3)}else for(f[l]=[],"m"==k[0]&&(e=k[1]+h,I=k[2]+b),D=0,G=k.length;D<G;D++)f[l][D]=k[D];k=f[l].length;switch(f[l][0]){case "z":h=e;b=I;break;case "h":h+=+f[l][k-1];break;case "v":b+=+f[l][k-1];break;default:h+=+f[l][k-2],b+=+f[l][k-1]}}f.toString=a._path2string;d.rel=Qa(f);return f},cb=a._pathToAbsolute=
function(c){var d=Ba(c),f;if(d.abs)return Qa(d.abs);a.is(c,t)&&a.is(c&&c[0],t)||(c=a.parsePathString(c));if(!c||!c.length)return f=[["M",0,0]],f.toString=a._path2string,f;var h=0,b=0,e=0,I=0,l=0;f=[];"M"==c[0][0]&&(h=+c[0][1],b=+c[0][2],e=h,I=b,l++,f[0]=["M",h,b]);for(var g=3==c.length&&"M"==c[0][0]&&"R"==c[1][0].toUpperCase()&&"Z"==c[2][0].toUpperCase(),D,k=l,G=c.length;k<G;k++){f.push(l=[]);D=c[k];if(D[0]!=ia.call(D[0]))switch(l[0]=ia.call(D[0]),l[0]){case "A":l[1]=D[1];l[2]=D[2];l[3]=D[3];l[4]=
D[4];l[5]=D[5];l[6]=+(D[6]+h);l[7]=+(D[7]+b);break;case "V":l[1]=+D[1]+b;break;case "H":l[1]=+D[1]+h;break;case "R":for(var ba=[h,b].concat(D.slice(1)),p=2,F=ba.length;p<F;p++)ba[p]=+ba[p]+h,ba[++p]=+ba[p]+b;f.pop();f=f.concat(M(ba,g));break;case "M":e=+D[1]+h,I=+D[2]+b;default:for(p=1,F=D.length;p<F;p++)l[p]=+D[p]+(p%2?h:b)}else if("R"==D[0])ba=[h,b].concat(D.slice(1)),f.pop(),f=f.concat(M(ba,g)),l=["R"].concat(D.slice(-2));else for(ba=0,p=D.length;ba<p;ba++)l[ba]=D[ba];switch(l[0]){case "Z":h=e;
b=I;break;case "H":h=l[1];break;case "V":b=l[1];break;case "M":e=l[l.length-2],I=l[l.length-1];default:h=l[l.length-2],b=l[l.length-1]}}f.toString=a._path2string;d.abs=Qa(f);return f},vb=function(c,a,d,f){return[c,a,d,f,d,f]},sb=function(c,a,d,f,h,b){var e=1/3,I=2/3;return[e*c+I*d,e*a+I*f,e*h+I*d,e*b+I*f,h,b]},pb=function(c,a,d,f,h,b,e,I,l,g){var D=120*za/180,k=fa*(+h||0),G=[],t,Ba=ba(function(c,a,d){var f=c*na(d)-a*da(d);c=c*da(d)+a*na(d);return{x:f,y:c}});if(g)z=g[0],t=g[1],b=g[2],p=g[3];else{t=
Ba(c,a,-k);c=t.x;a=t.y;t=Ba(I,l,-k);I=t.x;l=t.y;na(fa*h);da(fa*h);t=(c-I)/2;z=(a-l)/2;p=t*t/(d*d)+z*z/(f*f);1<p&&(p=oa(p),d*=p,f*=p);var p=d*d,F=f*f,p=(b==e?-1:1)*oa(ra((p*F-p*z*z-F*t*t)/(p*z*z+F*t*t)));b=p*d*z/f+(c+I)/2;var p=p*-f*t/d+(a+l)/2,z=qa.asin(((a-p)/f).toFixed(9));t=qa.asin(((l-p)/f).toFixed(9));z=c<b?za-z:z;t=I<b?za-t:t;0>z&&(z=2*za+z);0>t&&(t=2*za+t);e&&z>t&&(z-=2*za);!e&&t>z&&(t-=2*za)}if(ra(t-z)>D){var G=t,F=I,m=l;t=z+D*(e&&t>z?1:-1);I=b+d*na(t);l=p+f*da(t);G=pb(I,l,d,f,h,0,e,F,m,[t,
G,b,p])}b=t-z;h=na(z);D=da(z);e=na(t);t=da(t);b=qa.tan(b/4);d=4/3*d*b;b*=4/3*f;f=[c,a];c=[c+d*D,a-b*h];a=[I+d*t,l-b*e];I=[I,l];c[0]=2*f[0]-c[0];c[1]=2*f[1]-c[1];if(g)return[c,a,I].concat(G);G=[c,a,I].concat(G).join().split(",");g=[];I=0;for(l=G.length;I<l;I++)g[I]=I%2?Ba(G[I-1],G[I],k).y:Ba(G[I],G[I+1],k).x;return g},gb=function(c,a,d,f,h,b,e,I,l){var g=1-l;return{x:ka(g,3)*c+3*ka(g,2)*l*d+3*g*l*l*h+ka(l,3)*e,y:ka(g,3)*a+3*ka(g,2)*l*f+3*g*l*l*b+ka(l,3)*I}},qb=ba(function(c,a,d,f,h,b,e,I){var l=h-
2*d+c-(e-2*h+d),g=2*(d-c)-2*(h-d),D=c-d,k=(-g+oa(g*g-4*l*D))/2/l,l=(-g-oa(g*g-4*l*D))/2/l,G=[a,I],ba=[c,e];"1e12"<ra(k)&&(k=.5);"1e12"<ra(l)&&(l=.5);0<k&&1>k&&(k=gb(c,a,d,f,h,b,e,I,k),ba.push(k.x),G.push(k.y));0<l&&1>l&&(k=gb(c,a,d,f,h,b,e,I,l),ba.push(k.x),G.push(k.y));l=b-2*f+a-(I-2*b+f);g=2*(f-a)-2*(b-f);D=a-f;k=(-g+oa(g*g-4*l*D))/2/l;l=(-g-oa(g*g-4*l*D))/2/l;"1e12"<ra(k)&&(k=.5);"1e12"<ra(l)&&(l=.5);0<k&&1>k&&(k=gb(c,a,d,f,h,b,e,I,k),ba.push(k.x),G.push(k.y));0<l&&1>l&&(k=gb(c,a,d,f,h,b,e,I,l),
ba.push(k.x),G.push(k.y));return{min:{x:ha[T](0,ba),y:ha[T](0,G)},max:{x:va[T](0,ba),y:va[T](0,G)}}}),mb=a._path2curve=ba(function(c,a){var d=!a&&Ba(c);if(!a&&d.curve)return Qa(d.curve);var f=cb(c),h=a&&cb(a),b={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},e={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},I=function(c,a){var d,f;if(!c)return["C",a.x,a.y,a.x,a.y,a.x,a.y];c[0]in{T:1,Q:1}||(a.qx=a.qy=null);switch(c[0]){case "M":a.X=c[1];a.Y=c[2];break;case "A":c=["C"].concat(pb[T](0,[a.x,a.y].concat(c.slice(1))));
break;case "S":d=a.x+(a.x-(a.bx||a.x));f=a.y+(a.y-(a.by||a.y));c=["C",d,f].concat(c.slice(1));break;case "T":a.qx=a.x+(a.x-(a.qx||a.x));a.qy=a.y+(a.y-(a.qy||a.y));c=["C"].concat(sb(a.x,a.y,a.qx,a.qy,c[1],c[2]));break;case "Q":a.qx=c[1];a.qy=c[2];c=["C"].concat(sb(a.x,a.y,c[1],c[2],c[3],c[4]));break;case "L":c=["C"].concat(vb(a.x,a.y,c[1],c[2]));break;case "H":c=["C"].concat(vb(a.x,a.y,c[1],a.y));break;case "V":c=["C"].concat(vb(a.x,a.y,a.x,c[1]));break;case "Z":c=["C"].concat(vb(a.x,a.y,a.X,a.Y))}return c},
l=function(c,a){if(7<c[a].length){c[a].shift();for(var d=c[a];d.length;)c.splice(a++,0,["C"].concat(d.splice(0,6)));c.splice(a,1);k=va(f.length,h&&h.length||0)}},g=function(c,a,d,b,e){c&&a&&"M"==c[e][0]&&"M"!=a[e][0]&&!e&&(a.splice(e,0,["M",b.x,b.y]),d.bx=0,d.by=0,d.x=c[e][1],d.y=c[e][2],k=va(f.length,h&&h.length||0))},D=0,k=va(f.length,h&&h.length||0);for(;D<k;D++){f[D]=I(f[D],b);l(f,D);h&&(h[D]=I(h[D],e));h&&l(h,D);g(f,h,b,e,D);g(h,f,e,b,D);var G=f[D],ba=h&&h[D],t=G.length,p=h&&ba.length;b.x=G[t-
2];b.y=G[t-1];b.bx=ca(G[t-4])||b.x;b.by=ca(G[t-3])||b.y;e.bx=h&&(ca(ba[p-4])||e.x);e.by=h&&(ca(ba[p-3])||e.y);e.x=h&&ba[p-2];e.y=h&&ba[p-1]}h||(d.curve=Qa(f));return h?[f,h]:f},null,Qa);a._parseDots=ba(function(c){for(var d=[],f=0,h=c.length;f<h;f++){var b={},e=c[f].match(/^([^:]*):?([\d\.]*)/);b.color=a.getRGB(e[1]);if(b.color.error)return null;b.opacity=b.color.opacity;b.color=b.color.hex;e[2]&&(b.offset=e[2]+"%");d.push(b)}f=1;for(h=d.length-1;f<h;f++)if(!d[f].offset){c=ca(d[f-1].offset||0);e=
0;for(b=f+1;b<h;b++)if(d[b].offset){e=d[b].offset;break}e||(e=100,b=h);e=ca(e);for(e=(e-c)/(b-f+1);f<b;f++)c+=e,d[f].offset=c+"%"}return d});var nb=a._tear=function(c,a){c==a.top&&(a.top=c.prev);c==a.bottom&&(a.bottom=c.next);c.next&&(c.next.prev=c.prev);c.prev&&(c.prev.next=c.next)};a._tofront=function(c,a){if(a.top===c)return!1;nb(c,a);c.next=null;c.prev=a.top;a.top.next=c;a.top=c;return!0};a._toback=function(c,a){if(a.bottom===c)return!1;nb(c,a);c.next=a.bottom;c.prev=null;a.bottom.prev=c;a.bottom=
c;return!0};a._insertafter=function(c,a,d,f){nb(c,d);c.parent=f;a===f.top&&(f.top=c);a.next&&(a.next.prev=c);c.next=a.next;c.prev=a;a.next=c};a._insertbefore=function(c,a,d,f){nb(c,d);c.parent=f;a===f.bottom&&(f.bottom=c);a.prev&&(a.prev.next=c);c.prev=a.prev;a.prev=c;c.next=a};var Fb=a.toMatrix=function(c,a){var d=Oa(c),f={_:{transform:""},getBBox:function(){return d}};Bb(f,a);return f.matrix};a.transformPath=function(c,a){return Pa(c,Fb(c,a))};var Bb=a._extractTransform=function(c,d){if(null==d)return c._.transform;
d=wa(d).replace(/\.{3}|\u2026/g,c._.transform||"");var f=a.parseTransformString(d),h=0,b=0,e=0,I=1,l=1,g=c._,e=new r;g.transform=f||[];if(f)for(var b=0,D=f.length;b<D;b++){var k=f[b],G=k.length,ba=wa(k[0]).toLowerCase(),t=k[0]!=ba,Ba=t?e.invert():0;"t"==ba&&3==G?t?(G=Ba.x(0,0),ba=Ba.y(0,0),t=Ba.x(k[1],k[2]),Ba=Ba.y(k[1],k[2]),e.translate(t-G,Ba-ba)):e.translate(k[1],k[2]):"r"==ba?2==G?(Ba=g.bb||(g.bb=c.getBBox(1)),e.rotate(k[1],Ba.x+Ba.width/2,Ba.y+Ba.height/2),h+=k[1]):4==G&&(t?(t=Ba.x(k[2],k[3]),
Ba=Ba.y(k[2],k[3]),e.rotate(k[1],t,Ba)):e.rotate(k[1],k[2],k[3]),h+=k[1]):"s"==ba?2==G||3==G?(Ba=g.bb||(g.bb=c.getBBox(1)),e.scale(k[1],k[G-1],Ba.x+Ba.width/2,Ba.y+Ba.height/2),I*=k[1],l*=k[G-1]):5==G&&(t?(t=Ba.x(k[3],k[4]),Ba=Ba.y(k[3],k[4]),e.scale(k[1],k[2],t,Ba)):e.scale(k[1],k[2],k[3],k[4]),I*=k[1],l*=k[2]):"m"==ba&&7==G&&e.add(k[1],k[2],k[3],k[4],k[5],k[6]);g.dirtyT=1;c.matrix=e}c.matrix=e;g.sx=I;g.sy=l;g.deg=h;g.dx=b=e.e;g.dy=e=e.f;1==I&&1==l&&!h&&g.bbox?(g.bbox.x+=+b,g.bbox.y+=+e):g.dirtyT=
1},Wb=function(c){var a=c[0];switch(a.toLowerCase()){case "t":return[a,0,0];case "m":return[a,1,0,0,1,0,0];case "r":return 4==c.length?[a,0,c[2],c[3]]:[a,0];case "s":return 5==c.length?[a,1,1,c[3],c[4]]:3==c.length?[a,1,1]:[a,1]}},Hb=a._equaliseTransform=function(c,d){d=wa(d).replace(/\.{3}|\u2026/g,c);c=a.parseTransformString(c)||[];d=a.parseTransformString(d)||[];for(var f=va(c.length,d.length),h=[],b=[],e=0,I,l,g,D;e<f;e++){g=c[e]||Wb(d[e]);D=d[e]||Wb(g);if(g[0]!=D[0]||"r"==g[0].toLowerCase()&&
(g[2]!=D[2]||g[3]!=D[3])||"s"==g[0].toLowerCase()&&(g[3]!=D[3]||g[4]!=D[4]))return;h[e]=[];b[e]=[];I=0;for(l=va(g.length,D.length);I<l;I++)I in g&&(h[e][I]=g[I]),I in D&&(b[e][I]=D[I])}return{from:h,to:b}};a._getContainer=function(c,d,f,h){var b;b=null!=h||a.is(c,"object")?c:R.doc.getElementById(c);if(null!=b)return b.tagName?null==d?{container:b,width:b.style.pixelWidth||b.offsetWidth,height:b.style.pixelHeight||b.offsetHeight}:{container:b,width:d,height:f}:{container:1,x:c,y:d,width:f,height:h}};
a.pathToRelative=I;a._engine={};a.path2curve=mb;a.matrix=function(c,a,d,f,h,b){return new r(c,a,d,f,h,b)};(function(c){function d(c){return c[0]*c[0]+c[1]*c[1]}function f(c){var a=oa(d(c));c[0]&&(c[0]/=a);c[1]&&(c[1]/=a)}c.add=function(c,a,d,f,h,b){var e=[[],[],[]],I=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1]];a=[[c,d,h],[a,f,b],[0,0,1]];c&&c instanceof r&&(a=[[c.a,c.c,c.e],[c.b,c.d,c.f],[0,0,1]]);for(c=0;3>c;c++)for(d=0;3>d;d++){for(f=h=0;3>f;f++)h+=I[c][f]*a[f][d];e[c][d]=h}this.a=e[0][0];
this.b=e[1][0];this.c=e[0][1];this.d=e[1][1];this.e=e[0][2];this.f=e[1][2]};c.invert=function(){var c=this.a*this.d-this.b*this.c;return new r(this.d/c,-this.b/c,-this.c/c,this.a/c,(this.c*this.f-this.d*this.e)/c,(this.b*this.e-this.a*this.f)/c)};c.clone=function(){return new r(this.a,this.b,this.c,this.d,this.e,this.f)};c.translate=function(c,a){this.add(1,0,0,1,c,a)};c.scale=function(c,a,d,f){null==a&&(a=c);(d||f)&&this.add(1,0,0,1,d,f);this.add(c,0,0,a,0,0);(d||f)&&this.add(1,0,0,1,-d,-f)};c.rotate=
function(c,d,f){c=a.rad(c);d=d||0;f=f||0;var h=+na(c).toFixed(9);c=+da(c).toFixed(9);this.add(h,c,-c,h,d,f);this.add(1,0,0,1,-d,-f)};c.x=function(c,a){return c*this.a+a*this.c+this.e};c.y=function(c,a){return c*this.b+a*this.d+this.f};c.get=function(c){return+this[wa.fromCharCode(97+c)].toFixed(4)};c.toString=function(){return a.svg?"matrix("+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+")":[this.get(0),this.get(2),this.get(1),this.get(3),0,0].join()};c.toMatrixString=
function(){return"matrix("+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+")"};c.toFilter=function(){return"progid:DXImageTransform.Microsoft.Matrix(M11="+this.get(0)+", M12="+this.get(2)+", M21="+this.get(1)+", M22="+this.get(3)+", Dx="+this.get(4)+", Dy="+this.get(5)+", sizingmethod='auto expand')"};c.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]};c.split=function(){var c={};c.dx=this.e;c.dy=this.f;var h=[[this.a,this.c],[this.b,this.d]];c.scalex=
oa(d(h[0]));f(h[0]);c.shear=h[0][0]*h[1][0]+h[0][1]*h[1][1];h[1]=[h[1][0]-h[0][0]*c.shear,h[1][1]-h[0][1]*c.shear];c.scaley=oa(d(h[1]));f(h[1]);c.shear/=c.scaley;var b=-h[0][1],h=h[1][1];0>h?(c.rotate=a.deg(qa.acos(h)),0>b&&(c.rotate=360-c.rotate)):c.rotate=a.deg(qa.asin(b));c.isSimple=!+c.shear.toFixed(9)&&(c.scalex.toFixed(9)==c.scaley.toFixed(9)||!c.rotate);c.isSuperSimple=!+c.shear.toFixed(9)&&c.scalex.toFixed(9)==c.scaley.toFixed(9)&&!c.rotate;c.noRotation=!+c.shear.toFixed(9)&&!c.rotate;return c};
c.toTransformString=function(c){c=c||this.split();return c.isSimple?(c.scalex=+c.scalex.toFixed(4),c.scaley=+c.scaley.toFixed(4),c.rotate=+c.rotate.toFixed(4),(c.dx||c.dy?"t"+[c.dx,c.dy]:"")+(1!=c.scalex||1!=c.scaley?"s"+[c.scalex,c.scaley,0,0]:"")+(c.rotate?"r"+[c.rotate,0,0]:"")):"m"+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)]}})(r.prototype);var wb=h.navigator,Nb=wb.userAgent.match(/Version\/(.*?)\s/)||wb.userAgent.match(/Chrome\/(\d+)/);"Apple Computer, Inc."==wb.vendor&&
(Nb&&4>Nb[1]||"iP"==wb.platform.slice(0,2))||"Google Inc."==wb.vendor&&Nb&&8>Nb[1]?G.safari=function(){var c=this.rect(-99,-99,this.width+99,this.height+99).attr({stroke:"none"});setTimeout(function(){c.remove()});return!0}:G.safari=Ea;for(var xb=function(){this.returnValue=!1},yb=function(){return this.originalEvent.preventDefault()},Cb=function(){this.cancelBubble=!0},Ib=function(){return this.originalEvent.stopPropagation()},Jb=a.addEvent=function(){if(R.doc.addEventListener)return function(c,
a,h,b){var e=f&&Ia[a]||a,I;Ia[sa[a]]&&(e=Ia[sa[a]]);I=function(e){var I=R.doc.documentElement.scrollTop||R.doc.body.scrollTop,l=R.doc.documentElement.scrollLeft||R.doc.body.scrollLeft,g;if(d&&Ia.hasOwnProperty(f?a:sa[a]))for(var D=0,k=e.targetTouches&&e.targetTouches.length;D<k;D++)if(g=e.targetTouches[D].target,g==c||"tspan"==g.nodeName&&g.parentNode==c){g=e;e=e.targetTouches[D];e.originalEvent=g;e.preventDefault=yb;e.stopPropagation=Ib;break}return h.call(b,e,e.clientX+l,e.clientY+I)};c.addEventListener(e,
I,!1);return function(){c.removeEventListener(e,I,!1);return!0}};if(R.doc.attachEvent)return function(c,a,d,f){var h=function(c){c=c||R.win.event;var a=c.clientX+(R.doc.documentElement.scrollLeft||R.doc.body.scrollLeft),h=c.clientY+(R.doc.documentElement.scrollTop||R.doc.body.scrollTop);c.preventDefault=c.preventDefault||xb;c.stopPropagation=c.stopPropagation||Cb;return d.call(f,c,a,h)};c.attachEvent("on"+a,h);return function(){c.detachEvent("on"+a,h);return!0}}}(),ub=[],jb=function(c){for(var f=
c.clientX,h=c.clientY,b=R.doc.documentElement.scrollTop||R.doc.body.scrollTop,e=R.doc.documentElement.scrollLeft||R.doc.body.scrollLeft,I,l,g=ub.length;g--;){I=ub[g];if(d&&"touchmove"===c.type){l=c.touches.length;for(var D;l--;)if(D=c.touches[l],D.identifier==I.el._drag.id){f=D.clientX;h=D.clientY;(c.originalEvent?c.originalEvent:c).preventDefault();break}}else c.preventDefault();if(!I.el.removed){l=a._engine.getNode(I.el);var k=l.nextSibling,G=l.parentNode,ba=l.style.display;R.win.opera&&G.removeChild(l);
l.style.display="none";D=I.el.paper.getElementByPoint(f,h);l.style.display=ba;R.win.opera&&(k?G.insertBefore(l,k):G.appendChild(l));D&&u("raphael.drag.over."+I.el.id,I.el,D);f+=e;h+=b;l=c.data=[f-I.el._drag.x,h-I.el._drag.y,f,h];u("raphael.drag.move."+I.el.id,I.move_scope||I.el,c,l)}}},tb=function(c){a.undragmove(jb).undragend(tb);a.unmousemove(jb).unmouseup(tb);for(var d=ub.length,f;d--;)f=ub[d],f.el._drag={},u("raphael.drag.end."+f.el.id,f.end_scope||f.start_scope||f.move_scope||f.el,c);ub=[]},
Wa=a.el={},Kb=Ra.length;Kb--;)(function(c){a[c]=Wa[c]=function(d,f){a.is(d,"function")&&(this.events=this.events||[],this.events.push({name:c,f:d,unbind:Jb(this.shape||this.node||R.doc,c,d,f||this)}));return this};a["un"+c]=Wa["un"+c]=function(a){for(var d=this.events||[],f=d.length;f--;)if(d[f].name==c&&d[f].f==a){d[f].unbind();d.splice(f,1);!d.length&&delete this.events;break}return this}})(Ra[Kb]);Wa.data=function(c,d){var f=ta[this.id]=ta[this.id]||{};if(1==arguments.length){if(a.is(c,"object")){for(var h in c)c.hasOwnProperty(h)&&
this.data(h,c[h]);return this}u("raphael.data.get."+this.id,this,f[c],c);return f[c]}f[c]=d;u("raphael.data.set."+this.id,this,d,c);return this};Wa.removeData=function(c){null==c?delete ta[this.id]:ta[this.id]&&delete ta[this.id][c];return this};Wa.getData=function(){return bb(ta[this.id]||{})};var zb=[],Gb=function(){this.untrack=Jb(R.doc,"mouseup",Sb,this)},Sb=function(){this.untrack();this.untrack=null;return this.fn&&this.fn.apply(this.scope||this.el,arguments)};Wa.mouseup=function(c,d,f){if(!f)return a.mouseup.apply(this,
arguments);zb.push(f={el:this,fn:c,scope:d});f.unbind=Jb(this.shape||this.node||R.doc,"mousedown",Gb,f);return this};Wa.unmouseup=function(c){for(var d=zb.length,f;d--;)zb[d].el===this&&zb[d].fn===c&&(f=zb[d],f.unbind(),f.untrack&&f.untrack(),zb.splice(d,1));return f?this:a.unmouseup.apply(this,arguments)};Wa.hover=function(c,a,d,f){return this.mouseover(c,d).mouseout(a,f||d)};Wa.unhover=function(c,a){return this.unmouseover(c).unmouseout(a)};var fb=[];Wa.drag=function(c,h,b,e,I,l){function g(D){var k=
R.doc.documentElement.scrollTop||R.doc.body.scrollTop,G=R.doc.documentElement.scrollLeft||R.doc.body.scrollLeft;this._drag.x=D.clientX+G;this._drag.y=D.clientY+k;this._drag.id=D.identifier;d&&!f&&!ub.length&&a.dragmove(jb).dragend(tb);!ub.length&&a.mousemove(jb).mouseup(tb);ub=[{el:this,move_scope:e,start_scope:I,end_scope:l}];k=D.data=[D.clientX+G,D.clientY+k];h&&h.call(I||e||this,D,k);c&&u.on("raphael.drag.move."+this.id,c);b&&u.on("raphael.drag.end."+this.id,b)}this._drag={};fb.push({el:this,start:g,
onstart:h,onmove:c,onend:b});d&&!f&&this.dragstart(g);this.mousedown(g);return this};Wa.onDragOver=function(c){c?u.on("raphael.drag.over."+this.id,c):u.unbind("raphael.drag.over."+this.id)};Wa.undrag=function(){for(var c=fb.length;c--;)fb[c].el==this&&(this.unmousedown(fb[c].start),fb.splice(c,1),u.unbind("raphael.drag.*."+this.id));!fb.length&&a.unmousemove(jb).unmouseup(tb);delete this._drag};Wa.undragmove=function(){for(var c=fb.length;c--;)fb[c].el==this&&fb[c].onmove&&(this.unmousedown(fb[c].start),
fb.splice(c,1),u.unbind("raphael.drag.move."+this.id));!fb.length&&a.unmousemove(jb).unmouseup(tb)};Wa.undragend=function(){for(var c=fb.length;c--;)fb[c].el==this&&fb[c].onend&&(this.unmousedown(fb[c].start),fb.splice(c,1),u.unbind("raphael.drag.end."+this.id));!fb.length&&a.unmousemove(jb).unmouseup(tb)};Wa.undragstart=function(){for(var c=fb.length;c--;)fb[c].el==this&&fb[c].onstart&&(this.unmousedown(fb[c].start),fb.splice(c,1),u.unbind("raphael.drag.start."+this.id),this._dragstart=!1);!fb.length&&
a.unmousemove(jb).unmouseup(tb)};Wa.follow=function(c,d,f){if(c.removed||c.constructor!==a.el.constructor)return this;c.followers.push({el:this,stalk:f={before:"insertBefore",after:"insertAfter"}[f],cb:d});f&&this[f](c);return this};Wa.unfollow=function(c){if(c.removed||c.constructor!==a.el.constructor)return this;for(var d=0,f=c.followers.length;d<f;d++)if(c.followers[d].el===this){c.followers.splice(d,1);break}return this};G.hide=function(){this.canvas.style.visibility="hidden";return this};G.show=
function(){this.canvas.style.visibility="";return this};G.group=function(){var c=arguments,d=Sa(c,!0),c=a._engine.group(this,c[0],d);return this.__set__&&this.__set__.push(c),this._elementsById[c.id]=c};G.circle=function(){var c=arguments,d=Sa(c,!0),c=ab(c,"cx",0,"cy",0,"r",0,"fill","none","stroke","#000"),d=a._engine.circle(this,c,d);return this.__set__&&this.__set__.push(d),this._elementsById[d.id]=d};G.rect=function(){var c=arguments,d=Sa(c,!0),c=ab(c,"x",0,"y",0,"width",0,"height",0,"r",0,"fill",
"none","stroke","#000"),d=a._engine.rect(this,c,d);return this.__set__&&this.__set__.push(d),this._elementsById[d.id]=d};G.ellipse=function(){var c=arguments,d=Sa(c,!0),c=ab(c,"x",0,"y",0,"rx",0,"ry",0,"fill","none","stroke","#000"),d=a._engine.ellipse(this,c,d);return this.__set__&&this.__set__.push(d),this._elementsById[d.id]=d};G.path=function(){var c=arguments,d=Sa(c,!0),f=this.config,c=ab(c,"path","","fill","none","stroke","#000","stroke-linecap",f&&f["stroke-linecap"]||"butt"),d=a._engine.path(this,
c,d);return this.__set__&&this.__set__.push(d),this._elementsById[d.id]=d};G.image=function(){var c=arguments,d=Sa(c,!0),c=ab(c,"src","","x",0,"y",0,"width",0,"height",0);out=a._engine.image(this,c,d);return this.__set__&&this.__set__.push(out),this._elementsById[out.id]=out};G.text=function(){var c=arguments,d=Sa(c,!0),f=ab(c,"x",0,"y",0,"text","","stroke","none","fill","#000","text-anchor","middle","vertical-align","middle"),c=a._engine.text(this,f,d,c[1]);return this.__set__&&this.__set__.push(c),
this._elementsById[c.id]=c};G.set=function(c){!a.is(c,"array")&&(c=P.call(arguments,0,arguments.length));var d=new Eb(c);this.__set__&&this.__set__.push(d);return d};G.setConfig=function(c,a){void 0!==c&&void 0!==a&&(this.config=this.config||{},this.config[c]=a);return this.config};G.setStart=function(c){this.__set__=c||this.set()};G.setFinish=function(c){c=this.__set__;delete this.__set__;return c};G.setSize=function(c,d){return a._engine.setSize.call(this,c,d)};G.setDimension=function(c,a){"object"===
typeof c?this.setSize(c.width,c.height):this.setSize(c,a)};G.attr=function(c){if(null==c)return{width:this.width,height:this.height};if(a.is(c,"string"))return this[c];this.setDimension(c);return this};G.status=function(c,a){return Wa.status.call(this,c,a)};G.animateWith=function(c,a,d,f,h,b,e){return Wa.animateWith.call(this,c,a,d,f,h,b,e)};G.animate=function(c,a,d,f){return Wa.animate.call(this,c,a,d,f)};G.setViewBox=function(c,d,f,h,b){return a._engine.setViewBox.call(this,c,d,f,h,b)};G.top=G.bottom=
null;G.raphael=a;G.getElementByPoint=function(c,a){var d,f,h=this.canvas,b=R.doc.elementFromPoint(c,a);if(R.win.opera&&"svg"==b.tagName){f=h.getBoundingClientRect();d=h.ownerDocument;var e=d.body,I=d.documentElement;d=f.top+(R.win.pageYOffset||I.scrollTop||e.scrollTop)-(I.clientTop||e.clientTop||0);f=f.left+(R.win.pageXOffset||I.scrollLeft||e.scrollLeft)-(I.clientLeft||e.clientLeft||0);e=h.createSVGRect();e.x=c-f;e.y=a-d;e.width=e.height=1;d=h.getIntersectionList(e,null);d.length&&(b=d[d.length-1])}if(!b)return null;
for(;b.parentNode&&b!=h.parentNode&&!b.raphael;)b=b.parentNode;b==this.canvas.parentNode&&(b=h);return b=b&&b.raphael?this.getById(b.raphaelid):null};G.getElementsByBBox=function(c){var d=this.set();this.forEach(function(f){a.isBBoxIntersect(f.getBBox(),c)&&d.push(f)});return d};G.getById=function(c){return this._elementsById[c]||null};G.forEach=function(c,a){for(var d=this.bottom;d&&!1!==c.call(a,d);)d=d.next;return this};G.getElementsByPoint=function(c,a){var d=this.set();this.forEach(function(f){f.isPointInside(c,
a)&&d.push(f)});return d};Wa.isPointInside=function(c,d){var f=this.realPath=this.realPath||Ua[this.type](this),h;return a.isPointInsidePath((h=this.attr("transform"))&&h.length&&a.transformPath(f,h)||f,c,d)};Wa.getBBox=function(c){if(this.removed)return{};var a=this._;if(c){if(a.dirty||!a.bboxwt)this.realPath=Ua[this.type](this),a.bboxwt=Oa(this.realPath),a.bboxwt.toString=k,a.dirty=0;return a.bboxwt}if(a.dirty||a.dirtyT||!a.bbox){if(a.dirty||!this.realPath)a.bboxwt=0,this.realPath=Ua[this.type](this);
a.bbox=Oa(Pa(this.realPath,this.matrix));a.bbox.toString=k;a.dirty=a.dirtyT=0}return a.bbox};Wa.clone=function(){if(this.removed)return null;var c=this.paper[this.type]().attr(this.attr());this.__set__&&this.__set__.push(c);return c};Wa.glow=function(c){if("text"==this.type)return null;c=c||{};var a=(c.width||10)+(+this.attr("stroke-width")||1),d=c.fill||!1,f=c.opacity||.5,h=c.offsetx||0,b=c.offsety||0;c=c.color||"#000";for(var e=a/2,I=this.paper,l=I.set(),g=this.realPath||Ua[this.type](this),g=this.matrix?
Pa(g,this.matrix):g,D=1;D<e+1;D++)l.push(I.path(g).attr({stroke:c,fill:d?c:"none","stroke-linejoin":"round","stroke-linecap":"round","stroke-width":+(a/e*D).toFixed(3),opacity:+(f/e).toFixed(3)}));return l.insertBefore(this).translate(h,b)};var Tb=function(c,d,f,h,b,e,I,l,g){return null==g?U(c,d,f,h,b,e,I,l):a.findDotsAtSegment(c,d,f,h,b,e,I,l,N(c,d,f,h,b,e,I,l,g))},Lb=function(c,d){return function(f,h,b){f=mb(f);for(var e,I,l,g,D="",k={},G=0,ba=0,t=f.length;ba<t;ba++){l=f[ba];if("M"==l[0])e=+l[1],
I=+l[2];else{g=Tb(e,I,l[1],l[2],l[3],l[4],l[5],l[6]);if(G+g>h){if(d&&!k.start){e=Tb(e,I,l[1],l[2],l[3],l[4],l[5],l[6],h-G);D+=["C"+e.start.x,e.start.y,e.m.x,e.m.y,e.x,e.y];if(b)return D;k.start=D;D=["M"+e.x,e.y+"C"+e.n.x,e.n.y,e.end.x,e.end.y,l[5],l[6]].join();G+=g;e=+l[5];I=+l[6];continue}if(!c&&!d)return e=Tb(e,I,l[1],l[2],l[3],l[4],l[5],l[6],h-G),{x:e.x,y:e.y,alpha:e.alpha}}G+=g;e=+l[5];I=+l[6]}D+=l.shift()+l}k.end=D;e=c?G:d?k:a.findDotsAtSegment(e,I,l[0],l[1],l[2],l[3],l[4],l[5],1);e.alpha&&(e=
{x:e.x,y:e.y,alpha:e.alpha});return e}},Mb=Lb(1),Ob=Lb(),Pb=Lb(0,1);a.getTotalLength=Mb;a.getPointAtLength=Ob;a.getSubpath=function(c,a,d){if(1E-6>this.getTotalLength(c)-d)return Pb(c,a).end;c=Pb(c,d,1);return a?Pb(c,a).end:c};Wa.getTotalLength=function(){if("path"==this.type)return this.node.getTotalLength?this.node.getTotalLength():Mb(this.attrs.path)};Wa.getPointAtLength=function(c){if("path"==this.type)return Ob(this.attrs.path,c)};Wa.getSubpath=function(c,d){if("path"==this.type)return a.getSubpath(this.attrs.path,
c,d)};var rb=a.easing_formulas={linear:function(c){return c},"<":function(c){return ka(c,1.7)},">":function(c){return ka(c,.48)},"<>":function(c){var a=.48-c/1.04,d=oa(.1734+a*a);c=d-a;c=ka(ra(c),1/3)*(0>c?-1:1);a=-d-a;a=ka(ra(a),1/3)*(0>a?-1:1);c=c+a+.5;return 3*(1-c)*c*c+c*c*c},backIn:function(c){return c*c*(2.70158*c-1.70158)},backOut:function(c){--c;return c*c*(2.70158*c+1.70158)+1},elastic:function(c){return c==!!c?c:ka(2,-10*c)*da(2*(c-.075)*za/.3)+1},bounce:function(c){c<1/2.75?c*=7.5625*c:
c<2/2.75?(c-=1.5/2.75,c=7.5625*c*c+.75):c<2.5/2.75?(c-=2.25/2.75,c=7.5625*c*c+.9375):(c-=2.625/2.75,c=7.5625*c*c+.984375);return c},oneBounceOut:function(c){return.9>=c?1.33*rb.easeIn(c):1.2-c/5},elasticOnce:function(c){return c==!!c?c:Math.pow(2,-10*c)*Math.sin(2*(c-.225)*Math.PI/.9)+1},easeInQuad:function(c){return c*c},easeOutQuad:function(c){return c*(2-c)},easeInOutQuad:function(c){return.5>c?2*c*c:-1+(4-2*c)*c},easeInCubic:function(c){return c*c*c},easeOutCubic:function(c){return--c*c*c+1},
easeInOutCubic:function(c){return.5>c?4*c*c*c:(c-1)*(2*c-2)*(2*c-2)+1},easeInQuart:function(c){return c*c*c*c},easeOutQuart:function(c){return 1- --c*c*c*c},easeInOutQuart:function(c){return.5>c?8*c*c*c*c:1-8*--c*c*c*c},easeInQuint:function(c){return c*c*c*c*c},easeOutQuint:function(c){return 1+--c*c*c*c*c},easeInOutQuint:function(c){return.5>c?16*c*c*c*c*c:1+16*--c*c*c*c*c}};rb.easeIn=rb["ease-in"]=rb["<"];rb.easeOut=rb["ease-out"]=rb[">"];rb.easeInOut=rb["ease-in-out"]=rb["<>"];rb["back-in"]=rb.backIn;
rb["back-out"]=rb.backOut;var db=[],ac,Vb=function(){for(var c=+new Date,d=0,f=[],h=0,I=0;d<db.length;d++)if(I=db[d],!(I.el.removed||I.paused||I.parentEl&&I.parentEl.e&&I.parentEl.e.paused)){for(var l=c-I.start,g=I.ms,D=I.easing,k=I.from,G=I.diff,ba=I.to,t=I.el,Ba={},p,z={},F=!1!==a.stopEvent,m,h=0,h=I.el&&I.el.animElements&&I.el.animElements.peek();h&&h.pos<=l/g;)f.push(I.el.animElements.deq()),h=I.el.animElements.peek();I.initstatus?(l=(I.initstatus*I.anim.top-I.prev)/(I.percent-I.prev)*g,I.status=
I.initstatus,delete I.initstatus,I.stop&&(delete I.el,db.splice(d--,1))):I.status=(I.prev+l/g*(I.percent-I.prev))/I.anim.top;h=g;I.parentEl&&I.parentEl.animElements?(g=I.delayend-I.delaystart,l=I.parentEl.cPos-I.delaystart):I.el.animElements&&(I.el.cPos=l/g);if(!(0>l))if(l<g){var aa=D(l/g),g=h,w;for(w in k)if(k.hasOwnProperty(w)){switch(Fa[w]){case K:p=+k[w]+aa*g*G[w];break;case "colour":if(G[w].length){p=[];h=0;for(l=k[w].length;h<l;++h)0===h?k[w].isRadial||G[w].isRadial?(radial="xr(",radial+=k[w][0].f1*
(1-aa)+G[w][0].f1*aa||"",radial+=",",radial+=k[w][0].f2*(1-aa)+G[w][0].f2*aa||"",radial+=",",radial+=k[w][0].f3*(1-aa)+G[w][0].f3*aa||"",radial+=",",radial+=k[w][0].f4*(1-aa)+G[w][0].f4*aa||"",radial+=",",radial+=k[w][0].f5*(1-aa)+G[w][0].f5*aa||"",radial+=",",radial+=k[w][0].f6||"userSpaceOnUse",radial+=")",p.push(radial)):(p.push(k[w][h]*(1-aa)+aa*G[w][h]),0>=p[0]&&(p[0]+=360)):p.push("rgba("+[Db(Y(k[w][h].r+aa*g*G[w][h].r)),Db(Y(k[w][h].g+aa*g*G[w][h].g)),Db(Y(k[w][h].b+aa*g*G[w][h].b)),k[w][h].opacity+
aa*g*G[w][h].opacity].join()+"):"+k[w][h].position);p=p.join("-");if(k[w].isRadial||G[w].isRadial)p=p.replace("-","")}else tmpOpacity=k[w].opacity+aa*g*G[w].opacity,isNaN(tmpOpacity)&&(tmpOpacity=1),p="rgba("+[Db(Y(k[w].r+aa*g*G[w].r)),Db(Y(k[w].g+aa*g*G[w].g)),Db(Y(k[w].b+aa*g*G[w].b)),tmpOpacity].join()+")";break;case "path":p=[];h=0;for(l=k[w].length;h<l;h++){p[h]=[k[w][h][0]];D=k[w][h]?k[w][h].length:0;for(ba=1;ba<D;ba++)p[h][ba]=(+k[w][h][ba]+aa*g*G[w][h][ba]).toFixed(4);p[h]=p[h].join(" ")}p=
p.join(" ");break;case "transform":if(G[w].real)for(p=[],h=0,l=k[w].length;h<l;h++)for(p[h]=[k[w][h][0]],ba=1,D=k[w][h].length;ba<D;ba++)p[h][ba]=k[w][h][ba]+aa*g*G[w][h][ba];else p=function(c){return+k[w][c]+aa*g*G[w][c]},p=[["m",p(0),p(1),p(2),p(3),p(4),p(5)]];break;case "csv":if("clip-rect"==w)for(p=[],h=4;h--;)p[h]=+k[w][h]+aa*g*G[w][h];break;default:for(l=[].concat(k[w]),p=[],h=t.ca[w].length;h--;)p[h]=+l[h]+aa*g*G[w][h]}Ba[w]=p}t.attr(Ba);F&&function(c,a,d){setTimeout(function(){u("raphael.anim.frame."+
c,a,d)})}(t.id,t,I.anim)}else{(function(c,d,f){setTimeout(function(){F&&u("raphael.anim.frame."+d.id,d,f);F&&u("raphael.anim.finish."+d.id,d,f);a.is(c,"function")&&c.call(d)})})(I.callback,t,I.anim);t.attr(ba);delete I.el;db.splice(d--,1);if(1<I.repeat&&!I.next){for(m in ba)ba.hasOwnProperty(m)&&(z[m]=I.totalOrigin[m]);I.el.attr(z);e(I.anim,I.el,I.anim.percents[0],null,I.totalOrigin,I.repeat-1)}I.next&&!I.stop&&e(I.anim,I.el,I.next,null,I.totalOrigin,I.repeat)}}a.svg&&t&&t.paper&&t.paper.safari();
d=0;for(I=f.length;d<I;++d)b.schedular.addJob(function(c){return function(){e.apply(null,f[c].params)}}(d),b.priorityList.instant);db.length&&(ac||a.getAnimFrameFn())(Vb)},Db=function(c){return 255<c?255:0>c?0:c},Qb=function(c){1<c&&(c=1);0>c&&(c=0);return c};a.getAnimFrameFn=function(){return ac=a.requestAnimFrame||A.webkitRequestAnimationFrame||A.mozRequestAnimationFrame||A.oRequestAnimationFrame||A.msRequestAnimationFrame||function(c){setTimeout(c,16)}};Wa.animateWith=function(c,d,f,h,b,I,l){var g=
this,D={},k;l=l||{};for(k in l)l.hasOwnProperty(k)&&(D[k]=l[k]);l=D;if(g.removed)return I&&I.call(g),g;if(0==h)return a.is(I,"function")&&setTimeout(function(){I.call(g)},0),g.attr(f);h=f instanceof n?f:a.animation(f,h,b,I);l.start=Qb(l.start||0);l.end=Qb(l.end||1);l.start>=l.end&&(l.start=l.end);!l.from&&.01<l.start?(c.animElements=c.animElements||new J(function(c,a){return a.pos-c.pos}),c.animElements.enq({pos:l.start,attr:l.start===l.end,params:[h,g,h.percents[0],null,g.attr(),void 0,c,{start:l.start,
end:l.end,smartMorph:l.smartMorph,hookFn:l.hookFn},f],executeOb:{el:this,attrs:f,callback:I,hookFn:l.hookFn}})):e(h,g,h.percents[0],null,g.attr(),void 0,c,l);f=0;for(l=db.length;f<l;f++)if(db[f].anim==d&&db[f].el==c){db[l-1].start=db[f].start;break}return g};Wa.onAnimation=function(c){c?u.on("raphael.anim.frame."+this.id,c):u.unbind("raphael.anim.frame."+this.id);return this};n.prototype.delay=function(c){var a=new n(this.anim,this.ms);a.times=this.times;a.del=+c||0;return a};n.prototype.repeat=function(c){var a=
new n(this.anim,this.ms);a.del=this.del;a.times=qa.floor(va(c,0))||1;return a};a.animation=function(c,d,f,h,b){if(c instanceof n)return c;if(a.is(f,"function")||!f)h=h||f||null,f=null;void 0===a.stopEvent&&(a.stopEvent=b);c=Object(c);d=+d||0;b={};var e,I;for(I in c)c.hasOwnProperty(I)&&ca(I)!=I&&ca(I)+"%"!=I&&(e=!0,b[I]=c[I]);return e?(f&&(b.easing=f),h&&(b.callback=h),new n({100:b},d)):new n(c,d)};Wa.animate=function(c,d,f,h){if(this.removed)return h&&h.call(this),this;c=c instanceof n?c:a.animation(c,
d,f,h);e(c,this,c.percents[0],null,this.attr());return this};Wa.setTime=function(c,a){c&&null!=a&&this.status(c,ha(a,c.ms)/c.ms);return this};Wa.status=function(c,a){var d=[],f=0,h,b;if(null!=a)return e(c,this,-1,ha(a,1)),this;for(h=db.length;f<h;f++)if(b=db[f],b.el.id==this.id&&(!c||b.anim==c)){if(c)return b.status;d.push({anim:b.anim,status:b.status})}return c?0:d};Wa.pause=function(c,a){var d=+new Date,f,h;for(h=0;h<db.length;h++)f=db[h],!(f.el.id===this.id||a&&f.parentEl&&f.parentEl.e.el&&f.parentEl.e.el.id===
this.id)||c&&f.anim!=c||!1===u("raphael.anim.pause."+this.id,this,f.anim)||(f.paused=!0,f.pauseStart=d);return this};Wa.resume=function(c,a){var d=+new Date,f,h;for(h=0;h<db.length;h++)f=db[h],!(f.el.id===this.id||a&&f.parentEl&&f.parentEl.e.el&&f.parentEl.e.el.id===this.id)||c&&f.anim!=c||!1===u("raphael.anim.resume."+this.id,this,f.anim)||(delete f.paused,f.el.status(f.anim,f.status),f.pauseEnd=d,f.start+=(f.parentEl&&f.parentEl.e.pauseEnd||f.pauseEnd)-(f.parentEl&&f.parentEl.e.pauseStart||f.pauseStart)||
0);return this};Wa.stop=function(c,a,d){var f;if(a)for(f=db.length-1;0<=f;f--)a=db[f],!(a.el.id===this.id||a.parentEl&&a.parentEl.id===this.id)||c&&db[f].anim!=c||(ele=a.el,d&&ele.attr(a.to),a.callback&&a.callback.call(ele),delete ele.e,delete a.el,db.splice(f,1));else for(f=0;f<db.length;f++)a=db[f],a.el.id!==this.id||c&&a.anim!==c||!1!==u("raphael.anim.stop."+this.id,this,a.anim)&&db.splice(f--,1);if(this.animElements)for(c=this.animElements;d=c.deq();)d=d.executeOb,d.hookFn&&d.hookFn.call(d.el),
d.el.attr(d.attrs),d.callback&&d.callback.call(d.el);return this};u.on("raphael.remove",V);u.on("raphael.clear",V);Wa.toString=function(){return"Raphaël’s object"};Wa.toFront=function(){if(this.removed)return this;var c=a._engine.getNode(this),d=this.parent,f=this.followers,h;a._tofront(this,d)&&d.canvas.appendChild(c);c=0;for(d=f.length;c<d;c++)(h=f[c]).stalk&&h.el[h.stalk](this);return this};Wa.toBack=function(){if(this.removed)return this;var c=a._engine.getNode(this),d=this.parent,f=this.followers,
h;a._toback(this,d)&&d.canvas.insertBefore(c,d.canvas.firstChild);c=0;for(d=f.length;c<d;c++)(h=f[c]).stalk&&h.el[h.stalk](this);return this};Wa.insertAfter=function(c){if(this.removed)return this;var d=a._engine.getNode(this),f=a._engine.getLastNode(c),h=c.parent.canvas,b=this.followers,e;f.nextSibling?h.insertBefore(d,f.nextSibling):h.appendChild(d);a._insertafter(this,c,this.parent,c.parent);d=0;for(f=b.length;d<f;d++)(e=b[d]).stalk&&e.el[e.stalk](c);return this};Wa.insertBefore=function(c){if(this.removed)return this;
var d=a._engine.getNode(this),f=a._engine.getNode(c),h=this.followers,b;c.parent.canvas.insertBefore(d,f);a._insertbefore(this,c,this.parent,c.parent);this.parent=c.parent;d=0;for(f=h.length;d<f;d++)(b=h[d]).stalk&&b.el[b.stalk](c);return this};Wa.appendChild=function(c){if(this.removed||"group"!==this.type)return this;var d=this.followers,f,h,b;if(c.parent===this)return c.toFront(),this;h=a._engine.getNode(c);a._tear(c,c.parent);this.canvas.appendChild(h);c.parent=this;!this.bottom&&(this.bottom=
c);c.prev=this.top;c.next=null;this.top&&(this.top.next=c);this.top=c;h=0;for(b=d.length;h<b;h++)(f=d[h]).stalk&&f.el[f.stalk](c);return this};Wa.removeChild=function(c){if(this.removed||"group"!==this.type||c.parent!==this)return this;var d=a._engine.getNode(c),f=this.paper;a._tear(c,this);f.canvas.appendChild(d);this.parent=f;!f.bottom&&(f.bottom=this);(this.prev=f.top)&&(f.top.next=this);f.top=this;this.next=null;return this};var Eb=function(c){this.items=[];this.length=0;this.type="set";if(c)for(var a=
0,d=c.length;a<d;a++)!c[a]||c[a].constructor!=Wa.constructor&&c[a].constructor!=Eb||(this[this.items.length]=this.items[this.items.length]=c[a],this.length++)},lb=Eb.prototype;lb.push=function(){for(var c,a,d=0,f=arguments.length;d<f;d++)!(c=arguments[d])||c.constructor!=Wa.constructor&&c.constructor!=Eb||(a=this.items.length,this[a]=this.items[a]=c,this.length++);return this};lb.pop=function(){this.length&&delete this[this.length--];return this.items.pop()};lb.forEach=function(c,a){for(var d=0,f=
this.items.length;d<f&&!1!==c.call(a,this.items[d],d);d++);return this};for(var Ub in Wa)Wa.hasOwnProperty(Ub)&&(lb[Ub]=function(c){return function(){var a=arguments;return this.forEach(function(d){d[c][T](d,a)})}}(Ub));lb.attr=function(c,d){if(c&&a.is(c,t)&&a.is(c[0],"object"))for(var f=0,h=c.length;f<h;f++)this.items[f].attr(c[f]);else for(f=0,h=this.items.length;f<h;f++)this.items[f].attr(c,d);return this};lb.clear=function(){for(;this.length;)this.pop()};lb.splice=function(c,a,d){c=0>c?va(this.length+
c,0):c;a=va(0,ha(this.length-c,isNaN(a)&&this.length||a));var f=[],h=[],b=[],e;for(e=2;e<arguments.length;e++)b.push(arguments[e]);for(e=0;e<a;e++)h.push(this[c+e]);for(;e<this.length-c;e++)f.push(this[c+e]);var I=b.length;for(e=0;e<I+f.length;e++)this.items[c+e]=this[c+e]=e<I?b[e]:f[e-I];for(e=this.items.length=this.length-=a-I;this[e];)delete this[e++];return new Eb(h)};lb.exclude=function(c){for(var a=0,d=this.length;a<d;a++)if(this[a]==c)return this.splice(a,1),!0};lb.animate=function(c,d,f,h){!a.is(f,
"function")&&f||(h=f||null);var b=this.items.length,e=b,I=this,l;if(!b)return this;h&&(l=function(){!--b&&h.call(I)});f=a.is(f,"string")?f:l;d=a.animation(c,d,f,l);for(c=this.items[--e].animate(d);e--;)this.items[e]&&!this.items[e].removed&&this.items[e].animateWith(c,d,d);return this};lb.insertAfter=function(c){for(var a=this.items.length;a--;)this.items[a].insertAfter(c);return this};lb.getBBox=function(){for(var c=[],a=[],d=[],f=[],h=this.items.length;h--;)if(!this.items[h].removed){var b=this.items[h].getBBox();
c.push(b.x);a.push(b.y);d.push(b.x+b.width);f.push(b.y+b.height)}c=ha[T](0,c);a=ha[T](0,a);d=va[T](0,d);f=va[T](0,f);return{x:c,y:a,x2:d,y2:f,width:d-c,height:f-a}};lb.clone=function(c){c=new Eb;for(var a=0,d=this.items.length;a<d;a++)c.push(this.items[a].clone());return c};lb.toString=function(){return"Raphaël‘s set"};lb.glow=function(c){var a=this.paper.set();this.forEach(function(d,f){var h=d.glow(c);null!=h&&h.forEach(function(c,d){a.push(c)})});return a};a.registerFont=function(c){if(!c.face)return c;
this.fonts=this.fonts||{};var a={w:c.w,face:{},glyphs:{}},d=c.face["font-family"],f;for(f in c.face)c.face.hasOwnProperty(f)&&(a.face[f]=c.face[f]);this.fonts[d]?this.fonts[d].push(a):this.fonts[d]=[a];if(!c.svg){a.face["units-per-em"]=ma(c.face["units-per-em"],10);for(var h in c.glyphs)if(c.glyphs.hasOwnProperty(h)&&(d=c.glyphs[h],a.glyphs[h]={w:d.w,k:{},d:d.d&&"M"+d.d.replace(/[mlcxtrv]/g,function(c){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[c]||"M"})+"z"},d.k))for(var b in d.k)d.hasOwnProperty(b)&&
(a.glyphs[h].k[b]=d.k[b])}return c};G.getFont=function(c,d,f,h){h=h||"normal";f=f||"normal";d=+d||{normal:400,bold:700,lighter:300,bolder:800}[d]||400;if(a.fonts){var b=a.fonts[c];if(!b){c=new RegExp("(^|\\s)"+c.replace(/[^\w\d\s+!~.:_-]/g,"")+"(\\s|$)","i");for(var e in a.fonts)if(a.fonts.hasOwnProperty(e)&&c.test(e)){b=a.fonts[e];break}}var I;if(b)for(e=0,c=b.length;e<c&&(I=b[e],I.face["font-weight"]!=d||I.face["font-style"]!=f&&I.face["font-style"]||I.face["font-stretch"]!=h);e++);return I}};G.print=
function(c,d,f,h,b,e,I){e=e||"middle";I=va(ha(I||0,1),-1);var l=wa(f).split(""),g=0,D=0,k="";a.is(h,f)&&(h=this.getFont(h));if(h){f=(b||16)/h.face["units-per-em"];var G=h.face.bbox.split(ja);b=+G[0];var ba=G[3]-G[1],t=0;e=+G[1]+("baseline"==e?ba+ +h.face.descent:ba/2);for(var G=0,Ba=l.length;G<Ba;G++){if("\n"==l[G])D=w=g=0,t+=ba;else var p=D&&h.glyphs[l[G-1]]||{},w=h.glyphs[l[G]],g=g+(D?(p.w||h.w)+(p.k&&p.k[l[G]]||0)+h.w*I:0),D=1;w&&w.d&&(k+=a.transformPath(w.d,["t",g*f,t*f,"s",f,f,b,e,"t",(c-b)/
f,(d-e)/f]))}}return this.path(k).attr({fill:"#000",stroke:"none"})};G.add=function(c){if(a.is(c,"array"))for(var d=this.set(),f=0,h=c.length,b;f<h;f++)b=c[f]||{},aa.hasOwnProperty(b.type)&&d.push(this[b.type]().attr(b));return d};a.format=function(c,d){var f=a.is(d,t)?[0].concat(d):arguments;c&&a.is(c,"string")&&f.length-1&&(c=c.replace(ya,function(c,a){return null==f[++a]?"":f[a]}));return c||""};a.fullfill=function(){var c=/\{([^\}]+)\}/g,a=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g,
d=function(c,d,f){var h=f;d.replace(a,function(c,a,d,f,b){a=a||f;h&&(a in h&&(h=h[a]),"function"==typeof h&&b&&(h=h()))});return h=(null==h||h==f?c:h)+""};return function(a,f){return String(a).replace(c,function(c,a){return d(c,a,f)})}}();a.ninja=function(){w?R.win.Raphael=F:delete R.win.Raphael;return a};var Zb=a.vml&&.5||0;a.crispBound=ba(function(c,a,d,f,h){var b={},e;c=c||0;a=a||0;d=d||0;f=f||0;h=h||0;e=h%2/2+Zb;b.x=Y(c+e)-e;b.y=Y(a+e)-e;b.width=Y(c+d+e)-e-b.x;b.height=Y(a+f+e)-e-b.y;b["stroke-width"]=
h;0===b.width&&0!==d&&(b.width=1);0===b.height&&0!==f&&(b.height=1);return b},a);Wa.crisp=function(){var c=this.attrs,d,f=this.attr(["x","y","width","height","stroke-width"]),f=a.crispBound(f.x,f.y,f.width,f.height,f["stroke-width"]);for(d in f)c[d]===f[d]&&delete f[d];return this.attr(f)};a.st=lb;a.define=function(c,d,f,h,b,e){var I;if(a.is(c,t))for(e=0,I=c.length;e<I;e++)a.define(c[e]);else if(a.is(c,"object"))a.define(c.name,c[c.name],c.ca,c.fn,c.e,c.data);else if(c&&!a.fn[c])return a.fn[c]=function(){var e=
arguments,I=d.apply(this,e),l;if(h&&a.is(h,"object"))for(l in h)I[l]=h[l];if(b&&a.is(b,"object"))for(l in b)I[l]&&I[l](b[l]);if(f){if(a.is(f,"function"))I.ca[c]=f;else for(l in f)I.ca[l]=f[l];I.ca[c]&&(a._lastArgIfGroup(e,!0),e.length&&I.attr(c,Z.call(e)))}return I},f&&(a.fn[c].ca=f),h&&(a.fn[c].fn=h),b&&(a.fn[c].e=b),e&&(a.fn[c].data=e),a.fn[c]};(function(c,d,f){function h(){/in/.test(c.readyState)?setTimeout(h,9):a.eve("raphael.DOMload")}null==c.readyState&&c.addEventListener&&(c.addEventListener(d,
f=function(){c.removeEventListener(d,f,!1);c.readyState="complete"},!1),c.readyState="loading");h()})(X,"DOMContentLoaded");u.on("raphael.DOMload",function(){p=!0});"undefined"===typeof v&&"object"===typeof window&&(v=window);(function(){function c(a){for(var d={},f=a,h=d;f;)f.node&&f.node.style&&"none"===f.node.style.display&&(f.show(),h._doHide=!0),f=f.parent,h.parent={},h=h.parent;return function(){for(var c=a,f=d;c;)f._doHide&&c.hide(),c=c.parent,f=f.parent}}function d(c,a){var f=a.src,h=c.node,
b=c._.RefImg;b||(b=c._.RefImg=new Image);void 0!==a.src&&(b.src=f,b.onload=function(){c.attr({width:c.attrs.width||b.width,height:c.attrs.height||b.height})},b.onerror=function(c){h.onerror&&h.onerror(c)},c._.RefImg=b)}if(a.svg){var f=String,h=parseFloat,b=parseInt,e=Math,I=e.max,l=e.abs,g=e.pow,D=e.sqrt,k=/[, ]+/,G=!(!/AppleWebKit/.test(a._g.win.navigator.userAgent)||/Chrome/.test(a._g.win.navigator.userAgent)&&!(29>a._g.win.navigator.appVersion.match(/Chrome\/(\d+)\./)[1])),ba=a.eve,t={block:"M5,0 0,2.5 5,5z",
classic:"M5,0 0,2.5 5,5 3.5,3 3.5,2z",diamond:"M2.5,0 5,2.5 2.5,5 0,2.5z",open:"M6,1 1,3.5 6,6",oval:"M2.5,0A2.5,2.5,0,0,1,2.5,5 2.5,2.5,0,0,1,2.5,0z"},Ba={},p=-1<a._g.win.navigator.userAgent.toLowerCase().indexOf("firefox");a.cachedFontHeight={};a.toString=function(){return"Your browser supports SVG.\nYou are running Raphaël "+this.version};a._url="";var w=function(c,a){var d=c.gradient;if(d){if(d===a)return;d.refCount--;d.refCount||d.parentNode.removeChild(d);delete c.gradient}a&&(c.gradient=a,
a.refCount++)},z=a._createNode=function(c,d){if(d){"string"==typeof c&&(c=z(c));for(var h in d)d.hasOwnProperty(h)&&("xlink:"==h.substring(0,6)?c.setAttributeNS("http://www.w3.org/1999/xlink",h.substring(6),f(d[h])):c.setAttribute(h,f(d[h])))}else c=a._g.doc.createElementNS("http://www.w3.org/2000/svg",c);return c},F={userSpaceOnUse:"userSpaceOnUse",objectBoundingBox:"objectBoundingBox"},aa={pad:"pad",redlect:"reflect",repeat:"repeat"},m=function(c,d){if(!c.paper||!c.paper.defs)return 0;var b="linear",
k=c.paper,G=a.getElementID((k.id+"-"+d).replace(/[\(\)\s%:,\xb0#]/g,"_")),ba=.5,t=.5,Ba,p,m,Oa,B,n=c.node,K=n.style,R=a._g.doc.getElementById(G);if(!R){d=f(d).replace(a._radial_gradient,function(c,a){b="radial";a=a&&a.split(",")||[];Oa=a[5];B=a[6];var d=a[0],f=a[1],e=a[2],I=a[3],l=a[4],k=d&&f,G;e&&(Ba=/\%/.test(e)?e:h(e));if(Oa===F.userSpaceOnUse)return k&&(ba=d,t=f),I&&l&&(p=I,m=l,k||(ba=p,t=m)),"";k&&(ba=h(d),t=h(f),d=2*(.5<t)-1,.25<(G=g(ba-.5,2))+g(t-.5,2)&&.25>G&&(t=D(.25-G)*d+.5)&&.5!==t&&(t=
t.toFixed(5)-1E-5*d));I&&l&&(p=h(I),m=h(l),d=2*(.5<m)-1,.25<(G=g(p-.5,2))+g(m-.5,2)&&.25>G&&(m=D(.25-G)*d+.5)&&.5!==m&&(m=m.toFixed(5)-1E-5*d),k||(ba=p,t=m));return""});d=d.split(/\s*\-\s*/);if("linear"==b){var R=d.shift(),Qa=R.match(/\((.*)\)/),P,Qa=Qa&&Qa[1]&&Qa[1].split(/\s*\,\s*/),R=-h(R);if(isNaN(R))return null;Qa&&Qa.length?(Qa[0]in F?(Oa=Qa.shift(),Qa[0]in aa&&(B=Qa.shift())):(Qa[4]&&(Oa=Qa[4]),Qa[5]&&(B=Qa[5])),P=[Qa[0]||"0%",Qa[1]||"0%",Qa[2]||"100%",Qa[3]||"0%"]):(P=[0,0,e.cos(a.rad(R)),
e.sin(a.rad(R))],R=1/(I(l(P[2]),l(P[3]))||1),P[2]*=R,P[3]*=R,0>P[2]&&(P[0]=-P[2],P[2]=0),0>P[3]&&(P[1]=-P[3],P[3]=0))}Qa=a._parseDots(d);if(!Qa)return null;R=z(b+"Gradient",{id:G});R.refCount=0;Oa in F&&R.setAttribute("gradientUnits",f(Oa));B in aa&&R.setAttribute("spreadMethod",f(B));"radial"===b?(void 0!==Ba&&R.setAttribute("r",f(Ba)),void 0!==p&&void 0!==m&&(R.setAttribute("cx",f(p)),R.setAttribute("cy",f(m))),R.setAttribute("fx",f(ba)),R.setAttribute("fy",f(t))):z(R,{x1:P[0],y1:P[1],x2:P[2],y2:P[3]});
P=0;for(var r=Qa.length;P<r;P++)R.appendChild(z("stop",{offset:Qa[P].offset?Qa[P].offset:P?"100%":"0%","stop-color":Qa[P].color||"#fff","stop-opacity":void 0===Qa[P].opacity?1:Qa[P].opacity}));k.defs.appendChild(R)}w(c,R);z(n,{fill:"url('"+a._url+"#"+G+"')","fill-opacity":1});K.fill="";return K.fillOpacity=1},B=function(c){var a=c.getBBox(1);z(c.pattern,{patternTransform:c.matrix.invert()+" translate("+a.x+","+a.y+")"})},Oa=function(c,d,h){if("path"==c.type){for(var b=f(d).toLowerCase().split("-"),
e=c.paper,I=h?"end":"start",l=c.node,g=c.attrs,D=g["stroke-width"],k=b.length,G="classic",ba,p,w=3,F=3,aa=5;k--;)switch(b[k]){case "block":case "classic":case "oval":case "diamond":case "open":case "none":G=b[k];break;case "wide":F=5;break;case "narrow":F=2;break;case "long":w=5;break;case "short":w=2}"open"==G?(w+=2,F+=2,aa+=2,ba=1,p=h?4:1,b={fill:"none",stroke:g.stroke}):(p=ba=w/2,b={fill:g.stroke,stroke:"none"});c._.arrows?h?(c._.arrows.endPath&&Ba[c._.arrows.endPath]--,c._.arrows.endMarker&&Ba[c._.arrows.endMarker]--):
(c._.arrows.startPath&&Ba[c._.arrows.startPath]--,c._.arrows.startMarker&&Ba[c._.arrows.startMarker]--):c._.arrows={};if("none"!=G){var k="raphael-marker-"+G,m="raphael-marker-"+I+G+w+F+"-obj"+c.id;a._g.doc.getElementById(k)?Ba[k]++:(e.defs.appendChild(z(z("path"),{"stroke-linecap":"round",d:t[G],id:k})),Ba[k]=1);var Oa=a._g.doc.getElementById(m);Oa?(Ba[m]++,w=Oa.getElementsByTagName("use")[0]):(Oa=z(z("marker"),{id:m,markerHeight:F,markerWidth:w,orient:"auto",refX:p,refY:F/2}),w=z(z("use"),{"xlink:href":"#"+
k,transform:(h?"rotate(180 "+w/2+" "+F/2+") ":"")+"scale("+w/aa+","+F/aa+")","stroke-width":(1/((w/aa+F/aa)/2)).toFixed(4)}),Oa.appendChild(w),e.defs.appendChild(Oa),Ba[m]=1);z(w,b);e=ba*("diamond"!=G&&"oval"!=G);h?(h=c._.arrows.startdx*D||0,D=a.getTotalLength(g.path)-e*D):(h=e*D,D=a.getTotalLength(g.path)-(c._.arrows.enddx*D||0));b={};b["marker-"+I]="url('"+a._url+"#"+m+"')";if(D||h)b.d=a.getSubpath(g.path,h,D);z(l,b);c._.arrows[I+"Path"]=k;c._.arrows[I+"Marker"]=m;c._.arrows[I+"dx"]=e;c._.arrows[I+
"Type"]=G;c._.arrows[I+"String"]=d}else h?(h=c._.arrows.startdx*D||0,D=a.getTotalLength(g.path)-h):(h=0,D=a.getTotalLength(g.path)-(c._.arrows.enddx*D||0)),c._.arrows[I+"Path"]&&z(l,{d:a.getSubpath(g.path,h,D)}),delete c._.arrows[I+"Path"],delete c._.arrows[I+"Marker"],delete c._.arrows[I+"dx"],delete c._.arrows[I+"Type"],delete c._.arrows[I+"String"];for(b in Ba)Ba.hasOwnProperty(b)&&!Ba[b]&&(c=a._g.doc.getElementById(b))&&c.parentNode.removeChild(c)}},n={"":["none"],none:["none"],"-":[3,1],".":[1,
1],"-.":[3,1,1,1],"-..":[3,1,1,1,1,1],". ":[1,3],"- ":[4,3],"--":[8,3],"- .":[4,3,1,3],"--.":[8,3,1,3],"--..":[8,3,1,3,1,3]},K=function(c,d,h){var b=n[f(d).toLowerCase()],e,I,l;if(d=b||void 0!==d&&[].concat(d)){e=c.attrs["stroke-width"]||1;h={round:e,square:e,butt:0}[h["stroke-linecap"]||c.attrs["stroke-linecap"]]||0;I=d.length;l=b?e:1;if("none"==d[0])b=d;else for(b=[];I--;)b[I]=d[I]*l+(I%2?1:-1)*h,0>=b[I]&&(b[I]=.01+(1>=e?h:0)),isNaN(b[I])&&(b[I]=0);a.is(d,"array")&&z(c.node,{"stroke-dasharray":b.join(",")})}},
R=function(c,a){for(var d in a)ba("raphael.attr."+d+"."+c.id,c,a[d],d),c.ca[d]&&c.attr(d,a[d])},Qa=a._setFillAndStroke=function(c,h,e){if(c.paper.canvas){var g=c.node,D=c.attrs,ba=c.paper,t=g.style,Ba=t.visibility;h&&h.text&&h.text.replace&&(h.text=h.text.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&<br\/>lt;|&l<br\/>t;|&lt<br\/>;/g,"<<br/>").replace(/&<br\/>gt;|&g<br\/>t;|&gt<br\/>;/g,"><br/>"));t.visibility="hidden";"image"===c.type&&d(c,h);for(var p in h)if(h.hasOwnProperty(p)&&a._availableAttrs.hasOwnProperty(p)){var F=
h[p];D[p]=F;switch(p){case "blur":c.blur(F);break;case "href":case "title":case "target":var aa=g.parentNode;if("a"!=aa.tagName.toLowerCase()){if(""==F)break;var R=z("a");R.raphael=!0;R.raphaelid=g.raphaelid;aa.insertBefore(R,g);R.appendChild(g);aa=R}"target"==p?aa.setAttributeNS("http://www.w3.org/1999/xlink","show","blank"==F?"new":F):aa.setAttributeNS("http://www.w3.org/1999/xlink",p,F);g.titleNode=aa;break;case "cursor":t.cursor=F;break;case "transform":c.transform(F);break;case "rotation":a.is(F,
"array")?c.rotate.apply(c,F):c.rotate(F);break;case "arrow-start":Oa(c,F);break;case "arrow-end":Oa(c,F,1);break;case "clip-path":var n=!0;case "clip-rect":aa=!n&&f(F).split(k);c._.clipispath=!!n;if(n||4==aa.length){c.clip&&c.clip.parentNode.parentNode.removeChild(c.clip.parentNode);var R=z("clipPath"),Qa=z(n?"path":"rect");R.id=a.getElementID(a.createUUID());z(Qa,n?{d:F?D["clip-path"]=a._pathToAbsolute(F):a._availableAttrs.path,fill:"none"}:{x:aa[0],y:aa[1],width:aa[2],height:aa[3],transform:c.matrix.invert()});
R.appendChild(Qa);ba.defs.appendChild(R);z(g,{"clip-path":"url('"+a._url+"#"+R.id+"')"});c.clip=Qa}!F&&(F=g.getAttribute("clip-path"))&&((F=a._g.doc.getElementById(F.replace(/(^url\(#|\)$)/g,"")))&&F.parentNode.removeChild(F),z(g,{"clip-path":""}),11===document.documentMode&&g.removeAttribute("clip-path"),delete c.clip);break;case "path":"path"==c.type&&(z(g,{d:F?D.path=a._pathToAbsolute(F):a._availableAttrs.path}),c._.dirty=1,c._.arrows&&("startString"in c._.arrows&&Oa(c,c._.arrows.startString),
"endString"in c._.arrows&&Oa(c,c._.arrows.endString,1)));break;case "width":if(g.setAttribute(p,F),c._.dirty=1,D.fx)p="x",F=D.x;else break;case "x":D.fx&&(F=-D.x-(D.width||0));case "rx":if("rx"==p&&"rect"==c.type)break;case "cx":g.setAttribute(p,F);c.pattern&&B(c);c._.dirty=1;break;case "height":if(g.setAttribute(p,F),c._.dirty=1,D.fy)p="y",F=D.y;else break;case "y":D.fy&&(F=-D.y-(D.height||0));case "ry":if("ry"==p&&"rect"==c.type)break;case "cy":g.setAttribute(p,F);c.pattern&&B(c);c._.dirty=1;break;
case "r":"rect"==c.type?z(g,{rx:F,ry:F}):g.setAttribute(p,F);c._.dirty=1;break;case "src":"image"==c.type&&g.setAttributeNS("http://www.w3.org/1999/xlink","href",F);break;case "stroke-width":if(1!=c._.sx||1!=c._.sy)F/=I(l(c._.sx),l(c._.sy))||1;ba._vbSize&&(F*=ba._vbSize);G&&0===F&&(F=1E-6);g.setAttribute(p,F);D["stroke-dasharray"]&&K(c,D["stroke-dasharray"],h);c._.arrows&&("startString"in c._.arrows&&Oa(c,c._.arrows.startString),"endString"in c._.arrows&&Oa(c,c._.arrows.endString,1));break;case "stroke-dasharray":K(c,
F,h);break;case "fill":var P=f(F).match(a._ISURL);if(P){var R=z("pattern"),r=z("image");R.id=a.getElementID(a.createUUID());z(R,{x:0,y:0,patternUnits:"userSpaceOnUse",height:1,width:1});z(r,{x:0,y:0,"xlink:href":P[1]});R.appendChild(r);(function(c){a._preload(P[1],function(){var a=this.offsetWidth,d=this.offsetHeight;z(c,{width:a,height:d});z(r,{width:a,height:d});ba.safari()})})(R);ba.defs.appendChild(R);t.fill="url('"+a._url+"#"+R.id+"')";z(g,{fill:t.fill});c.pattern=R;c.pattern&&B(c);break}aa=
a.getRGB(F);if(!aa.error)delete h.gradient,delete D.gradient,!a.is(D["fill-opacity"],"undefined")&&a.is(h["fill-opacity"],"undefined")&&z(g,{"fill-opacity":D["fill-opacity"]}),c.gradient&&w(c);else if(("circle"==c.type||"ellipse"==c.type||"r"!=f(F).charAt())&&m(c,F)){if("opacity"in D||"fill-opacity"in D)if(aa=a._g.doc.getElementById(g.getAttribute("fill").replace(/^url\(#|\)$/g,"")))aa=aa.getElementsByTagName("stop"),z(aa[aa.length-1],{"stop-opacity":("opacity"in D?D.opacity:1)*("fill-opacity"in D?
D["fill-opacity"]:1)});D.gradient=F;D.fill="none";t.fill="";break}aa.hasOwnProperty("opacity")?(z(g,{"fill-opacity":t.fillOpacity=1<aa.opacity?aa.opacity/100:aa.opacity}),c._.fillOpacityDirty=!0):c._.fillOpacityDirty&&a.is(D["fill-opacity"],"undefined")&&a.is(h["fill-opacity"],"undefined")&&(g.removeAttribute("fill-opacity"),t.fillOpacity="",delete c._.fillOpacityDirty);case "stroke":aa=a.getRGB(F);g.setAttribute(p,aa.hex);t[p]=aa.hex;"stroke"==p&&(aa.hasOwnProperty("opacity")?(z(g,{"stroke-opacity":t.strokeOpacity=
1<aa.opacity?aa.opacity/100:aa.opacity}),c._.strokeOpacityDirty=!0):c._.strokeOpacityDirty&&a.is(D["stroke-opacity"],"undefined")&&a.is(h["stroke-opacity"],"undefined")&&(g.removeAttribute("stroke-opacity"),t.strokeOpacity="",delete c._.strokeOpacityDirty),c._.arrows&&("startString"in c._.arrows&&Oa(c,c._.arrows.startString),"endString"in c._.arrows&&Oa(c,c._.arrows.endString,1)));break;case "gradient":"circle"!=c.type&&"ellipse"!=c.type&&"r"==f(F).charAt()||m(c,F);break;case "line-height":case "vertical-align":break;
case "visibility":"hidden"===F?c.hide():c.show();break;case "opacity":F=1<F?F/100:F;z(g,{opacity:F});t.opacity=F;break;case "fill-opacity":F=1<F?F/100:F;z(g,{"fill-opacity":F});t.fillOpacity=F;break;default:"font-size"==p&&(F=b(F,10)+"px"),aa=p.replace(/(\-.)/g,function(c){return c.substring(1).toUpperCase()}),t[aa]=F,c._.dirty=1,g.setAttribute(p,F)}}"text"===c.type&&!h["_do-not-tune"]&&Ra(c,h,e);t.visibility=Ba}},P=a._updateFollowers=function(){var c,a,d,f=arguments,h=S.call(f),b=S.call(f);c=0;for(a=
h.followers.length;c<a;c++)d=h.followers[c].el,d[b].apply(d,f)},Ra=function(c,d,b){if("text"==c.type&&(d.hasOwnProperty("text")||d.hasOwnProperty("font")||d.hasOwnProperty("font-size")||d.hasOwnProperty("x")||d.hasOwnProperty("y")||d.hasOwnProperty("line-height")||d.hasOwnProperty("vertical-align"))){var I=c.attrs,l=c.node;l.firstChild&&a._g.doc.defaultView.getComputedStyle(l.firstChild,"");var g=d.fontSize||d["font-size"]||I["font-size"]||b&&b.attrs.fontSize,D=h(d["line-height"]||I["line-height"])||
1.2*g,k=I.hasOwnProperty("vertical-align")?I["vertical-align"]:"middle",G=d.direction||b&&b.attrs.direction||"initial";isIE=!!document.documentMode;fontFamily=d.fontFamily||d["font-family"]||I["font-family"]||b&&b.attrs.fontFamily||"Verdana,sans";g=void 0===g?D/1.2||10:g.toString().replace(/px/,"");isNaN(D)&&(D=1.2*g);a.is(d.text,"array")&&(d.text=d.text.join("<br>"));valign="top"===k?-.5:"bottom"===k?.5:0;if(d.hasOwnProperty("text")&&(d.text!==I.text||c._textdirty)){for(I.text=d.text;l.firstChild;)l.removeChild(l.firstChild);
var ba=f(d.text).split(/\n|<br\s*?\/?>/ig);d=[];for(var t=0,p=ba.length;t<p;t++)b=z("tspan"),t?z(b,{dy:D,x:I.x}):z(b,{dy:D*ba.length*valign,x:I.x}),ba[t]||(b.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),ba[t]=" "),b.appendChild(a._g.doc.createTextNode(ba[t])),l.appendChild(b),d[t]=b,!isIE&&"rtl"===G&&t<p-1&&(b=z("tspan"),z(b,{visibility:"hidden","font-size":"0px"}),b.appendChild(a._g.doc.createTextNode("i")),l.appendChild(b));c._textdirty=!1}else for(d=l.getElementsByTagName("tspan"),
t=ba=0,p=d.length;t<p;t++)if(b=d[t],G=b.attributes[0],!G||"visibility"!==G.name&&"visibility"!==G.nodeName||"hidden"!==G.value&&"hidden"!==G.nodeValue)t?z(b,{dy:D,x:I.x}):(G=d[1]&&d[1].attributes[0],!G||"visibility"!==G.name&&"visibility"!==G.nodeName||"hidden"!==G.value&&"hidden"!==G.nodeValue||(ba=e.floor(.5*d.length)),z(d[0],{dy:D*(d.length-ba)*valign,x:I.x}));z(l,{x:I.x,y:I.y});c._.dirty=1;(c=c._getCustomBBox(fontFamily,g+"px",k,t).diff)&&a.is(c,"finite")&&d[0]&&z(d[0],{dy:c})}},r=function(c,
d,f){f=f||d;f.canvas&&f.canvas.appendChild(c);this.node=this[0]=c;c.raphael=!0;c.raphaelid=this.id=a._oid++;this.matrix=a.matrix();this.realPath=null;this.attrs=this.attrs||{};this.followers=this.followers||[];this.paper=d;this.ca=this.customAttributes=this.customAttributes||new d._CustomAttributes;this._={transform:[],sx:1,sy:1,deg:0,dx:0,dy:0,dirty:1};this.parent=f;!f.bottom&&(f.bottom=this);(this.prev=f.top)&&(f.top.next=this);f.top=this;this.next=null},L=a.el;r.prototype=L;L.constructor=r;a._engine.getNode=
function(c){c=c.node||c[0].node;return c.titleNode||c};a._engine.getLastNode=function(c){c=c.node||c[c.length-1].node;return c.titleNode||c};L.rotate=function(c,a,d){if(this.removed)return this;P(this,"rotate",c,a,d);c=f(c).split(k);c.length-1&&(a=h(c[1]),d=h(c[2]));c=h(c[0]);null==d&&(a=d);if(null==a||null==d)d=this.getBBox(1),a=d.x+d.width/2,d=d.y+d.height/2;this.transform(this._.transform.concat([["r",c,a,d]]));return this};L.scale=function(c,a,d,b){var e;if(this.removed)return this;P(this,"scale",
c,a,d,b);c=f(c).split(k);c.length-1&&(a=h(c[1]),d=h(c[2]),b=h(c[3]));c=h(c[0]);null==a&&(a=c);null==b&&(d=b);if(null==d||null==b)e=this.getBBox(1);d=null==d?e.x+e.width/2:d;b=null==b?e.y+e.height/2:b;this.transform(this._.transform.concat([["s",c,a,d,b]]));return this};L.translate=function(c,a){if(this.removed)return this;P(this,"translate",c,a);c=f(c).split(k);c.length-1&&(a=h(c[1]));c=h(c[0])||0;this.transform(this._.transform.concat([["t",c,+a||0]]));return this};L.transform=function(c){var d=
this._;if(null==c)return d.transform;a._extractTransform(this,c);this.clip&&!d.clipispath&&z(this.clip,{transform:this.matrix.invert()});this.pattern&&B(this);this.node&&z(this.node,{transform:this.matrix});c=this.attrs.hasOwnProperty("stroke-width")?this.attrs["stroke-width"]:1;this.attr({"stroke-width":c});return this};L.hide=function(){P(this,"hide");!this.removed&&this.paper.safari(this.node.style.display="none");return this};L.show=function(){P(this,"show");!this.removed&&this.paper.safari(this.node.style.display=
"");return this};L.remove=function(){if(!this.removed&&this.parent.canvas){var c=a._engine.getNode(this),d=this.paper,f=d.defs;d.__set__&&d.__set__.exclude(this);ba.unbind("raphael.*.*."+this.id);for(this.gradient&&f&&w(this);f=this.followers.pop();)f.el.remove();for(;f=this.bottom;)f.remove();this._drag&&this.undrag();if(this.events)for(;f=this.events.pop();)f.unbind();this.parent.canvas.contains(c)&&this.parent.canvas.removeChild(c);this.removeData();delete d._elementsById[this.id];a._tear(this,
this.parent);for(f in this)this[f]="function"===typeof this[f]?a._removedFactory(f):null;this.removed=!0}};L._getCustomBBox=function(d,f,h,b){var e,I=this.node,l,g="text"===this.type,D=!!document.documentMode,k,G,ba;D&&g?e=c(this):"none"===I.style.display&&(this.show(),l=!0);if(g){k=a.cachedFontHeight;G=k.txtElem;ba=k[d]||(k[d]={});I=ba[f];I||(G||(G=k.txtElem=document.createElementNS("http://www.w3.org/2000/svg","text"),G.setAttribute("x",-100),G.setAttribute("y",-100),I=document.createTextNode("abcdefhiklmnopqrstuvwxyz"),
G.appendChild(I),document.getElementsByTagName("svg")[0].appendChild(G)),G.setAttribute("style","font-family :"+d+"; font-size :"+f),p?(I=this.paper.canvas.getBoundingClientRect(),G=G.getBoundingClientRect(),G.x=G.left-I.left,G.y=G.top-I.top):G=G.getBBox(),ba[f]=I=[],I.push(G.height),I.push(G.y));f=I[1];d=I[0];switch(h){case "bottom":h=-100-f-d*b;break;case "top":h=-100-f;break;default:h=-100-f-d/2*b}G={height:I[0],diff:h}}D&&g?e&&e():l&&this.hide();return G};L._getBBox=function(){var a,d=this.node,
f={},h=this.attrs,b,e,I="text"===this.type,l=!!document.documentMode;l&&I?a=c(this):"none"===d.style.display&&(this.show(),e=!0);try{f=d.getBBox(),I&&(void 0===f.x&&(f.isCalculated=!0,b=h["text-anchor"],f.x=(h.x||0)-f.width*("start"===b?0:"middle"===b?.5:1)),void 0===f.y&&(f.isCalculated=!0,b=h["vertical-align"],f.y=(h.y||0)-f.height*("bottom"===b?1:"middle"===b?.5:0)))}catch(g){}finally{f=f||{}}l&&I?a&&a():e&&this.hide();return f};L.attr=function(c,d){if(this.removed)return this;if(null==c){var f=
{},h;for(h in this.attrs)this.attrs.hasOwnProperty(h)&&(f[h]=this.attrs[h]);f.gradient&&"none"==f.fill&&(f.fill=f.gradient)&&delete f.gradient;f.transform=this._.transform;f.visibility="none"===this.node.style.display?"hidden":"visible";return f}if(null==d&&a.is(c,"string")){if("fill"==c&&"none"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;if("transform"==c)return this._.transform;if("visibility"==c)return"none"===this.node.style.display?"hidden":"visible";var f=c.split(k),b={},
e=0;for(h=f.length;e<h;e++)c=f[e],c in this.attrs?b[c]=this.attrs[c]:a.is(this.ca[c],"function")?b[c]=this.ca[c].def:b[c]=a._availableAttrs[c];return h-1?b:b[f[0]]}if(null==d&&a.is(c,"array")){b={};e=0;for(h=c.length;e<h;e++)b[c[e]]=this.attr(c[e]);return b}null!=d?(f={},f[c]=d):null!=c&&a.is(c,"object")&&(f=c);if(!1!==a.stopEvent)for(e in f)ba("raphael.attr."+e+"."+this.id,this,f[e],e);var I={};for(e in this.ca)if(this.ca[e]&&f.hasOwnProperty(e)&&a.is(this.ca[e],"function")&&!this.ca["_invoked"+
e]){this.ca["_invoked"+e]=!0;h=this.ca[e].apply(this,[].concat(f[e]));delete this.ca["_invoked"+e];for(b in h)h.hasOwnProperty(b)&&(f[b]=h[b]);this.attrs[e]=f[e];!1===h&&(I[e]=f[e],delete f[e])}Qa(this,f);var l,e=0;for(h=this.followers.length;e<h;e++)l=this.followers[e],l.cb&&!l.cb.call(l.el,f,this)||l.el.attr(f);for(b in I)f[b]=I[b];return this};L.blur=function(c){if(0!==+c){var d=z("filter"),f=z("feGaussianBlur");this.attrs.blur=c;d.id=a.getElementID(a.createUUID());z(f,{stdDeviation:+c||1.5});
d.appendChild(f);this.paper.defs.appendChild(d);this._blur=d;z(this.node,{filter:"url('"+a._url+"#"+d.id+"')"})}else this._blur&&(this._blur.parentNode.removeChild(this._blur),delete this._blur,delete this.attrs.blur),this.node.removeAttribute("filter")};L.on=function(c,d){var f,h;if(this.removed)return this;if("dragstart"===c)return this.drag(null,d),this;if("dragmove"===c)return this.drag(d),this;if("dragend"===c)return this.drag(null,null,d),this;f=d;h=c;a.supportsTouch&&(c=a._touchMap[c]||"click"===
c&&"touchstart"||c,c!==h&&(this._tempTouchListeners||(this._tempTouchListeners={}),this._tempTouchListeners[h]||(this._tempTouchListeners[h]=[]),f=function(c){c.preventDefault();d(c)},this._tempTouchListeners[h].push({oldFn:d,newFn:f,newEvt:c})));this.node.addEventListener?this.node.addEventListener(c,f):this.node["on"+c]=f;return this};L.off=function(c,d){var f,h,b;if(this.removed)return this;if("dragstart"===c)return this.undragstart(),this;if("dragmove"===c)return this.undragmove(),this;if("dragend"===
c)return this.undragend(),this;f=d;oldEventType=c;if(a.supportsTouch&&this._tempTouchListeners&&this._tempTouchListeners[oldEventType])for(b=this._tempTouchListeners[oldEventType].length,h=0;h<b&&oldEventType===c;h+=1)this._tempTouchListeners[oldEventType][h]&&this._tempTouchListeners[oldEventType][h].oldFn===f&&(c=this._tempTouchListeners[oldEventType][h].newEvt,f=this._tempTouchListeners[oldEventType][h].newFn,this._tempTouchListeners[oldEventType].splice(h,1));this.node.removeEventListener?this.node.removeEventListener(c,
f):this.node["on"+c]=null;return this};a._engine.path=function(c,a,d){var f=z("path");c=new r(f,c,d);c.type="path";Qa(c,a);R(c,a);return c};a._engine.group=function(c,a,d){var f=z("g");c=new r(f,c,d);c.type="group";c.canvas=c.node;c.top=c.bottom=null;c._id=a||"";a&&f.setAttribute("class","raphael-group-"+c.id+"-"+a);return c};a._engine.circle=function(c,a,d){var f=z("circle");c=new r(f,c,d);c.type="circle";Qa(c,a);R(c,a);return c};a._engine.rect=function(c,a,d){var f=z("rect");c=new r(f,c,d);c.type=
"rect";a.rx=a.ry=a.r;Qa(c,a);R(c,a);return c};a._engine.ellipse=function(c,a,d){var f=z("ellipse");c=new r(f,c,d);c.type="ellipse";Qa(c,a);R(c,a);return c};a._engine.image=function(c,a,d){var f=z("image"),h=new r(f,c,d,!0);h._.group=d||c;h.type="image";f.setAttribute("preserveAspectRatio","none");Qa(h,a);R(h,a);return h};a._engine.text=function(c,a,d,f){var h=z("text");c=new r(h,c,d);c.type="text";c._textdirty=!0;f&&c.css&&c.css(f,void 0,!0);Qa(c,a,d);R(c,a);return c};a._engine.setSize=function(c,
a){this.width=c||this.width;this.height=a||this.height;this.canvas.setAttribute("width",this.width);this.canvas.setAttribute("height",this.height);this._viewBox&&this.setViewBox.apply(this,this._viewBox);return this};a._engine.create=function(){var c=a._getContainer.apply(0,arguments),d=c&&c.container,f=c.x,h=c.y,b=c.width,c=c.height;if(!d)throw Error("SVG container not found.");var e=z("svg"),I;I="overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-user-select:none;-moz-user-select:-moz-none;-khtml-user-select:none;-ms-user-select:none;user-select:none;-o-user-select:none;cursor:default;vertical-align:middle;";
var l,f=f||0,h=h||0,b=b||512,c=c||342;z(e,{height:c,version:1.1,width:b,xmlns:"http://www.w3.org/2000/svg"});1==d?(e.style.cssText=I+"position:absolute;left:"+f+"px;top:"+h+"px",a._g.doc.body.appendChild(e),l=1):(e.style.cssText=I+"position:relative",d.firstChild?d.insertBefore(e,d.firstChild):d.appendChild(e));d=new a._Paper;d.width=b;d.height=c;d.canvas=e;z(e,{id:"raphael-paper-"+d.id});d.clear();d._left=d._top=0;l&&(d.renderfix=function(){});d.renderfix();return d};a._engine.setViewBox=function(c,
a,d,f,h){ba("raphael.setViewBox",this,this._viewBox,[c,a,d,f,h]);var b=I(d/this.width,f/this.height),e=this.top,l=h?"meet":"xMinYMin",g;null==c?(this._vbSize&&(b=1),delete this._vbSize,g="0 0 "+this.width+" "+this.height):(this._vbSize=b,g=c+" "+a+" "+d+" "+f);for(z(this.canvas,{viewBox:g,preserveAspectRatio:l});b&&e;)l="stroke-width"in e.attrs?e.attrs["stroke-width"]:1,e.attr({"stroke-width":l}),e._.dirty=1,e._.dirtyT=1,e=e.prev;this._viewBox=[c,a,d,f,!!h];return this};a.prototype.renderfix=function(){var c=
this.canvas,a=c.style,d;try{d=c.getScreenCTM()||c.createSVGMatrix()}catch(f){d=c.createSVGMatrix()}c=-d.e%1;d=-d.f%1;if(c||d)c&&(this._left=(this._left+c)%1,a.left=this._left+"px"),d&&(this._top=(this._top+d)%1,a.top=this._top+"px")};a.prototype._desc=function(c){var d=this.desc;if(d)for(;d.firstChild;)d.removeChild(d.firstChild);else this.desc=d=z("desc"),this.canvas.appendChild(d);d.appendChild(a._g.doc.createTextNode(a.is(c,"string")?c:"Created with Red Raphaël "+a.version))};a.prototype.clear=
function(){var c;for(ba("raphael.clear",this);c=this.bottom;)c.remove();for(c=this.canvas;c.firstChild;)c.removeChild(c.firstChild);this.bottom=this.top=null;c.appendChild(this.desc=z("desc"));c.appendChild(this.defs=z("defs"))};a.prototype.remove=function(){var c;for(ba("raphael.remove",this);c=this.bottom;)c.remove();this.defs&&this.defs.parentNode.removeChild(this.defs);this.desc&&this.desc.parentNode.removeChild(this.desc);this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas);
for(c in this)this[c]="function"==typeof this[c]?a._removedFactory(c):null;this.removed=!0};var Z=a.st,q;for(q in L)L.hasOwnProperty(q)&&!Z.hasOwnProperty(q)&&(Z[q]=function(c){return function(){var a=arguments;return this.forEach(function(d){d[c].apply(d,a)})}}(q))}})();"undefined"===typeof v&&"object"===typeof window&&(v=window);(function(){if(a.vml){var c=String,d=parseFloat,f=Math,h=f.round,b=f.max,e=f.min,I=f.sqrt,l=f.abs,g=/[, ]+/,D=a.eve,k={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},
G=/([clmz]),?([^clmz]*)/gi,ba=/ progid:\S+Blur\([^\)]+\)/g,t=/-?[^,\s-]+/g,p={path:1,rect:1,image:1},Ba={circle:1,ellipse:1},F=function(d){var f=/[ahqstv]/ig,b=a._pathToAbsolute;c(d).match(f)&&(b=a._path2curve);f=/[clmz]/g;if(b==a._pathToAbsolute&&!c(d).match(f))return(d=c(d).replace(G,function(c,d,a){var f=[],b="m"==d.toLowerCase(),e=k[d];a.replace(t,function(c){b&&2==f.length&&(e+=f+k["m"==d?"l":"L"],f=[]);f.push(h(21600*c))});return e+f}))||"m0,0";var f=b(d),e;d=[];for(var I=0,l=f.length;I<l;I++){b=
f[I];e=f[I][0].toLowerCase();"z"==e&&(e="x");for(var g=1,D=b.length;g<D;g++)e+=h(21600*b[g])+(g!=D-1?",":"");d.push(e)}return d.length?d.join(" "):"m0,0"},z=function(c,d,f){var h=a.matrix();h.rotate(-c,.5,.5);return{dx:h.x(d,f),dy:h.y(d,f)}},w=function(c,d,a,f,h,b){var e=c._,I=c.matrix,g=e.fillpos;c=c.node;var D=c.style,k=1,G="",ba=21600/d,t=21600/a;D.visibility="hidden";if(d&&a){c.coordsize=l(ba)+" "+l(t);D.rotation=b*(0>d*a?-1:1);b&&(h=z(b,f,h),f=h.dx,h=h.dy);0>d&&(G+="x");0>a&&(G+=" y")&&(k=-1);
D.flip=G;c.coordorigin=f*-ba+" "+h*-t;if(g||e.fillsize)if(f=(f=c.getElementsByTagName("fill"))&&f[0])c.removeChild(f),g&&(h=z(b,I.x(g[0],g[1]),I.y(g[0],g[1])),f.position=h.dx*k+" "+h.dy*k),e.fillsize&&(f.size=e.fillsize[0]*l(d)+" "+e.fillsize[1]*l(a)),c.appendChild(f);D.visibility="visible"}};a._url="";a.toString=function(){return"Your browser doesn’t support SVG. Falling down to VML.\nYou are running Raphaël "+this.version};var aa=function(d,a,f){a=c(a).toLowerCase().split("-");f=f?"end":"start";
for(var h=a.length,b="classic",e="medium",I="medium";h--;)switch(a[h]){case "block":case "classic":case "oval":case "diamond":case "open":case "none":b=a[h];break;case "wide":case "narrow":I=a[h];break;case "long":case "short":e=a[h]}d=d.node.getElementsByTagName("stroke")[0];d[f+"arrow"]=b;d[f+"arrowlength"]=e;d[f+"arrowwidth"]=I},m=function(c,d){for(var a in d)D("raphael.attr."+a+"."+c.id,c,d[a],a),c.ca[a]&&c.attr(a,d[a])},Oa=a._setFillAndStroke=function(f,I){if(f.paper.canvas){f.attrs=f.attrs||
{};var l=f.node,D=f.attrs,k=l.style,G=p[f.type]&&(I.x!=D.x||I.y!=D.y||I.width!=D.width||I.height!=D.height||I.cx!=D.cx||I.cy!=D.cy||I.rx!=D.rx||I.ry!=D.ry||I.r!=D.r),ba=Ba[f.type]&&(D.cx!=I.cx||D.cy!=I.cy||D.r!=I.r||D.rx!=I.rx||D.ry!=I.ry),t="group"===f.type,z;for(z in I)I.hasOwnProperty(z)&&(D[z]=I[z]);G&&(D.path=a._getPath[f.type](f),f._.dirty=1);I.href&&(l.href=I.href);I.title&&(l.title=I.title);I.target&&(l.target=I.target);I.cursor&&(k.cursor=I.cursor);"blur"in I&&f.blur(I.blur);if(I.path&&"path"==
f.type||G)l.path=F(~c(D.path).toLowerCase().indexOf("r")?a._pathToAbsolute(D.path):D.path),"image"==f.type&&(f._.fillpos=[D.x,D.y],f._.fillsize=[D.width,D.height],w(f,1,1,0,0,0));"transform"in I&&f.transform(I.transform);"rotation"in I&&(k=I.rotation,a.is(k,"array")?f.rotate.apply(f,k):f.rotate(k));"visibility"in I&&("hidden"===I.visibility?f.hide():f.show());ba&&(k=+D.cx,ba=+D.cy,G=+D.rx||+D.r||0,z=+D.ry||+D.r||0,l.path=a.format("ar{0},{1},{2},{3},{4},{1},{4},{1}x",h(21600*(k-G)),h(21600*(ba-z)),
h(21600*(k+G)),h(21600*(ba+z)),h(21600*k)));"clip-rect"in I&&(k=c(I["clip-rect"]).split(g),4==k.length&&(k[0]=+k[0],k[1]=+k[1],k[2]=+k[2]+k[0],k[3]=+k[3]+k[1],G=t?l:l.clipRect||a._g.doc.createElement("div"),ba=G.style,t?(f.clip=k.slice(),G=f.matrix.offset(),G=[d(G[0]),d(G[1])],k[0]-=G[0],k[1]-=G[1],k[2]-=G[0],k[3]-=G[1],ba.width="1px",ba.height="1px"):l.clipRect||(ba.top="0",ba.left="0",ba.width=f.paper.width+"px",ba.height=f.paper.height+"px",l.parentNode.insertBefore(G,l),G.appendChild(l),G.raphael=
!0,G.raphaelid=l.raphaelid,l.clipRect=G),ba.position="absolute",ba.clip=a.format("rect({1}px {2}px {3}px {0}px)",k)),I["clip-rect"]||(t&&f.clip?(l.style.clip="rect(0px 10800px 10800px 0px)",delete f.clip):l.clipRect&&(l.clipRect.style.clip="rect(0px 10800px 10800px 0px)")));if(f.textpath||t)t=t?l.style:f.textpath.style,I.font&&(t.font=I.font),I["font-family"]&&(t.fontFamily='"'+I["font-family"].split(",")[0].replace(/^['"]+|['"]+$/g,"")+'"'),I["font-size"]&&(t.fontSize=I["font-size"]),I["font-weight"]&&
(t.fontWeight=I["font-weight"]),I["font-style"]&&(t.fontStyle=I["font-style"]);"arrow-start"in I&&aa(f,I["arrow-start"]);"arrow-end"in I&&aa(f,I["arrow-end"],1);if(null!=I.opacity||null!=I["stroke-width"]||null!=I.fill||null!=I.src||null!=I.stroke||null!=I["stroke-width"]||null!=I["stroke-opacity"]||null!=I["fill-opacity"]||null!=I["stroke-dasharray"]||null!=I["stroke-miterlimit"]||null!=I["stroke-linejoin"]||null!=I["stroke-linecap"]){t=l.getElementsByTagName("fill");k=-1;t=t&&t[0];!t&&(t=Qa("fill"));
"image"==f.type&&I.src&&(t.src=I.src);I.fill&&(t.on=!0);if(null==t.on||"none"==I.fill||null===I.fill)t.on=!1;t.on&&I.fill&&((ba=c(I.fill).match(a._ISURL))?(t.parentNode==l&&l.removeChild(t),t.rotate=!0,t.src=ba[1],t.type="tile",G=f.getBBox(1),t.position=G.x+" "+G.y,f._.fillpos=[G.x,G.y],a._preload(ba[1],function(){f._.fillsize=[this.offsetWidth,this.offsetHeight]})):(ba=a.getRGB(I.fill),t.color=ba.hex,t.src="",t.type="solid",ba.error&&(f.type in{circle:1,ellipse:1}||"r"!=c(I.fill).charAt())&&R(f,
I.fill,t)?(D.fill="none",D.gradient=I.fill,t.rotate=!1):"opacity"in ba&&!("fill-opacity"in I)&&(k=ba.opacity)));if(-1!==k||"fill-opacity"in I||"opacity"in I)ba=((+D["fill-opacity"]+1||2)-1)*((+D.opacity+1||2)-1)*((+k+1||2)-1),ba=e(b(ba,0),1),t.opacity=ba,t.src&&(t.color="none");l.appendChild(t);t=l.getElementsByTagName("stroke")&&l.getElementsByTagName("stroke")[0];k=!1;!t&&(k=t=Qa("stroke"));if(I.stroke&&"none"!=I.stroke||I["stroke-width"]||null!=I["stroke-opacity"]||I["stroke-dasharray"]||I["stroke-miterlimit"]||
I["stroke-linejoin"]||I["stroke-linecap"])t.on=!0;"none"!=I.stroke&&null!==I.stroke&&null!=t.on&&0!=I.stroke&&0!=I["stroke-width"]||(t.on=!1);ba=a.getRGB("stroke"in I?I.stroke:D.stroke);t.on&&I.stroke&&(t.color=ba.hex);ba=((+D["stroke-opacity"]+1||2)-1)*((+D.opacity+1||2)-1)*((+ba.opacity+1||2)-1);G=.75*(d(I["stroke-width"])||1);ba=e(b(ba,0),1);null==I["stroke-width"]&&(G=D["stroke-width"]);I["stroke-width"]&&(t.weight=G);G&&1>G&&(ba*=G)&&(t.weight=1);t.opacity=ba;I["stroke-linejoin"]&&(t.joinstyle=
I["stroke-linejoin"])||k&&(k.joinstyle="miter");t.miterlimit=I["stroke-miterlimit"]||8;I["stroke-linecap"]&&(t.endcap="butt"==I["stroke-linecap"]?"flat":"square"==I["stroke-linecap"]?"square":"round");I["stroke-dasharray"]&&(ba={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot","--..":"longdashdotdot"},t.dashstyle=ba.hasOwnProperty(I["stroke-dasharray"])?ba[I["stroke-dasharray"]]:I["stroke-dasharray"].join&&
I["stroke-dasharray"].join(" ")||"");k&&l.appendChild(t)}if("text"==f.type){f.paper.canvas.style.display="";l=f.paper.span;t=D.font&&D.font.match(/\d+(?:\.\d*)?(?=px)/);ba=D["line-height"]&&(D["line-height"]+"").match(/\d+(?:\.\d*)?(?=px)/);k=l.style;D.font&&(k.font=D.font);D["font-family"]&&(k.fontFamily=D["font-family"]);D["font-weight"]&&(k.fontWeight=D["font-weight"]);D["font-style"]&&(k.fontStyle=D["font-style"]);t=d(D["font-size"]||t&&t[0])||10;k.fontSize=100*t+"px";ba=d(D["line-height"]||ba&&
ba[0])||12;D["line-height"]&&(k.lineHeight=100*ba+"px");a.is(I.text,"array")&&(I.text=f.textpath.string=I.text.join("\n").replace(/<br\s*?\/?>/ig,"\n"));f.textpath.string&&(l.innerHTML=c(f.textpath.string).replace(/</g,"&#60;").replace(/&/g,"&#38;").replace(/\n/g,"<br>"));l=l.getBoundingClientRect();f.W=D.w=(l.right-l.left)/100;f.H=D.h=(l.bottom-l.top)/100;f.X=D.x;f.Y=D.y;switch(D["vertical-align"]){case "top":f.bby=f.H/2;break;case "bottom":f.bby=-f.H/2;break;default:f.bby=0}("x"in I||"y"in I||void 0!==
f.bby)&&(f.path.v=a.format("m{0},{1}l{2},{1}",h(21600*D.x),h(21600*(D.y+(f.bby||0))),h(21600*D.x)+1));l="x y text font font-family font-weight font-style font-size line-height".split(" ");t=0;for(k=l.length;t<k;t++)if(l[t]in I){f._.dirty=1;break}switch(D["text-anchor"]){case "start":f.textpath.style["v-text-align"]="left";f.bbx=f.W/2;break;case "end":f.textpath.style["v-text-align"]="right";f.bbx=-f.W/2;break;default:f.textpath.style["v-text-align"]="center",f.bbx=0}f.textpath.style["v-text-kern"]=
!0}}},B=a._updateFollowers=function(){var c,d,a,f=arguments,h=S.call(f),b=S.call(f);c=0;for(d=h.followers.length;c<d;c++)a=h.followers[c].el,a[b].apply(a,f)},R=function(f,h,b){f.attrs=f.attrs||{};var e=Math.pow,l="linear",g=".5 .5";f.attrs.gradient=h;h=c(h).replace(a._radial_gradient,function(c,a){l="radial";a=a&&a.split(",")||[];var f=a[3],h=a[4];f&&h&&(f=d(f),h=d(h),.25<e(f-.5,2)+e(h-.5,2)&&(h=I(.25-e(f-.5,2))*(2*(.5<h)-1)+.5),g=f+" "+h);return""});h=h.split(/\s*\-\s*/);if("linear"==l){var D=h.shift(),
D=-d(D);if(isNaN(D))return null}h=a._parseDots(h);if(!h)return null;f=f.shape||f.node;if(h.length){b.parentNode==f&&f.removeChild(b);b.on=!0;b.method="none";b.color=h[0].color;b.color2=h[h.length-1].color;for(var k=[],G=1,ba=void 0===h[0].opacity?1:h[0].opacity,t=0,p=h.length;t<p;t++)h[t].offset&&k.push(h[t].offset+" "+h[t].color),void 0!==h[t].opacity&&(G=h[t].opacity);b.colors=k.length?k.join():"0% "+b.color;b.opacity=G;b["o:opacity2"]=ba;"radial"==l?(b.type="gradientTitle",b.focus="100%",b.focussize=
"0 0",b.focusposition=g,b.angle=0):(b.type="gradient",b.angle=(270-D)%360);f.appendChild(b)}return 1},n=function(c,d,f){f=f||d;var h;f.canvas&&f.canvas.appendChild(c);h=Qa("skew");h.on=!0;c.appendChild(h);this.skew=h;this.node=this[0]=c;c.raphael=!0;c.raphaelid=this.id=a._oid++;this.Y=this.X=0;this.attrs=this.attrs||{};this.followers=this.followers||[];this.paper=d;this.ca=this.customAttributes=this.customAttributes||new d._CustomAttributes;this.matrix=a.matrix();this._={transform:[],sx:1,sy:1,dx:0,
dy:0,deg:0,dirty:1,dirtyT:1};this.parent=f;!f.bottom&&(f.bottom=this);(this.prev=f.top)&&(f.top.next=this);f.top=this;this.next=null},f=a.el;n.prototype=f;f.constructor=n;f.transform=function(d){if(null==d)return this._.transform;var f=this.paper._viewBoxShift,h=f?"s"+[f.scale,f.scale]+"-1-1t"+[f.dx,f.dy]:"",b;f&&(b=d=c(d).replace(/\.{3}|\u2026/g,this._.transform||""));a._extractTransform(this,h+d);var f=this.matrix.clone(),e=this.skew;d=this.node;var h=~c(this.attrs.fill).indexOf("-"),I=!c(this.attrs.fill).indexOf("url(");
f.translate(-.5,-.5);I||h||"image"==this.type?(e.matrix="1 0 0 1",e.offset="0 0",e=f.split(),h&&e.noRotation||!e.isSimple?(d.style.filter=f.toFilter(),f=this.getBBox(),h=this.getBBox(1),I=f.x2&&h.x2&&"x2"||"x",e=f.y2&&h.y2&&"y2"||"y",I=f[I]-h[I],f=f[e]-h[e],d.coordorigin=-21600*I+" "+-21600*f,w(this,1,1,I,f,0)):(d.style.filter="",w(this,e.scalex,e.scaley,e.dx,e.dy,e.rotate))):(d.style.filter="",e.matrix=c(f),e.offset=f.offset());b&&(this._.transform=b);return this};f.rotate=function(a,f,h){if(this.removed)return this;
B(this,"rotate",a,f,h);if(null!=a){a=c(a).split(g);a.length-1&&(f=d(a[1]),h=d(a[2]));a=d(a[0]);null==h&&(f=h);if(null==f||null==h)h=this.getBBox(1),f=h.x+h.width/2,h=h.y+h.height/2;this._.dirtyT=1;this.transform(this._.transform.concat([["r",a,f,h]]));return this}};f.translate=function(a,f){if(this.removed)return this;B(this,"translate",a,f);a=c(a).split(g);a.length-1&&(f=d(a[1]));a=d(a[0])||0;f=+f||0;this._.bbox&&(this._.bbox.x+=a,this._.bbox.y+=f);this.transform(this._.transform.concat([["t",a,
f]]));return this};f.scale=function(a,f,h,b){if(this.removed)return this;B(this,"scale",a,f,h,b);a=c(a).split(g);a.length-1&&(f=d(a[1]),h=d(a[2]),b=d(a[3]),isNaN(h)&&(h=null),isNaN(b)&&(b=null));a=d(a[0]);null==f&&(f=a);null==b&&(h=b);if(null==h||null==b)var e=this.getBBox(1);h=null==h?e.x+e.width/2:h;b=null==b?e.y+e.height/2:b;this.transform(this._.transform.concat([["s",a,f,h,b]]));this._.dirtyT=1;return this};f.hide=function(c){B(this,"hide",c);!this.removed&&(this.node.style.display="none");return this};
f.show=function(c){B(this,"show",c);!this.removed&&(this.node.style.display="");return this};f._getBBox=function(){return this.removed?{}:{x:this.X+(this.bbx||0)-this.W/2,y:this.Y+(this.bby||0)-this.H/2,width:this.W,height:this.H}};f.remove=function(){if(!this.removed&&this.parent.canvas){var c=a._engine.getNode(this),d=this.paper,f=this.shape;d.__set__&&d.__set__.exclude(this);D.unbind("raphael.*.*."+this.id);f&&f.parentNode.removeChild(f);for(c.parentNode&&c.parentNode.removeChild(c);c=this.followers.pop();)c.el.remove();
for(;c=this.bottom;)c.remove();this._drag&&this.undrag();if(this.events)for(;c=this.events.pop();)c.unbind();this.removeData();delete d._elementsById[this.id];a._tear(this,this.parent);for(c in this)this[c]="function"===typeof this[c]?a._removedFactory(c):null;this.removed=!0}};f.attr=function(c,d){if(this.removed)return this;if(null==c){var f={},h;for(h in this.attrs)this.attrs.hasOwnProperty(h)&&(f[h]=this.attrs[h]);f.gradient&&"none"==f.fill&&(f.fill=f.gradient)&&delete f.gradient;f.transform=
this._.transform;f.visibility="none"===this.node.style.display?"hidden":"visible";return f}if(null==d&&a.is(c,"string")){if("fill"==c&&"none"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;if("visibility"==c)return"none"===this.node.style.display?"hidden":"visible";var f=c.split(g),b={},e=0;for(h=f.length;e<h;e++)c=f[e],c in this.attrs?b[c]=this.attrs[c]:a.is(this.ca[c],"function")?b[c]=this.ca[c].def:b[c]=a._availableAttrs[c];return h-1?b:b[f[0]]}if(this.attrs&&null==d&&a.is(c,
"array")){b={};e=0;for(h=c.length;e<h;e++)b[c[e]]=this.attr(c[e]);return b}null!=d&&(f={},f[c]=d);null==d&&a.is(c,"object")&&(f=c);if(!1!==a.stopEvent)for(e in f)D("raphael.attr."+e+"."+this.id,this,f[e],e);if(f){var I={};for(e in this.ca)if(this.ca[e]&&f.hasOwnProperty(e)&&a.is(this.ca[e],"function")&&!this.ca["_invoked"+e]){this.ca["_invoked"+e]=!0;h=this.ca[e].apply(this,[].concat(f[e]));delete this.ca["_invoked"+e];for(b in h)h.hasOwnProperty(b)&&(f[b]=h[b]);this.attrs[e]=f[e];!1===h&&(I[e]=f[e],
delete f[e])}"text"in f&&"text"==this.type&&(a.is(f.text,"array")&&(f.text=f.text.join("\n")),this.textpath.string=f.text.replace(/<br\s*?\/?>/ig,"\n"));Oa(this,f);var l,e=0;for(h=this.followers.length;e<h;e++)l=this.followers[e],l.cb&&!l.cb.call(l.el,f,this)||l.el.attr(f);for(b in I)f[b]=I[b]}return this};f.blur=function(c){var d=this.node.runtimeStyle,f=d.filter,f=f.replace(ba,"");0!==+c?(this.attrs.blur=c,d.filter=f+"  progid:DXImageTransform.Microsoft.Blur(pixelradius="+(+c||1.5)+")",d.margin=
a.format("-{0}px 0 0 -{0}px",h(+c||1.5))):(d.filter=f,d.margin=0,delete this.attrs.blur);return this};f.on=function(c,d){if(this.removed)return this;if("dragstart"===c)return this.drag(null,d),this;if("dragmove"===c)return this.drag(d),this;if("dragend"===c)return this.drag(null,null,d),this;this.node.attachEvent?this.node.attachEvent("on"+c,d):this.node["on"+c]=function(){var c=a._g.win.event;c.target=c.srcElement;d(c)};return this};f.off=function(c,d){if(this.removed)return this;if("dragstart"===
c)return this.undragstart(),this;if("dragmove"===c)return this.undragmove(),this;if("dragend"===c)return this.undragend(),this;this.node.attachEvent?this.node.detachEvent("on"+c,d):this.node["on"+c]=null;return this};a._engine.getNode=function(c){c=c.node||c[0].node;return c.clipRect||c};a._engine.getLastNode=function(c){c=c.node||c[c.length-1].node;return c.clipRect||c};a._engine.group=function(c,d,f){var h=a._g.doc.createElement("div"),b=new n(h,c,f);h.style.cssText="position:absolute;left:0;top:0;width:1px;height:1px";
b._id=d||"";d&&(h.className="raphael-group-"+b.id+"-"+d);(f||c).canvas.appendChild(h);b.type="group";b.canvas=b.node;b.transform=a._engine.group.transform;b.top=null;b.bottom=null;return b};a._engine.group.transform=function(f){if(null==f)return this._.transform;var h=this.node.style,b=this.clip,e=this.paper._viewBoxShift,I=e?"s"+[e.scale,e.scale]+"-1-1t"+[e.dx,e.dy]:"";e&&(f=c(f).replace(/\.{3}|\u2026/g,this._.transform||""));a._extractTransform(this,I+f);f=this.matrix;I=f.offset();e=d(I[0])||0;
I=d(I[1])||0;h.left=e+"px";h.top=I+"px";h.zoom=(this._.tzoom=f.get(0))+"";b&&(h.clip=a.format("rect({1}px {2}px {3}px {0}px)",[b[0]-e,b[1]-I,b[2]-e,b[3]-I]));return this};a._engine.path=function(c,d,a){var f=Qa("shape");f.style.cssText="position:absolute;left:0;top:0;width:1px;height:1px";f.coordsize="21600 21600";f.coordorigin=c.coordorigin;c=new n(f,c,a);c.type=d.type||"path";c.path=[];c.Path="";d.type&&delete d.type;Oa(c,d);m(c,d);return c};a._engine.rect=function(c,d,f){var h=a._rectPath(d.x,
d.y,d.w,d.h,d.r);d.path=h;d.type="rect";c=c.path(d,f);d=c.attrs;c.X=d.x;c.Y=d.y;c.W=d.width;c.H=d.height;d.path=h;return c};a._engine.ellipse=function(c,d,a){d.type="ellipse";c=c.path(d,a);d=c.attrs;c.X=d.x-d.rx;c.Y=d.y-d.ry;c.W=2*d.rx;c.H=2*d.ry;return c};a._engine.circle=function(c,d,a){d.type="circle";c=c.path(d,a);d=c.attrs;c.X=d.x-d.r;c.Y=d.y-d.r;c.W=c.H=2*d.r;return c};a._engine.image=function(c,d,f){var h=a._rectPath(d.x,d.y,d.w,d.h);d.path=h;d.type="image";d.stroke="none";c=c.path(d,f);f=
c.attrs;var h=c.node,b=h.getElementsByTagName("fill")[0];f.src=d.src;c.X=f.x=d.x;c.Y=f.y=d.y;c.W=f.width=d.w;c.H=f.height=d.h;b.parentNode==h&&h.removeChild(b);b.rotate=!0;b.src=f.src;b.type="tile";c._.fillpos=[f.x,f.y];c._.fillsize=[f.w,f.h];h.appendChild(b);w(c,1,1,0,0,0);return c};a._engine.text=function(d,f,b,e){var I=Qa("shape"),l=Qa("path"),g=Qa("textpath");x=f.x||0;y=f.y||0;text=f.text;l.v=a.format("m{0},{1}l{2},{1}",h(21600*f.x),h(21600*f.y),h(21600*f.x)+1);l.textpathok=!0;g.string=c(f.text).replace(/<br\s*?\/?>/ig,
"\n");g.on=!0;I.style.cssText="position:absolute;left:0;top:0;width:1px;height:1px";I.coordsize="21600 21600";I.coordorigin="0 0";d=new n(I,d,b);d.shape=I;d.path=l;d.textpath=g;d.type="text";d.attrs.text=c(f.text||"");d.attrs.x=f.x;d.attrs.y=f.y;d.attrs.w=1;d.attrs.h=1;e&&d.css&&d.css(e,void 0,!0);Oa(d,f);m(d,f);I.appendChild(g);I.appendChild(l);return d};a._engine.setSize=function(c,d){var f=this.canvas.style;this.width=c;this.height=d;c==+c&&(c+="px");d==+d&&(d+="px");c&&(f.width=c);d&&(f.height=
d);f.clip="rect(0 "+f.width+" "+f.height+" 0)";this._viewBox&&a._engine.setViewBox.apply(this,this._viewBox);return this};a._engine.setViewBox=function(c,d,a,f,h){D("raphael.setViewBox",this,this._viewBox,[c,d,a,f,h]);var e=this.width,I=this.height,l=1/b(a/e,f/I),g,k;h&&(g=I/f,k=e/a,a*g<e&&(c-=(e-a*g)/2/g),f*k<I&&(d-=(I-f*k)/2/k));this._viewBox=[c,d,a,f,!!h];this._viewBoxShift={dx:-c,dy:-d,scale:l};this.forEach(function(c){c.transform("...")});return this};var Qa;a._engine.initWin=function(d){var f=
d.document;f.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)");try{!f.namespaces.rvml&&f.namespaces.add("rvml","urn:schemas-microsoft-com:vml"),Qa=a._createNode=function(d,a){var h=f.createElement("<rvml:"+d+' class="rvml">'),b;for(b in a)h[b]=c(a[b]);return h}}catch(h){Qa=a._createNode=function(d,a){var h=f.createElement("<"+d+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">'),b;for(b in a)h[b]=c(a[b]);return h}}};a._engine.initWin(a._g.win);a._engine.create=function(){var c=
a._getContainer.apply(0,arguments),d=c.container,f=c.height,h=c.width,b=c.x,c=c.y;if(!d)throw Error("VML container not found.");var e=new a._Paper,I=e.canvas=a._g.doc.createElement("div"),l=I.style,b=b||0,c=c||0,h=h||512,f=f||342;e.width=h;e.height=f;h==+h&&(h+="px");f==+f&&(f+="px");e.coordsize="21600000 21600000";e.coordorigin="0 0";I.id="raphael-paper-"+e.id;e.span=a._g.doc.createElement("span");e.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;";
I.appendChild(e.span);l.cssText=a.format("top:0;left:0;width:{0};height:{1};display:inline-block;cursor:default;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden",h,f);1==d?(a._g.doc.body.appendChild(I),l.left=b+"px",l.top=c+"px",l.position="absolute"):d.firstChild?d.insertBefore(I,d.firstChild):d.appendChild(I);e.renderfix=function(){};return e};a.prototype.clear=function(){var c;for(D("raphael.clear",this);c=this.bottom;)c.remove();this.canvas.innerHTML="";this.span=a._g.doc.createElement("span");
this.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;";this.canvas.appendChild(this.span);this.bottom=this.top=null};a.prototype.remove=function(){var c;for(D("raphael.remove",this);c=this.bottom;)c.remove();this.canvas.parentNode.removeChild(this.canvas);for(c in this)this[c]="function"==typeof this[c]?a._removedFactory(c):null;return!0};var K=a.st,P;for(P in f)f.hasOwnProperty(P)&&!K.hasOwnProperty(P)&&(K[P]=function(c){return function(){var d=
arguments;return this.forEach(function(a){a[c].apply(a,d)})}}(P))}})();w&&(R.win.Raphael=a);return a},!0);b.Raphael=C;b.Raphael.desc="";J&&J!==C?v.Raphael=J:v.Raphael===C&&(v.Raphael=void 0)})(v||window)}]);Q.register("module",["private","fusioncharts.redraphael.helper",function(){var b=this.hcLib,v=b.Raphael,J={};v.fn._elementFromEvent=function(b){if(!b||this.removed)return null;var v=b.srcElement||b.target||(b=b.originalEvent)&&(b.srcElement||b.target)||J;"tspan"===v.nodeName&&(v=v.parentNode);
return this.getById(v.raphaelid)};v.requestAnimFrame=b.schedular.addJob&&function(v){b.schedular.addJob(v,b.priorityList.animation,!0)}}]);Q.register("module",["private","fusioncharts.redraphael.css",function(){var b=this.hcLib,v=b.Raphael,J=v.eve,C=v._g,H=v.fn,A=v.el,u=/[, ]+/,a=/\B([A-Z]{1})/g,O,q;O=function(a){this.styleSheet="";this.rules={};this.ns=a||""};q=O.prototype;q.getSheet=function(){var a=this.node;this.styleSheet=q.getStyleSheet("fusioncharts-raphael-stylesheet");this.styleSheet||(a=
this.node=C.doc.createElement("style"),a.setAttribute("id",v.format("raphael-stylesheet-{0}",v._oid++)),a.setAttribute("type","text/css"),a.setAttribute("title","fusioncharts-raphael-stylesheet"),(C.doc.head||C.doc.getElementsByTagName("head")[0]).appendChild(this.node),this.styleSheet=q.getStyleSheet("fusioncharts-raphael-stylesheet"));return this.styleSheet};q.getStyleSheet=function(a){for(var b=C.doc.styleSheets,q=b.length,u;q--;)if(u=b[q],u.title===a)return u};q.applyCSSRule=function(a,b){var q=
this.styleSheet,u;if(!q)if(a&&b)q=this.getSheet();else return;u=(q.rules||q.cssRules||{}).length||0;q.insertRule?q.insertRule(a+"{"+b+"}",u):q.addRule&&q.addRule(a,b,u)};q.removeCSS=function(a){var b=this.styleSheet,q=b.rules||b.cssRules||{},u=q.length||0,r;for(a=a||this.ns;u--;)r=q[u],(new RegExp(a)).test(r.selectorText)&&(b.removeRule?b.removeRule(u):b.deleteRule(u))};q.destroy=function(){this.removeCSS();delete this.node;delete this.styleSheet;delete this.ns;delete this.rules};q.clear=function(){this.removeCSS();
this.rules={}};q.add=function(b,q,u){var E,r="",k=this.rules[b]||(this.rules[b]={}),m=u?"":"\t";u=u?":":": ";for(E in q)(k[E]=q[E])&&(r+=m+E.replace(a,"-$1").toLowerCase()+u+k[E]+";");this.applyCSSRule(b,r)};q.render=function(){this.setCssText()};q.setCssText=function(b){var q=b?"":"\t";b=b?":":": ";var u="",E="",r,k;for(r in this.rules){u="";E=r.replace(/(^|\,)/g,"$1"+this.ns+" ");r=this.rules[r];for(k in r)r[k]&&(u+=q+k.replace(a,"-$1").toLowerCase()+b+r[k]+";");this.applyCSSRule(E,u)}};J.on("raphael.new",
function(){this._stylesheet=this._stylesheet||new O;this.cssNamespace("")});J.on("raphael.remove",function(){this._stylesheet&&this._stylesheet.destroy();delete this._stylesheet});H.cssNamespace=function(a){arguments.length&&(this._stylesheet.ns=v.format("{0}#raphael-paper-{1}",a&&a+" "||"",this.id));return this._stylesheet.ns};H.cssAddRule=function(a,b){if(1===arguments.length&&"object"===typeof a){for(var q in a)this.cssAddRule(q,a[q]);return this}return this._stylesheet.add(a,b),this};H.cssRender=
function(){return v.svg&&this._stylesheet.render(),this};H.cssClear=function(){return this._stylesheet.clear(),this};v.ca["class"]=function(a){var b=this.node,q=this.paper,u="."+a,q=q._stylesheet&&q._stylesheet.rules,r=this.parent,k=this.attrs,m={},n;if(v.svg)a=a||"",b.setAttribute("class","group"===this.type&&this._id?"raphael-group-"+this.id+"-"+this._id+" "+a:a);else if(v.vml&&(b.className="group"===this.type?a&&this._id+" "+a||this._id:"rvml "+a,u&&q)){a=q[u];for(n in a)"color"===n&&"text"===
this.type&&(n="fill"),!k[n]&&(m[n]=a[n]);for(;r&&r.attr;){if(a=r.attr("class"))for(n in u="."+a+" "+u,a=q[u],a)"color"===n&&"text"===this.type&&(n="fill"),k[n]||m[n]||(m[n]=a[n]);r=r.parent}this.css(m)}};A.css=function(a,b,q){var E,r;if(this.removed)return this;this.styles||(this.styles={});if(null==b&&v.is(a,"string")){q=a.split(u);E={};r=0;for(b=q.length;r<b;r++)a=q[r],a in this.styles&&(E[a]=this.styles[a]);return b-1?E:E[q[0]]}if(null==b&&v.is(a,"array")){E={};r=0;for(b=a.length;r<b;r++)E[a[r]]=
this.styles(a[r]);return E}null!=b?(E={},E[a]=b):null!=a&&v.is(a,"object")&&(E=a);a={};for(r in E)b=r.replace(/\B([A-Z]{1})/g,"-$1").toLowerCase(),v._availableAttrs.hasOwnProperty(b)||"color"===b?("color"===b&&"text"===this.type&&(b="fill"),a[b]=E[r],a.dirty=!0):(J("raphael.css."+b+"."+this.id,this,E[r],b),this.node.style[b]=E[r],this.styles[b]=E[r]);r=0;for(b=this.followers.length;r<b;r++)this.followers[r].el.attr(E);a.hasOwnProperty("dirty")&&(delete a.dirty,q&&(a["_do-not-tune"]=!0),this.attr(a));
return this};A.removeCSS=function(a){var q,u,E;!a&&(a=b.appliedCSS);if(this.removed)return this;v.is(a,"string")&&(a=a.split(","));if(v.is(a,"array"))for(E=a.length,u=0;u<E;u++)q=a[u].replace(/\B([A-Z]{1})/g,"-$1").toLowerCase(),this.node.removeAttribute(q),this.node.style[q]="";return this}}]);Q.register("module",["private","modules.renderer.js-raphaelexport",function(){var b=this.hcLib,v=b.Raphael,J=b.pluckNumber,C=b.pluck,H=v._availableAttrs,A=/^matrix\(|\)$/g,u=/\,/g,a=/\n|<br\s*?\/?>/ig,O=/[^\d\.]/ig,
q=/[\%\(\)\s,\xb0#]/g,M=/group/ig,U=/&/g,N=/"/g,E=/'/g,r=/</g,k=/>/g,m=0;(function(b){var L=Math,g=parseFloat,l=L.max,B=L.abs,e=L.pow,V=String,p=/[, ]+/,T=[{reg:/xmlns\=\"http\:\/\/www.w3.org\/2000\/svg\"/ig,repStr:""},{reg:/^.*<svg /,repStr:'<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" '},{reg:/\/svg>.*$/,repStr:"/svg>"},{reg:/<desc\>[^<]*<\/desc\>/,repStr:""},{reg:/zIndex="[^"]+"/g,repStr:""},{reg:/url\((\\?[\'\"])[^#]+#/g,repStr:"url($1#"},{reg:/ href=/g,repStr:" xlink:href="},
{reg:/(id|class|width|height)=([^" >]+)/g,repStr:'$1="$2"'},{reg:/:(path|rect)/g,repStr:"$1"},{reg:/<ima?ge? ([^\>]+?[^\/])\>/gi,repStr:"<image $1 />"},{reg:/<\/ima?ge?\>/g,repStr:""},{reg:/style="([^"]+)"/g,repStr:function(a){return a.toLowerCase()}}],K={blur:function(){},transform:function(){},src:function(a,b){b.attrSTR+=' xlink:href="'+b.attrs.src+'"'},path:function(a,e){var l=e.attrs.path,l=b._pathToAbsolute(l||"");e.attrSTR+=' d="'+(l.toString&&l.toString()||"").replace(u," ")+'"'},gradient:function(a,
k,t){var p=a.attrs.gradient,F="linear",m,h,d,f=.5,c=.5,D=h="",G="",aa,K,P,r;m=p.replace(q,"_");if(!t[m]){p=V(p).replace(b._radial_gradient,function(d,a){var h,b,l,D,k,G,t;a=a&&a.split(",")||[];F="radial";h=a[0];b=a[1];l=a[2];D=a[3];k=a[4];r=a[5];t=h&&b;l&&(P=/\%/.test(l)?l:g(l));if("userSpaceOnUse"===r)return t&&(f=h,c=b),D&&k&&(aa=D,K=k,t||(f=aa,c=K)),"";t&&(f=g(h),c=g(b),h=2*(.5<c)-1,.25<(G=e(f-.5,2))+e(c-.5,2)&&.25>G&&(c=L.sqrt(.25-G)*h+.5)&&.5!==c&&(c=c.toFixed(5)-1E-5*h));D&&k&&(aa=g(D),K=g(k),
h=2*(.5<K)-1,.25<(G=e(aa-.5,2))+e(K-.5,2)&&.25>G&&(K=L.sqrt(.25-G)*h+.5)&&.5!==K&&(K=K.toFixed(5)-1E-5*h),t||(f=aa,c=K));return""});p=p.split(/\s*\-\s*/);if("linear"===F){h=p.shift();h=-g(h);if(isNaN(h))return null;d=[0,0,L.cos(b.rad(h)),L.sin(b.rad(h))];h=1/(l(B(d[2]),B(d[3]))||1);d[2]*=h;d[3]*=h;0>d[2]&&(d[0]=-d[2],d[2]=0);0>d[3]&&(d[1]=-d[3],d[3]=0)}p=b._parseDots(p);if(!p)return null;"radial"===F?(h='<radialGradient fx = "'+f+'" fy = "'+c+'" cy = "'+K+'" cx = "'+aa+'" r = "'+P+'" gradientUnits = "'+
r+'" id = "'+m+'">',D="</radialGradient>"):(h='<linearGradient x1 = "'+d[0]+'" y1 = "'+d[1]+'" x2 = "'+d[2]+'" y2 = "'+d[3]+'" gradientTransform ="matrix('+a.matrix.invert()+')" id = "'+m+'">',D="</linearGradient>");a=0;for(d=p.length;a<d;a++)G+='<stop offset="'+(p[a].offset?p[a].offset:a?"100%":"0%")+'" stop-color="'+(p[a].color||"#fff")+'" stop-opacity="'+(void 0===p[a].opacity?1:p[a].opacity)+'" />';t[m]=!0;t.str+=h+G+D}k.attrSTR+=" fill=\"url('#"+m+"')\""},fill:function(a,e){var l=e.attrs,g=l.fill,
k;a.attrs.gradient||(g=b.color(g),k=g.opacity,"text"===a.type?e.styleSTR+="fill:"+g+"; stroke-opacity:0; ":(e.attrSTR+=' fill="'+g+'"',l["fill-opacity"]||!k&&0!==k||(e.attrSTR+=' fill-opacity="'+k+'"')))},stroke:function(a,e){var l=e.attrs,g,k;g=b.color(l.stroke);k=g.opacity;"text"!==a.type&&(e.attrSTR+=' stroke="'+g+'"',l["stroke-opacity"]||!k&&0!==k||(e.attrSTR+=' stroke-opacity="'+k+'"'))},"clip-rect":function(a,b,e){var l=V(b.attrs["clip-rect"]),g=l.split(p),l=l.replace(q,"_")+"__"+m++;4===g.length&&
(e[l]||(e[l]=!0,e.str+='<clipPath id="'+l+'"><rect x="'+g[0]+'" y="'+g[1]+'" width="'+g[2]+'" height="'+g[3]+'" transform="matrix('+a.matrix.invert().toMatrixString().replace(A,"")+')"/></clipPath>'),b.attrSTR+=' clip-path="url(#'+l+')"')},cursor:function(a,b){var e=b.attrs.cursor;e&&(b.styleSTR+="cursor:"+e+"; ")},font:function(a,b){b.styleSTR+="font:"+b.attrs.font.replace(/\"/ig," ")+"; "},"font-size":function(a,b){var e=C(b.attrs["font-size"],"10");e&&e.replace&&(e=e.replace(O,""));b.styleSTR+=
"font-size:"+e+"px; "},"font-weight":function(a,b){b.styleSTR+="font-weight:"+b.attrs["font-weight"]+"; "},"font-family":function(a,b){b.styleSTR+="font-family:"+b.attrs["font-family"]+"; "},"line-height":function(){},"clip-path":function(){},visibility:function(){},"vertical-align":function(){},"text-anchor":function(a,b){var e=b.attrs["text-anchor"]||"middle";"text"===a.type&&(b.attrSTR+=' text-anchor="'+e+'"')},title:function(){},text:function(b,e){var l=e.attrs,g=l.text,t=C(l["font-size"],l.font,
"10"),p=C(l["line-height"]),h,d,f;t&&t.replace&&(t=t.replace(O,""));t=J(t);p&&p.replace&&(p=p.replace(O,""));p=J(p,t&&1.2*t);h=t?.85*t:.75*p;t=l.x;d=C(l["vertical-align"],"middle").toLowerCase();g=V(g).split(a);f=g.length;l=0;for(h="top"===d?h:"bottom"===d?h-p*f:h-p*f*.5;l<f;l++)e.textSTR+="<tspan ",d=(g[l]||"").replace(U,"&amp;").replace(N,"&quot;").replace(E,"&#39;").replace(r,"&lt;").replace(k,"&gt;"),e.textSTR=l?e.textSTR+('dy="'+p+'" x="'+t+'" '):e.textSTR+('dy="'+h+'"'),e.textSTR+=">"+d+"</tspan>"}},
t=function(a,b){var e="",l={attrSTR:"",styleSTR:"",textSTR:"",attrs:a.attr()},g=a.isShadow,k="",h="",d,f,c=l.attrs;if("none"===a.node.style.display||g)a.next&&(e+=t(a.next,b));else{for(d in c)if("gradient"!==d&&(void 0!==H[d]||K[d])&&void 0!==c[d])if(K[d])K[d](a,l,b);else l.attrSTR+=" "+d+'="'+c[d]+'"';a.attrs.gradient&&K.gradient(a,l,b);"rect"===a.type&&c.r&&(l.attrSTR+=' rx="'+c.r+'" ry="'+c.r+'"');for(f in a.styles)l.styleSTR+=f+":"+a.styles[f]+"; ";"image"===a.type&&(l.attrSTR+=' preserveAspectRatio="none"');
if("text"===a.type&&!c["text-anchor"])K["text-anchor"](a,l);a.bottom&&(k=t(a.bottom,b));a.next&&(h=t(a.next,b));g=a.type;g.match(M)&&(g="g");e+="<"+g+' transform="matrix('+a.matrix.toMatrixString().replace(A,"")+')" style="'+l.styleSTR+'"'+l.attrSTR+">"+l.textSTR+k+"</"+g+">"+h}return e},Z=function(a){a=JSON.stringify(a);a=a.replace(/([a-z]+)([A-Z]+)([a-z]+)/g,function(a,b,e,l){return b+"-"+e.toLowerCase()+l});a=a.replace(/\"\,\"/g,'";"');a=a.replace(/\"/g," ");return a=a=a.replace(/\{|\}/g,"")},
P=function(a,b){var e,l,g,k,h,d=function(a){return a=a.match(/style\s*=/)?a.replace(/(style\s*=")([^"]+)/g,function(c,a,d){return a+g+d}):a.replace(/class\s*="[^"]*"/i,function(c){return c+' style="'+g+'" '})};for(e in b)if(b.hasOwnProperty(e))for(h in l=/\s+/,l=e.split(l),g=Z(b[e]),l)l.hasOwnProperty(h)&&(k=l[h].trim().replace(".",""),k=new RegExp("<[^>]+("+k+")[^>]+","g"),a=a.replace(k,d));return a};b.fn.toSVG=function(a){var e="",l={str:""},g=0,k=T.length,p="";if(b.svg){if(this.canvas&&this.canvas.parentNode){for(e=
this.canvas.parentNode.innerHTML;g<k;g+=1)l=T[g],e=e.replace(l.reg,l.repStr);this._stylesheet&&this._stylesheet.rules&&(e=P(e,this._stylesheet.rules))}a||(e=e.replace(/<image[^\>]*\>/gi,function(a){return a.match(/href=\"data\:image/i)?a:""}))}else e='<svg style="overflow: hidden; position: relative;" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="'+this.width+'" version="1.1" height="'+this.height+'">',this.bottom&&(p=t(this.bottom,l)),e+="<defs>"+l.str+"</defs>"+
p+"</svg>",a||(e=e.replace(/<image[^\>]*\>[^\>]*\>/gi,function(a){return a.match(/href=\"data\:image/i)?a:""}));return e}})(v)}]);Q.register("module",["private","modules.renderer.js-raphaelshadow",function(){var b=this.window,v=Math.sqrt,J=b.parseFloat,C=b.parseInt,b=b.SVGFilterElement||b.SVGFEColorMatrixElement&&2===b.SVGFEColorMatrixElement.SVG_FECOLORMATRIX_TYPE_SATURATE,H=this.hcLib.Raphael,A={"drop-shadow":"drop-shadow",stroke:"stroke",fill:"fill","stroke-width":"stroke-width","stroke-opacity":"stroke-opacity",
"stroke-linecap":"stroke-linecap","stroke-linejoin":"stroke-linejoin","shape-rendering":"shape-rendering",transform:"transform"},u=H._createNode,a;H.svg?(b&&(H.el.dropshadow=function(a,b,C,A){var N=this.node,E=this._.shadowFilter,r=this.paper.cacheShadows||(this.paper.cacheShadows={}),k="drop-shadow"+[a,b,C,A].join(" "),m;if("none"===a){if(E){--E.use;this.node.removeAttribute("filter");if(!E.use){k=E.hash;for(m in E)a=E[m],a.parentNode&&a.parentNode.removeChild(a),delete E[m];delete r[k]}delete this._.shadowFilter}}else E&&
r[k]===E||(E=this.paper.defs.appendChild(u("filter",{id:H.getElementID(H.createUUID()),width:"200%",height:"200%"})),A=H.color(A),A.error&&(A=H.color("rgba(0,0,0,1)")),m=H.pick(A.opacity,1),this._.shadowFilter=r[k]={use:1,filter:E,hash:k,offset:E.appendChild(u("feOffset",{result:"offOut","in":"SourceGraphic",dx:J(a),dy:J(b)})),matrix:E.appendChild(u("feColorMatrix",{result:"matrixOut","in":"offOut",type:"matrix",values:"0 0 0 0 "+A.r/255+" 0 0 0 0 "+A.g/255+" 0 0 0 0 "+A.b/255+" 0 0 0 "+m+" 0"})),
blur:E.appendChild(u("feGaussianBlur",{result:"blurOut","in":"matrixOut",stdDeviation:v(J(C))})),blend:E.appendChild(u("feComposite",{"in":"SourceGraphic",in2:"blurOut",operator:"over"}))},N.setAttribute("filter",'url("'+H._url+"#"+E.id+'")'));return this}),a=function(a,b){var u=this.__shadowscale,v={},N,E;for(E in a)switch(A[E]&&(v[E]=a[E],delete a[E]),E){case "transform":N=b.matrix.clone();N.translate(this.__shadowx,this.__shadowy);this.transform(N.toTransformString());break;case "stroke-width":a[E]=
((v[E]||1)+6-2*this.__shadowlevel)*u}this.attr(a);for(E in v)a[E]=v[E]},H.ca["drop-shadow"]=function(b,q,u,v,N,E){u=this._.shadows||(this._.shadows=[]);var r,k,m,n,L;if(!this.__shadowblocked)if("none"===b)for(;k=u.pop();)k.remove();else for(v=H.color(v),v.error&&(v=H.color("rgba(0,0,0,1)")),N instanceof Array?(r=N[0],N=N[1]):r=N,r=1/H.pick(r,1),N=1/H.pick(N,1),b=H.pick(b,1)*r,q=H.pick(q,1)*r,r=.05*H.pick(v.opacity,1),m=C(this.attr("stroke-width")||1,10)+6,n=this.matrix.clone(),n.translate(b,q),L=
1;3>=L;L++)k=(u[L-1]||this.clone().follow(this,a,!E&&"before")).attr({stroke:v.hex,"stroke-opacity":r*L,"stroke-width":(m-2*L)*N,transform:n.toTransformString(),"stroke-linecap":"round","stroke-linejoin":"round",fill:"none"}),k.__shadowlevel=L,k.__shadowscale=N,k.__shadowx=b,k.__shadowy=q,E&&E.appendChild(k),u.push(k);return!1},H.el.shadow=function(a,b,u,v){var N;u&&u.constructor===H.el.constructor&&(v=u,u=void 0);"object"===typeof a&&(b&&b.constructor===H.el.constructor&&(v=b),b=a.opacity,u=a.scalefactor,
N=!!a.useFilter,a=void 0===a.apply?!!b:a.apply);void 0===b&&(b=1);if(this.dropshadow){if(N)return a&&this.dropshadow(1,1,3,"rgb(64,64,64)")||this.dropshadow("none"),this;this._.shadowFilter&&this.dropshadow("none")}return this.attr("drop-shadow",a?[1,1,3,"rgba(64,64,64,"+b+")",u,v]:"none")}):H.vml?(H.ca["drop-shadow"]=function(a,b,u,v,N,E){var r=this._.shadow,k,m;if(this.isShadow)return!1;"none"===a?r&&(this._.shadow=r.remove()):(r||(r=this._.shadow=this.clone(),E&&E.appendChild(r.follow(this))||
r.follow(this,void 0,"before"),r.attr({fill:"none","fill-opacity":.5,"stroke-opacity":1}).isShadow=!0,0>=r.attr("stroke-width")&&r.attr("stroke-width",1)),E=r.node.runtimeStyle,k=E.filter.replace(/ progid:\S+Blur\([^\)]+\)/g,""),v=H.color(v),v.error&&(v=H.color("rgba(0,0,0,1)")),m=H.pick(v.opacity,1)/5,N=1/H.pick(N,1),a=H.pick(a,1)*N,b=H.pick(b,1)*N,r.translate(a,b),E.filter=k+" progid:DXImageTransform.Microsoft.Blur(pixelRadius="+J(.4*u)+" makeShadow=True Color="+v.hex+' shadowOpacity="'+m+'");');
return!1},H.el.shadow=function(a,b,u,v){u&&u.constructor===H.el.constructor&&(v=u,u=void 0);"object"===typeof a&&(b&&"group"===b.type&&(v=b),b=a.opacity,u=a.scalefactor,a=void 0===a.apply?!!b:a.apply);void 0===b&&(b=1);return this.attr("drop-shadow",a||!b?[1,1,5,"rgba(64,64,64,"+b+")",u,v]:"none")}):H.canvas&&(H.el.shadow=function(){return this})}]);Q.register("module",["private","modules.renderer.js-raphaelshapes",function(){var b=this.window,v="createTouch"in b.document,J=/msie/i.test(b.navigator.userAgent)&&
!b.opera,C=Math,H=C.cos,A=C.sin,u=C.abs,a=C.pow,O=C.atan2,q=C.tan,M=C.acos,U=C.min,N=C.round,E=C.PI,r=C.sqrt,k=2*E,m=b.parseInt,n=b.parseFloat,L=String,g=Array.prototype.slice,l=a(2,-24),B="rgba(192,192,192,"+(J?.002:1E-6)+")",e=this.hcLib.Raphael,V=e.eve,p=e._createNode,T=e._setFillAndStroke,K=e.el.constructor,t={speed:"optimizeSpeed",crisp:"crispEdges",precision:"geometricPrecision"},Z={enabled:!1,"false":!1,0:!1,disabled:!0,"true":!0,1:!0},P={Q:"L",Z:"X",q:"l",z:"x",",":" "},S=/,?([achlmqrstvxz]),?/gi,
z=/\s*\,\s*/g,R,w=function(){return this.join(",").replace(S,R)},F,X,h=e._cacher(function(d,c,h,b){return r(a(h-d,2)+a(b-c,2))}),d=e._cacher(function(a,c,d,b,e){var l=d-a,g=b-c;d=h(a,c,d,b);return{x:a+l/d*e,y:c+g/d*e}});if(e.svg)V.on("raphael.attr.shape-rendering",function(a,c){var d=this.node;this.attrs[c]=a=t[a]||a||"auto";d.setAttribute(c,a);d.style.shapeRendering=a});else if(e.vml)V.on("raphael.attr.shape-rendering",function(a){this.node.style.antialias="crisp"!==a});e.define&&e.define([{name:"polypath",
polypath:function(){return this.path(void 0,e._lastArgIfGroup(arguments))},ca:{polypath:function(a,c,d,h,b,l){var g,k,t;g=[];a=m(a,10)||0;c=n(c)||0;d=n(d)||0;h=n(h)||0;b=null===b||isNaN(b)?.5*E:e.rad(b);l=null===l||isNaN(l)?0:n(l);k=b;if(2<a)switch(b=2*E/a,l){case 0:for(l=0;l<a;l++)g.push("L",c+h*H(-k),d+h*A(-k)),k+=b;g[0]="M";g.push("Z");break;case 1:for(l=0;l<a;l++)g.push("M",c,d,"L",c+h*H(-k),d+h*A(-k)),k+=b;break;default:b*=.5;t=h*H(b)*(1-l);for(l=0;l<a;l++)g.push("L",c+h*H(-k),d+h*A(-k)),k+=
b,g.push("L",c+t*H(-k),d+t*A(-k)),k+=b;g[0]="M";g.push("Z")}else 0===h?g.push("M",c,d,"L",c,d,"Z"):g.push("M",c-h,d,"A",h,h,0,0,0,c+h,d,"A",h,h,0,0,0,c-h,d,"Z");return{path:g}},r:function(a){var c=this.attrs.polypath;c[3]=a;this.attr("polypath",c);return!1}}},{name:"ringpath",ringpath:function(){return this.path(void 0,e._lastArgIfGroup(arguments))},ca:function(a,c,d,h,b,e){var g=e%k-b%k,t=e-b,p,F,m,z,w,B;this._.ringangle=.5*(b+e);u(t)<l?(p=H(b),t=A(b),d=["M",a+d*p,c+d*t,"L",a+h*p,c+h*t,"Z"]):(u(t)>
l&&+(u(t)%k<l||k-u(t)%k<l)?(d=["M",a-d,c,"A",d,d,0,0,0,a+d,c,"A",d,d,0,0,0,a-d,c],0!==h&&(d=d.concat(["M",a-h,c,"A",h,h,0,0,1,a+h,c,"A",h,h,0,0,1,a-h,c]))):(p=H(b),t=A(b),F=H(e),e=A(e),g%=k,0>g&&(g+=k),g=g<E?0:1,m=a+d*p,w=c+d*t,z=a+d*F,B=c+d*e,F=a+h*F,e=c+h*e,.01>u(m-z)&&.01>u(w-B)&&(m=a+d*H(b+1.745329E-4),w=c+d*A(b+1.745329E-4)),d=["M",m,w,"A",d,d,0,g,1,z,B,"L",F,e],0!==h&&(p=a+h*p,t=c+h*t,.01>u(F-p)&&.01>u(e-t)&&(p=a+h*H(b+1.745329E-4),t=c+h*A(b+1.745329E-4)),d.push("A",h,h,0,g,0,p,t))),d.push("Z"));
return{path:d}}},{name:"cubepath",cubepath:function(){var a={"stroke-linejoin":"round","shape-rendering":"precision",stroke:"none"},c=arguments,d=c.length-1,h=c[d],b,l;h&&h.constructor===e.el.constructor?c[d]=void 0:h=void 0;d=this.path(a,h);b=this.path(a,h);a=this.path(a,h);a._.cubetop=d.follow(a,void 0,"before");a._.cubeside=b.follow(a,void 0,"before");for(l in e.fn.cubepath.ca)a.ca[l]=e.fn.cubepath.ca[l];return a.attr("cubepath",[c[0],c[1],c[2],c[3],c[4],c[5]])},fn:{_getBBox2:function(){var a=
this._.cubeside.getBBox(),c=this._.cubetop.getBBox(),d=this.getBBox();return{x:d.x+c.height,y:d.y-a.width,width:d.width,height:d.height}}},ca:{cubepath:function(a,c,d,h,b,e){var l=this._.cubetop,g=this._.cubeside;a=a||0;c=c||0;d=d||0;h=h||0;b=b||0;e=e||0;this.attr("path",["M",a+d,c,"l",0,h,-d,0,0,-h,"z"]);l.attr("path",["M",a,c,"l",1,1,d-1,0,0,-1,b,-e,-d,0,"z"]);g.attr("path",["M",a+d-1,c+1,"l",0,h-1,1,0,b,-e,0,-h,-b,e]);return!1},"stroke-linejoin":function(){return{"stroke-linejoin":"round"}},"drop-shadow":function(a,
c,d,h){var b=this._.cubetop,e=this._.cubeside;this.dropshadow&&(b.dropshadow(a,-c,d,h),e.dropshadow(a,-c,d,h));return!1},fill:function(a,c){var d=this._.cubetop,h=this._.cubeside,b=this.attr("cubepath")||[0,0,0,0,0,0],l=b[2],g=b[4],b=b[5],k;a=e.color(a);c?(this.attr("fill",a),d.attr("fill",e.tintshade(a,-.78).rgba),h.attr("fill",e.tintshade(a,-.65).rgba)):(k="opacity"in a?"rgba("+[a.r,a.g,a.b,a.opacity]+")":"rgb("+[a.r,a.g,a.b]+")",this.attr("fill",[270,e.tintshade(k,.55).rgba,e.tintshade(k,-.65).rgba].join("-")),
h.attr("fill",[270,e.tintshade(k,-.75).rgba,e.tintshade(k,-.35).rgba].join("-")),d.attr("fill",[45+e.deg(O(b,g+l)),e.tintshade(k,-.78).rgba,e.tintshade(k,.22).rgba].join("-")));return!1}}},{name:"arcpath",arcpath:function(){return this.path(void 0,e._lastArgIfGroup(arguments))},ca:function(a,c,d,h){var b=(h-90)/180*Math.PI;return{path:["M",a,c-d,"A",d,d,0,180<h?1:0,1,a+d*Math.cos(b),c+d*Math.sin(b)]}}},{name:"scroller",scroller:function(a,c,d,h,b,l,g){var k=this.group("scroller",g),t=k.attrs,p=k._.scroller=
{};b=b&&"horizontal"||"vertical";var F,m={},z,w,B;p.track=this.rect(k).mousedown(function(c){var a=t["scroll-position"];c="horizontal"===t["scroll-orientation"]?c.layerX||c.x:c.layerY||c.y;c=(c-p.anchorOffset)/p.trackLength;F=e.animation({"scroll-position":c},2E3*u(a-c),"easeIn");k.animate(F);V("raphael.scroll.start."+k.id,k,a)}).mouseup(p._mouseupTrack=function(){this.stop(F);V("raphael.scroll.end."+this.id,this,t["scroll-position"])},k,!0);p.anchor=this.rect(k).drag(function(c,a){m["scroll-position"]=
z+a[w]/p.trackLength;k.animate(m,0)},function(c){w="horizontal"===t["scroll-orientation"]?0:1;V("raphael.scroll.start."+k.id,k,z=t["scroll-position"]);c.stopPropagation()},function(){V("raphael.scroll.end."+k.id,k,z=t["scroll-position"])});for(B in e.fn.scroller.fn)k[B]=e.fn.scroller.fn[B];for(B in e.fn.scroller.ca)k.ca[B]=e.fn.scroller.ca[B];t["scroll-orientation"]=b;t["stroke-width"]=1;k.ca["scroll-repaint"]=k.ca["scroll-repaint-"+b];!e.is(l,"object")&&(l={});return k.attr({ishot:!0,"scroll-display-buttons":l.showButtons&&
"arrow"||"none","scroll-display-style":l.displayStyleFlat&&"flat"||"3d","scroll-ratio":n(l.scrollRatio)||1,"scroll-position":n(l.scrollPosition)||0,"scroll-repaint":[a,c,d,h]})},fn:{scroll:function(a,c){var d=this._.scroller;c=c||this;d.callback=function(){return a.apply(c,arguments)};return this},remove:function(){var a=this._.scroller,c;this.attr("scroll-display-buttons","none");a.track.unmouseup(a._mouseupTrack);for(c in a)a[c]&&a[c].remove&&a[c].remove(),a[c]=null;delete this._.scroller;e.el.remove.apply(this,
arguments)}},ca:{"stroke-width":function(){return!1},"drop-shadow":function(a,c,d,h,b,e){this._.scroller.track.attr("drop-shadow",[a,c,d,h,b,e]);return!1},"scroll-display-style":function(a){var c=this.attrs,d=c["scroll-display-style"],h=c.fill;a={flat:"flat","3d":"3d",transparent:"transparent"}[a]||d;h&&a!==d&&(c["scroll-display-style"]=a,this.attr("fill",h));return{"scroll-display-style":a}},"scroll-display-buttons":function(a){var c=this,d=c.paper,h=c._.scroller,b=c.attrs,l=b["scroll-display-buttons"],
g=b["scroll-repaint"],k,t;void 0===l&&(l="none");a={none:"none",arrow:"arrow"}[a]||l;a!==l&&(b["scroll-display-buttons"]=a,"none"===a&&h.start?(h.arrowstart.remove(),delete h.arrowstart,h.arrowend.remove(),delete h.arrowend,h.start.unmouseup(h._mouseupStart),h.start.remove(),delete h.start,h.end.unmouseup(h._mouseupEnd),h.end.remove(),delete h.end):(h.arrowstart=d.polypath(c),h.arrowend=d.polypath(c),h.start=d.rect(c).mousedown(function(){var a;0!==(a=b["scroll-position"])&&(c.animate({"scroll-position":a-
.1},100).animate(k=e.animation({"scroll-position":0},4500*a,"easeIn")),V("raphael.scroll.start."+c.id,c,a))}).mouseup(h._mouseupStart=function(){c.stop(k);V("raphael.scroll.end."+c.id,c,b["scroll-position"])},c,!0),h.end=d.rect(c).mousedown(function(){var a;1!==(a=b["scroll-position"])&&(c.animate({"scroll-position":a+.1},100).animate(t=e.animation({"scroll-position":1},4500*(1-a),"easeIn")),V("raphael.scroll.start."+c.id,c,a))}).mouseup(h._mouseupEnd=function(){c.stop(t);V("raphael.scroll.end."+
c.id,c,b["scroll-position"])},c,!0),b.fill&&c.attr("fill",b.fill)),g&&c.attr("scroll-repaint",g));return{"scroll-display-buttons":a}},"scroll-orientation":function(a){var c=this.attrs,d=c["scroll-repaint"],h=c["scroll-orientation"];a={horizontal:"horizontal",vertical:"vertical"}[a]||h;h!==a&&(this.ca["scroll-repaint"]=this.ca["scroll-repaint-"+a],d&&(d[2]+=d[3],d[3]=d[2]-d[3],d[2]-=d[3],this.attr("scroll-repaint",d)),c.fill&&this.attr("fill",c.fill));return{"scroll-orientation":a}},"scroll-ratio":function(a){var c=
this.attrs,d=c["scroll-ratio"],h=c["scroll-repaint"];a=1<a?1:.01>a?.01:n(a);h&&a!==d&&(c["scroll-ratio"]=a,this.attr("scroll-repaint",h));return{"scroll-ratio":a}},"scroll-position":function(a,c){var d=this.attrs,h="horizontal"===d["scroll-orientation"],b=d["scroll-repaint"],e=d["scroll-position"],l=this._.scroller,g=l.anchor;a=1<a?1:0>a?0:n(a);isNaN(a)&&(a=e);b&&(e!==a||c)&&(e=l.start&&l.start.attr(h&&"width"||"height")||0,h&&g.attr("x",b[0]+e+(b[2]-2*e-g.attr("width"))*a+.5)||g.attr("y",b[1]+e+
(b[3]-2*e-g.attr("height"))*a+.5),!c&&1>d["scroll-ratio"]&&(V("raphael.scroll.change."+this.id,this,a),l.callback&&l.callback(a)));return{"scroll-position":a}},r:function(a){var c=this._.scroller;c.track.attr("r",a);c.anchor.attr("r","none"===this.attrs["scroll-display-buttons"]&&a||0);return!1},"scroll-repaint-horizontal":function(a,c,d,h){var b=this.attrs,e=this._.scroller,l=b["scroll-ratio"],g=b["scroll-position"],k=0,t=d*l,b="none"===b["scroll-display-buttons"];d&&--d;a&&(a+=.5);h&&--h;c&&(c+=
.5);e.track.attr({width:d,height:h,y:c,x:a}).crisp();b||(k=U(h,.5*d),t-=2*k*l,e.start.attr({width:k,height:h,x:a,y:c}),e.arrowstart.attr("polypath",[3,a+.5*k,c+.5*h,.25*k,180]),e.end.attr({width:k,height:h,x:a+d-k,y:c}),e.arrowend.attr("polypath",[3,a+d-.5*k,c+.5*k,.25*k,0]));e.trackLength=d-2*k-t;e.trackOffset=a+k+.5;e.anchorOffset=e.trackOffset+.5*(t-1);e.anchor.attr({height:h,width:t-1,y:c,x:e.trackOffset+e.trackLength*g}).crisp()},"scroll-repaint-vertical":function(a,c,d,h){var b=this.attrs,e=
this._.scroller,l=b["scroll-ratio"],g=b["scroll-position"],k=0,t=h*l,b="none"===b["scroll-display-buttons"];d&&--d;a&&(a+=.5);h&&--h;c&&(c+=.5);e.track.attr({width:d,height:h,y:c,x:a}).crisp();b||(k=U(d,.5*h),t-=2*k*l,e.start.attr({width:d,height:k,x:a,y:c}),e.arrowstart.attr("polypath",[3,a+.5*d,c+.5*k,.25*k,90]),e.end.attr({width:d,height:k,x:a,y:c+h-k}),e.arrowend.attr("polypath",[3,a+.5*d,c+h-.5*k,.25*k,-90]));e.trackLength=h-2*k-t;e.trackOffset=c+k+.5;e.anchorOffset=e.trackOffset+.5*(t-1);e.anchor.attr({height:0>
t-1?0:t-1,width:d,y:e.trackOffset+e.trackLength*g,x:a}).crisp()},fill:function(a){var c=this.attrs,d=this._.scroller,h=c["scroll-repaint"],b="flat"===c["scroll-display-style"],l="horizontal"===c["scroll-orientation"],g={stroke:"none"},k;v&&h&&3<(k=16-h[l&&3||2])&&(g.stroke=B,g["stroke-width"]=k);a=e.color(a);a.error&&(a=e.color("#000000"));a="opacity"in a?"rgba("+[a.r,a.g,a.b,a.opacity]+")":"rgb("+[a.r,a.g,a.b]+")";g.fill=b&&a||[90*l,e.tintshade(a,.15).rgba,a].join("-");g.stroke=e.tintshade(a,-.75).rgba;
d.track.attr(g);g.fill=b&&e.tintshade(a,-.6).rgba||[270*l,e.tintshade(a,.3).rgba+":40",e.tintshade(a,-.7).rgba].join("-");g.stroke=e.tintshade(a,-.6).rgba;d.anchor.attr(g);g.stroke="none";"none"!==c["scroll-display-buttons"]&&(g.fill=B,d.start.attr(g),d.end.attr(g),g.fill=e.tintshade(a,-.4).rgba,d.arrowstart.attr(g),d.arrowend.attr(g));return!1}}},{name:"button",button:function(a,c,d,h,b,l){l=this.group("button",l);var g;l._.button={bound:this.rect(l),tracker:this.rect(l).attr({fill:B,stroke:B,cursor:"pointer"}).data("compositeButton",
l)};!e.is(b,"object")&&(b={});for(g in e.fn.button.fn)l[g]=e.fn.button.fn[g];for(g in e.fn.button.ca)l.ca[g]=e.fn.button.ca[g];return l.attr({ishot:!0,"button-padding":[b.horizontalPadding,b.verticalPadding],"button-label":d,"button-symbol":h,"button-disabled":b.disabled||"false","button-symbol-position":b.symbolPosition,"button-symbol-padding":b.symbolPadding}).attr("button-repaint",[a,c,b.width,b.height,b.r])},data:{hoverin:function(){var a=this._.button,c=a.hoverbackIn,d=this._hover||{};d.fill||
d["fill-symbol"]||d.stroke||d["stroke-width"]||d.cursor?(d.fill&&this.bottom.attr("fill",d.fill)&&!d["fill-symbol"]&&a.symbol.attr("fill",d.fill),d["fill-symbol"]&&a.symbol.attr("fill",d["fill-symbol"]),d.stroke&&this.bottom.attr("stroke",d.stroke)&&a.symbol.attr("stroke",d.stroke),d["stroke-width"]&&this.bottom.attr("stroke-width",d["stroke-width"])&&a.symbol.attr("stroke-width",d["stroke-width"]),d.cursor&&a.tracker.attr("cursor",d.cursor),c&&c()):c&&!1===c(arguments)||this.attr("fill","hover");
this.hovered=!0},hoverout:function(){var a=this._.button,c=a.hoverbackOut,d=this._normal||{};d.fill||d["fill-symbol"]||d.stroke||d["stroke-width"]||d.cursor?(d.fill&&this.bottom.attr("fill",d.fill)&&!d["fill-symbol"]&&a.symbol.attr("fill",d.fill),d["fill-symbol"]&&a.symbol.attr("fill",d["fill-symbol"]),d.stroke&&this.bottom.attr("stroke",d.stroke)&&a.symbol.attr("stroke",d.stroke),d["stroke-width"]&&this.bottom.attr("stroke-width",d["stroke-width"])&&a.symbol.attr("stroke-width",d["stroke-width"]),
d.cursor&&a.tracker.attr("cursor",d.cursor),c&&c()):c&&!1===c(arguments)||this.attr("fill",(this.pressed||this.active)&&"active"||"normal");this.hovered=!1},mousedown:function(){var a=this._.button,c=this._pressed||{};c.fill||c["fill-symbol"]||c.stroke||c["stroke-width"]||c.cursor?(c.fill&&this.bottom.attr("fill",c.fill)&&!c["fill-symbol"]&&a.symbol.attr("fill",c.fill),c["fill-symbol"]&&a.symbol.attr("fill",c["fill-symbol"]),c.stroke&&this.bottom.attr("stroke",c.stroke)&&a.symbol.attr("stroke",c.stroke),
c["stroke-width"]&&this.bottom.attr("stroke-width",c["stroke-width"])&&a.symbol.attr("stroke-width",c["stroke-width"]),c.cursor&&a.tracker.attr("cursor",c.cursor)):this.attr("fill","active");this.pressed=!0},mouseup:function(){var a=this._.button,c=a.callback,d=this._normal||{};d.fill||d.stroke||d["stroke-width"]||d.cursor?(d.fill&&this.bottom.attr("fill",d.fill)&&a.symbol.attr("fill",d.fill),d.stroke&&this.bottom.attr("stroke",d.stroke)&&a.symbol.attr("stroke",d.stroke),d["stroke-width"]&&this.bottom.attr("stroke-width",
d["stroke-width"])&&a.symbol.attr("stroke-width",d["stroke-width"]),d.cursor&&a.tracker.attr("cursor",d.cursor)):this.attr("fill",this.hovered&&"hover"||this.active&&"active"||"normal");this.pressed=!1;c&&c(arguments)},mousemove:function(){var a=this._.button.mousemove;a&&a(arguments)}},fn:{tooltip:function(){e.el.tooltip&&e.el.tooltip.apply(this._.button.tracker,arguments);return this},buttonclick:function(a,c){var d=this._.button;c=c||this;d.callback=function(){return a.apply(c,arguments)};return this},
labelcss:function(){var a=this._.button,c=a.label;a.cssArg=arguments;c&&c.css.apply(c,arguments);return this.attr("button-repaint",this.attrs["button-repaint"])},buttonhover:function(a,c,d,h,b,e){var l=this._.button;d=d||this;h=h||this;e=e||this;b&&(l.mousemove=function(){return b.apply(e,arguments)});l.hoverbackIn=function(){return a.apply(d,arguments)};l.hoverbackOut=function(){return c.apply(h,arguments)};return this},remove:function(){var a=this._.button,c;this.attr("button-disabled","true");
for(c in a)a[c]&&a[c].remove&&a[c].remove(),a[c]=null;delete this._.button;e.el.remove.apply(this,arguments)}},ca:{"button-active":function(a){this.attr("fill",(this.active=!!a)?"active":this.hovered&&"hover"||"normal")},"button-disabled":function(a){var c=this._.button,d=c.tracker,h=this.attrs["button-disabled"],b=this.paper.button.data,e=this._disabled||{};a=Z[a];h=Z[h];if(void 0!==a&&a!==h)switch(a){case !0:e.fill||e.stroke||e["stroke-width"]||e.cursor?(e.fill&&this.bottom.attr("fill",e.fill)&&
c.symbol.attr("fill",e.fill),e.stroke&&this.bottom.attr("stroke",e.stroke)&&c.symbol.attr("stroke",e.stroke),e["stroke-width"]&&this.bottom.attr("stroke-width",e["stroke-width"]&&c.symbol.attr("fill",e.fill)),e.cursor&&c.tracker.attr("cursor",e.cursor)):d.attr("fill","rgba(204,204,205,.5)");d.unmousedown(b.mousedown).unmouseup(b.mouseup).unhover(b.hoverin,b.hoverout).unmousemove(b.mousemove);break;case !1:d.attr("fill",B).mousedown(b.mousedown,this).mouseup(b.mouseup,this,!0).hover(b.hoverin,b.hoverout,
this,this).mousemove(b.mousemove,this)}},"button-label":function(a){var c=this._.button,d=this.attrs,h=c.label,b=c.cssArg,e=this.attrs["button-repaint"];a=L(a||"");"none"===a?h&&(c.label=h.remove()):a&&(!h&&(h=c.label=this.paper.text(this).insertBefore(c.tracker)),h.attr({text:a,"text-anchor":"middle","vertical-align":"middle"}),b&&b.length&&h.css.apply(h,b));e&&d["button-label"]!==a&&this.attr("button-repaint",e)},"button-symbol":function(a){var c=this._.button,d=c.symbol,h=this.attrs["button-repaint"];
a=L(a||"");"none"===a?(d&&(c.symbol=d.remove()),delete c.symbol):a&&!d&&(c.symbol=this.paper.symbol(this).insertAfter(c.bound));h&&this.attr("button-repaint",h)},"button-symbol-position":function(a){return{"button-symbol-position":{top:"top",right:"right",bottom:"bottom",left:"left",none:"none"}[L(a).toLowerCase()]||"none"}},"button-symbol-padding":function(a){return{"button-symbol-padding":n(a)}},"button-padding":function(a,c){return{"button-padding":[null==a&&(a=5)||n(a),null==c&&a||n(c)]}},"button-repaint":function(a,
c,d,h,b){var l=this._.button,g=l.bound,k=l.label,t=l.symbol,p=this.attrs,F=p["button-padding"],m=F[0],z=F[1],w,B;void 0===a&&(a=0);void 0===c&&(c=0);if(void 0===d||void 0===h)w=k&&k.getBBox()||{width:0,height:0},void 0===d&&(d=2*m+w.width),void 0===h&&(h=2*z+w.height);g=e.crispBound(a,c,d,h,g.attr("stroke-width"));g.r=e.pick(b,N(.1*U(h,d)));a=g.x;c=g.y;d=g.width;h=g.height;k&&k.attr({x:a+d/2,y:c+h/2});if(t){!e.is(B=p["button-symbol-padding"],"finite")&&(B=.2*h);b=h-z;w=.5*b;switch(p["button-symbol-position"]+
(k&&"+"||"-")){case "right+":a=a+(d+(2*w+z))-w-m;c+=.5*h;k.attr("transform",["t",-(b+B),0]);break;case "left+":a=a+m+w;c+=.5*h;k.attr("transform",["t",b+B,0]);break;case "top+":a+=.5*d;c=c+F[1]+w;k.attr("transform",["t",0,b+B]);break;case "bottom+":a+=.5*d;c=c+(h+(2*w+B))-z-w;k.attr("transform",["t",0,-(b+B)]);break;default:a+=.5*d,c+=.5*h}t.attr("symbol",[p["button-symbol"],a,c,w])}l.bound.attr(g);l.tracker.attr(g)},fill:function(a,c,d,h,b){var l=this._.button,g=l.bound,k=l.symbol,t=l.label,p={normal:l.gradient,
active:l.gradientActive,hover:l.gradientHover}[a];p||(b||(a=e.getRGB(a),a.error&&(a=e.color("#cccccc")),a="opacity"in a?"rgba("+[a.r,a.g,a.b,a.opacity]+")":"rgb("+[a.r,a.g,a.b]+")"),l.gradient=b?a:[90,e.tintshade(a,-.8).rgba+":0",e.tintshade(a,.8).rgba+":100"].join("-"),l.gradientActive=[270,e.tintshade(a,-.8).rgba+":0",e.tintshade(a,.8).rgba+":100"].join("-"),h=e.getRGB(h),h.error&&(h=a)||(h="opacity"in h?"rgba("+[h.r,h.g,h.b,h.opacity]+")":"rgb("+[h.r,h.g,h.b]+")"),l.gradientHover=b?h:[90,e.tintshade(h,
-.9).rgba+":0",e.tintshade(h,.7).rgba+":100"].join("-"),d=d||e.tintshade(a,.2).rgba,c=c||e.tintshade(a,-.2).rgba,l.symbolFill=d,l.labelFill=c,p=(this.pressed||this.active)&&l.gradientActive||this.hovered&&l.gradienthover||l.gradient);g.attr("fill",p);k&&k.attr("fill",l.symbolFill);t&&t.attr("fill",l.labelFill);return!1},stroke:function(a,c){var d=this._.button,h=d.symbol;a=e.color(a);a.error&&(a=e.color("#999999"));d.bound.attr("stroke",a);h&&h.attr("stroke",c||a);return!1},"stroke-width":function(a,
c){var d=this._.button,h=d.symbol;d.bound.attr("stroke-width",a);d.tracker.attr("stroke-width",a);h&&h.attr("stroke-width",c);return!1},config:function(a){a.hover&&(this._hover={fill:a.hover.fill,"fill-symbol":a.hover["fill-symbol"],stroke:a.hover.stroke,"stroke-width":a.hover["stroke-width"],cursor:a.hover.cursor});a.disabled&&(this._disabled={fill:a.disabled.fill,"fill-symbol":a.disabled["fill-symbol"],stroke:a.disabled.stroke,"stroke-width":a.disabled["stroke-width"],cursor:a.disabled.cursor});
a.pressed&&(this._pressed={fill:a.pressed.fill,"fill-symbol":a.pressed["fill-symbol"],stroke:a.pressed.stroke,"stroke-width":a.pressed["stroke-width"],cursor:a.pressed.cursor});a.normal&&(this._normal={fill:a.normal.fill,"fill-symbol":a.normal["fill-symbol"],stroke:a.normal.stroke,"stroke-width":a.normal["stroke-width"],cursor:a.normal.cursor});a.symbol&&(a.symbol={stroke:a.normal.stroke,"stroke-width":a.normal["stroke-width"]})}}},{name:"trianglepath",trianglepath:function(){var a=arguments,c=e._lastArgIfGroup(a);
return this.path(c).attr("trianglepath",[a[0],a[1],a[2],a[3],a[4],a[5],a[6]||0,a[7]||0,a[8]||0])},fn:{sides:function(){var a=this._args;return[h(a[0],a[1],a[2],a[3]),h(a[2],a[3],a[4],a[5]),h(a[4],a[5],a[0],a[1])]},enclosedAngles:function(){var d=this._sides;return[M((a(d[0],2)+a(d[2],2)-a(d[1],2))/(2*d[0]*d[2])),M((a(d[0],2)+a(d[1],2)-a(d[2],2))/(2*d[0]*d[1])),M((a(d[2],2)+a(d[1],2)-a(d[0],2))/(2*d[2]*d[1]))]},semiperimeter:function(){var a=this._sides||this.sides();return(a[0]+a[1]+a[2])/2}},ca:{trianglepath:function(a,
c,h,b,e,l,g,k,t){if(g||k||t){this._args=arguments;this._sides=this.sides();var p=this.enclosedAngles(),F;F=this.semiperimeter();F=r(F*(F-this._sides[0])*(F-this._sides[1])*(F-this._sides[2]))/F;p=[U(g,F)/q(p[0]/2),U(k,F)/q(p[1]/2),U(t,F)/q(p[2]/2)];p=[d(a,c,e,l,p[0]),d(a,c,h,b,p[0]),d(h,b,a,c,p[1]),d(h,b,e,l,p[1]),d(e,l,h,b,p[2]),d(e,l,a,c,p[2])];this.attr({path:["M",p[0].x,p[0].y,"Q",a,c,p[1].x,p[1].y,"L",p[2].x,p[2].y,"Q",h,b,p[3].x,p[3].y,"L",p[4].x,p[4].y,"Q",e,l,p[5].x,p[5].y,"L",p[0].x,p[0].y]})}else this.attr({path:["M",
a,c,"L",h,b,e,l,"Z"]})}}}]);e.ca["text-bound"]=function(a,c,d,h,b,l){var g=this.paper,k=this._.textbound;if("text"===this.type){if(!(c&&"none"!==c||a&&"none"!==a))return this._.textbound=k&&k.unfollow(this).remove(),!1;this.attrs["text-bound"]=arguments;d&&e.is(d,"finite")||(d=0);b&&e.is(b,"finite")||(b=0);!k&&(k=this._.textbound=g.rect(0,0,0,0,this.group).follow(this,e.ca["text-bound"].reposition,"before"));k.attr({stroke:c,"stroke-width":d,fill:a,"shape-rendering":1===d&&"crisp"||"",r:b});l&&k.attr("stroke-dasharray",
l);e.ca["text-bound"].reposition.call(k,this.attr(),this);return!1}};e.ca["text-bound"].reposition=function(a,c){var d={},h,b,l,g,k;a.hasOwnProperty("visibility")&&this.attr("visibility",a.visibility);if(a.hasOwnProperty("text-bound")||a.hasOwnProperty("x")||a.hasOwnProperty("y")||a.hasOwnProperty("text")||a.hasOwnProperty("text-anchor")||a.hasOwnProperty("text-align")||a.hasOwnProperty("font-size")||a.hasOwnProperty("line-height")||a.hasOwnProperty("vertical-align")||a.hasOwnProperty("transform")||
a.hasOwnProperty("rotation"))h=c.attrs["text-bound"],b=L(h&&h[3]||"0").split(z),h=n(b[0])||0,b=e.pick(n(b[1]),h),l=c.getBBox(),g=l.width,k=l.height,isNaN(g)||(d.x=l.x-h,d.y=l.y-b,d.width=g+2*h,d.height=k+2*b),this.attr(d)};e.fn.symbol=function(){var a=arguments,c=a.length-1,d=a[c];d&&d.constructor===e.el.constructor?a[c]=void 0:d=void 0;c=this.path(void 0,d);c.ca.symbol=e.fn.symbol.ca.symbol;return a.length===!!d+0?c:c.attr("symbol",a)};e.fn.getSuggestiveRotation=function(){var a,c,d;a=arguments[0];
1===arguments.length?(c=a.angle,d=a.x,a=a.y):(c=a,d=arguments[1],a=arguments[2]);return"r"+(c||0)+","+d+","+a};e.fn.symbol.cache={"":e._cacher(function(a,c,d,h){return 3<arguments.length?["M",a,c,"h",d,"v",h,"h",-d,"v",-h,"z"]:["M",a-d,c-d,"h",d*=2,"v",d,"h",-d,"v",-d,"z"]})};e.fn.symbol.ca={symbol:function(a){var c=e.is(a,"object")&&1===arguments.length&&!e.is(a,"function")?a:arguments,d;c===a&&(a=c[0]);c=(d=e.is(a,"function")&&a||e.fn.symbol.cache[a]||e.fn.symbol.cache[""])&&d.apply(e,g.call(c,
1));e.is(c,"array")||e.is(c,"string")?this.attr("path",c):c&&this.attr(c)}};e.addSymbol=function(a,c){var d=e.is(c,"function")&&(d={},d[a]=c,d)||a,h=e.fn.symbol.cache,b=[],l;for(l in d)c=d[l],h[l]=e.is(c,"function")&&e._cacher(c,e)||(b.push(l),c);for(;l=b.pop();)h[l]=h[h[l]]};e.svg?(R="$1",F=function(a){a?"string"===typeof a?a=a.replace(S,R):a.toString=w:a="M0,0";this.node.setAttribute("d",a.toString())},e._engine.litepath=function(a,c,d,h){a=p("path");(h||c).canvas.appendChild(a);c=new K(a,c,h);
c.type="litepath";c.id=a.raphaelid=e._oid++;a.raphael=!0;T(c,{fill:"none",stroke:"#000"});return c},e._getPath.litepath=function(a){return e.parsePathString(a.node.getAttribute("d"))}):e.vml&&(R=function(a,c){return P[c]||c},X=function(){this._transform.apply(this,arguments);this._.bcoord&&(this.node.coordsize=this._.bcoord);return this},F=function(a){a?"string"===typeof a?a=a.replace(S,R):a.toString=w:a="M0,0";this.node.path=a;return this},e._engine.litepath=function(a,c,d,h){a=p("shape");var b=
a.style,l=new K(a,c,h);b.cssText="position:absolute;left:0;top:0;width:21600px;height:21600px;";d=n(d);isNaN(d)?a.coordsize="21600 21600":(l._.bzoom=d,b.width="1px",b.height="1px",a.coordsize=l._.bcoord=d+" "+d);a.coordorigin=c.coordorigin;l.type="litepath";l.id=a.raphaelid=e._oid++;a.raphael=!0;l._transform=l.transform;l.transform=X;e._setFillAndStroke(l,{fill:"none",stroke:"#000"});(h||c).canvas.appendChild(a);c=p("skew");c.on=!0;a.appendChild(c);l.skew=c;return l},e._getPath.litepath=function(a){return e.parsePathString(a.node.path||
"")});e.fn.litepath=function(a,c,d){c&&c.constructor===K&&(d=c,c=void 0);a&&a.constructor===K&&(d=a,a="");c=e._engine.litepath(a,this,c,d);c.ca.litepath=F;a&&c.attr("litepath",e.is(a,"array")?[a]:a);return this.__set__&&this.__set__.push(c),this._elementsById[c.id]=c}}]);Q.register("module",["private","modules.renderer.js-htmlrenderer",function(){var b=this.hcLib,v=b.Raphael,J=b.dem,C=this.window,H=C.document,A=/msie/i.test(C.navigator.userAgent)&&!C.opera,u="VML"===v.type,a=b.hasTouch,O={cursor:"cursor"},
q={x:"left",y:"top",strokeWidth:"borderThickness","stroke-width":"borderThickness",width:"width",height:"height"},M={fill:"backgroundColor",stroke:"borderColor",color:"color"},U={left:0,top:0,padding:0,border:"none",margin:0,outline:"none","-webkit-apperance":"none",position:"absolute",zIndex:20},N,E=function(a,b,n,r){a=H.createElement(a);for(var g in b)q[g]?a.style[g]=b[g]:a.setAttribute(g,b[g]);for(g in n)a.style[g]=n[g];r&&r.appendChild&&r.appendChild(a);return a},r;r=function(a,b,n){b&&b instanceof
r&&(b=b.element);(this.element=E(a,n,U,b)).ishot="true";this.nodeName=a.toLowerCase();this.added=!!b};r.prototype={attr:function(a){var b=this.element,n={},r,g,l,B,e,V,p;if("object"!==typeof a){if(!(n=this[a])){if("string"===typeof a)b&&b.getAttribute&&(B=b.getAttribute(a));else if(void 0!==a&&null!==a&&"object"===typeof a)for(l in a)b.setAttribute(l,a[l]);n=B}return n}for(r in a){l=a[r];if(O[r]){switch(r){case "cursor":"pointer"===l&&u&&(l="hand")}b.style[O[r]]=l;g=!0}else if(q[r])b.style[q[r]]=
l+"px",g=!0;else if(M[r])b.style[M[r]]=l&&l.replace(/^#?([a-f0-9]+)/ig,"#$1")||"none",g=!0;else if(/^visibility$/i.test(r))g="hidden"===l,b.style.display=g?"none":"",this.hidden=g,g=!0;else if(/^opacity$/i.test(r))b.style.opacity=l,A&&(g=100*Number(l),b.style.filter="progid:DXImageTransform.Microsoft.Alpha(Opacity="+g+")"),g=!0;else if(/^innerhtml$/i.test(r)){if(u&&"select"==b.nodeName.toLowerCase()){for(g=l.match(/<option\s?[\s\S]*?(\/>|><\/option>|>[\s\S]*?<\/option>)/ig);b.firstChild;)b.removeChild(b.firstChild);
e=0;for(V=g.length;e<V;e+=1)B=g[e],p=H.createElement("option"),/<option\s([\s\S]*[\'\"])\s*?(\/>|>[\s\S]*<\/option>)/ig.test(B)&&(p.value=B.replace(/<option\s([\s\S]*[\'\"])\s*?(\/>|>[\s\S]*<\/option>)/ig,"$1").replace(/[\s\S]*value\s*\=\s*[\'\"]([\s\S]*)[\'\"]/,"$1")),p.text=B.replace(/<option\s*[\s\S]*[\'\"]?\s*?[\/>|\>]([\s\S]*)<\/option>/ig,"$1 "),b.options.add(p)}else"input"!==b.nodeName.toLowerCase()&&void 0!==l&&(b.innerHTML=l||"");g=!0}else/^text$/i.test(r)?("input"!==b.nodeName.toLowerCase()&&
(b.innerHTML="",void 0!==l&&b.appendChild(H.createTextNode(l))),g=!0):/^type$/i.test(r)&&A&&this.added&&(g=!0);g&&(n[r]=l,delete a[r],g=!1)}for(r in a)b.setAttribute(r,a[r]);for(r in n)this[r]=a[r]=n[r],delete n[r];return this},val:function(a){var b=this.element,n=void 0===a;return"input"===this.nodeName&&"checkbox"===b.getAttribute("type")?n?this.checked()?1:0:this.checked(a):n?b.value:(b.value=a,this)},checked:function(a){var b=this.element;return void 0===a?b.checked:(a?b.setAttribute("checked",
"checked"):b.removeAttribute("checked"),this)},css:function(a,b){var n=this.element.style,r;if("object"===typeof a)for(r in a)n[r]=a[r];else r&&void 0!==b&&(n[r]=b);return this},translate:function(a,b){var n=this.element;void 0!==a&&(n.style.left=a+"px");void 0!==b&&(n.style.top=b+"px");return this},add:function(a,b){var n=this.element,r=a.element;b?r.insertBefore(n,r.firstChild):r.appendChild(n);this.added=!0;return this},hide:function(){this.element.style.display="none";return this},show:function(){this.element.style.display=
"";return this},focus:function(){"function"===typeof this.element.focus?this.element.focus():b.dem.fire(this.element,"focus")},destroy:function(){var a=this.element||{};a.onclick=a.onmouseout=a.onmouseover=a.onmousemove=a.onblur=a.onfocus=null;N||(N=E("div"));a&&N.appendChild(a);N.innerHTML="";delete this.element;return null},on:u?function(a,b){this.element["on"+a]=function(){var a=C.event;a.target=a.srcElement;b(a)};return this}:function(b,m){var n=m;a&&"click"===b&&(b="touchstart",n=function(a){a.preventDefault();
m()});this.element["on"+b]=n;return this},bind:function(a,b,n){J.listen(this.element,a,b,n);return this},unbind:function(a,b){J.unlisten(this.element,a,b);return this},trigger:function(a,b){J.fire(this.element,a,b);return this},fadeIn:function(a,m){var n="fast"===a?400:1E3;this.show();this.attr({opacity:0});b.danimate.animate(this.element,{opacity:1},n,"linear",m)},animate:function(a,m,n,r){b.danimate.animate(this.element,a,m,n,r)}};r.prototype.constructor=r;v.fn.html=function(a,b,n,q){var g={},l;
b&&"type"in b&&(g.type=b.type,delete b.type);a=(new r(a,q,g)).css(n).attr(b);for(l in g)b[l]=g[l];return a}}]);Q.register("module",["private","modules.renderer.js-dom",function(){var b=this.hcLib,v=this.window,J=v.document,C=b.extend2,H="ontouchstart"in v;(function(b){var u=function(){var a={},b;a.pointerdrag={start:["mousedown"],end:["mouseup"],onStart:["mousemove"],postHandlers:{},preHandlers:{}};a.pointerhover={start:["mouseover"],end:["mouseout"]};a.click={start:["click"]};a.escape={start:["keydown"],
preHandlers:{start:function(a){a=a||v.event;return a.keyCode&&27===a.keyCode?!0:!1}}};H&&(b=a.pointerdrag,b.start.push("touchstart"),b.end.push("touchend"),b.onStart.push("touchmove"),b.postHandlers.onStart=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1});return a}(),a;a=C({},u);b.dem=new function(){var b={},q={},u=J.addEventListener?function(a,b,n){a.addEventListener(b,n,!1)}:function(a,b,n){a.attachEvent("on"+b,n)},A=J.removeEventListener?function(a,b,n){a.removeEventListener(b,
n,!1)}:function(a,b,n){a.detachEvent("on"+b,n)},N=function(b,m,n){var r=[],g,l,B;B=a[m];n.start=function(a){a=a||v.event;for(var l=B.onStart,g=B.end,m=[],K=[],t=l&&l.length||0;t--;)m.push(E(b,l[t],n,"onStart"));for(t=g&&g.length||0;t--;)K.push(E(b,g[t],n,"end"));n.startUn=n.startUn?n.startUn.concat(m):m;n.endUn=n.endUn?n.endUn.concat(K):K;n.state="start";n.closure(a)};n.onStart=function(a){a=a||v.event;n.state="on";if(n.gDef&&n.gDef.preHandlers&&"function"===typeof n.gDef.preHandlers.onStart)n.gDef.preHandlers.onStart(a);
n.closure(a);if(n.gDef&&n.gDef.postHandlers&&"function"===typeof n.gDef.postHandlers.onStart)n.gDef.postHandlers.onStart(a)};n.end=function(a){a=a||v.event;for(var b=n.startUn,l=n.endUn,g=b&&b.length||0;g--;)b[g]();delete n.startUn;n.startUn=[];for(g=l&&l.length||0;g--;)l[g]();delete n.endUn;n.endUn=[];n.state="end";n.closure(a)};if(B)for(m=B.start,l=m.length;l--;)(g=m[l])&&r.push(E(b,g,n,"start"));return r},E=function(a,b,n,r){r=r||"closure";u(a,b,n[r]);return function(){A(a,b,n[r])}},r=function(a){return function(b){b=
b||v.event;a.handler.call(a.context||a.elem,{data:a.data,type:a.type,state:a.state,isGesture:a.isGesture,target:b.target||b.srcElement,originalEvent:b})}};return{listen:function(k,m,n,u,g){var l=this;m="string"===typeof m?m.split(" "):m;var B=m.length,e=[],V=function(a,b,g){e.push(function(){l.unlisten(a,b,g)})},p,T,K,t,Z;if(k.ownerDocument&&k.ownerDocument===J)for(;B--;)T=m[B],t=!!a[T],Z="function"===typeof n?n:n[B],K={handler:Z,elem:k,type:T,isGesture:t,gDef:t?a[T]:null,data:u,context:g,start:[],
end:[],links:{prev:null,next:null}},K.closure=r(K),t?((p=q[T])||(p=q[T]=[]),p.push(K),N(k,T,K)):((p=b[T])||(p=b[T]=[]),p.push(K),E(k,T,K)),V(k,T,Z);else for(;B--;)T=m[B],Z="function"===typeof n?n:n[B],K={handler:Z,elem:k,type:T,isGesture:t,data:u,context:g,start:[],end:[],links:{prev:null,next:null}},K.closure=r(K),(p=b[T])||(p=b[T]=[]),p.push(K),E(k,T,K),V(k,T,Z);return{unlisten:function(){for(var a=e.length;a--;)e[a]();e.length=0;e=null}}},unlisten:function(k,m,n){var r,g=!1,l,B;if(a[m])for(l=(r=
q[m])&&r.length||0;l--;){if(B=r[l],B.handler===n&&B.elem===k){var g=k,e=B,u=void 0,p=void 0,T=void 0,u=void 0;if(u=a[m])for(u=u.start,T=u.length;T--;)(p=u[T])&&A(g,p,e.start);r.splice(l,1);g=!0;B.closure=null;B.start=null;B.onStart=null;B.end=null}}else for(l=(r=b[m])&&r.length||0;l--;)B=r[l],B.handler===n&&B.elem===k&&(A(k,m,B.closure),r.splice(l,1),g=!0,B.closure=null);return g},fire:function(a,m,n,r){var g;if(a.ownerDocument&&a.ownerDocument===J)J.createEvent?(g=J.createEvent("HTMLEvents"),g.initEvent(m,
!0,!0),n&&(n.originalEvent?n.originalEvent=g:C(g,n)),"function"===typeof a[m]&&a[m].call(a),a.dispatchEvent(g)):(g=J.createEventObject(),g.eventType=m,n&&(n.originalEvent?n.originalEvent=g:C(g,n)),"function"===typeof a[m]&&a[m].call(a),a.fireEvent("on"+m,g)),r&&!g.returnValue&&r(g);else for(r=(m=b[m])&&m.length||0;r--;)g=m[r],g.elem===a&&g.closure(n)}}}})(b||v);(function(b){function u(a,b){var q="";J.defaultView&&J.defaultView.getComputedStyle?q=J.defaultView.getComputedStyle(a,"").getPropertyValue(b):
a.currentStyle&&(b=b.replace(/\-(\w)/g,function(a,b){return b.toUpperCase()}),q=a.currentStyle[b]);q=parseInt(q,10);return isNaN(q)?0:q}function a(a,b,u,r,k,m,n,L){var g=b/40,l=q[m||"linear"](r-u,g),B=0,e,V,p=v.requestAnimationFrame||v.webkitRequestAnimationFrame||v.mozRequestAnimationFrame||v.oRequestAnimationFrame||v.msRequestAnimationFrame||function(a){setTimeout(a,40)},T=function(m){var t;t=!1;m?(e||(e=m),V=m-e,m=Math.abs(u-r),t=(t=0>u-r?!1:!0)?Math.max(u-m/b*V,r)+L:Math.min(u+m/b*V,r)+L,a.style[k]=
t,M&&"opacity"===k&&(t=100*Number(t),a.style.filter="progid:DXImageTransform.Microsoft.Alpha(Opacity="+t+")"),V<b?p(T):n&&n()):B<g?(t=l[B],a.style[k]=u+t+L,M&&"opacity"===k&&(t=100*Number(t),a.style.filter="progid:DXImageTransform.Microsoft.Alpha(Opacity="+t+")"),B+=1,setTimeout(T,40)):n&&n()};L=L||"";p(T)}var H={width:{suffix:"px"},height:{suffix:"px"},opacity:!0,top:{suffix:"px"},left:{suffix:"px"}},q={linear:function(a,b){for(var q=[],r=a/b,k=0;k<b;k+=1)q[k]=r*(k+1);return q}},M=/msie/i.test(v.navigator.userAgent)&&
!v.opera;b.danimate=C({animate:function(b,q,v,r,k){r={};var m={},n=function(){g+=1;g===L&&"function"===typeof k&&k()},L=0,g=0,l,B;if(40>v){for(B in q)b.style[B]=q[B];k&&k()}else for(B in q)l=null,"x"===B?(l=B,B="left"):"y"===B&&(l=B,B="top"),H[B]&&(L+=1,r[B]=q[l||B],m[B]=u(b,B),l="object"===typeof H[B]&&H[B].suffix,a(b,v,m[B],r[B],B,"linear",n,l))}},{})})(b||v)}]);Q.register("module",["private","modules.renderer.js-raphaeltooltip",function(){var b=this,v=b.window,J=v.document,C=J.body||J.getElementsByTagName("body")[0],
H=b.hcLib,A=H.Raphael,u=A.eve,a=H.createElement,O=H.addEvent,q=H.removeEvent,M=H.getPosition,U=H.hasTouch,N=H.getTouchEvent,E=Math,r=E.ceil,k=E.floor,m={},n=v.screen.availHeight,L=v.screen.availWidth,g={E:1,moz:1,webkit:1,o:1,ms:1},l={borderRadius:"borderRadius",boxShadow:"boxShadow"},B=/\-([a-z])/ig,e=function(a,b){return b.toUpperCase()},V=function(a){var b=p.forbiddenStyle,k,m,z;for(k in a)m=B.test(k)?k.replace(B,e):k,void 0!==a[k]&&!b[m]&&(this[m]=a[k]),A.vml&&/color/ig.test(m)&&(this[m]=A.getRGB(this[m]).toString());
for(k in l)if(this[k])for(z in g)this[z+k]=this[k]},p=H.toolTip={elementId:"fusioncharts-tooltip-element",element:null,lastTarget:null,currentTarget:null,currentPaper:null,pointeroffset:12,prevented:!1,defaultStyle:H.extend2(V.prototype,{backgroundColor:"#ffffee",borderColor:"#000000",borderWidth:"1px",color:"#000000",fontSize:"10px",lineHeight:"12px",padding:"3px",borderStyle:"solid"}),defaultContainerStyle:{position:"absolute",textAlign:"left",margin:"0",zIndex:"99999",pointer:"default",display:"block"},
forbiddenStyle:{}},T=function(e,l){var g=e.element,k=e.textElement,z=e.style,m=e.defaultContainerStyle,w=e.forbiddenStyle,F,g=e.element=a("span");(J.body||J.getElementsByTagName("body")[0]).appendChild(g);g.setAttribute("id",p.elementId);z=e.containerStyle=g.style;k=e.textElement=a("span");g.appendChild(k);e.style=A.vml?k.runtimeStyle:k.style;e.style.overflow="hidden";e.style.display="block";e.hidden=!1;p.hide.call(e);for(F in m)!w[F]&&(z[F]=m[F]);e.scatted=!0;l&&(u.on("raphael.drag.start.*",function(){p.scatted&&
(p.waitingScat=!0)}),u.on("raphael.drag.move.*",function(){p.waitingScat&&(p.block(),p.waitingScat=!1)}),u.on("raphael.drag.end.*",function(){p.waitingScat=!1;p.scatted&&p.unblock(!0)}),u.on("raphael.remove",function(){if(p.currentPaper===this||p.currentTarget&&p.currentTarget.paper===this)p.hide(),p.currentTarget=p.currentPaper=null}),b.addEventListener("LinkedChartInvoked",function(a){p.currentPaper===a.sender.apiInstance.components.paper&&p.hide()}),b.addEventListener("realTimeUpdateComplete",
function(a){p.currentPaper===a.sender.apiInstance.components.paper&&p.hide()}));return e},K=function(a){!0===p._oobready?p._oobready=!1:(q(C,"touchstart",K),!p.hidden&&p.currentTarget&&(a=a.srcElement||a.target||m,a.raphael&&p.currentTarget.paper.getById(a.raphaelid)===p.currentTarget||p.hide()))};p.fixedChartID={};A.svg&&(p.defaultContainerStyle.pointerEvents="none",p.defaultStyle.borderRadius="0",p.defaultStyle.boxShadow="none");A.vml&&(p.forbiddenStyle.borderRadius=!0,p.forbiddenStyle.boxShadow=
!0,p.defaultStyle.filter="");p.setup=function(){p.element||T(p,!0)};p.restyle=function(a){var b=this.style,e;for(e in a)b[e]=a[e]};p.onelement=function(a){if(!a.__tipProcessed){var b=this.paper,e="group"===this.type?b&&b._elementFromEvent(a):this,l=b.__tipStyle;e&&l&&e.__tipNeeded&&((a.originalEvent||a).FusionChartsPreventEvent&&p.preventTooltip(),p.hiding&&(p.hiding=clearTimeout(p.hiding)),p.setStyle(b),p.lastTarget=p.currentTarget,p.currentTarget=e,(p.scatted=e.__tipScatted)&&p.unblock(!0),p.onredraw.call(this,
a),a.__tipProcessed=!0,U&&(p._oobready=!0,O(C||(C=J.body||J.getElementsByTagName("body")[0]),"touchstart",K)))}};p.setStyle=function(a){p.currentPaper!==a&&(a.__tipCp=a.canvas&&M(a.canvas.parentNode,!0)||{},p.restyle.call(this,a.__tipStyle),p.currentPaper=a)};p.onredraw=function(a){a.__tipProcessed||(a.__tipProcessed=!0,(this.paper&&this.paper._elementFromEvent(a))===p.currentTarget&&(p.setPosition(a),p.redraw()))};p.setPosition=function(a,e,l){a=N(a);this.x=e||k((b._fullScreenMode?a.clientX:a.pageX)||
a.clientX+J.body.scrollLeft+J.documentElement.scrollLeft||0);this.y=l||k((b._fullScreenMode?a.clientY:a.pageY)||a.clientY+J.body.scrollTop+J.documentElement.scrollTop||0)};p.onhide=function(a){a.__tipProcessed||(a.__tipProcessed=!0,(this.paper&&this.paper._elementFromEvent(a))===p.currentTarget&&(p.hiding=setTimeout(p.hide,200)))};p.redraw=function(){var a,b;!p.prevented&&!p.blocked&&p.currentTarget&&p.currentTarget.__tipNeeded&&(a=p.currentTarget,b=a.paper,a=a.__tipText,p.draw.call(this,a,b))};p.customDraw=
function(a,b,e,l,g,k){var w,F=p.callee&&p.callee===k;(w=p[k])||p.currentPaper===b||(!p.drawTrendRegion||p.hidden||F?p.callee=k:w=p[k]=T({elementId:"fusioncharts-tooltip-element-"+k,pointeroffset:12,defaultStyle:p.defaultStyle,defaultContainerStyle:p.defaultContainerStyle,forbiddenStyle:{}}));!w&&(w=p);p.isFixed=p.fixedChartID[k];p.setStyle.call(w,b,p.hidden&&k);p.setPosition.call(w,e,l,g);p.draw.call(w,a,b,F)};p.draw=function(a,b,e){var l=void 0!==e?this:p,g=l.textElement,k=l.containerStyle,w=l.style,
F=l.pointeroffset,m=b.__tipCp,h=l.x,d=l.y,f,c=b.width,D=b.height;b=b.__tipConstrain;if(100>c||100>D)b=!1;l.hidden&&(l.containerStyle.top="-999em",p.show.call(l));e&&a===l.text||(l.text=a,k.width=k.height="",g.innerHTML=a,w.whiteSpace="nowrap",e=r(w.pixelWidth||g.offsetWidth||0),a=r(w.pixelHeight||g.offsetHeight||0),(l.textWidthOverflow=h+e>m.left+c)?(e=c-2*F>e?k.width:c-2*F||0,k.width=e&&e+"px"||"",w.whiteSpace="normal"):k.width="",(l.textHeightOverflow=a>D)?(k.height=(D||0)-2*F+"px",w.whiteSpace=
"normal"):k.height="");e=r(w.pixelWidth||g.offsetWidth||0);a=r(w.pixelHeight||g.offsetHeight||0);b?(l.textWidthOverflow?h=h-e<m.left?m.left:h-e:!p.isFixed&&(f=h+F+e-(m.left+c-F))&&0<f?h-=f:h+F+e>m.left+c-F&&(h=h-e-F),l.textHeightOverflow?d=m.top:!p.isFixed&&(f=d+F+a-(m.top+D-F))&&0<f?d-=f:d+F+a>m.top+D-F&&(d=d-a-1.5*F)):(L<h+F+e&&(h=h-e-F),n<d+F+a&&(d=d-a-1.5*F));k.left=(h+F||0)+"px";k.top=(d+F||0)+"px";l.hidden&&p.show.call(l)};p.inform=function(a,b){p.fixedChartID[a]=b};p.hide=function(a){a=p[a]||
p;a.hiding&&(a.hiding=clearTimeout(a.hiding));a.containerStyle.display="none";a.hidden=!0;a.prevented=!1};p.show=function(){this.blocked||(this.hiding&&(this.hiding=clearTimeout(this.hiding)),this.containerStyle.display="inline",this.hidden=!1)};p.preventTooltip=function(){p.prevented=!0};p.block=function(){this.blocked=!0;this.containerStyle.display="none"};p.unblock=function(a){this.blocked=!1;a&&(this.containerStyle.display=this.hidden&&"none"||"inline")};A.fn.tooltip=function(a,b,e){b&&(b=.4*
(void 0===b.opacity?1:b.opacity),A.svg?a.boxShadow="1px 1px 3px rgba(64,64,64,"+b+")":a.filter='progid:DXImageTransform.Microsoft.Shadow(Strength=2, Direction=135, Color="#404040", shadowOpacity="'+b/2+'")');this.__tipStyle=new V(a);this.__tipCp=this.canvas&&M(this.canvas.parentNode,!0)||{};this.__tipConstrain=!!e;p.style&&p.restyle(this.__tipStyle);p.containerStyle&&p.hide();return this};A.el.trackTooltip=function(a){var b=!!this.__tiptracking;if(void 0===a||(a=!!a)===b)return this;a?U?this.touchstart(p.onelement):
(this.mouseover(p.onelement),this.mousemove(p.onredraw),this.mouseout(p.onhide)):U?this.untouchstart(p.onelement):(this.unmouseover(p.onelement),this.unmousemove(p.onredraw),this.unmouseout(p.onhide));this.__tiptracking=a;return this};A.el.tooltip=function(a,b,e,l,g){p.setup();A.el.tooltip=function(a,b,e,l,h){b=!1===a||void 0===a||""===a;this.__tipScatted=void 0===l?this.__tipScatted:!l;void 0===this.__tipScatted&&(this.__tipScatted=!0);null!==h&&(this.__tip_blocked=h);b^!this.__tipText&&(this.__tipNeeded=
!b);this.__tipText=a;if(p.currentTarget===this&&a!==p.text&&!p.hidden)p[b?"hide":"redraw"]();return this};return A.el.tooltip.call(this,a,b,e,l,g)};b.core._setTooltipZIndex=function(a){a=parseInt(a,10);p&&!isNaN(a)&&(p.defaultContainerStyle.zIndex=a,p.containerStyle&&(p.containerStyle.zIndex=a))};H.addEvent(v,"webkitfullscreenchange mozfullscreenchange fullscreenchange MSFullscreenChange",function(a){var e=a.target,l,g,k,m=J.webkitIsFullScreen||J.mozFullScreen||J.msFullscreenElement||void 0!==J.fullscreenElement,
w;if(p.element){if("mozfullscreenchange"===a.type)e=a.originalEvent.explicitOriginalTarget.mozFullScreenElement;else if("MSFullscreenChange"===a.type)e=a.originalEvent.srcElement.activeElement;else if("fullscreenchange"===a.type)e=a.originalEvent.srcElement.firstElementChild;else if(e===v||e===J)return;if(!e||e instanceof v.SVGElement)e=p._lastTargetElem;a=e.getElementsByClassName("fusioncharts-container");l=a.length;b._fullScreenMode=m;for(w=0;w<l;w++)g=a[w].FusionCharts.apiInstance,k=g.components.paper,
k.__tipCp=k.canvas&&H.getPosition(k.canvas.parentNode,!0,g)||{};m?(e.appendChild(p.element),p._lastTargetElem=e):J.body.appendChild(p.element)}})}]);Q.register("module",["private","modules.renderer.js-smartlabel",function(){var b=this.hcLib,v=b.isIE,J=b.hasSVG,C=Math,H=C.max,A=C.round,C=this.window,u=/ HtmlUnit/.test(C.navigator.userAgent),a=C.document,O=/ AppleWebKit\//.test(C.navigator.userAgent),q=!!a.createElement("canvas").getContext,M=(C=!(!q||!a.createElement("canvas").getContext("2d")))&&
C.measureText,U=/<br\/>/ig,N=/&lt;|&gt;/g,E=[],r={" ":"&nbsp;"},C=function(){function k(a,b,h){if(!a||!a.length)return 0;var d=h.getWidthFunction(),f=0,c=0,c=d(a),e=c/a.length;h=b;f=Math.ceil(b/e);if(c<b)return a.length-1;f>a.length&&(h=b-c,f=a.length);for(;0<h;)if(h=b-d(a.substr(0,f)),c=Math.floor(h/e))f+=c;else return f;for(;0>h;)if(h=b-d(a.substr(0,f)),c=Math.floor(h/e))f+=c;else break;return f}function m(b,e){e=5<e?e:5;this.maxContainers=20>e?e:20;this.last=this.first=null;this.containers={};
this.length=0;this.rootNode=b;if(Z){var h=a.createElementNS("http://www.w3.org/2000/svg","svg");h.setAttributeNS("http://www.w3.org/2000/svg","xlink","http://www.w3.org/1999/xlink");h.setAttributeNS("http://www.w3.org/2000/svg","height","0");h.setAttributeNS("http://www.w3.org/2000/svg","width","0");this.svgRoot=h;this.rootNode.appendChild(h)}}function n(b,e,h){if("undefined"!==typeof b&&"object"!==typeof b){this.id=b;var d;"string"===typeof e&&(e=a.getElementById(e));a:{if(e&&(e.offsetWidth||e.offsetHeight)){if(e.appendChild){e.appendChild(e=
a.createElement("div"));e.className="fusioncharts-smartlabel-container";e.setAttribute("aria-hidden","true");e.setAttribute("role","presentation");b=e;break a}}else if((b=a.getElementsByTagName("body")[0])&&b.appendChild){e=a.createElement("div");e.className="fusioncharts-smartlabel-container";e.setAttribute("aria-hidden","true");e.setAttribute("role","presentation");b.appendChild(e);b=e;break a}b=void 0}b=this.parentContainer=b;b.innerHTML="WgI";if(u||!v&&!b.offsetHeight&&!b.offsetWidth)Z=!0;b.innerHTML=
"";for(d in l)b.style[d]=l[d];this.containerManager=new m(b,10);this.showNoEllipses=!h;this.init=!0;this.style={};this.setStyle()}}var L=b.supportedStyle,g={fontWeight:1,"font-weight":1,fontStyle:1,"font-style":1,fontSize:1,"font-size":1,fontFamily:1,"font-family":1},l={position:"absolute",top:"-9999em",whiteSpace:"nowrap",padding:"0px",width:"1px",height:"1px",overflow:"hidden"},B=O?0:4.5,e=0,V=/\b_SmartLabel\b/,p=/\b_SmartLabelBR\b/,T=/(<[^<\>]+?\>)|(&(?:[a-z]+|#[0-9]+);|.)/ig,K=RegExp("\\<span[^\\>]+?_SmartLabel[^\\>]{0,}\\>(.*?)\\<\\/span\\>",
"ig"),t=/<[^>][^<]*[^>]+>/i,Z=!1,P=0,S=0,z,R,w;a.getElementsByClassName?(z="getElementsByClassName",R="_SmartLabel",w=!0):(z="getElementsByTagName",R="span",w=!1);m.prototype={get:function(a){var b=this.containers,h=this.length,d=this.maxContainers,f,c="",e="",e=this.getCanvasFont(a);for(f in L)void 0!==a[f]&&(c+=L[f]+":"+a[f]+";");if(!c)return!1;if(b[c])c=b[c],this.first!==c&&(c.prev&&(c.prev.next=c.next),c.next&&(c.next.prev=c.prev),c.next=this.first,c.next.prev=c,this.last===c&&(this.last=c.prev),
c.prev=null,this.first=c);else{if(h>=d)for(a=h-d+1;a--;)this.removeContainer(this.last);c=this.addContainer(c,e)}return c},getCanvasFont:function(a){var b,h=[];if(!q||!M)return!1;for(b in g)void 0!==a[b]&&h.push(a[b]);return h.join(" ")},setMax:function(a){var b=this.length;a=5<a?a:5;a=20>a?a:20;if(a<b){for(b-=a;b--;)this.removeContainer(this.last);this.length=a}this.maxContainers=a},addContainer:function(b,e){var h,d;this.containers[b]=d={next:null,prev:null,node:null,ellipsesWidth:0,lineHeight:0,
dotWidth:0,avgCharWidth:4,keyStr:b,canvasStr:e,charCache:{}};d.next=this.first;d.next&&(d.next.prev=d);this.first=d;this.last||(this.last=d);this.length+=1;h=d.node=a.createElement("div");this.rootNode.appendChild(h);v&&!J?h.style.setAttribute("cssText",b):h.setAttribute("style",b);h.setAttribute("aria-hidden","true");h.setAttribute("role","presentation");h.style.display="inline-block";h.innerHTML="WgI";d.lineHeight=h.offsetHeight;d.avgCharWidth=h.offsetWidth/3;Z?(h=d.svgText=a.createElementNS("http://www.w3.org/2000/svg",
"text"),h.setAttribute("style",b),this.svgRoot.appendChild(h),h.textContent="WgI",d.lineHeight=h.getBBox().height,d.avgCharWidth=(h.getBBox().width-B)/3,h.textContent="...",d.ellipsesWidth=h.getBBox().width-B,h.textContent=".",d.dotWidth=h.getBBox().width-B):e?(h=d.canvas=a.createElement("canvas"),h.style.height=h.style.width="0px",this.rootNode.appendChild(h),d.context=h=h.getContext("2d"),h.font=e,d.ellipsesWidth=h.measureText("...").width,d.dotWidth=h.measureText(".").width):(h.innerHTML="...",
d.ellipsesWidth=h.offsetWidth,h.innerHTML=".",d.dotWidth=h.offsetWidth,h.innerHTML="");return d},removeContainer:function(a){var b=a.keyStr;b&&this.length&&a&&(--this.length,a.prev&&(a.prev.next=a.next),a.next&&(a.next.prev=a.prev),this.first===a&&(this.first=a.next),this.last===a&&(this.last=a.prev),a.node.parentNode.removeChild(a.node),a.canvas&&a.canvas.parentNode.removeChild(a.canvas),delete this.containers[b])},dispose:function(){var a,b=this.containers;this.maxContainers=null;for(a in b)this.removeContainer(b[a]);
this.rootNode.parentNode.removeChild(this.rootNode);this.last=this.first=this.rootNode=null}};m.prototype.constructor=m;n.prototype={dispose:function(){this.init&&(this.containerManager&&this.containerManager.dispose&&this.containerManager.dispose(),delete this.container,delete this.context,delete this.cache,delete this.containerManager,delete this.containerObj,delete this.id,delete this.style,delete this.parentContainer,delete this.showNoEllipses)},useEllipsesOnOverflow:function(a){this.init&&(this.showNoEllipses=
!a)},getWidthFunction:function(){var a=this.context,b=this.container,h=this.containerObj.svgText;return h?function(a){var b;h.textContent=a;a=h.getBBox();b=a.width-B;1>b&&(b=a.width);return b}:a?function(d){d=d&&d.split?d.split(U):E;for(var h=0,c=d.length,b=0,h=0;h<c;h+=1)b=H(a.measureText(d[h]||"").width,b);return b}:function(a){b.innerHTML=a;return b.offsetWidth}},getSmartText:function(b,l,h,d){if(!this.init)return!1;if(void 0===b||null===b)b="";var f={text:b,maxWidth:l,maxHeight:h,width:null,height:null,
oriTextWidth:null,oriTextHeight:null,oriText:b,isTruncated:!1},c=!1,g,G,m=0,B,n,r,q,u,L=-1,v=q=-1;G=this.container;var E=this.context,C=0;u=0;var A,J,M;M=[];var da=0,oa=this.showNoEllipses?"":"...";r=this.lineHeight;var Y,C=[],L=g=-1;Y=function(c){c=c.replace(/^\s\s*/,"");for(var a=/\s/,d=c.length;a.test(c.charAt(--d)););return c.slice(0,d+1)};q=-1;J=this.getWidthFunction();h===r&&(h*=1.2);if(G){if(!Z){(c=t.test(b))?(G.innerHTML=b,f.oriTextWidth=q=G.offsetWidth,f.oriTextHeight=u=G.offsetHeight):(n=
b.replace(N,function(c){return"&lt;"===c?"<":">"}),n=this.getOriSizeImprove(n,!0),f.oriTextWidth=q=n.width,f.oriTextHeight=u=n.height);if(u<=h&&q<=l)return f.width=f.oriTextWidth=q,f.height=f.oriTextHeight=u,f;if(r>h)return f.text="",f.width=f.oriTextWidth=0,f.height=f.oriTextHeight=0,f}b=Y(b).replace(/(\s+)/g," ");r=this.showNoEllipses?l:l-e;if(c){m=b.replace(T,"$2");b=b.replace(T,'$1<span class="_SmartLabel">$2</span>');b=b.replace(/(<br\s*\/*\>)/g,'<span class="_SmartLabel _SmartLabelBR">$1</span>');
G.innerHTML=b;da=G[z](R);E=0;for(J=da.length;E<J;E+=1)if(b=da[E],w||V.test(b.className))Y=b.innerHTML,""!==Y&&(" "===Y?L=C.length:"-"===Y&&(g=C.length),C.push({spaceIdx:L,dashIdx:g,elem:b}),M.push(Y));da=0;g=C.length;P=C[0].elem.offsetWidth;if(P>l)return f.text="",f.width=f.oriTextWidth=f.height=f.oriTextHeight=0,f;P>r&&!this.showNoEllipses&&(r=l-2*S,r>P?oa="..":(r=l-S,r>P?oa=".":(r=0,oa="")));M=C[0].elem.offsetLeft;E=C[0].elem.offsetTop;if(d)for(;da<g;da+=1)b=C[da].elem,J=b.offsetLeft-M+b.offsetWidth,
J>r&&(A||(A=da),G.offsetWidth>l&&(B=da,da=g));else for(;da<g;da+=1)b=C[da].elem,Y=b.offsetHeight+(b.offsetTop-E),J=b.offsetLeft-M+b.offsetWidth,d=null,J>r?(A||(A=da),J>l&&(q=C[da].spaceIdx,L=C[da].dashIdx,q>v?(C[q].elem.innerHTML="<br/>",v=q):L>v?(C[L].elem.innerHTML=L===da?"<br/>-":"-<br/>",v=L):b.parentNode.insertBefore(d=a.createElement("br"),b),b.offsetHeight+b.offsetTop>h?(d?d.parentNode.removeChild(d):v===L?C[L].elem.innerHTML="-":C[q].elem.innerHTML=" ",B=da,da=g):A=null)):Y>h&&(B=da,da=g);
if(B<g){f.isTruncated=!0;A=A?A:B;for(da=g-1;da>=A;--da)b=C[da].elem,b.parentNode.removeChild(b);for(;0<=da;--da)b=C[da].elem,p.test(b.className)?b.parentNode.removeChild(b):da=0}f.text=G.innerHTML.replace(K,"$1").replace(/\&amp\;/g,"&");f.isTruncated&&(f.text+=oa,f.tooltext=m)}else{M=b.split("");g=M.length;G="";B=[];A=M[0];this.cache[A]?P=this.cache[A].width:(P=J(A),this.cache[A]={width:P});if(r>P)B=b.substr(0,k(b,r,this)).split(""),da=B.length;else{if(P>l)return f.text="",f.width=f.oriTextWidth=
f.height=f.oriTextHeight=0,f;oa&&(r=l-2*S,r>P?oa="..":(r=l-S,r>P?oa=".":(r=0,oa="")))}C=J(B.join(""));u=this.lineHeight;if(d){for(;da<g;da+=1)if(A=B[da]=M[da],this.cache[A]?P=this.cache[A].width:(n&&(P=n.detailObj[A])||(P=J(A)),this.cache[A]={width:P}),C+=P,C>r&&(G||(G=B.slice(0,-1).join("")),C>l))return f.text=Y(G)+oa,f.tooltext=f.oriText,f.width=J(f.text),f.height=this.lineHeight,f;f.text=B.join("");f.width=C;f.height=this.lineHeight}else{for(;da<g;da+=1)if(A=B[da]=M[da]," "!==A||E||(A="&nbsp;"),
this.cache[A]?P=this.cache[A].width:(n&&(P=n.detailObj[A])||(P=J(A)),this.cache[A]={width:P}),C+=P,C>r&&(G||(G=B.slice(0,-1).join("")),C>l)){q=b.substr(0,B.length).lastIndexOf(" ");L=b.substr(0,B.length).lastIndexOf("-");q>v?(C=J(B.slice(v+1,q).join("")),B.splice(q,1,"<br/>"),v=q,d=q+1):L>v?(L===B.length-1?(C=J(B.slice(v+1,q).join("")),B.splice(L,1,"<br/>-")):(C=J(B.slice(v+1,q).join("")),B.splice(L,1,"-<br/>")),v=L,d=L+1):(B.splice(B.length-1,1,"<br/>"+M[da]),q=B.length-2,C=J(B.slice(v+1,q+1).join("")),
v=q,d=da);u+=this.lineHeight;if(u>h)return f.text=Y(G)+oa,f.tooltext=f.oriText,f.width=l,f.height=u-this.lineHeight,f;m=H(m,C);G=null;A=k(b.substr(d),r,this);C=J(b.substr(d,A||1));B.length<d+A&&(B=B.concat(b.substr(B.length,d+A-B.length).split("")),da=B.length-1)}m=H(m,C);f.text=B.join("");f.width=m;f.height=u}return f}f.height=G.offsetHeight;f.width=G.offsetWidth}else f.error=Error("Body Tag Missing!");return f},setStyle:function(a){if(!this.init)return!1;if(a!==this.style||this.styleNotSet){a||
(a=this.style);var b=a,h=b.fontSize=b.fontSize||"12px";b.lineHeight=b.lineHeight||b["line-height"]||1.2*parseInt(h,10)+"px";this.style=a;(this.containerObj=a=this.containerManager.get(a))?(this.container=a.node,this.context=a.context,this.cache=a.charCache,this.lineHeight=a.lineHeight,e=a.ellipsesWidth,S=a.dotWidth,this.styleNotSet=!1):this.styleNotSet=!0}},getTextSize:function(a,b,h){if(!this.init)return!1;var d={text:a,width:null,height:null,oriTextWidth:null,oriTextHeight:null,isTruncated:!1},
f=this.container;f&&(f.innerHTML=a,d.oriTextWidth=f.offsetWidth,d.oriTextHeight=f.offsetHeight,d.width=Math.min(d.oriTextWidth,b),d.height=Math.min(d.oriTextHeight,h),d.width<d.oriTextWidth||d.height<d.oriTextHeight)&&(d.isTruncated=!0);return d},getOriSize:function(a){if(!this.init)return!1;var b={text:a,width:null,height:null},h=this.container,d=this.getWidthFunction(),f=0;if(Z){a=a.split(/(<br\s*\/*\>)/g);h=a.length;for(b.height=this.lineHeight*h;h--;)f=H(f,d(a[h]));b.width=f}else h&&(h.innerHTML=
a,b.width=h.offsetWidth,b.height=h.offsetHeight);return b},getOriSizeImprove:function(a,b){if(!this.init)return!1;var h,d,f,c=0,e=0,l={},g,k;if(!b)return this.calCharDimWithCache(a);h=a.split("");g=0;for(k=h.length;g<k;g++)d=h[g],f=this.calCharDimWithCache(d,!0,h.length),e=H(e,f.height),c+=f.width,l[d]=f.width;return{width:A(c),height:e,detailObj:l}},calCharDimWithCache:function(a,b,h){if(!this.init)return!1;var d=this.container,f=this.style||{},c=this.advancedCache||(this.advancedCache={}),e=this.advancedCacheKey||
(this.advancedCacheKey=[]),l=a+(f.fontSize||"")+(f.fontFamily||"")+(f.fontWeight||"")+(f.fontStyle||""),f=a+"init"+(f.fontSize||"")+(f.fontFamily||"")+(f.fontWeight||"")+(f.fontStyle||""),g;r[a]&&(a=r[a]);b?void 0===(b=c[f])&&(d.innerHTML=a.repeat?a.repeat(h):Array(h+1).join(a),b=d.offsetWidth,d.innerHTML=a,g=d.offsetWidth,b=c[f]=(b-h*g)/(h+1),e.push(f),500<e.length&&delete c[e.shift()]):b=0;if(h=c[l])return c=h.split(","),{width:parseFloat(c[0],10),height:parseFloat(c[1],10)};d.innerHTML=a;a={height:d.offsetHeight,
width:d.offsetWidth+b};c[l]=a.width+","+a.height;e.push(l);500<e.length&&delete c[e.shift()];return a}};return n.prototype.constructor=n}();b.SmartLabelManager=C}]);Q.register("module",["private","modules.renderer.js-numberformatter",function(){var b=this,v=b.hcLib,J=v.pluckNumber,C=v.extend2,H=v.getValidValue,A=v.pluck,u=v.getFirstValue,a=Math.abs,O=Math.pow,q=Math.round,M=function(a){return a&&a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},U={},N=function(a){var b=[],m;for(m in a)b.push(m+"_"+a[m]);
b.sort();return b.join(",")},E=function(a){var b={},m;for(m in a)b[m.toLowerCase()]=a[m];return b};v.NumberFormatter=function(){function b(a,g,e){var k;if(0>=g)return q(a)+"";if(isNaN(g))return a+="",12<a.length&&-1!=a.indexOf(".")&&(g=12-a.split(".")[0].length,k=O(10,g),a=q(a*k)/k+""),a;k=O(10,g);a=q(a*k)/k+"";if(1==e)for(-1==a.indexOf(".")&&(a+=".0"),e=a.split("."),g-=e[1].length,e=1;e<=g;e++)a+="0";return a}function k(a,b,e,g,k){var m=Number(a),n="",t=!1,r="",P="",q=r=0;if(isNaN(m))return"";if(1E15<
m)return m.toExponential(k?1:14);r=0;q=a.length;-1!=a.indexOf(".")&&(n=a.substring(a.indexOf(".")+1,a.length),q=a.indexOf("."));0>m&&(t=!0,r=1);r=a.substring(r,q);a=r.length;k=g.length-1;m=g[k];if(a<m)P=r;else for(;a>=m;)P=(a-m?e:"")+r.substr(a-m,m)+P,a-=m,m=0>=--k?g[0]:g[k],a<m&&(P=r.substring(a,0)+P);""!=n&&(P=P+b+n);!0===t&&(P="-"+P);return P}var m,n={formatnumber:"1",formatnumberscale:"1",forcenumberscale:"0",defaultnumberscale:"",numberscaleunit:["K","M"],numberscalevalue:[1E3,1E3],numberprefix:"",
numbersuffix:"",decimals:"",forcedecimals:"0",yaxisvaluedecimals:"2",decimalseparator:".",thousandseparator:",",thousandseparatorposition:[3],indecimalseparator:"",inthousandseparator:"",sformatnumber:"1",sformatnumberscale:"0",sforcenumberscale:"0",sdefaultnumberscale:"",snumberscaleunit:["K","M"],snumberscalevalue:[1E3,1E3],snumberprefix:"",snumbersuffix:"",sdecimals:"2",sforcedecimals:"0",syaxisvaluedecimals:"2",xFormatNumber:"0",xFormatNumberScale:"0",xforcenumberscale:"0",xDefaultNumberScale:"",
xNumberScaleUnit:["K","M"],xNumberScaleValue:[1E3,1E3],xNumberPrefix:"",xNumberSuffix:""},L={mscombidy2d:{formatnumberscale:"1"}},g=function(a,b){var e=a.name,g=this.csConf=C({},n);(e=L[e])&&C(g,e);this.linkedItems={iapi:a};this.configure(b)};g.prototype={configure:function(a){var b=this.linkedItems.iapi,e=b.jsonData;a=a||e.chart;var e=b.name,g=this.csConf,k,m,r,t,q,P,L,z,R,w,F,v,h,d,f,c,D,G,aa,E;this.csConf=g;this.useScaleRecursively=b.useScaleRecursively;H(a.numberscaleunit)&&(k=a.numberscaleunit.split(","));
if(m=H(a.snumberscaleunit,a.numberscaleunit))m=m.split(",");if(r=H(a.xnumberscaleunit,a.numberscaleunit))r=r.split(",");if(t=H(a.ticknumberscaleunit,a.numberscaleunit))t=t.split(",");if(q=H(a.ynumberscaleunit,a.numberscaleunit))q=q.split(",");H(a.numberscalevalue)&&(P=a.numberscalevalue.split(","));if(F=H(a.snumberscalevalue,a.numberscalevalue))F=F.split(",");if(L=H(a.xnumberscalevalue,a.numberscalevalue))L=L.split(",");if(z=H(a.ticknumberscalevalue,a.numberscalevalue))z=z.split(",");if(R=H(a.ynumberscalevalue,
a.numberscalevalue))R=R.split(",");if(H(a.thousandseparatorposition))for(w=a.thousandseparatorposition.split(","),v=w.length,d=n.thousandseparatorposition[0];v--;)h=parseInt(w[v],10),0>=h&&(h=d),d=w[v]=h;b||(b={});v=J(a.scalerecursively,0);h=J(a.sscalerecursively,v);d=J(a.xscalerecursively,v);f=J(a.maxscalerecursion,-1);c=J(a.smaxscalerecursion,f);D=J(a.xmaxscalerecursion,f);G=H(a.scaleseparator," ");aa=H(a.sscaleseparator,G);E=H(a.xscaleseparator,G);f||(f=-1);this.baseConf=w={cacheStore:[],formatnumber:A(a.formatnumber,
b.formatnumber,g.formatnumber),formatnumberscale:A(a.formatnumberscale,b.formatnumberscale,g.formatnumberscale),forcenumberscale:A(a.forcenumberscale,b.forcenumberscale,g.forcenumberscale),defaultnumberscale:u(a.defaultnumberscale,b.defaultnumberscale,g.defaultnumberscale),numberscaleunit:A(k,b.numberscaleunit,g.numberscaleunit).concat(),numberscalevalue:A(P,b.numberscalevalue,g.numberscalevalue).concat(),numberprefix:u(a.numberprefix,b.numberprefix,g.numberprefix),numbersuffix:u(a.numbersuffix,b.numbersuffix,
g.numbersuffix),decimalprecision:parseInt("auto"===a.decimals?g.decimalprecision:A(a.decimals,a.decimalprecision,b.decimals,g.decimals,b.decimalprecision,g.decimalprecision),10),forcedecimals:A(a.forcedecimals,b.forcedecimals,g.forcedecimals),decimalseparator:A(a.decimalseparator,b.decimalseparator,g.decimalseparator),thousandseparator:A(a.thousandseparator,b.thousandseparator,g.thousandseparator),thousandseparatorposition:A(w,b.thousandseparatorposition,g.thousandseparatorposition),indecimalseparator:u(a.indecimalseparator,
b.indecimalseparator,g.indecimalseparator),inthousandseparator:u(a.inthousandseparator,b.inthousandseparator,g.inthousandseparator),scalerecursively:v,maxscalerecursion:f,scaleseparator:G};H(w.inthousandseparator)&&(this.baseConf._REGinthousandseparator=new RegExp(M(w.inthousandseparator),"g"));H(w.indecimalseparator)&&(this.baseConf._REGindecimalseparator=new RegExp(M(w.indecimalseparator)));this.Y=[];k={cacheStore:[],formatnumber:w.formatnumber,formatnumberscale:w.formatnumberscale,forcenumberscale:w.forcenumberscale,
defaultnumberscale:w.defaultnumberscale,numberscaleunit:w.numberscaleunit.concat(),numberscalevalue:w.numberscalevalue.concat(),numberprefix:w.numberprefix,numbersuffix:w.numbersuffix,decimalprecision:w.decimalprecision,forcedecimals:w.forcedecimals,decimalseparator:w.decimalseparator,thousandseparator:w.thousandseparator,thousandseparatorposition:w.thousandseparatorposition,indecimalseparator:w.indecimalseparator,inthousandseparator:w.inthousandseparator,scalerecursively:v,maxscalerecursion:f,scaleseparator:G};
b.useScaleRecursively&&(k.numberscalevalue&&k.numberscalevalue.length)==(k.numberscaleunit&&k.numberscaleunit.length)||(k.scalerecursively=v=0);P={cacheStore:[],formatnumber:k.formatnumber,formatnumberscale:k.formatnumberscale,forcenumberscale:k.forcenumberscale,defaultnumberscale:k.defaultnumberscale,numberscaleunit:k.numberscaleunit.concat(),numberscalevalue:k.numberscalevalue.concat(),numberprefix:k.numberprefix,numbersuffix:k.numbersuffix,decimalprecision:parseInt(A(a.yaxisvaluedecimals,k.decimalprecision,
2),10),forcedecimals:A(a.forceyaxisvaluedecimals,k.forcedecimals),decimalseparator:k.decimalseparator,thousandseparator:k.thousandseparator,thousandseparatorposition:k.thousandseparatorposition.concat(),indecimalseparator:k.indecimalseparator,inthousandseparator:k.inthousandseparator,scalerecursively:v,maxscalerecursion:f,scaleseparator:G};F={cacheStore:[],formatnumber:A(a.sformatnumber,b.sformatnumber,n.sformatnumber),formatnumberscale:A(a.sformatnumberscale,b.sformatnumberscale,n.sformatnumberscale),
forcenumberscale:A(a.sforcenumberscale,b.sforcenumberscale,n.sforcenumberscale),defaultnumberscale:u(a.sdefaultnumberscale,b.sdefaultnumberscale,k.defaultnumberscale),numberscaleunit:A(m,b.snumberscaleunit,n.snumberscaleunit).concat(),numberscalevalue:A(F,b.snumberscalevalue,n.snumberscalevalue).concat(),numberprefix:u(a.snumberprefix,b.snumberprefix,n.snumberprefix),numbersuffix:u(a.snumbersuffix,b.snumbersuffix,n.snumbersuffix),decimalprecision:parseInt(A(a.syaxisvaluedecimals,a.sdecimals,a.decimals,
b.sdecimals,n.sdecimals),10),forcedecimals:A(a.forcesyaxisvaluedecimals,a.sforcedecimals,a.forcedecimals,b.sforcedecimals,n.sforcedecimals),decimalseparator:A(a.decimalseparator,b.decimalseparator,n.decimalseparator),thousandseparator:A(a.thousandseparator,b.thousandseparator,n.thousandseparator),thousandseparatorposition:k.thousandseparatorposition.concat(),indecimalseparator:A(a.indecimalseparator,b.indecimalseparator,n.indecimalseparator),inthousandseparator:A(a.inthousandseparator,b.inthousandseparator,
n.inthousandseparator),scalerecursively:h,maxscalerecursion:c,scaleseparator:aa};m=C({},F);m.decimalprecision=parseInt(A(a.sdecimals,a.decimals,a.syaxisvaluedecimals,b.sdecimals,n.sdecimals),10);m.forcedecimals=A(a.sforcedecimals,a.forcedecimals,a.forcesyaxisvaluedecimals,b.sforcedecimals,n.sforcedecimals);m.cacheStore=[];b.useScaleRecursively&&(F.numberscalevalue&&F.numberscalevalue.length)==(F.numberscaleunit&&F.numberscaleunit.length)||(F.scalerecursively=h=0);/^(bubble|scatter|selectscatter|zoomscatter)$/.test(e)&&
(P.formatnumber=A(a.yformatnumber,P.formatnumber),P.formatnumberscale=A(a.yformatnumberscale,P.formatnumberscale),P.forcenumberscale=A(a.yforcenumberscale,P.forcenumberscale),P.defaultnumberscale=u(a.ydefaultnumberscale,P.defaultnumberscale),P.numberscaleunit=A(q,P.numberscaleunit),P.numberscalevalue=A(R,P.numberscalevalue),P.numberprefix=A(a.ynumberprefix,P.numberprefix),P.numbersuffix=A(a.ynumbersuffix,P.numbersuffix),k.formatnumber=A(a.yformatnumber,k.formatnumber),k.formatnumberscale=A(a.yformatnumberscale,
k.formatnumberscale),k.forcenumberscale=A(a.yforcenumberscale,k.forcenumberscale),k.defaultnumberscale=u(a.ydefaultnumberscale,k.defaultnumberscale),k.numberscaleunit=A(a.ynumberscaleunit,k.numberscaleunit.concat()),k.numberscalevalue=A(a.ynumberscalevalue,k.numberscalevalue.concat()),k.numberprefix=A(a.ynumberprefix,k.numberprefix),k.numbersuffix=A(a.ynumbersuffix,k.numbersuffix));/^(pie2d|pie3d|doughnut2d|doughnut3d|marimekko|pareto2d|pareto3d)$/.test(e)&&(k.decimalprecision=A(a.decimals,"2"));
v&&(k.numberscalevalue.push(1),k.numberscaleunit.unshift(k.defaultnumberscale),P.numberscalevalue.push(1),P.numberscaleunit.unshift(P.defaultnumberscale));h&&(F.numberscalevalue.push(1),F.numberscaleunit.unshift(F.defaultnumberscale),m.numberscalevalue.push(1),m.numberscaleunit.unshift(m.defaultnumberscale));this.Y[0]={yAxisLabelConf:P,dataLabelConf:k};this.Y[1]={yAxisLabelConf:F,dataLabelConf:m};this.paramLabels=k;this.param1=P;this.param2=F;this.paramLabels2=m;this.paramX={cacheStore:[],formatnumber:A(a.xformatnumber,
w.formatnumber),formatnumberscale:A(a.xformatnumberscale,w.formatnumberscale),forcenumberscale:A(a.xforcenumberscale,w.forcenumberscale),defaultnumberscale:u(a.xdefaultnumberscale,w.defaultnumberscale),numberscaleunit:A(r,w.numberscaleunit.concat()),numberscalevalue:A(L,w.numberscalevalue.concat()),numberprefix:A(a.xnumberprefix,w.numberprefix),numbersuffix:A(a.xnumbersuffix,w.numbersuffix),decimalprecision:parseInt(A(a.xaxisvaluedecimals,a.xaxisvaluesdecimals,w.decimalprecision,2),10),forcedecimals:A(a.forcexaxisvaluedecimals,
0),decimalseparator:w.decimalseparator,thousandseparator:w.thousandseparator,thousandseparatorposition:w.thousandseparatorposition.concat(),indecimalseparator:w.indecimalseparator,inthousandseparator:w.inthousandseparator,scalerecursively:d,maxscalerecursion:D,scaleseparator:E};this.paramLegend=C(C({},w),{cacheStore:[],decimalprecision:parseInt(J(a.legendvaluedecimals,w.decimalprecision,2),10),forcedecimals:J(a.legendvalueforcedecimals,w.forcedecimals,0),formatnumberscale:A(a.legendvalueformatnumberscale,
w.formatnumberscale),forcenumberscale:A(a.legendvalueforcenumberscale,w.forcenumberscale),formatnumber:A(a.legendvalueformatnumber,w.formatnumber)});v&&(this.paramLegend.numberscalevalue.push(1),this.paramLegend.numberscaleunit.unshift(this.paramLegend.defaultnumberscale));b.useScaleRecursively&&(this.paramX.numberscalevalue&&this.paramX.numberscalevalue.length)==(this.paramX.numberscaleunit&&this.paramX.numberscaleunit.length)||(this.paramX.scalerecursively=d=0);d&&(this.paramX.numberscalevalue.push(1),
this.paramX.numberscaleunit.unshift(this.paramX.defaultnumberscale));this.paramScale={cacheStore:[],formatnumber:A(a.tickformatnumber,w.formatnumber),formatnumberscale:A(a.tickformatnumberscale,w.formatnumberscale),forcenumberscale:A(a.tickforcenumberscale,w.forcenumberscale),defaultnumberscale:u(a.tickdefaultnumberscale,w.defaultnumberscale),numberscaleunit:A(t,w.numberscaleunit.concat()),numberscalevalue:A(z,w.numberscalevalue.concat()),numberprefix:A(a.ticknumberprefix,w.numberprefix),numbersuffix:A(a.ticknumbersuffix,
w.numbersuffix),decimalprecision:parseInt(A(a.tickvaluedecimals,w.decimalprecision,"2"),10),forcedecimals:A(a.forcetickvaluedecimals,w.forcedecimals,0),decimalseparator:w.decimalseparator,thousandseparator:w.thousandseparator,thousandseparatorposition:w.thousandseparatorposition.concat(),indecimalseparator:w.indecimalseparator,inthousandseparator:w.inthousandseparator,scalerecursively:v,maxscalerecursion:f,scaleseparator:G};v&&(this.paramScale.numberscalevalue.push(1),this.paramScale.numberscaleunit.unshift(this.paramScale.defaultnumberscale));
this.timeConf={inputDateFormat:A(a.inputdateformat,a.dateformat,"mm/dd/yyyy"),outputDateFormat:A(a.outputdateformat,a.inputdateformat,a.dateformat,"mm/dd/yyyy"),days:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),months:"January February March April May June July August September October November December".split(" "),daySuffix:" st nd rd th th th th th th th th th th th th th th th th th st nd rd th th th th th th th st".split(" ")};this.cleaneValueCacheStore={};this.percentStrCacheStore=
{}},cleaneValueCacheStore:{},percentStrCacheStore:{},dispose:function(){this.Y&&delete this.Y;this.cleaneValueCacheStore&&delete this.cleaneValueCacheStore;this.percentStrCacheStore&&delete this.percentStrCacheStore;this.paramLabels&&delete this.paramLabels;this.param1&&delete this.param1;this.param2&&delete this.param2;this.paramLabels2&&delete this.paramLabels2;this.csConf&&delete this.csConf;this.iapi&&delete this.iapi;this.baseConf&&delete this.baseConf;this.timeConf&&delete this.timeConf;this.paramX&&
delete this.paramX;this.paramScale&&delete this.paramScale},parseMLAxisConf:function(b,g){var e=this.baseConf,k=this.csConf,p=J(b.scalerecursively,e.scalerecursively),m=J(b.maxscalerecursion,e.maxscalerecursion),r=H(b.scaleseparator,e.scaleseparator),t,q,P,L,z,R;g=J(g,this.Y.length);H(b.numberscaleunit)&&(t=b.numberscaleunit.split(","));H(b.numberscalevalue)&&(q=b.numberscalevalue.split(","));m||(m=-1);if(H(b.thousandseparatorposition))for(P=b.thousandseparatorposition.split(","),L=P.length,R=n.thousandseparatorposition[0];L--;)(z=
J(a(P[L])))?R=z:z=R,P[L]=z;e={cacheStore:[],formatnumber:A(b.formatnumber,e.formatnumber),formatnumberscale:A(b.formatnumberscale,e.formatnumberscale),forcenumberscale:A(b.forcenumberscale,e.forcenumberscale),defaultnumberscale:u(b.defaultnumberscale,e.defaultnumberscale),numberscaleunit:A(t,e.numberscaleunit).concat(),numberscalevalue:A(q,e.numberscalevalue).concat(),numberprefix:u(b.numberprefix,e.numberprefix),numbersuffix:u(b.numbersuffix,e.numbersuffix),forcedecimals:A(b.forcedecimals,e.forcedecimals),
decimalprecision:parseInt("auto"===b.decimals?k.decimalprecision:A(b.decimals,e.decimalprecision),10),decimalseparator:A(b.decimalseparator,e.decimalseparator),thousandseparator:A(b.thousandseparator,e.thousandseparator),thousandseparatorposition:A(P,e.thousandseparatorposition),indecimalseparator:u(b.indecimalseparator,e.indecimalseparator),inthousandseparator:u(b.inthousandseparator,e.inthousandseparator),scalerecursively:p,maxscalerecursion:m,scaleseparator:r};this.useScaleRecursively&&(e.numberscalevalue&&
e.numberscalevalue.length)==(e.numberscaleunit&&e.numberscaleunit.length)||(e.scalerecursively=p=0);m={cacheStore:[],formatnumber:e.formatnumber,formatnumberscale:e.formatnumberscale,forcenumberscale:e.forcenumberscale,defaultnumberscale:e.defaultnumberscale,numberscaleunit:e.numberscaleunit.concat(),numberscalevalue:e.numberscalevalue.concat(),numberprefix:e.numberprefix,numbersuffix:e.numbersuffix,decimalprecision:parseInt(A(b.yaxisvaluedecimals,e.decimalprecision,2),10),forcedecimals:A(b.forceyaxisvaluedecimals,
e.forcedecimals),decimalseparator:e.decimalseparator,thousandseparator:e.thousandseparator,thousandseparatorposition:e.thousandseparatorposition.concat(),indecimalseparator:e.indecimalseparator,inthousandseparator:e.inthousandseparator,scalerecursively:p,maxscalerecursion:m,scaleseparator:r};p&&(e.numberscalevalue.push(1),e.numberscaleunit.unshift(e.defaultnumberscale),m.numberscalevalue.push(1),m.numberscaleunit.unshift(m.defaultnumberscale));this.Y[g]={dataLabelConf:e,yAxisLabelConf:m}},percentValue:function(a){var g=
this.percentStrCacheStore[a];void 0===g&&(g=isNaN(this.paramLabels.decimalprecision)?"2":this.paramLabels.decimalprecision,g=this.percentStrCacheStore[a]=k(b(a,g,this.paramLabels.forcedecimals),this.paramLabels.decimalseparator,this.paramLabels.thousandseparator,this.paramLabels.thousandseparatorposition)+"%");return g},getCleanValue:function(b,g){var e=this.cleaneValueCacheStore[b];if(void 0===e||g){var k=this.baseConf,e=b+"";k._REGinthousandseparator&&(e=e.replace(k._REGinthousandseparator,""));
k._REGindecimalseparator&&(e=e.replace(k._REGindecimalseparator,"."));e=parseFloat(e);e=isFinite(e)?e:NaN;this.cleaneValueCacheStore[b]=e=isNaN(e)?null:g?a(e):e}return e},dataLabels:function(a,b){var e=this.Y[b]||(b?this.Y[1]:this.Y[0]),g,e=e&&e.dataLabelConf||this.baseConf;g=e.cacheStore[a];void 0===g&&(g=e.cacheStore[a]=m(a,e));return g},yAxis:function(a,b){var e=this.Y[b]||(b?this.Y[1]:this.Y[0]),g,e=e&&e.yAxisLabelConf||this.baseConf;g=e.cacheStore[a];void 0===g&&(g=e.cacheStore[a]=m(a,e,!0));
return g},xAxis:function(a){var b=this.paramX.cacheStore[a];void 0===b&&(b=this.paramX.cacheStore[a]=m(a,this.paramX,!0));return b},sYAxis:function(a){var b=this.Y[1],e,b=b&&b.yAxisLabelConf||this.baseConf;e=b.cacheStore[a];void 0===e&&(e=b.cacheStore[a]=m(a,b));return e},scale:function(a){var b=this.paramScale.cacheStore[a];void 0===b&&(b=this.paramScale.cacheStore[a]=m(a,this.paramScale));return b},getCleanTime:function(a){var b;this.timeConf.inputDateFormat&&Date.parseExact&&(b=Date.parseExact(a,
this.timeConf.inputDateFormat));return b&&b.getTime()},legendValue:function(a){var b=this.paramLegend.cacheStore[a];void 0===b&&(b=this.paramLegend.cacheStore[a]=m(a,this.paramLegend));return b},legendPercentValue:function(a){var g=this.percentStrCacheStore[a],e=this.paramLegend;void 0===g&&(g=isNaN(e.decimalprecision)?"2":e.decimalprecision,g=this.percentStrCacheStore[a]=k(b(a,g,e.forcedecimals),e.decimalseparator,e.thousandseparator,e.thousandseparatorposition)+"%");return g},getDateValue:function(a){var b,
e,g;a&&!/\//.test(this.timeConf.inputDateFormat)&&(a=a.replace(new RegExp(this.timeConf.inputDateFormat.replace(/[a-z]/ig,"").slice(0,1),"g"),"/"));a=/^dd/.test(this.timeConf.inputDateFormat)&&a&&a.replace(/(\d{1,2})\/(\d{1,2})\/(\d{2,4})/,"$2/$1/$3")||a;b=new Date(a);e=b.getTime();!e&&a&&/\:/.test(a)&&(a=a.split(":"),e=J(a[0],0),g=J(a[1],0),a=J(a[2],0),e=23<e?24===e&&0===g&&0===a?e:23:e,g=59<g?59:g,a=59<a?59:a,b=new Date,b.setHours(e),b.setMinutes(g),b.setSeconds(a),e=b.getTime());return{ms:e,date:b}},
getFormattedDate:function(a,b){var e="object"===typeof a&&a||new Date(a),g=this.timeConf,k=A(b,g.outputDateFormat),m=e.getFullYear(),n=e.getMonth(),t=e.getDate(),r=e.getDay(),P=e.getMinutes(),q=e.getSeconds(),e=e.getHours(),P=9<P?""+P:"0"+P,q=9<q?""+q:"0"+q,e=9<e?""+e:"0"+e;k.match(/dnl/)&&(k=k.replace(/dnl/ig,g.days[r]));k.match(/dns/)&&(k=k.replace(/dns/ig,g.days[r]&&g.days[r].substr(0,3)));k.match(/dd/)&&(k=k.replace(/dd/ig,t));k.match(/mnl/)&&(k=k.replace(/mnl/ig,g.months[n]));k.match(/mns/)&&
(k=k.replace(/mns/ig,g.months[n]&&g.months[n].substr(0,3)));k.match(/mm/)&&(k=k.replace(/mm/ig,n+1));k.match(/yyyy/)&&(k=k.replace(/yyyy/ig,m));k.match(/yy/)&&(k=k.replace(/yy/ig,(m%1E3%100+"").replace(/^(\d)$/,"0$1")));k.match(/hh12/)&&(k=k.replace(/hh12/ig,e%12||12));k.match(/hh/)&&(k=k.replace(/hh/ig,e));k.match(/mn/)&&(k=k.replace(/mn/ig,P));k.match(/ss/)&&(k=k.replace(/ss/ig,q));k.match(/ampm/)&&(k=k.replace(/ampm/ig,12>e?"AM":"PM"));k.match(/ds/)&&(k=k.replace(/ds/ig,g.daySuffix[t]));return k}};
g.prototype.constructor=g;m=function(a,g,e){if(null!==a){a=Number(a);var m=a+"",p,n,K,t,q;p=1==g.formatnumberscale?g.defaultnumberscale:"";q=(q=m.split(".")[1])?q.length:g.forcedecimals?"2":"";if(1==g.formatnumberscale){m=a;n=g.defaultnumberscale;a=g.numberscalevalue;p=g.numberscaleunit;var P=g.scalerecursively;K=g.forcenumberscale;t={};var u=n,z=0,R=[],w=[],F;K=J(K)||0;if(P){u=J(a[0])||1E3;for(z=0;z<a.length;z++)if(P=J(a[z])||1E3,Math.abs(Number(m))>=P&&z<a.length-1)F=m%P,m=(m-F)/P,0===z&&0!==F&&
""===p[z]&&K?(R.push(F/u),w.push(p[1]||"")):0!==F&&(1===z&&""===n&&K?(P=F+(R.length?R.pop():0),w.pop(),R.push(P)):R.push(F),w.push(p[z]));else{0===z&&""===n&&K?(m=Number(m)/u,R.push(m),w.push(p[1]||"")):(1===z&&""===n&&K?(P=m+(R.length?R.pop():0),w.pop(),R.push(P)):R.push(m),w.push(p[z]));break}R.reverse();w.reverse();t.value=R;t.scale=w}else{if(a.length===p.length)for(z=0;z<a.length;z++)if(P=J(a[z])||1E3,Math.abs(Number(m))>=P)u=p[z]||"",m=Number(m)/P;else{0===z&&""===n&&K&&(u=p[0]||"",m=Number(m)/
P);break}t.value=m;t.scale=u}n=t;a=m=n.value;p=n.scale}if(g.scalerecursively&&0!==g.formatnumberscale&&"0"!==g.formatnumberscale){e=n.value;n=n.scale;a=-1==g.maxscalerecursion?e.length:Math.min(e.length,g.maxscalerecursion);if(1==g.formatnumber)for(m="",t=0;t<a;t++)p=0===t?e[t]:Math.abs(e[t]),K=p+"",t==a-1&&(K=b(p,A(g.decimalprecision,q),g.forcedecimals)),m=m+k(K,g.decimalseparator,g.thousandseparator,g.thousandseparatorposition)+n[t]+(t<a-1?g.scaleseparator:"");else for(m="",t=0;t<a;t++)m=m+(0===
t?e[t]:Math.abs(e[t])+"")+n[t]+(t<a-1?g.scaleseparator:"");m=(g.numberprefix||"")+m+(g.numbersuffix||"")}else 1==g.formatnumber&&(m=b(a,A(g.decimalprecision,q),g.forcedecimals),m=k(m,g.decimalseparator,g.thousandseparator,g.thousandseparatorposition,e)),m=(g.numberprefix||"")+m+p+(g.numbersuffix||"");return m}};return g}();b.extend(b.core,{formatNumber:function(a,b,m){b=b&&E(b)||{};var n=N(b),q;U[n]?q=U[n]:U[n]=q=new v.NumberFormatter(b,{useScaleRecursively:!0});return q.dataLabels(a,m)}},!1);b.extend(b.core,
{formatNumber:function(a,k,m,n){m=m&&E(m)||{};var q=this.jsVars.instanceAPI||{},g=q.numberFormatter,l;""===N(m)?g?l=g:(g=this.getChartData(b.dataFormats.JSON,!0),g=g.data||{},g=g.chart||{},m=N(g),U[m]?l=U[m]:U[m]=l=new v.NumberFormatter(g,q)):(g=this.getChartData(b.dataFormats.JSON,!0),g=g.data||{},g=g.chart||{},g=C(C({},g),m),m=N(g),U[m]?l=U[m]:U[m]=l=new v.NumberFormatter(g,q));switch((k&&k.toLowerCase?k:"").toLowerCase()){case "yaxisvalues":a=l.yAxis(a,n);break;case "xaxisvalues":a=l.xAxis(a);
break;case "scale":a=l.scale(a);break;default:a=l.dataLabels(a,n)}return a}},!0)}]);Q.register("module",["private","modules.renderer.js-colormanager",function(){var b=this.hcLib,v=b.pluckNumber,J=b.graphics.getDarkColor,C=b.graphics.getLightColor,H="AFD8F8 F6BD0F 8BBA00 FF8E46 008E8E D64646 8E468E 588526 B3AA00 008ED6 9D080D A186BE CC6600 FDC689 ABA000 F26D7D FFF200 0054A6 F7941C CC3300 006600 663300 6DCFF6".split(" "),A="8BBA00 F6BD0F FF654F AFD8F8 FDB398 CDC309 B1D0D2 FAD1B9 B8A79E D7CEA5 C4B3CE E9D3BE EFE9AD CEA7A2 B2D9BA".split(" "),
u=b.defaultPaletteOptions={paletteColors:[H,H,H,H,H],bgColor:["CBCBCB,E9E9E9","CFD4BE,F3F5DD","C5DADD,EDFBFE","A86402,FDC16D","FF7CA0,FFD1DD"],bgAngle:[270,270,270,270,270],bgRatio:["0,100","0,100","0,100","0,100","0,100"],bgAlpha:["50,50","60,50","40,20","20,10","30,30"],canvasBgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],canvasBgAngle:[0,0,0,0,0],canvasBgAlpha:["100","100","100","100","100"],canvasBgRatio:["","","","",""],canvasBorderColor:["545454","545454","415D6F","845001","68001B"],
canvasBorderAlpha:[100,100,100,90,100],showShadow:[0,1,1,1,1],divLineColor:["717170","7B7D6D","92CDD6","965B01","68001B"],divLineAlpha:[40,45,65,40,30],altHGridColor:["EEEEEE","D8DCC5","99C4CD","DEC49C","FEC1D0"],altHGridAlpha:[50,35,10,20,15],altVGridColor:["767575","D8DCC5","99C4CD","DEC49C","FEC1D0"],altVGridAlpha:[10,20,10,15,10],anchorBgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],toolTipBgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],toolTipBorderColor:["545454","545454","415D6F",
"845001","68001B"],baseFontColor:["555555","60634E","025B6A","A15E01","68001B"],borderColor:["767575","545454","415D6F","845001","68001B"],borderAlpha:[50,50,50,50,50],legendBgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],legendBorderColor:["545454","545454","415D6F","845001","D55979"],plotGradientColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],plotBorderColor:["333333","8A8A8A","FFFFFF","FFFFFF","FFFFFF"],plotFillColor:["767575","D8DCC5","99C4CD","DEC49C","FEC1D0"],bgColor3D:["FFFFFF",
"FFFFFF","FFFFFF","FFFFFF","FFFFFF"],bgAlpha3D:["100","100","100","100","100"],bgAngle3D:[90,90,90,90,90],bgRatio3D:["","","","",""],canvasBgColor3D:["DDE3D5","D8D8D7","EEDFCA","CFD2D8","FEE8E0"],canvasBaseColor3D:["ACBB99","BCBCBD","C8A06C","96A4AF","FAC7BC"],divLineColor3D:["ACBB99","A4A4A4","BE9B6B","7C8995","D49B8B"],divLineAlpha3D:[100,100,100,100,100],legendBgColor3D:["F0F3ED","F3F3F3","F7F0E8","EEF0F2","FEF8F5"],legendBorderColor3D:["C6CFB8","C8C8C8","DFC29C","CFD5DA","FAD1C7"],toolTipbgColor3D:["FFFFFF",
"FFFFFF","FFFFFF","FFFFFF","FFFFFF"],toolTipBorderColor3D:["49563A","666666","49351D","576373","681C09"],baseFontColor3D:["49563A","4A4A4A","49351D","48505A","681C09"],anchorBgColor3D:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"]},H=b.colorManager=function(a){this.linkedItems={iapi:a};this.configure()};H.prototype={configure:function(){var a=this.linkedItems.iapi,A=a.jsonData.chart||{},q=b.extend2({},u),H=a.defaultPaletteOptions||{},U;q||(q={});for(U in H)q[U]=H[U];q=this.paletteOptions=q;H=this.themeEnabled=
A.palettethemecolor;this.paletteIndex=(0<A.palette&&6>A.palette?A.palette:v(a.paletteIndex,1))-1;this.iterator=0;this.paletteColors=q.paletteColors[this.themeEnabled?0:this.paletteIndex];U=A.palettecolors;void 0!==U&&null!==U&&""!==A.palettecolors&&(this.paletteColors=A.palettecolors.split(/\s*\,\s*/));this.paletteLen=this.paletteColors.length;this.useFlatColors=v(A.useflatdataplotcolor,a.useFlatColor,0);H&&(this.paletteIndex=5,q.bgColor[5]=C(H,35)+","+C(H,10),q.bgAngle[5]=270,q.bgRatio[5]="0,100",
q.bgAlpha[5]="50,50",q.canvasBgColor[5]="FFFFFF",q.canvasBgAngle[5]=0,q.canvasBgAlpha[5]="100",q.canvasBgRatio[5]="",q.canvasBorderColor[5]=J(H,80),q.canvasBorderAlpha[5]=100,q.showShadow[5]=1,q.divLineColor[5]=J(H,20),q.divLineAlpha[5]=40,q.altHGridColor[5]=C(H,20),q.altHGridAlpha[5]=15,q.altVGridColor[5]=C(H,80),q.altVGridAlpha[5]=10,q.anchorBgColor[5]="FFFFFF",q.toolTipBgColor[5]="FFFFFF",q.toolTipBorderColor[5]=J(H,80),q.baseFontColor[5]=H.split&&H.split(",")[0],q.borderColor[5]=J(H,60),q.borderAlpha[5]=
50,q.legendBgColor[5]="FFFFFF",q.legendBorderColor[5]=J(H,80),q.plotGradientColor[5]="FFFFFF",q.plotBorderColor[5]=J(H,85),q.plotFillColor[5]=J(H,85),q.bgColor3D[5]="FFFFFF",q.bgAlpha3D[5]="100",q.bgAngle3D[5]=90,q.bgRatio3D[5]="",q.canvasBgColor3D[5]=C(H,20),q.canvasBaseColor3D[5]=C(H,40),q.divLineColor3D[5]=J(H,20),q.divLineAlpha3D[5]=40,q.legendBgColor3D[5]="FFFFFF",q.legendBorderColor3D[5]=J(H,80),q.toolTipbgColor3D[5]="FFFFFF",q.toolTipBorderColor3D[5]=J(H,80),q.baseFontColor3D[5]=H.split&&H.split(",")[0],
q.anchorBgColor3D[5]="FFFFFF",q.tickColor&&(q.tickColor[5]=J(H,90)),q.trendDarkColor&&(q.trendDarkColor[5]=J(H,90)),q.trendLightColor&&(q.trendLightColor[5]=C(H,q.TrendLightShadeOffset)),q.msgLogColor&&(q.msgLogColor[5]=C(H,80)),q.dialColor&&(q.dialColor[5]=J(H,95)+",FFFFFF,"+J(H,95)),q.dialBorderColor&&(q.dialBorderColor[5]=J(H,95)+",FFFFFF,"+J(H,95)),q.pivotColor&&(q.pivotColor[5]=C(H,95)+",FFFFFF,"+C(H,95)),q.pivotBorderColor&&(q.pivotBorderColor[5]=J(H,95)+",FFFFFF,"+J(H,95)),q.pointerBorderColor&&
(q.pointerBorderColor[5]=J(H,75)),q.pointerBgColor&&(q.pointerBgColor[5]=J(H,75)),q.thmBorderColor&&(q.thmBorderColor[5]=J(H,90)),q.thmFillColor&&(q.thmFillColor[5]=C(H,55)),q.gaugeBorderColor&&(q.gaugeBorderColor[5]=J(H,90)),q.gaugeFillColor&&(q.gaugeFillColor[5]=C(H,55)),q.cylFillColor&&(q.cylFillColor[5]=C(H,55)),q.periodColor&&(q.periodColor[5]=C(H,10)),q.winColor&&(q.winColor[5]="666666"),q.lossColor&&(q.lossColor[5]="CC0000"),q.drawColor&&(q.drawColor[5]="666666"),q.scorelessColor&&(q.scorelessColor[5]=
"FF0000"),q.gridColor&&(q.gridColor[5]=C(H,30)),q.categoryBgColor&&(q.categoryBgColor[5]=C(H,10)),q.dataTableBgColor&&(q.dataTableBgColor[5]=C(H,10)),q.gridResizeBarColor&&(q.gridResizeBarColor[5]=J(H,90)),q.scrollBarColor&&(q.scrollBarColor[5]=C(H,50)))},getColor:function(a){return this.paletteOptions[a][this.paletteIndex]},getPlotColor:function(a){var b=this.paletteColors;a=this.useFlatColors?this.getColor("plotFillColor"):b[a%this.paletteLen];a||(this.iterator===this.paletteLen&&(this.iterator=
0),a=b[this.iterator],this.iterator+=1);return a},parseColorMix:function(a,b){var q=[],u,v,A,E,r,k,m,n,L,g;b=b.replace(/\s/g,"");b=b.toLowerCase();if(""===b||null===b||void 0===b)q=[a];else for(v=b.split(","),A=a.split(","),E=Math.max(v.length,A.length,1),r=v[0],k=A[0],L=/[\{\}]/ig,g=0;g<E;g++)m=(v[g]||r).replace(L,""),n=A[g]||k,"color"==m?q.push(n):"light"==m.substr(0,5)?(u=m.indexOf("-"),u=-1==u?1:m.substr(u+1,m.length-u),u=100-u,q.push(C(n,u))):"dark"==m.substr(0,4)?(u=m.indexOf("-"),u=-1==u?1:
m.substr(u+1,m.length-u),u=100-u,q.push(J(n,u))):q.push(m);return q},parseAlphaList:function(a,b){var q=a.split(","),u=[],A,C=100,E;for(E=0;E<b;E++)A=v(q[E]),void 0!==A&&null!==A&&(C=A),u[E]=C;return u.join()},parseRatioList:function(a,b){var q=a.split(","),u=[],v=0,A,E;for(E=0;E<b;E++)A=q[E],A=isNaN(A)||void 0===A?0:Math.abs(Number(A)),A=100<A?100:A,u[E]=A,v+=A;v=100<v?100:v;if(q.length<b)for(E=q.length;E<b;E++)u[E]=(100-v)/(b-q.length);u[-1]=0;return u.join()}};H.prototype.constructor=H;b.defaultGaugePaletteOptions=
{paletteColors:[A,A,A,A,A],bgColor:["CBCBCB,E9E9E9","CFD4BE,F3F5DD","C5DADD,EDFBFE","A86402,FDC16D","FF7CA0,FFD1DD"],bgAngle:[270,270,270,270,270],bgRatio:["0,100","0,100","0,100","0,100","0,100"],bgAlpha:["50,50","60,50","40,20","20,10","30,30"],toolTipBgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],toolTipBorderColor:["545454","545454","415D6F","845001","68001B"],baseFontColor:["555555","60634E","025B6A","A15E01","68001B"],tickColor:["333333","60634E","025B6A","A15E01","68001B"],trendDarkColor:["333333",
"60634E","025B6A","A15E01","68001B"],trendLightColor:["f1f1f1","F3F5DD","EDFBFE","FFF5E8","FFD1DD"],pointerBorderColor:["545454","60634E","415D6F","845001","68001B"],pointerBgColor:["545454","60634E","415D6F","845001","68001B"],canvasBgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],canvasBgAngle:[0,0,0,0,0],canvasBgAlpha:["100","100","100","100","100"],canvasBgRatio:["","","","",""],canvasBorderColor:["545454","545454","415D6F","845001","68001B"],canvasBorderAlpha:[100,100,100,90,100],altHGridColor:["EEEEEE",
"D8DCC5","99C4CD","DEC49C","FEC1D0"],altHGridAlpha:[50,35,10,20,15],altVGridColor:["767575","D8DCC5","99C4CD","DEC49C","FEC1D0"],altVGridAlpha:[10,20,10,15,10],borderColor:["767575","545454","415D6F","845001","68001B"],borderAlpha:[50,50,50,50,50],legendBgColor:["ffffff","ffffff","ffffff","ffffff","ffffff"],legendBorderColor:["545454","545454","415D6F","845001","D55979"],plotFillColor:["767575","D8DCC5","99C4CD","DEC49C","FEC1D0"],plotBorderColor:["999999","8A8A8A","6BA9B6","C1934D","FC819F"],msgLogColor:["717170",
"7B7D6D","92CDD6","965B01","68001B"],TrendLightShadeOffset:30}}]);Q.register("module",["private","modules.renderer.js-annotations",function(){var b=this,v=b.core,J=b.hcLib,C=b.window,H=/msie/i.test(C.navigator.userAgent)&&!C.opera,A=J.addEvent,u=J.removeEvent,a=J.hasTouch,O=C.Number,q=a?6:5,M="rgba(192,192,192,"+(H?.002:1E-6)+")",H=Math,U=H.min,N=H.max,E=H.sin,r=H.cos,k=H.PI,m=k/180,n=H.abs,L=b.extend,g=J.pluck,l=J.pluckNumber,B=J.graphics.convertColor,e=J.getValidValue,V=J.parseUnsafeString,p=J.setImageDisplayMode,
T=J.graphics.parseColor,K=J.setLineHeight,t=J.getMouseCoordinate,Z={style:{}},P=J.toRaphaelColor,S=function(a,b){return{start:-a,end:-b,angle:a-b}},z=function(a,b){var c=0;switch(a){case "startx":c=b.x;break;case "starty":c=b.y;break;case "x":case "middlex":case "centerx":c=b.x+b.width/2;break;case "y":case "middley":case "centery":c=b.y+b.height/2;break;case "endx":c=b.x+b.width;break;case "endy":c=b.y+b.height;break;default:c=0}return c},R=function(a,b,c,h,e){var g,l,k=0,t=0;l=void 0===b||null===
b?1:b;var p;if(!a||!a.toString)return{value:c,hasDynamicMacros:!1};a=a.toString();a=a.toLowerCase().replace(/\s/g,"");if(c=a.match(/^[\+\-]?\d+(\.\d+)?|[\+\-]\d+(\.\d+)?/g)){for(b=0;b<c.length;b+=1)k+=Number(c[b])||0;k*=l}if(c=a.match(/^[\+\-]?(\$[a-z0-9\.]+)|[\+\-](\$[a-z0-9\.]+)/g))for(b=0;b<c.length;b+=1){g=c[b];var m=h,z=e,w=g.split("."),F=void 0,n=void 0,r=0;for(l=void 0;F=w.shift();)switch(typeof(n=m[F])){case "object":m=n[F];break;case "function":n=n(w,z),"-"===g.charAt()&&(n*=-1),l=!0;default:r+=
O(n)||0,w.length=0}g=r;l&&(p=!0);t+=g}if(c=a.match(/^[\+\-]?\$\d+(\.\d+)?|[\+\-]\$\d+(\.\d+)?/g))for(b=0;b<c.length;b+=1)t=t+Number(c[b].replace("$",""))||0;return{value:k+t,hasDynamicMacros:p}},w=function(a,h,c){if(!h.removed){h=h.data("annotation");var e=h.getRenderer(),g=t(e.linkedItems.container,c),l=g.annotationOptions=h.options,k=g.groupOptions=h.group.options;g._shape=h;"id"in l&&(g.annotationId=l.id);"id"in k&&(g.groupId=k.id);b.raiseEvent(a,g,e.chartInstance,c)}},F,X,h;X=function(a,b,c,e,
g,l){this.options=a;this.attrs={};this.css={};this.bounds={};this.shared=b;this.snaps=c||{};this.annotations=g;this.items=b=[];this._idstore=e;a.id&&(this._id=a.id,e[a.id]=this);if(a=a.items)for(e=0,c=a.length;e<c;e+=1)b.push(new h(a[e],this)),b[e].chart=l};L(X.prototype,{scaleImageX:1,scaleImageY:1,scaleText:1,scaleValue:1,scaleValueComplement:1,scaleX:1,scaleY:1});X.prototype.setup=function(){var a=this.options,b=this.shared,c=this.getRenderer();c&&(this.isBelow=0!==l(a.showbelow,a.showbelowchart,
b.showbelow),this.useTracker=!this.isBelow&&c.graphics.trackerGroup&&this.shared.useTracker,this.raiseOwnEvents=b.interactionevents)};X.prototype.scale=function(){var a=this.options,b=this.shared,c=this.bounds,h=this.snaps,e=this.getRenderer(),k=b.rootxscale,t=b.rootyscale,p=c.xs=l(a.xscale,b.xscale,100)/100,m=c.ys=l(a.yscale,b.yscale,100)/100,z,w,F;z=(z=this.annotations)&&z.resetScale;e&&(z&&(this.scaleText=1),this.scaleText*=m,this.scaleImageX*=p,this.scaleImageY*=m,0!==l(a.autoscale,b.autoscale)&&
(p=l(a.origw,b.origw),m=l(a.origh,b.origh),p=e.config.width/p,m=e.config.height/m,e=0!==l(a.constrainedscale,b.constrainedscale),z=p<m?p:m,w=e?z:p,F=e?z:m,this.scaleValue=X.prototype.scaleValue*z,this.scaleValueComplement=X.prototype.scaleValueComplement*(e?z:p<m?m:p),this.scaleX=X.prototype.scaleX*w,this.scaleY=X.prototype.scaleX*F,c.xs*=w,c.ys*=F,k*=w,t*=F,"1"==g(a.scaletext,b.scaletext)&&(this.scaleText=X.prototype.scaleText*F),"1"==g(a.scaleimages,b.scaleimages)&&(this.scaleImageX=X.prototype.scaleImageX*
w,this.scaleImageY=X.prototype.scaleImageY*F)),c.x=R(g(a.x,a.xpos),k,0,h,this.isBelow).value+l(a.grpxshift,b.grpxshift,0),c.y=R(g(a.y,a.ypos),t,0,h,this.isBelow).value+l(a.grpyshift,b.grpyshift,0),this.xshift=l(a.xshift,b.xshift,0),this.yshift=l(a.yshift,b.yshift,0))};X.prototype.draw=function(){var a=this.getRenderer(),b=this.options,c=this.bounds,h=this.items,e=a&&a.graphics,g,k=this.wrapper,t,p=[],m,z,w=this.chart,F=w&&w.config||{},w=F.annRenderDelay,F=F.resize,n=function(){m=0;for(z=p.length;m<
z;m++)t=p[m],t.draw()},r=(g=this.annotations)&&g.resetScale;if(a){a.annotationRelativeLayer&&"axis"===a.annotationRelativeLayer?(g=e.axisTopGroup||e.datasetGroup,e=e.axisBottomGroup||e.datasetGroup):g=e=e.datasetGroup;k||(this.wrapper=k=a.components.paper.group("annotations"),g&&e&&(this.isBelow?k.insertBefore(e):k.insertAfter(a.graphics.datalabelsGroup||g)));r&&this.wrapper.attr({transform:""});this.wrapper.attr({x:0,y:0,visibility:l(b.visible,1)?"":"hidden"}).translate(c.x,c.y);m=0;for(z=h.length;m<
z;m+=1)t=h[m],t.scale(!0),t.queueDraw?t.queue():(p.push(t),t.setup());w&&!F?setTimeout(function(){n()},w):n();return this}};X.prototype.destroy=function(){for(var a=this.wrapper,b=this.items,c;c=b.shift();)c.destroy();a&&(this.wrapper=a.remove());this._idstore[this._id]===this&&delete this._idstore[this._id]};X.prototype.addItem=function(a,b,c){var e=this.items,g=this._idstore;this.chart=c;e.push(a=new h(a,this,g));b&&null!==this.getRenderer()&&(a.scale(),a.setup(),a.draw());return a};X.prototype.removeItem=
function(a){for(var b=this.items,c=b.length;c--;)if(a===b[c]._id)return b.splice(c,1)};X.prototype.getRenderer=function(){return this.annotations&&this.annotations.getRenderer()||null};h=function(a,b){var c=!1,e;this.options=a;this.chart=(this.group=b)&&b.chart;this.args=[];this.attrs={};this.attrsTracker={};this.style={};this.bounds={};this._idstore=b._idstore;a.id&&(this._id=a.id,b._idstore[a.id]=this);this.type=a.type&&a.type.toLowerCase&&a.type.toLowerCase();for(e in h.eventNames)"function"===
typeof a[e]&&(this[e]=a[e],c=!0);this.hasEvents=c;"function"===typeof a.onload&&(this.onload=a.onload)};b.extend(h.prototype,{getAbsoluteBounds:function(){var a=this.bounds,b=a.x1,c=a.y1,h=a.x2,e=a.y2,g=U(b,h),l=U(c,e),b=N(b,h)-g,c=N(c,e)-l;return{x:g,width:b,y:l,height:c,r:a.r,unscaled:{width:b/a.xs,height:c/a.ys}}},queue:function(){this.group.annotations.shapesToDraw.push(this)},scale:function(a){var b=this,c=b.group,e=c.bounds,k=b.bounds,t=b.options,p=c.snaps,m=g(t.x,t.xpos),z=g(t.y,t.ypos),w=
g(t.tox,t.toxpos),F=g(t.toy,t.toypos),n=k.xs=e.xs,e=k.ys=e.ys,r=l(t.xshift,c.xshift,0),B=l(t.yshift,c.yshift,0),K;K=function(h,e,g,l){h=R(h,e,g,l,c.isBelow);h.hasDynamicMacros&&a&&(b.queueDraw=!0);return h.value};b.hasDimension=!0;b.hasDimensionX=!0;b.hasDimensionY=!0;k.x1=K(m,n,0,p)+r;void 0===w?(b.hasDimension=!1,b.hasDimensionX=!1,k.x2=k.x1):k.x2=K(w,n,0,p)+r;k.y1=K(z,e,0,p)+B;void 0===F?(b.hasDimension=!1,b.hasDimensionY=!1,k.y2=k.y1):k.y2=K(F,e,0,p)+B;h.angularShapeTypes[b.type]&&(k.angles=S(K(t.startangle,
1,0,p),K(t.endangle,1,360,p)));k.r=K(t.radius,c.scaleValue,0,p)},setup:function(){var a=this.options,b=this.group,c=b.options,k=this.attrs,t=this.style,p=b.scaleValue,m=l(c.fillalpha,c.alpha,100),z=this.fillAlpha=g(a.fillalpha,a.alpha,m),w=this.fillColor=g(a.fillcolor,a.color,c.color),F=this.fillPattern=g(a.fillpattern&&a.fillpattern.toLowerCase&&a.fillpattern.toLowerCase(),c.fillpattern&&c.fillpattern.toLowerCase&&c.fillpattern.toLowerCase()),n=this.bordered=l(a.showborder,h.borderedShapeTypes[this.type],
!!e(a.bordercolor)),r=this.borderColor=g(a.bordercolor,c.bordercolor,w),m=this.borderAlpha=l(a.borderalpha,a.alpha,c.borderalpha,m),K=this.dashed=!!l(a.dashed,0),q=l(a.borderthickness,a.thickness,2)*p;this.link=g(a.link,c.link);this.shadow="1"==g(a.showshadow,c.showshadow);void 0===w&&(w=h.borderedShapeTypes[this.type]&&"none"||"#ff0000",void 0===r&&(r="#ff0000"));n&&q?(k.stroke=B(r,m),k["stroke-linecap"]="round",k["stroke-width"]=q,K&&(k["stroke-dasharray"]=[l(a.dashlen,5)*p,l(a.dashgap,3)*p])):
k.stroke="none";this.fillOptions={gradientUnits:"objectBoundingBox",color:w,alpha:z,ratio:g(a.fillratio,c.fillratio),angle:360-l(a.fillangle,0),radialGradient:"radial"===F};this.link&&(t.cursor="pointer",t._cursor="hand");k.visibility=l(a.visible,1)?"":"hidden";this.useTracker=b.useTracker;this.toolText=V(g(a.tooltext,c.tooltext));if(this.useTracker||this.link||this.toolText)L(this.attrsTracker,{stroke:M,fill:M}),this.link&&(this.attrsTracker.ishot=+new Date);this.raiseOwnEvents=b.raiseOwnEvents},
draw:function(){var a=this.getRenderer(),b=this.type,c=this.attrs,e=this.style,g=a&&a.components.paper,l=h.types[b]&&h.types[b].call&&h.types[b].call(this,a),k=h.imageShapeTypes[l],t=h.textShapeTypes[l],p=k||t||h.trackerShapeTypes[l],m=this.link||this.toolText,z=this.wrapper,b=this.tracker,w=a&&a.graphics.trackerGroup||this.group.wrapper,F=!1,n=b||z,r=h.eventNames,K=h.ownEvents,B,q;if(a){if(l){if(z)if(z.elemType!==l){if(this.ownEventsAttached){for(q in K)n["un"+q].apply(z,K[q]);this.ownEventsAttached=
!1}z=z.remove()}else if(this.hasEvents)for(B in r)(q=this[B])&&q.eventAttached&&(u(n.node,r[B],q),q.eventAttached=!1);k||(c.fill=P(this.fillOptions));z?z.attr(c).css(e):(this.args.push(this.group.wrapper),z=this.wrapper="text"===l?g[l].call(g,c,e,this.group.wrapper):g[l].apply(g,this.args).attr(c).css(e),z.elemType=l,z.data("annotation",this),F=!0,this.args.pop());!this.shadow||this.shadowAdded||k||t?z.shadow(this.shadowAdded=!1):z.shadow(this.shadowAdded=!0,N(this.borderAlpha,this.fillOptions.alpha)/
100);m?this.useTracker&&(b||(this.args.push(w),b=this.tracker=p?g.rect(0,0,0,0,0,w):g[l].apply(g,this.args),this.args.pop()),b.attr(c).attr(this.attrsTracker)):b&&(b=b.remove());n=b||z;if(this.raiseOwnEvents&&!this.ownEventsAttached){for(q in K)n[q].apply(z,K[q]);this.ownEventsAttached=!0}this.link&&n.click(a.linkedItems.linkClickFN,this);this.toolText&&(n.tooltip(this.toolText||""),this.group.wrapper.trackTooltip(!0));if(this.hasEvents)for(B in r)(q=this[B])&&!q.eventAttached&&(A(n.node,r[B],q,this),
q.eventAttached=!0);k||(b&&p&&(a=z.getBBox(),b.attr({x:a.x,y:a.y,width:a.width,height:a.height})),F&&this.onload&&this.onload(c))}return this}},destroy:function(){var a=this.wrapper,b=this.tracker,c=b||a,e=h.eventNames,g=h.ownEvents,l,k;if(a){if(this.ownEventsAttached){for(k in g)c["un"+k].apply(a,g[k]);this.ownEventsAttached=!1}if(this.hasEvents)for(l in e)(k=this[l])&&k.eventAttached&&(u(c.node,e[l],k),k.eventAttached=!1);b&&(this.tracker=b.remove());this.wrapper=a.remove()}this._idstore[this._id]===
this&&delete this._idstore[this._id]},getRenderer:function(){return this.group&&this.group.getRenderer()||null}});b.extend(h,{imageShapeTypes:{image:!0},angularShapeTypes:{circle:!0,arc:!0},textShapeTypes:{text:!0},trackerShapeTypes:{image:!0,text:!0},borderedShapeTypes:{path:!0,line:!0},eventNames:{onmouseover:a?"touchstart":"mouseover",onmouseout:"mouseout",onmousemove:a?"touchmove":"mousemove",onclick:"click"},ownEvents:{click:[function(a){w("annotationClick",this,a)}],hover:[function(a){w("annotationRollOver",
this,a)},function(a){w("annotationRollOut",this,a)}]},textAlignOptions:{left:"start",right:"end",center:"middle"},textVerticalAlignOptions:{top:"bottom",middle:"middle",bottom:"top"},textRotationOptions:{0:"0",1:"270",right:"90",cw:"90",left:"270",ccw:"270"},types:{rectangle:function(){var a=this.args,b=this.attrs,c=this.getAbsoluteBounds(),h=.5*c.width;c.r>h&&(c.r=h);a[0]=b.x=c.x;a[1]=b.y=c.y;a[2]=b.width=c.width;a[3]=b.height=c.height;a[4]=b.r=c.r;return"rect"},line:function(){var a=this.attrs,
b=this.bounds;this.args[0]=a.path=["M",b.x1,b.y1,"L",b.x2,b.y2];1===a["stroke-width"]&&(a["shape-rendering"]="crisp");a["stroke-width"]<q&&(this.attrsTracker["stroke-width"]=q);this.bordered&&this.dashed&&(this.attrsTracker["stroke-dasharray"]="solid");return"path"},path:function(){var a=this.attrs,b=this.bounds;this.args[0]=a.path=this.options.path;a.transform=["T",b.x1,b.y1,"S",b.xs,b.ys,b.x1,b.y1];1===a["stroke-width"]&&(a["shape-rendering"]="crisp");return"path"},polygon:function(){var a=this.args,
b=this.attrs,c=this.options,h=this.bounds,e=this.group,g=e.snaps;a[0]=R(c.sides,1,5,g,e.isBelow).value;a[1]=h.x1;a[2]=h.y1;a[3]=h.r;a[4]=R(c.startangle,1,0,g,e.isBelow).value;a[5]=0;b.polypath=a.slice(0);return"polypath"},circle:function(a){var b=this.args,c=this.attrs,h=this.options,e=this.bounds,l=a.config.width,t=a.config.height,p=this.group.scaleValueComplement,z=this.group.snaps,w=e.angles,F=this.group;a=e.r;g(h.radius)||(e.r=l<t?l*e.xs:t*e.ys,e.r=a=.3*e.r);h=R(h.yradius,p,a,z,F.isBelow).value;
this.fillPattern||(this.fillOptions.radialGradient=!0,this.fillPattern="radial");"radial"===this.fillPattern&&(this.fillOptions.cx=this.fillOptions.cy=.5);t=w.angle%360;if(!t&&a===h)return b[0]=c.cx=e.x1,b[1]=c.cy=e.y1,b[2]=c.r=e.r,"circle";t||(w.angle=0<w.angle?w.angle-.001:w.angle+.001,w.start=w.end-w.angle);t||t==w.angle||(t=360);l=w.start*m;w=w.end*m;t*=m;z=e.x1;F=e.y1;e=z+r(l)*a;p=F+E(l)*h;z+=r(w)*a;F+=E(w)*h;a=["M",e,p,"A",a,h,0,n(t)>=k?1:0,l<w?1:0,z,F,"Z"];b[0]=c.path=a;return"path"},arc:function(a){var b=
this.options,c=this.args,h=this.attrs,e=this.bounds,l=a.config.width;a=a.config.height;var k=this.group,t=k.scaleValue,p=e.angles;g(b.radius)||(e.r=l<a?l*e.xs:a*e.ys,e.r*=.3);e.innerR=R(b.innerradius,t,.8*e.r,this.group.snaps,k.isBelow).value;e.innerR>e.r&&(e.innerR+=e.r,e.r=e.innerR-e.r,e.innerR-=e.r);this.fillPattern||(this.fillOptions.radialGradient=!0,this.fillPattern="radial");"radial"===this.fillPattern&&(this.fillOptions.cx=this.fillOptions.cy=.5);c[0]=e.x1;c[1]=e.y1;c[2]=e.r;c[3]=e.innerR;
c[4]=p.end*m;c[5]=p.start*m;h.ringpath=c.slice(0);return"ringpath"},text:function(a){var b=this.args,c=this.style,e=this.attrs,k=this.group,t=this.bounds,p=this.options,m=this.getAbsoluteBounds(),z=g(p.align,k.options.textalign,"center").toLowerCase(),w=g(p.valign,k.options.textvalign,"middle").toLowerCase(),F=V(g(p.text,p.label)),n=a.linkedItems.smartLabel,r=l(p.wrap,k.options.wraptext,1),B,q,P=g(p.rotatetext,k.options.rotatetext,"0").toLowerCase(),P=h.textRotationOptions[P],R="0"!==P?"y":"x",u=
a.config.orphanStyles;a=L({},u.defaultStyle.style||{});u=k.id&&u[k.id.toLowerCase()]||Z;a=L(a,u.style);var u=parseFloat(a.fontSize),v=g(p.font,k.options.font,a.fontFamily),k=l(p.fontsize,k.options.fontsize,u)*k.scaleText;r&&(B=l(p.wrapwidth,this.hasDimensionX?m.width/t.xs:void 0),q=l(p.wrapheight,this.hasDimensionY?m.height/t.ys:void 0),B&&(B*=t.xs),q&&(q*=t.ys));c.fontFamily=v;c.fontWeight=l(p.bold,p.isbold,0)?"bold":"normal";l(p.italic,p.isitalic,0)&&(c.fontStyle="italic");p.bgcolor&&(!e["text-bound"]&&
(e["text-bound"]=[]),e["text-bound"][0]=T(p.bgcolor));p.bordercolor&&(!e["text-bound"]&&(e["text-bound"]=[]),e["text-bound"][1]=T(p.bordercolor),e["text-bound"][2]=l(p.borderthickness,1),e["text-bound"][3]=l(p.padding,1));p.fontcolor&&(e.fill=T(p.fontcolor),this.fillOptions&&(this.fillOptions.color=e.fill));c.fontSize=k+"px";k===u?c.lineHeight=a.lineHeight:K(c);e["text-anchor"]=h.textAlignOptions[z]||h.textAlignOptions.center;n.setStyle(c);c=n.getSmartText(F,B,q,!1);e["vertical-align"]=h.textVerticalAlignOptions[w]||
h.textVerticalAlignOptions.middle;e["text-anchor"]===h.textAlignOptions.left?m[R]+=l(p.leftmargin,0):e["text-anchor"]===h.textAlignOptions.center&&(m[R]+=.5*l(p.leftmargin,0));"0"!==P&&(e.rotation=[parseFloat(P),m.x,m.y]);b[0]=e.x=m.x;b[1]=e.y=m.y;b[2]=e.text=c.text;c.tooltext&&(e.title=c.tooltext);delete e.stroke;delete e["stroke-weight"];return"text"},image:function(a){var b=this,c=b.style,h=a.config.width,k=a.config.height;a=b.options;var t=b.attrs,m=b.args,z=e(a.url),w=b.group.scaleImageX*g(Number(a.xscale),
100)/100,F=b.group.scaleImageY*g(Number(a.yscale),100)/100,n=b.getAbsoluteBounds(),r={width:1,height:1},B;if(!z)return m[0]=t.x=n.x,m[1]=t.y=n.y,m[2]=t.width=n.width,m[3]=t.height=n.height,m[4]=t.r=n.r,"rect";B=new C.Image;B.onload=function(){r=p("none","top","left",100,0,h,k,B);delete r.x;delete r.y;r=L(r,{width:(b.hasDimensionX?n.unscaled.width:r.width)*w,height:(b.hasDimensionY?n.unscaled.height:r.height)*F});setTimeout(function(){var a,d,h;if(a=b.wrapper){a.attr(r);if(d=b.tracker)h=a.getBBox(),
d.attr({x:h.x,y:h.y,width:h.width,height:h.height});a.css({opacity:c.opacity=N(l(b.fillAlpha,b.borderAlpha),b.borderAlpha)/100})}b.onload&&b.onload(r)},0)};B.src=z;m[0]=t.src=z;m[1]=t.x=n.x;m[2]=t.y=n.y;m[3]=t.width=(b.hasDimensionX?n.unscaled.width:r.width)*w;m[4]=t.height=(b.hasDimensionY?n.unscaled.height:r.height)*F;c.opacity=N(l(b.fillAlpha,b.borderAlpha),b.borderAlpha)/100;delete t.stroke;delete t.fill;delete t["stroke-linecap"];return"image"}}});F=function(){this.groups=[];this._idstore={};
this._options={}};J.Annotations=F;b.extend(F.prototype,{reset:function(a,b,c){var h=this.groups,e,g;this.chart=c;this.clear();if(g=this.setSnapPoints()){e={};for(var l in g)switch(typeof g[l]){case "object":case "function":e["-$"+l]=e["$"+l]=e["+$"+l]=g[l];break;default:e["$"+l]=e["+$"+l]=g[l],e["-$"+l]=-1*g[l]}e=this._literals=e}b&&(this._options=b);if(a&&a.groups&&h)for(g=0;g<a.groups.length;g+=1)h.push(new X(a.groups[g],b,e,this._idstore,this,c)),h[g].chart=c},getRenderer:function(){return this._renderer},
addGroup:function(a){var b=this.getRenderer();this.groups.push(a=new X(a,this._options,this._literals,this._idstore,this,this.chart));b&&(a.setup(),a.scale(),a.draw());return a},addItem:function(a,h,c){var e,g=this.getRenderer();"string"===typeof a?e=this._idstore[a]:(c=h,h=a);if(e&&e.addItem){if(!g&&c){b.raiseWarning(this,"04031411430","run","Annotations~addItem()","Cannot draw the shapeif the group has not been drawn. Use Annotations~draw() to draw the group and pass the renderer to it.");return}a=
e.addItem(h,c)}else a=this.addGroup({}).addItem(h,c);return a},draw:function(a,b){var c=this.groups,h,e,g;if(c&&(this._renderer=a||this._renderer))for(this.resetScale=b,e=0,g=c.length;e<g;e++)h=c[e],h.setup(),h.scale(),h.draw()},clear:function(){var a=this.groups,b;if(a){for(;b=a.shift();)b.destroy();this.shapesToDraw=[]}},dispose:function(){var a;this.disposing=!0;this.clear();for(a in this)delete this[a];this.disposed=!0},hide:function(a){if(a=this._idstore[a])return a.attrs.visibility="hidden",
a.wrapper&&a.wrapper.hide(),a},show:function(a){if(a=this._idstore[a])return a.attrs.visibility="",a.wrapper&&a.wrapper.show(),a},update:function(a,b,c){a=this._idstore[a];var h;if(a&&b){if("object"===typeof b)for(h in b.id&&delete b.id,b.type&&delete b.type,b)a.options[(h+"").toLowerCase()]=b[h]+"";else a.options[(b+"").toLowerCase()]=c+"";a.wrapper&&(a.scale(),a.setup(),a.draw());return a}},destroy:function(a){var b=this._idstore[a],c=b.group;b&&"function"===typeof b.destroy&&(c&&c.removeItem(a),
b.destroy())},shapesToDraw:[],setSnapPoints:function(){var a=this.chart,b=a.config,c=a.components,h=c.legend,e=c.gradientLegend,g=c.caption.config,c=c.subCaption.config,l=g.width||0,k=c.width||0,t,p=this.datasetFunction.bind(a),m=this.xAxisFunction.bind(a),z=this.yAxisFunction.bind(a);"end"===g.align?(a=g.x-l,t=g.x-k):"start"===g.align?a=t=g.x:(a=g.x-l/2,t=g.x-k/2);h=b.gLegendEnabled?e.conf:h.config;return{canvasendx:b.canvasRight,canvasendy:b.canvasBottom,canvasheight:b.canvasHeight,canvasstartx:b.canvasLeft,
canvasstarty:b.canvasTop,canvaswidth:b.canvasWidth,canvascenterx:b.canvasCenterX||b.canvasLeft+(b.canvasRight-b.canvasLeft)/2,canvascentery:b.canvasCenterY||b.canvasTop+(b.canvasBottom-b.canvasTop)/2,chartcenterx:b.width/2,chartcentery:b.height/2,chartstartx:0,chartstarty:0,chartendx:b.width,chartendy:b.height,chartheight:b.height,chartwidth:b.width,chartleftmargin:b.marginLeft,chartrightmargin:b.marginRight,chartbottommargin:b.marginBottom,charttopmargin:b.marginTop,captionendx:a+g.width,captionendy:g.y+
g.height,captionheight:g.height,captionstartx:a,captionstarty:g.y,captionwidth:l,subcaptionendx:t+c.width,subcaptionendy:c.y+c.height,subcaptionheight:c.height,subcaptionstartx:t,subcaptionstarty:c.y,subcaptionwidth:k,legendendx:h.xPos+h.width,legendendy:h.yPos+h.height,legendheight:h.height,legendstartx:h.xPos,legendstarty:h.yPos,legendwidth:h.width,dataset:p,xaxis:m,yaxis:z,gaugestartx:b.gaugeStartX,gaugestarty:b.gaugeStartY,gaugeendx:b.gaugeEndX,gaugeendy:b.gaugeEndY,gaugecenterx:b.gaugeCenterX,
gaugecentery:b.gaugeCenterY,gaugestartangle:b.gaugeStartAngle,gaugeendangle:b.gaugeEndAngle,gaugeradius:b.gaugeRadius,plotwidth:b.plotWidth,plotsemiwidth:b.plotSemiWidth}},datasetFunction:function(a,b){var c=this.components.dataset,h,e,g,l,k;l=this.is3D;if(!c||!c.length)return 0;isNaN(a[0])?h=0:(h=Number(a[0]),a=a.slice(1));e=a[0];if("set"===e){isNaN(a[1])?(g=0,a=a.slice(1)):(g=Number(a[1]),a=a.slice(2));e=a[0];k=(g=c[h]&&c[h].components.data[g])&&(g.graphics.element||g.graphics.hotElement||g.graphics.upperBoxElem);
c=c[h]&&c[h].graphics.sharedAnchor;!k&&c&&g._polyPath&&(k=c.element.attr(g._polyPath));if(!k)return 0;l=b&&l?k._getBBox2():k.getBBox();g=z(e,l)}return g},xAxisFunction:function(a){var b=this.components&&this.components.xAxis&&this.components.xAxis[0],c,h;if(!b)return 0;h=a[0];if("label"===h){isNaN(a[1])?(c=0,a=a.slice(1)):(c=Number(a[1]),a=a.slice(2));h=a[0];a=b._getLabelElement(c);if(!a)return 0;a=a.getBBox();c=z(h,a)}return c},yAxisFunction:function(a){var b=this.components&&this.components.yAxis,
c,h;if(!b||!b.length)return 0;isNaN(a[0])?c=0:(c=Number(a[0]),a=a.slice(1));c=b[c];if(!c)return 0;b=a[0];if("label"===b){isNaN(a[1])?(h=0,a=a.slice(1)):(h=Number(a[1]),a=a.slice(2));b=a[0];a=c._getLabelElement(h);if(!a)return 0;a=a.getBBox();h=z(b,a)}return h}});b.core.addEventListener("beforeinitialize",function(a){"javascript"===a.sender.options.renderer&&(a.sender.annotations=new F)});b.core.addEventListener("disposed",function(a){a.sender.annotations&&a.sender.annotations.dispose()});b.addEventListener("internal.animationComplete",
function(a){a=a.sender;var b=a.annotations,c=b&&b.shapesToDraw,h=c&&c.length,e,g;a=a.apiInstance.config;var l=a.annRenderDelay,k=a.resize,t=(new Date).getTime(),p,m=function(){for(g=0;g<h;g++)e=c[g],e.draw()};if(h){for(g=0;g<h;g++)e=c[g],e.queueDraw=!1,e.scale(),e.setup();p=(new Date).getTime();l&&!k?setTimeout(function(){m();b.shapesToDraw=[]},l-(p-t)):(m(),b.shapesToDraw=[])}a.resize=!1});v.addEventListener("rendered",function(a,b){if("javascript"===b.renderer){var c=a.sender;c.apiInstance&&(c.apiInstance.showAnnotation||
(c.apiInstance.showAnnotation=function(){c.annotations.show.apply(c.annotations,arguments)}),c.apiInstance.hideAnnotation||(c.apiInstance.hideAnnotation=function(){c.annotations.hide.apply(c.annotations,arguments)}))}})}]);Q.register("module",["private","modules.renderer.jpegtopdf",function(){var b=this.window,v=b.btoa,J=b.atob;this.hcLib.JpegToPdf=function(b,H){var A=[],u=0,a=b||500,O=H||500,q,M,U;q=function(a){u+=a.length+1;A.push(a)};this.addImage=function(a){a=/base64,(.+?)$/g.exec(a);U=J(a[1])};
M=function(){var b=[],v,r;q("%PDF-1.7");b[1]=u;q("1 0 obj");q("/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]");q("endobj");b[4]=u;q("4 0 obj");q("<< /Length 36>>");q("stream");q("q "+O+" 0 0 "+a+" 0 0 cm /Im3 Do Q");q("endstream");q("endobj");b[5]=u;q("5 0 obj");q("<</Type /Page /Parent 2 0 R /MediaBox [0 0 "+O+" "+a+"] /Contents [4 0 R ] /Resources <</ProcSet 1 0 R /Font <<>> /XObject <</Im3 3 0 R >> >> >>");q("endobj");b[3]=u;q("3 0 obj");q("<</Type /XObject /Subtype /Image /Width "+O+" /Height "+
a+" /ColorSpace /DeviceRGB /BitsPerComponent 8 /Filter /DCTDecode /Length "+U.length+">>");q("stream");q(U);q("endstream");q("endobj");b[2]=u;q("2 0 obj");q("<</Type /Pages /Kids [5 0 R ] /Count 1>>");q("endobj");b[6]=u;q("6 0 obj");q("<</Type /Catalog /Pages 2 0 R >>");q("endobj");v=u;q("xref");q("0 7");q("0000000000 65535 f ");for(r=1;6>=r;r++)q(("0000000000"+b[r]).slice(-10)+" 00000 n ");q("trailer");q("<</Size 7 /Root 6 0 R >>");q("startxref");q(v);q("%%EOF");return A.join("\n")};this.getDataUrl=
function(){return"data:application/pdf;base64,"+v(M())}}}]);Q.register("module",["private","modules.exporter.batch-export",function(){var b=this.window,v=this.hcLib,J=Math.max,C=b.Image,H=v.drawSvgOnCanvas,A=v.downloadCharts,u=v.browserDetails,a=v.pluckNumber,O=v.pluck,q=v.JpegToPdf,M=b.navigator.userAgent.match(/ (iPad|iPhone|iPod)/g),U=v.createExportActionOldString,N=v.createVersionNumberString,E=v.cacheAllImages,r=v.replaceImagesWithNonDataUrl,k=v.logCharts,m=v.DEFAULT_EXPORT_URL,n=v.DEFAULT_LOG_URL,
L=v.EXPORTACTION,g=v.EXPORTFORMAT,l=v.EXPORTMODE,B=v.LOGMODE;Q.batchExport=function(e){var v=e||{},p,T,K,t,Z,P=0,S=!1,z,R,w,F={exportTargetWindow:O(v.exportTargetWindow,M?"_blank":"_self"),exportAction:function(){var a;return v.exportAction&&"string"===typeof v.exportAction?(a=v.exportAction.toLowerCase(),0<=[L.DOWNLOAD,L.SAVE,L.DOWNLOADSAVE].indexOf(a)?a:L.DOWNLOAD):L.DOWNLOAD}(),exportFileName:O(v.exportFileName,"FusionCharts"),exportHandler:O(v.exportHandler,m),exportParameters:O(v.exportParameters,
""),exportFormat:O(v.exportFormat,g.PNG),exportCallback:O(v.exportCallback,""),exportAtClientSide:a(v.exportAtClientSide,1),exportMode:function(){var a;"undefined"!==typeof v.exportAtClientSide&&(a={1:l.AUTO,0:l.SERVER}[v.exportAtClientSide]);a=v.exportMode||a||l.AUTO;return a=a.toLowerCase()}(),logEnabled:a(v.logEnabled,0),logMode:function(){var a=v.logMode;return"undefined"!==typeof a&&"string"===typeof a&&a.toUpperCase()in B?B[a.toUpperCase()]:B.AUTO}(),logHandler:O(v.logHandler,n)};(function(){var a,
c;a=F.exportMode;c={};c[l.CLIENT]=1;c[l.AUTO]=0;c[l.SERVER]=0;F.exportatclientside=c[a]})();var X=F.exportFormat.toLowerCase(),h=0,d=0,f,c=b.document,D=Q.items,G=function(a){return a.match(/http:\/\/|https:\/\//)&&/(http:\/\/|https:\/\/)([^\/\:]*)/.exec(a)[2]&&b.location.hostname!==/(http:\/\/|https:\/\/)([^\/\:]*)/.exec(a)[2]?!1:!0},aa=function(c,d,b,h){var e=c,f=d;isNaN(e)&&(e=a(d,h)*(b/h));isNaN(f)&&(f=a(c,b)*(h/b));return{width:e,height:f}},Ra=function(a,c,d){var b,h;d=d||F.exportAction;b=F.exportAction;
h=U(F.exportAction);d=["exportfilename="+F.exportFileName,"exportformat="+F.exportFormat,"exportaction="+h,"exportactionnew="+b,"configuredexportaction="+d,"exportparameters="+F].join("|");b=!!F.logEnabled;F.logMode===B.CLIENT&&(b=!1);return{charttype:"combined",stream_type:a||"",stream:c||"",is_single_export:!1,is_full_version:!1,version:N(),user_time_zone:-(new Date).getTimezoneOffset(),log_enabled:b,parameters:d}},Ia=function(){return{chartType:"combined",isSingleExport:!1,isFullVersion:!1,exportAction:F.exportAction,
userTimeZone:-(new Date).getTimezoneOffset(),exportFileName:[F.exportFileName,F.exportFormat].join("."),exportFormat:F.exportFormat,version:N()}},sa=function(a){var c;c="undefined"!==typeof b.btoa&&("Chrome"===u.name||"Firefox"===u.name||"Edge"===u.name||"ie"===u.name);if(F.exportMode===l.CLIENT||F.exportMode===l.AUTO&&c){if(F.exportAction===L.DOWNLOAD||F.exportAction===L.DOWNLOADSAVE)c=F.exportMode===l.AUTO?Ra("IMAGE-DATA",a):null,A("url",a,F.exportFileName+"."+X,c,F);F.exportAction===L.SAVE||F.exportAction===
L.DOWNLOADSAVE?(c=F.exportAction,F.exportAction===L.DOWNLOADSAVE&&(F.exportAction=L.SAVE),c=Ra("IMAGE-DATA",a,c),F.paper={width:void 0,height:void 0},F.fusionCharts={},A(null,null,null,c,F),delete F.paper,delete F.fusioncharts,F.logMode===B.CLIENT&&k(Ia(),F)):F.logMode!==B.SERVER&&k(Ia(),F)}else c=Ra("IMAGE-DATA",a),F.paper={width:void 0,height:void 0},F.fusionCharts={},A(null,null,null,c,F),delete F.paper,delete F.fusioncharts,F.logMode===B.CLIENT&&k(Ia(),F)},wa=function(a){var c;H(a,K,this.x,this.y,
this.width,this.height,function(){--P;if(0===P&&S)switch(X){case "png":sa(K.toDataURL("image/png"));break;case "jpeg":sa(K.toDataURL("image/jpeg"));break;case "pdf":c=new q(h,d);c.addImage(K.toDataURL("image/jpeg"));sa(c.getDataUrl());break;default:sa(K.toDataURL("image/png"))}})};e=function(b){var e=v.background;K=c.createElement("canvas");K.id="newCanvas";K.width=d;K.height=h;K.style.border="1px solid black";t=K.getContext("2d");t.fillStyle=e&&e.bgColor||"#ffffff";t.fillRect(0,0,d,h);e&&e.bgImage&&
G(e.bgImage)?(R=new C,R.src=e.bgImage,R._userData=e,t.globalAlpha=a(e.bgImageAlpha,100)/100,R.onload=function(){var c=this._userData,d=a(c.bgImageX,0),h=a(c.bgImageY,0),e=aa(Number(c.bgImageWidth),Number(c.bgImageHeight),this.width,this.height),c=e.width,e=e.height;try{t.drawImage(this,d,h,c,e)}finally{t.globalAlpha=1,b()}},R.onerror=function(){b()}):b()};var ca=function(a,c){p=Q.items[a];Z=p.jsVars.instanceAPI.components.paper.toSVG(!0);Z=Z.replace(/NS\d+:/gi,"xlink:");Z=Z.replace(/(\sd\s*=\s*["'])[M\s\d\.]*(["'])/ig,
"$1M 0 0 L 0 0$2");Z=Z.replace(/(xlink:title\s*=\s*)['"].*["']/ig,"");P+=1;(function(){var a=Z;E(a,!1,function(){a=r(a);wa.call(c?c:p,a)})})()};if(u.hasCanvas){(function(){var a=v.charts,c,d,b,h;T=[];if(a)for(b in a)a.hasOwnProperty(b)&&(c=D[a[b].id])&&(d=a[b],h=aa(Number(d.width),Number(d.height),c.width,c.height),T.push({id:c.id,width:h.width,height:h.height,x:d.x,y:d.y}));else for(b in D)D.hasOwnProperty(b)&&(c=D[b],T.push({id:c.id,width:c.width,height:c.height}))})();f=0;for(z=T.length;f<z;f+=
1)w=T[f],w.x=a(w.x,5),w.y=a(w.y,h+5),w.height=a(w.height),w.width=a(w.width),h=J(h,w.y+w.height),d=J(d,w.x+w.width);h=v.imageHeight||h+5;d=v.imageWidth||d+5;e(function(){return function(){f=0;for(z=T.length;f<z;f+=1)w=T[f],f===z-1&&(S=!0),ca(w.id,w)}}())}}}]);Q.register("module",["private","modules.exporter.main",function(){var b=this,v=b.window,J=b.hcLib,C=J.extend2,H=J.EXPORTACTION,A=J.EXPORTMODE,u=J.EXPORTFORMAT,a=J.LOGMODE,O=J.BLANKSTRING,q=J.graphics.RGBtoHex,M=/\s\bx\b=['"][^'"]+?['"]/ig,U=
/\s\by\b=['"][^'"]+?['"]/ig,N=v.document,E=J.JpegToPdf,r=J.browserDetails;J.exportChart=function(k){var m=this,n=m.config,L=m.components,g=m.chartInstance,l=J.svgStrToDataUrl,B=J.createExportActionOldString,e=J.cacheAllImages,V=J.makeImageUrlsAbsolute,p=J.embedImagesWithNonDataURL,T=J.replaceImagesWithNonDataUrl,K=J.hasUndownloadableImage,t=J.downloadCharts,Z=J.logCharts,P=n.exportOption;k="object"===typeof k&&function(a){var c={},d;for(d in a)c[d.toLowerCase()]=a[d];return c}(k)||{};var S=C(C({},
P),k),z=(S.exportformat||u.PNG).toLowerCase(),R=S.exporthandler,w=S.exportaction,F=S.exporttargetwindow||O,X=S.exportfilename,h=S.exportparameters,d=S.exportcallback,f=S.exportwithimages,c=S.exportmode,D=S.logenabled,G=S.loghandler,aa=S.logmode,Ra,Ia,sa;if(!P||!P.enabled||!R)return!1;b.raiseEvent("beforeExport",S,g,void 0,function(){var k=g.id,P=n.caption,C=n.subcaption,qa=L.paper,va,ha,ra,ka=J.isCanvasElemSupported(),na={DOMId:k,height:qa.height,width:qa.width,fileName:X+"."+z,statusCode:void 0,
statusMessage:void 0,notice:void 0},da={exportAction:w,exportTargetWindow:F,exportCallback:d,fusionCharts:m,paper:qa,chartId:k,exportHandler:R,logEnabled:D,logMode:aa,logHandler:G},oa=J.createVersionNumberString,Y=function(c,d,b){var e,f;b=b||w;e=w;f=B(w);b=["exportfilename="+X,"exportformat="+z,"exportaction="+f,"exportactionnew="+e,"configuredexportaction="+b,"exportparameters="+h].join("|");e=!!D;aa===a.CLIENT&&(e=!1);return{charttype:g.chartType(),stream_type:c||"",stream:d||"",meta_bgColor:S.bgcolor||
"",meta_bgAlpha:S.bgalpha||"1",meta_DOMId:g.id,meta_width:qa.width||n.width,meta_height:qa.height||n.height,chart_caption:P,chart_sub_caption:C,is_single_export:!0,is_full_version:!1,version:oa(),user_time_zone:-(new Date).getTimezoneOffset(),log_enabled:e,parameters:b}},za=function(){var a=w;return{chartType:g.chartType(),chartCaption:P,chartSubCaption:C,isSingleExport:!0,isFullVersion:!1,exportAction:a,userTimeZone:-(new Date).getTimezoneOffset(),exportFileName:[X,z].join("."),exportFormat:z,version:oa()}},
fa=function(a){a=Y(u.SVG,a);t(null,null,null,a,da)},Aa=function(a){var c,d,b,h=K(a);r.hasCanvas&&"undefined"!==typeof v.btoa?(c=N.createElement("canvas"),c.width=qa.width,c.height=qa.height,a=p(a),ra=T(ra),h||z===u.SVG?(b=Y(u.SVG,a),t(null,null,null,b,da)):J.drawSvgOnCanvas(ra,c,0,0,qa.width,qa.height,function(){var a;switch(z){case u.PNG:a=c.toDataURL("image/png");break;case u.JPEG:a=c.toDataURL("image/jpeg");break;case u.PDF:d=new E(qa.height,qa.width);d.addImage(c.toDataURL("image/jpeg"));a=d.getDataUrl();
break;default:a=c.toDataURL("image/jpeg")}b=Y("IMAGE-DATA",a);t(null,null,null,b,da)})):fa(a)},ua=function(a,c,d){var b;b=N.createElement("canvas");b.width=qa.width;b.height=qa.height;J.drawSvgOnCanvas(ra,b,0,0,qa.width,qa.height,function(){switch(a){case u.PNG:c(a,b.toDataURL("image/png"),X,d);break;case u.JPEG:c(a,b.toDataURL("image/jpeg"),X,d);break;case u.PDF:c(a,b.toDataURL("image/jpeg"),X,d);break;default:c(a,b.toDataURL("image/jpeg"),X,d)}})},ia=function(a,c,d){z===u.SVG?(a=l(a),d(a,c)):(a=
function(a,b){d(b,c)},ua(z,a,c))},xa=function(a,c,d){var b;b=X+"."+z;z===u.SVG?(a=l(a),va=d===A.AUTO?Y("IMAGE-DATA",a):null,t("url",a,b,va,c)):(b=function(a,c,b,h){b=b+"."+a;a===u.PDF&&(a=new J.JpegToPdf(qa.height,qa.width),a.addImage(c),c=a.getDataUrl());va=d===A.AUTO?Y("IMAGE-DATA",c):null;t("url",c,b,va,h)},ua(z,b,c))},k=function(){var a=0;Ra=[];Ia.replace(/[^\r\n]+/g,function(c){Ra[a]=[];Ra[a]=c.split(",").map(function(a){return a.replace(/"/g,"")});a+=1})},ja=function(){return"data:application/vnd.ms-excel;base64,"+
function(a){return v.btoa(v.unescape(encodeURIComponent(a)))}("<html xmlns:o='urn:schemas-microsoft-com:office:office'xmlns:x='urn:schemas-microsoft-com:office:excel'xmlns='http://www.w3.org/TR/REC-html40'><head>\x3c!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--\x3e</head><body>"+function(){var a,c,d,b,h,
e;if(!Ra.length)return"";d=0;for(e=Ra.length;d<e;d+=1)if(0===d){a="<thead valign='top'><tr>";b=0;for(h=Ra[d].length;b<h;b+=1)a+="<th>"+Ra[d][b]+"</th>";a+="</tr></thead>";c="<tbody>"}else{c+="<tr>";b=0;for(h=Ra[d].length;b<h;b+=1)c+="<td>"+Ra[d][b]+"</td>";c+="</tr>"}return"<table align='center' >"+a+(c+"</tbody>")+"</table>"}()+"</body></html>")},ya=function(a){b.raiseEvent("exportDataReady",a,g)},W=function(c){c===a.CLIENT&&Z(za(),da)};if("xls"===z){if("undefined"!==typeof v.btoa)Ia=g.getCSVData();
else return b.raiseEvent("exportCancelled",S,g),!1;ya();k();sa=ja();if(ka="undefined"!==typeof v.btoa&&("Chrome"===r.name||"Firefox"===r.name||"Edge"===r.name||"ie"===r.name)){if(w===H.DOWNLOAD||w===H.DOWNLOADSAVE)t("url",sa,X+"."+z,null,da),b.raiseEvent("exported",na,g);w===H.SAVE||w===H.DOWNLOADSAVE?(ka=w,w===H.DOWNLOADSAVE&&(w=H.SAVE),va=Y("IMAGE-DATA",sa,ka),t(null,null,null,va,da),W(aa)):aa!==a.SERVER&&Z(za(),da)}else va=Y("IMAGE-DATA",sa),t(null,null,null,va,da),W(aa)}else L.chartMenuBar&&L.chartMenuBar.group.attr("visibility",
"hidden"),ha=qa.toSVG(f),ra=qa.toSVG(f&&ka),L.chartMenuBar&&L.chartMenuBar.group.attr("visibility","visible"),ha=ha.replace(/(\sd\s*=\s*["'])[M\s\d\.]*(["'])/ig,"$1M 0 0 L 0 0$2"),ha=ha.replace(/NS\d+:/gi,"xlink:"),ra=ra.replace(/NS\d+:/gi,"xlink:"),ra=ra.replace(/(\sd\s*=\s*["'])[M\s\d\.]*(["'])/ig,"$1M 0 0 L 0 0$2"),ra=ra.replace(/(xlink:title\s*=\s*)['"].*["']/ig,""),ha=ha.replace(/[\w\-]+\=\"undefined\"/ig,""),ha=ha.replace(/(xlink:title\s*=\s*)['"].*["']/ig,""),ha=ha.replace(/rgba\(([^\)]+)\)/ig,
function(a,c){return"#"+new q(c.split(","))}),ha=ha.replace(/<svg[^>]+/i,function(a){a.match(/height/i)||!qa.height&&!n.height||(a+=' height="'+(qa.height||n.height)+'"');a.match(/width/i)||!qa.width&&!n.width||(a+=' width="'+(qa.width||n.width)+'"');return a}),ha=ha.replace(/(([\w]+\-)?opacity\s*=\s*)['"][\d\.]+e[\-\+][\d]+["']/ig,'$1"0.001"'),ha=ha.replace(/(([\w]+\-)?opacity\s*:\s*)[\d\.]+e[\-\+][\d]+/ig,"$10.001"),ha=ha.replace(/<text[^\>]+/ig,function(a){a=a.replace(/stroke\=[\"\']([a-z0-9\#]+)?[\"\']/ig,
"");a=a.replace(/stroke\s*\:\s*([a-z0-9\#]+)?;?/ig,"");a=a.replace(/stroke-width\=[\"\']([a-z0-9\#]+)?[\"\']/ig,"");a=a.replace(/stroke-width\s*\:\s*([a-z0-9\#]+)?;?/ig,"");a=a.replace(/stroke-opacity\=[\"\']([a-z0-9\#]+)?[\"\']/ig,"");a=a.replace(/stroke-opacity\s*\:\s*([a-z0-9\#]+)?;?/ig,"");a=a.replace(/(<text[^\>]+fill\=)([\"\'][^\"\']+[\"\'])([^\>]+)/ig,'$1$2 stroke=$2 stroke-width="0.2"$3');return a=a.replace(/(<text[^\>]+fill-opacity\=)([\"\'][^\"\']+[\"\'])([^\>]+)/ig,"$1$2 stroke-opacity=$2 $3")}),
ha=ha.replace(/<(\b[^<>s\s]+\b)[^\>]+?opacity\s*=\s*['"][^1][^\>]+?(\/>|>[\s\r\n]*?<\/\1>)/ig,function(a,c){var d=M.exec(a)||O,b=U.exec(a)||O;return a+"<"+c+d+b+' opacity="1" stroke-opacity="1" fill="#cccccc" stroke-width="0" r="0" height="0.5" width="0.5" d="M 0 0 L 1 1" />'}),ha=V(ha),ra=V(ra),ka=c===A.SERVER,e(ha,ka,function(){va=Y(u.SVG,ha);ya(va);va=null;var d,h="undefined"!==typeof v.btoa&&("Chrome"===r.name||"Firefox"===r.name||"Edge"===r.name||"ie"===r.name),e=K(ha);if((c===A.CLIENT||c===
A.AUTO&&!e)&&h){ra=T(ra);if(w===H.DOWNLOAD||w===H.DOWNLOADSAVE)xa(ra,da,c),b.raiseEvent("exported",na,g);w===H.SAVE||w===H.DOWNLOADSAVE?(d=w,w===H.DOWNLOADSAVE&&(w=H.SAVE),ia(ra,da,function(a,c){va=Y("IMAGE-DATA",a,d);t(null,null,null,va,c);W(aa)}),b.raiseEvent("exported",na,g)):aa!==a.SERVER&&Z(za(),da)}else c===A.AUTO?(Aa(ha),W(aa)):c===A.SERVER&&(fa(ha),W(aa))})},function(){b.raiseEvent("exportCancelled",S,g)})}}]);Q.register("module",["private","modules.renderer.js-component-toolbox",function(){function b(a){"number"===
typeof a&&(a="'"+a+"'");return a.split("").reduce(function(a,b){a=(a<<5)-a+b.charCodeAt(0);return a&a},0)}function v(a,b){var e;if(a.getBBox)return a;e=a.getBoundingClientRect();a.getBBox=function(){return{x:b.x,y:b.y,width:e.right-e.left,height:e.bottom-e.top,isArtificial:!0}};return a}function J(a,b,e){var g,l;for(g in a)l=a[g],void 0!==l&&null!==l&&(e?b[g]||(b[g]=l):b[g]=l)}function C(){this.pool={}}function H(a,b){var e,g,l;g=this.elemTypes={KEY_RECT:"rect",KEY_TEXT:"text",KEY_GROUP:"group",KEY_SCROLLER:"scoller",
KEY_BUTTON:"button",KEY_PATH:"path",KEY_DIV:"div"};l=this.cachedState={};e=this.actions={};e[g.KEY_DIV]=function(){return O.createElement("div")};e[g.KEY_RECT]=function(b){return a.paper.rect(b)};e[g.KEY_TEXT]=function(b){return a.paper.text(b)};e[g.KEY_GROUP]=function(b,e){return a.paper.group(b,e)};e[g.KEY_SCROLLER]=function(b,e,g,l,h,d,f){return a.paper.scroller(b,e,g,l,h,d,f)};e[g.KEY_BUTTON]=function(b,e,g,l,h,d){return a.paper.button(b,e,g,l,h,d)};e[g.KEY_PATH]=function(b,e){return a.paper.path(b,
e)};g=this.cache=l[b]||(l[b]={});this._hideRecursive(g.pool);g.initialized||(e=g.pool=(new C).pool,e._tmp=b,g.initialized=!0)}var A=this.hcLib,u=A.hasTouch,a=A.Raphael,O=this.window.document,q=A.graphics,M=q.convertColor,U=q.getLightColor,N=q.rawRGBtoHEX,E=A.pluckNumber,r=A.pluck,k={},m={},n={},L=A.extend2,g,l,B,e,V=function(){},p=A.BLANKSTRING,T=M("FFFFFF",0),K=0;g=function(a,b,e){return["M",a-e,b-e]};l=function(a,b,e){var g=e/4;return["M",a-3*g,b,"L",a-g,b+e,a+e,b-e]};B=function(){a.addSymbol("Internal_CB",
g);return{register:function(){var b,e,g;if(1===arguments.length){e=arguments[0];if(null==e||"object"!==typeof e)return;g=e}else if(1<arguments.length){b=arguments[0];e=arguments[1];if("string"!==typeof b||"function"!==typeof e)return;g={};g[b]=e}else return;for(b in g)e=g[b],{}.hasOwnProperty.call(g,b)&&a.addSymbol(b,e)}}}();H.prototype._hideRecursive=function(a){var b,e,g,l,k,p;if(a)for(b in a)for(e in g=a[b],g)if(l=g[e],l instanceof Array)for(k=0,p=l.length;k<p;k++)l[k].hide&&l[k].hide();else l.hide&&
l.hide()};H.prototype.isInitialized=function(){return this.initialized};H.prototype.getCreationStatus=function(){return this.newCreationDataFlag};H.prototype.emptyPool=function(a){a=this.cachedState[a]||{};a.pool&&(a.pool={})};H.prototype.hideRecursive=function(a){this._hideRecursive((this.cachedState[a]||{}).pool)};H.prototype.getKeys=function(){return this.elemTypes};H.prototype.getComponent=function(a,b,e,g){var l=this.cachedState[b||0]||{};b=l.pool;var k=b[a],p,m,n,h=this.actions,d=0;k||(k=b[a]=
{});return(m=k[e])&&!(m instanceof Array)||m instanceof Array&&0<m.length?function(){l.newCreationDataFlag=!1;return g?(n=m[d++])?n.show():m[d]=h[e].apply(l,arguments):m.show&&"function"===typeof m.show&&m.show()||m}:function(){l.newCreationDataFlag=!0;return g?(p=k[e]||(k[e]=[]),m=h[e].apply(l,arguments),p.push(m),m.show&&"function"===typeof m.show&&m.show()||m):k[e]=h[e].apply(l,arguments)}};e=function(a,e){function p(a,c){switch(a){case "click":return function(a){wa.push(A.dem.listen(c,"click",
function(c){c.target&&c.target.parentNode&&a.call(c.target)}))};case "hover":return function(a,d){wa.push(A.dem.listen(c,"pointerhover",function(c){c.target&&c.target.parentNode&&("start"===c.state?a:d).call(c.target)}))}}}function r(a){a=a||{};this.name=a.name;this.handler=a.handler||V;this.action=a.action&&a.action.toLowerCase()||"click";this.eventMap={};this.style={padding:"3px 8px",margin:"2px 0px",fontFamily:n.baseFontFamily,fontSize:n.baseFontSize+"px"};this.hoverOverStyle=a.hoverOverStyle||
{};this.hoverOutStyle=a.hoverOutStyle||{};J(a.style||{},this.style);this.node=this.subConRef=void 0}function z(a,c){var d=this,b,h;b=c&&c.top||0;var e=c&&c.left,f=c&&c.right;this.container=a;this.position=z.POSITION_BOTTOM;this.atomicLists=[];this.refContainers=[];this.parentListCon=void 0;this.hideFnIds=[];this.target=void 0;e&&f||(this.positionCalculation=!0);this.hoverOverStyle={background:"#333333",color:"#FFFFFF",cursor:"pointer"};this.hoverOutStyle={background:"#FFFFFF",color:"#000000"};this._defaultStyle=
{position:"absolute","z-index":50,top:void 0===b?"auto":b+"px",right:void 0===f?"auto":f+"px",left:void 0===e?"auto":e+"px",overflow:"hidden",background:"#ffffff",border:"1px solid #646464","box-shadow":"#999999 2px 2px 5px",padding:"5px 3px",display:"none"};b=this.container.style;for(h in this._defaultStyle)b[h]=this._defaultStyle[h];sa.linkedItems&&(sa.linkedItems.container.appendChild(this.container),h=p("hover",this.container),h(function(){d.show(this)},function(){d.hide(300,this)}))}function K(a){this.listContainer=
this.container=void 0;this.measurement=a}function w(a,c,d,b){this.symbol=a;this._id="TB_SYMBOL"+(d||0);this.node=void 0;this.pId=b;this.isPlaintext=c;this.conf={btnTextStyle:{"stroke-width":"1px",stroke:"none"}};this.evt={tooltext:void 0,click:V,hover:[V,V]}}function F(a,c,d,b){w.call(this,"Internal_CB");this._id="TB_CBSYMBOL"+(d||0);this.symbol="Internal_CB";this.text={plaintext:a,node:void 0,style:u};this.pId=b;this.checked=!!c;this.textNode=void 0;this.interPadding=3;this.pos={};this.regSymbolCmd=
void 0;this.checked?this.check():this.uncheck()}function q(a,c,d){w.call(this);this._id="TB_SCROLLER"+(c||0);this.pId=d;this.conf={};this.userConf=m;this.setConfiguaration(a);this.evt.scroll=V;return this}function h(a,c,d){var b;w.call(this,a,void 0,c,d);this.rawContextDefinitation=void 0;this.listContainerManager=(new K(this.position)).init(d);b=this.listContainerManager.getFirstContainer();this.evt.hover=[function(a){b.show(v(a.target||a.fromElement,a))},function(a){b.hide(300,a.target)}]}function d(a,
c){this.preId=a||0;this.id=void 0;this.symbolList=[];this.groupRect=void 0;this.pId=c;L(this.btnConfig={},k);L(this.groupConfig={},D)}function f(a,d){c[this.id="TB_MASTER"+a||b((new Date).getTime())]=this;this.toolbarRect=void 0;this.componentGroups=[];this.toolbarConfig=G;this.group=void 0;this.pId=d}var c={},D={hPadding:3,vPadding:3,borderRadius:2,fill:M("DBDBDB",100),borderColor:M("B2B1B1",100),borderThickness:1,offsetAdjustment:1,radius:1,spacing:6},G={hPadding:3,vPadding:3,borderRadius:0,fill:M("EBEBEB",
100),borderColor:M("D1D0D0",100),borderThickness:1,offsetAdjustment:1,radius:0},u={fontFamily:"Verdana,sans",fontSize:"12px",fill:void 0,fontStyle:"normal",fontWeight:"normal"},C,H,sa=e.chart,wa=sa.linkedItems.eventListeners||(sa.linkedItems.eventListeners=[]);H=e.graphics;C=e.components;r.prototype.updateName=function(a){this.name=a;this.node&&(this.node.innerHTML=a)};r.prototype.assignSubContainer=function(a){a instanceof z&&(this.subConRef=a)};r.prototype.stickIntoContainer=function(a,c){var d=
this.node=O.createElement("div"),b=this.style,h,e,f,g=this;d&&(d.ishot=!0);this.handler&&(this.eventMap[this.action]=this.handler);a.appendChild(d);d.innerHTML=this.name;e=d.style;for(h in b)e[h]=b[h];b=p("hover",d);p("click",d)(function(){g.handler&&((f=g.eventMap.click)&&f.apply(g,[sa]),c.hide())});b(function(){var a,c=d.style,b=g.hoverOverStyle;for(a in b)c[a]=b[a];g.subConRef&&g.subConRef.show(this)},function(){var a,c=d.style,b=g.hoverOutStyle;for(a in b)c[a]=b[a];g.subConRef&&g.subConRef.hide(300,
this)})};r.prototype.setStyle=function(a){J(a||{},this.style)};r.prototype.dispose=function(){var a=this.node;a&&a.remove&&a.remove();this.node=void 0};z.POSITION_TOP="top";z.POSITION_BOTTOM="bottom";z.prototype.addAtomicListItem=function(a){a instanceof r&&(this.atomicLists.push(a),a.stickIntoContainer(this.container,this))};z.prototype.show=function(a){var c=this.hideFnIds,d=sa.config.width,b=this.positionCalculation,e=0,f;this.target=this.target||a;for(f=c.length;e<f;e++)clearTimeout(c[e]);c.length=
0;(c=this.parentListCon)?(c.show(this.target),this.container.style.left=c.container.offsetLeft+c.container.offsetWidth+"px",this.container.style.top=c.container.offsetTop+this.target.offsetTop+"px"):(c=a&&a.nodeName&&"DIV"===a.nodeName.toUpperCase()?!0:!1,c||(a=a.getBBox(),b&&(this.container.style.display="block",b=this.container.offsetWidth,b+a.x>d?(this.container.style.left="auto",this.container.style.right=d-a.x-a.width+"px"):(this.container.style.left=a.x+"px",this.container.style.right="auto"),
this.container.style.display="none"),this.position===h.POSITION_BOTTOM?(d=a.isArtificial?.5:1.5,this.container.style.top=a.y+a.height*d+"px",this.container.style.bottom="auto"):(this.container.style.bottom=sa.config.height-a.y+"px",this.container.style.top="auto")));this.container.style.display="block"};z.prototype.hide=function(a){var c=this.container,d;(d=this.parentListCon)&&d.hide(300);this.hideFnIds.push(setTimeout(function(){c.style.display="none"},a))};z.prototype.dispose=function(){var a=
this.atomicLists,c=this.refContainers,d,b;d=this.hideFnIds.length=0;for(b=a.length;d<b;d++)a[d].dispose();d=a.length=0;for(b=c.length;d<b;d++)c[d].dispose();c.length=0};K.prototype.init=function(c){var d=a.getKeys();this.container||(c=a.getComponent("div0",c,d.KEY_DIV),(c=c())&&(c.innerHTML=""),this.container=new z(c,this.measurement));return this};K.prototype.getFirstContainer=function(){return this.container};K.prototype.appendAsList=function(a,c){var d=this,b,h=this.container.hoverOverStyle,e=
this.container.hoverOutStyle;(function na(a,c){var f,g=0,l,k,t,p,m,D,w,G;w=c?c:d.container;f=a instanceof Array?a:[a];for(l=f.length;g<l;g++){k=f[g];t=new r({hoverOverStyle:h,hoverOutStyle:e});for(p in k)t.name=p,m=k[p],t.action=m.action,t.setStyle(m.style),-1!==p.search(/^<[^<]+>$/)&&(t.hoverOverStyle={},t.hoverOutStyle={},m.handler=V),D=m.handler,"function"!==typeof D?G=na(D,new z(O.createElement("div"))):t.handler=m.handler;w.addAtomicListItem(t);G&&(G.parentListCon=w,w.refContainers.push(G),t.assignSubContainer(G));
G=void 0}return b=w})(a,c);return b};K.prototype.dispose=function(){this.container.dispose();this.container=void 0};w.prototype.registerSymbol=function(a){B.register(this.symbol,a)};w.prototype._setConfiguaration=function(a){this.conf?J(a,this.conf,!0):this.conf=a};w.prototype.attachEventHandlers=function(a,c){var d=this.evt,b=a.tooltext,h=a.click||V,e=a.hover,f=c&&c.click||V,g=this;b&&(d.tooltext=b);d.click="function"===typeof h?function(){f();h.apply(g,arguments)}:function(){var a=h.fn,c=h.context,
d=(h.args||[]).slice(0);h.hasOwnProperty("context")?d.push(g):c=g;[].push.apply(d,arguments);f();a.apply(c,d)};e&&e instanceof Array&&(d.hover=e);this.node&&this.node.tooltip(this.evt.tooltext).buttonclick(this.evt.click).hover(this.evt.hover[0],this.evt.hover[1]);return g};w.prototype.getLogicalSpace=function(){return{width:this.conf.width*(this.conf.scale||1),height:this.conf.height*(this.conf.scale||1)}};w.prototype.show=function(){var a=this.node;a&&a.css({display:"block"})};w.prototype.hide=
function(){var a=this.node;a&&a.css({display:"none"})};w.prototype.draw=function(c,d,b){var h=this.conf||{},e,f,g=a.getKeys(),l=sa.get("config","animationObj"),k=l.animObj,p=l.dummyObj,m=l.duration;this.isPlaintext?f=this.symbol:e=this.symbol;void 0!==b.idCount&&(this._id+=b.idCount);h.hoverFill=h.hoverFill?M(h.hoverFill):M(U(N(h.fill),80));b=this.node=a.getComponent(this._id,this.pId,g.KEY_BUTTON,!0)(c,d,f,e,{width:h.width*h.scale,height:h.height*h.scale,r:h.radius*h.scale,verticalPadding:h.symbolVPadding*
h.scale,horizontalPadding:h.symbolHPadding},b.parentLayer).labelcss(this.conf.btnTextStyle);b.attr({ishot:!0,fill:[h.fill,h.labelFill,h.symbolFill,h.hoverFill,!0],stroke:[h.stroke,h.symbolStroke],"stroke-width":[h.strokeWidth,h.symbolStrokeWidth]}).tooltip(this.evt.tooltext).buttonclick(this.evt.click).hover(this.evt.hover[0],this.evt.hover[1]);a.getCreationStatus()||(this.node.unclick(),this.node.animateWith(p,k,{"button-repaint":[c,d,h.width*h.scale,h.height*h.scale,h.radius*h.scale]},m,l.animType),
this.node.attr({"button-label":f,"button-padding":[h.symbolHPadding,h.symbolVPadding*h.scale]}),this.node.buttonclick(this.evt.click));b.getBBox=function(){return{x:c,y:d,width:h.width*h.scale,height:h.height*h.scale}};return b};w.prototype.dispose=function(){var a=this.node;a&&a.remove();this.node=void 0};F.prototype=Object.create(w.prototype);F.prototype.constructor=F;F.prototype.check=function(){var a=this.pos;this.checked=!0;this.regSymbolCmd=l;this.node&&(this.registerSymbol(this.regSymbolCmd),
this.node.attr({"button-repaint":[a.x,a.y,a.width,a.height,a.r]}))};F.prototype.uncheck=function(){var a=this.pos;this.checked=!1;this.regSymbolCmd=g;this.node&&(this.registerSymbol(this.regSymbolCmd),this.node.attr({"button-repaint":[a.x,a.y,a.width,a.height,a.r]}))};F.prototype.click=function(){this.checked?this.uncheck():this.check()};F.prototype.attachEventHandlers=function(a){var c=this;w.prototype.attachEventHandlers.apply(this,[a,{click:function(){c.click()}}])};F.prototype.getLogicalSpace=
function(){var a=sa.linkedItems.smartLabel,c=this.text.style,d;d=w.prototype.getLogicalSpace.apply(this,arguments);a.useEllipsesOnOverflow(sa.config.useEllipsesWhenOverflow);a.setStyle(c);a=a.getSmartText(this.text.plaintext);return{width:a.width+this.interPadding+d.width,height:Math.max(d.height,a.height)}};F.prototype.draw=function(c,d,b){var h,e=this.conf,f;f=sa.linkedItems.smartLabel;var g=C.colorManager,l=this.text.plaintext,k,p=a.getKeys();this.registerSymbol(this.regSymbolCmd);h=this.node=
w.prototype.draw.apply(this,arguments);this.pos={x:c,y:d,width:e.width,height:e.height,r:e.radius};k=this.text.style;k.fill=k.fill||"#"+g.getColor("baseFontColor");f.useEllipsesOnOverflow(sa.config.useEllipsesWhenOverflow);f.setStyle(k);f=f.getSmartText(l);h=h.getBBox();g=a.getComponent(this._id,this.pId,p.KEY_TEXT);this.textNode=g(b.parentLayer).attr({text:l,x:h.x+h.width+f.width/2+this.interPadding,y:h.y+h.height/2}).css(k);e=e.height>f.height?e.height:f.height;g=a.getComponent(this._id,this.pId,
p.KEY_RECT);return g(b.parentLayer).attr({height:e,width:h.width+f.width+this.interPadding,x:c,y:d,stroke:T})};F.prototype.dispose=function(){this.textNode&&this.textNode.remove();this.textNode=void 0;w.prototype.dispose.call(this)};q.prototype=Object.create(w.prototype);q.prototype.constructor=F;q.prototype.setConfiguaration=function(a){var c=C.colorManager;m.color||(m.color="#"+c.getColor("altHGridColor"));J(m,this.conf);J(a,this.conf)};q.prototype.getLogicalSpace=function(){var a=this.conf,c={};
J(m,c);J(c,a);return w.prototype.getLogicalSpace.call(this)};q.prototype.getDefaultLayer=function(){var c=a.getKeys();return a.getComponent(this._id,this.pId,c.KEY_GROUP)("scroll")};q.prototype.registerSymbol=void 0;q.prototype._setConfiguaration=function(){};q.prototype.attachEventHandlers=function(a){a&&a.scroll&&"function"===typeof a.scroll&&(this.evt.scroll=a.scroll);w.prototype.attachEventHandlers.apply(this,arguments);return this};q.prototype.draw=function(){var c,d,b,h,e,f,g,l,k,p,D,w,z,G,
n,F;n=this.conf;var r,K=a.getKeys(),B={},q=sa.get("config","animationObj"),u=q.animObj,R=q.dummyObj;b={};var P=q.duration;1===arguments.length?(n=arguments[0],c=n.x,d=n.y,g=n.parentLayer,e=!!n.sepLayer):(c=arguments[0],d=arguments[1],e=arguments[2],n&&e?J(e,n):e={},g=e.parentLayer,e=!!e.sepLayer);J(m,b);n.isHorizontal?delete b.width:delete b.height;J(b,n);d+=n.padding;b=n.height;h=n.width;f=n.isHorizontal;F=n.startPercent;l=n.scrollRatio;k=n.showButtons;p=n.displayFlat;D=n.fullCanvasWidth;w=n.windowedCanvasWidth;
z=n.color;G=n.roundEdges;B["scroll-repaint"]=[c,d,h,b];g=g?g:this.getDefaultLayer();r=a.getComponent(this._id,this.pId,K.KEY_RECT);g=e?r("scroll-child"):g;r=a.getComponent(this._id,this.pId,K.KEY_SCROLLER);this.node=r(c,d,h,b,f,{scrollPosition:n.scrollPosition||E(F,0),displayStyleFlat:p,showButtons:k},g).data("fullCanvasWidth",D).data("windowedCanvasWidth",w).attr({"scroll-ratio":l,fill:z,r:G&&2||0}).scroll(this.evt.scroll);a.getCreationStatus()||(this.node.undrag(),this.node.animateWith(R,u,B,P,
q.animType),this.node.attr({"scroll-display-style":p?"flat":"3d","scroll-position":n.scrollPosition||E(F,0)}).scroll(this.evt.scroll));return this.node};h.POSITION_TOP="top";h.POSITION_BOTTOM="bottom";h.prototype=Object.create(w.prototype);h.prototype.constructor=h;h.allNodes=[];h.prototype.getListRefernce=function(){return this.listContainerManager};h.prototype.attachEventHandler=function(a){var c=this.evt;if(a=a.tooltext)c.tooltext=a};h.prototype.getLogicalSpace=function(){var a=this.listContainerManager.getFirstContainer().atomicLists;
return a&&0===a.length?{width:0,height:0}:w.prototype.getLogicalSpace.call(this)};h.prototype.draw=function(){var a=this.listContainerManager.getFirstContainer().atomicLists;if(a&&0===a.length)return this.hide(),{getBBox:function(){return{width:0,height:0}}};a=w.prototype.draw.apply(this,arguments);h.allNodes.push(this.node);return a};h.prototype.dispose=function(){this.listContainerManager&&this.listContainerManager.dispose();this.listContainerManager=void 0;w.prototype.dispose.call(this)};d.prototype.addSymbol=
function(a,c){var d=this.symbolList;c?d.unshift(a):d.push(a)};d.prototype.setConfiguaration=function(a){var c=a.buttons;a=a.group;c&&J(c,this.btnConfig);a&&J(a,this.groupConfig)};d.prototype.draw=function(c,d,b){var h=this.preId,e=this.symbolList,f,g,l=this.groupConfig,k=this.btnConfig;f=k.reverseToolbarIcons;var p=d.x,m=d.y,D,w=0,z=0,G=Number.NEGATIVE_INFINITY;D=a.getKeys();h=this.id=h.toString()+b;H.toolbarGroup=H.toolbar||{};b=a.getComponent(this.id,this.pId,D.KEY_GROUP);c=b("toolbar-group"+h,
c).trackTooltip(!0);b=a.getComponent(this.id,this.pId,D.KEY_RECT);D=this.groupRect=b(c).attr({height:0,width:0,x:p,y:m});p+=l.hPadding;m+=l.vPadding;z+=l.hPadding;w+=l.vPadding;if(f)for(f=e.length-1;-1<f;f--)g=e[f],g._setConfiguaration(k),g=g.draw(p,m,{parentLayer:c}),g=g.getBBox(),G<g.height&&(G=g.height),p+=g.width+(g=k.spacing);else for(f=0,b=e.length;f<b;f++)g=e[f],g._setConfiguaration(k),g=g.draw(p,m,{parentLayer:c}),g=g.getBBox(),G<g.height&&(G=g.height),p+=g.width+(g=k.spacing);z+=p+l.hPadding-
d.x-g-l.offsetAdjustment;w+=G+l.vPadding+l.offsetAdjustment;isFinite(w)||(w=0);isFinite(z)||(z=0);D.attr({height:w,width:z}).attr({fill:l.fill,r:l.radius,stroke:l.borderColor,"stroke-width":l.borderThickness});g=D.getBBox();return{height:g.height,width:g.width}};d.prototype.getLogicalSpace=function(){var a=this.symbolList,c,d,b,h=0,e=0,f=Number.NEGATIVE_INFINITY,g=0;d=0;for(b=a.length;d<b;d++)c=a[d],c._setConfiguaration(this.btnConfig),c=c.getLogicalSpace(),e+=c.width+this.btnConfig.spacing,g+=c.width,
f=f<c.height?c.height:f;if(!g)return{width:0,height:0};f!==Number.NEGATIVE_INFINITY&&e&&(e-=this.btnConfig.spacing-2*this.groupConfig.hPadding-this.groupConfig.offsetAdjustment,h=f+2*this.groupConfig.vPadding+this.groupConfig.offsetAdjustment);return{width:e,height:h}};d.prototype.dispose=function(){for(var a=this.symbolList,c=0,d=a.length;c<d;c++)a[c].dispose();a.length=0;this.groupRect.remove()};f.prototype.getId=function(){return this.id};f.prototype.addComponent=function(a){this.componentGroups.push(a)};
f.prototype.draw=function(c,d,b,h){var e=this.componentGroups,f,g,l,k=this.toolbarConfig;l=this.id;var p=c,m,D,w=Number.NEGATIVE_INFINITY;m=a.getKeys();b=b||{};g=H.toolbar=b.parentGroup||H.toolbar||{};b=a.getComponent(this.id,this.pId,m.KEY_GROUP,!0);this.group=l=b(l,g);b=a.getComponent(this.id,this.pId,m.KEY_RECT,!0);m=this.toolbarRect=b(l).attr({height:0,width:0,x:p,y:d});p+=k.hPadding;d+=k.vPadding;b=0;for(g=e.length;b<g;b++)f=e[b],f.btnConfig.reverseToolbarIcons=E(h,f.btnConfig.reverseToolbarIcons),
D=f.groupConfig.spacing||1,f=f.draw(l,{x:p,y:d},b),p+=f.width+D,w=w>f.height?w:f.height;h=w;c=p-D-k.hPadding-c;isFinite(h)||(h=0);isFinite(c)||(c=0);m.attr({height:h+=2*k.vPadding,width:c+=2*k.hPadding}).attr({fill:k.fill,r:k.radius,stroke:k.borderColor,"stroke-width":k.borderThickness});return{height:h,width:c}};f.prototype.reverseDraw=function(a,c,d){this.draw(a,c,d,!0)};f.prototype.getLogicalSpace=function(){var a=this.componentGroups,c,d,b,h=c=0,e=Number.NEGATIVE_INFINITY,f,g=0;c=0;for(d=a.length;c<
d;c++)b=a[c],f=b.getLogicalSpace(),b=b.groupConfig.spacing||1,h+=f.width+b,g+=f.width,e=e<f.height?f.height:e;if(!g)return{width:0,height:0};h-=b-2*this.toolbarConfig.hPadding;c=e+2*this.toolbarConfig.vPadding;return{width:h,height:c}};f.prototype.dispose=function(){for(var c=this.componentGroups,d=0,b=c.length;d<b;d++)c[d].dispose();c.length=0;this.toolbarRect.remove();a.emptyPool(this.pId)};return{HorizontalToolbar:f,ComponentGroup:d,Symbol:w,CheckboxSymbol:F,Scroller:q,SymbolWithContext:h,getInstanceById:function(a){return c[a]}}};
Q.register("component",["toolbox","toolbox",{onceInitialized:!1,ALIGNMENT_HORIZONTAL:0,ALIGNMENT_VERTICAL:1,POSITION_TOP:0,POSITION_RIGHT:1,POSITION_BOTTOM:2,POSITION_LEFT:3,init:function(a){if(this.onceInitialized)return this.configure(),this._iCount;this._options=a;this._chart=a.chart;this._iCount=++K;this.configure();this.onceInitialized=!0;return this._iCount},configure:function(){var a,b,e=this._chart.jsonData.chart;k.scale=E(e.toolbarbuttonscale)||1.15;k.width=E(e.toolbarbuttonwidth,u?20:15);
k.height=E(e.toolbarbuttonheight,u?20:15);k.radius=E(e.toolbarbuttonradius,u?4:2);k.spacing=E(e.toolbarbuttonspacing,5);k.fill=M(r(e.toolbarbuttoncolor,"ffffff"));k.labelFill=M(r(e.toolbarlabelcolor,"cccccc"));k.symbolFill=M(r(e.toolbarsymbolcolor,"ffffff"));k.hoverFill=r(e.toolbarbuttonhovercolor);k.stroke=M(r(e.toolbarbuttonbordercolor,"bbbbbb"));k.symbolStroke=M(r(e.toolbarsymbolbordercolor,"9a9a9a"));k.strokeWidth=E(e.toolbarbuttonborderthickness,1);k.symbolStrokeWidth=E(e.toolbarsymbolborderthickness,
1);b=k.symbolPadding=E(e.toolbarsymbolpadding,5);k.symbolHPadding=E(e.toolbarsymbolhpadding,b);k.symbolVPadding=E(e.toolbarsymbolvpadding,b);k.reverseToolbarIcons=E(e.reversetoolbaricons,0);a=k.position=r(e.toolbarposition,"tr").toLowerCase();switch(a){case "tr":case "rt":case "top right":case "right top":a="tr";break;case "br":case "rb":case "bottom right":case "right bottom":a="br";break;case "tl":case "lt":case "top left":case "left top":a="tl";break;case "bl":case "lb":case "bottom left":case "left bottom":a=
"bl";break;default:a="tr"}b=k.hAlign="left"===(p+e.toolbarhalign).toLowerCase()?"l":a.charAt(1);a=k.vAlign="bottom"===(p+e.toolbarvalign).toLowerCase()?"b":a.charAt(0);k.hDirection=E(e.toolbarhdirection,"r"===b?-1:1);k.vDirection=E(e.toolbarvdirection,"b"===a?-1:1);k.vMargin=E(e.toolbarvmargin,6);k.hMargin=E(e.toolbarhmargin,10);e.toolbary&&e.toolbarx?(k.x=E(e.toolbarx),k.y=E(e.toolbary),delete k.spaceNotHardCoded):k.spaceNotHardCoded=!0;m.color=e.scrollcolor&&M(e.scrollcolor);m.padding=E(e.scrollpadding,
0);m.height=E(e.scrollheight,12);m.width=E(e.scrollwidth,12);m.displayFlat=E(e.flatscrollbars,0);m.scrollBar3DLighting=E(e.scrollbar3dlighting,1);m.startPercent=Math.min(1,Math.max(0,parseFloat(e.scrolltoend)||0));m.showButtons=!!E(e.scrollshowbuttons,1);m.buttonPadding=E(e.scrollbtnpadding,0);n.baseFontFamily=r(e.basefont,"Verdana,sans");n.baseFontSize=E(e.basefontsize,10);n.baseFontColor=r(e.basefontcolor,"595959")},getAPIInstances:function(a){var b={},g;g=this.componentPool=new H(this._chart.components,
this._iCount);g=e(g,this._options);switch(a){case this.ALIGNMENT_HORIZONTAL:b.Toolbar=g.HorizontalToolbar}b.ComponentGroup=g.ComponentGroup;b.Symbol=g.Symbol;b.Scroller=g.Scroller;b.SymbolWithContext=g.SymbolWithContext;b.SymbolStore=B;b.CheckboxSymbol=g.CheckboxSymbol;return b},getDefaultConfiguration:function(){return k},clean:function(){this.componentPool.hideRecursive(this._iCount)}}])}]);Q.register("module",["private","modules.renderer.js-base",function(){var b=this,v=b.hcLib,J=v.Raphael,C=J._availableAnimAttrs,
H="VML"===J.type,A=b.window,u=A.document,a=v.BLANKSTRING,O=v.HUNDREDSTRING,q=v.preDefStr,M=q.configStr,U=q.animationObjStr,N=q.NORMAL,E=q.BOLD,r=q.hiddenStr,k=q.visibleStr,m=q.ROUND,n=q.miterStr,L=v.EXPORTACTION,g=v.EXPORTFORMAT,l=v.EXPORTMODE,B=v.LOGMODE,e=q.POSITION_START,V=q.POSITION_TOP,p=q.POSITION_END,T=q.POSITION_BOTTOM,K=q.POSITION_MIDDLE,t=q.POINTER,Z=q.noneStr,P=q.SEVENTYSTRING,S=q.blackStr="AAAAAA",z=q.AUTOSTRING,R=v.parseConfiguration,w=v.componentConfigurer,F=v.BLANKSTRING,X=v.DEFAULT_EXPORT_URL,
h=v.DEFAULT_LOG_URL,d=v.pluck,f=v.getValidValue,c=v.pluckNumber,D=v.getFirstValue,G=v.parseUnsafeString,aa=v.extend2,Ra=v.getDashStyle,Ia=v.graphics.mapSymbolName,sa=v.regex.dropHash,wa=v.HASHSTRING,ca=A.Image,ma=v.setImageDisplayMode,qa=v.removeEvent,va=v.getPosition,ha=v.getMouseCoordinate,ra=v.addEvent,ka=8===A.document.documentMode?k:F,na=v.toRaphaelColor,da=Math,oa=da.min,Y=da.max,za=da.abs,fa=da.ceil,Aa=da.floor,ua=da.round,ia=da.sin,xa=da.cos,ja=Math.PI,ya=ja/2,W=2*ja,Ma=ja+ya,ea=v.getFirstColor,
ga=v.setLineHeight,la=v.pluckFontSize,Ca=v.graphics.getDarkColor,Ha=v.graphics.getLightColor,pa=v.graphics.convertColor,La=v.POSITION_CENTER,Ja=v.POSITION_RIGHT,Fa=v.POSITION_LEFT,ta=v.chartAPI,Ka=v.COMMASTRING,Ea=v.PXSTRING,Da=v.componentDispose,Ga,Na=A.navigator.userAgent.match(/ (iPad|iPhone|iPod)/g),Ua={left:e,right:p,center:K},Pa=v.each,Sa="rgba(255,0,0,"+(v.isIE?.002:1E-6)+")",ab=v.BGRATIOSTRING,Xa=v.graphics.getAngle,Za=v.NumberFormatter,bb=v.getLinkAction,eb=v.hasTouch=void 0!==u.documentElement.ontouchstart,
Va={1:E,0:N},Ya=function(a){a=a.replace("rgba(",F).split(",");return"#"+("000000"+(a[0]<<16|a[1]<<8|a[2]).toString(16)).slice(-6)},$a=!v.CREDIT_REGEX.test(A.location.hostname),Ta=v.chartPaletteStr={chart2D:{bgColor:"bgColor",bgAlpha:"bgAlpha",bgAngle:"bgAngle",bgRatio:"bgRatio",canvasBgColor:"canvasBgColor",canvasBaseColor:"canvasBaseColor",divLineColor:"divLineColor",legendBgColor:"legendBgColor",legendBorderColor:"legendBorderColor",toolTipbgColor:"toolTipbgColor",toolTipBorderColor:"toolTipBorderColor",
baseFontColor:"baseFontColor",anchorBgColor:"anchorBgColor"},chart3D:{bgColor:"bgColor3D",bgAlpha:"bgAlpha3D",bgAngle:"bgAngle3D",bgRatio:"bgRatio3D",canvasBgColor:"canvasBgColor3D",canvasBaseColor:"canvasBaseColor3D",divLineColor:"divLineColor3D",divLineAlpha:"divLineAlpha3D",legendBgColor:"legendBgColor3D",legendBorderColor:"legendBorderColor3D",toolTipbgColor:"toolTipbgColor3D",toolTipBorderColor:"toolTipBorderColor3D",baseFontColor:"baseFontColor3D",anchorBgColor:"anchorBgColor3D"}},kb=function(){var a=
{},c,d=function(){var h,e,f,g,l=0,k,p,t=parseInt(b.core.options.resizeTrackingInterval,10)||300,m={},D=function(){m.itemVar._containerOffsetW=m.parentEle.offsetWidth;m.itemVar._containerOffsetH=m.parentEle.offsetHeight},w;for(h in a)l+=1,e=a[h],f=e.jsVars,k=e.ref,!e.disposed&&(g=k&&k.parentNode)&&(p=k.style)&&(/\%/g.test(p.width)||/\%/g.test(p.height))?(k=g.offsetWidth,w=g.offsetHeight,!f.resizeLocked&&(k&&f._containerOffsetW!==k||w&&f._containerOffsetH!==w)&&(e.resizeTo&&e.resizeTo(),m.itemVar=f,
m.parentEle=g,setTimeout(D,1))):(delete a[h],--l);c=l?setTimeout(d,t):clearTimeout(c)};return function(h,e){var f=h.jsVars,g=e||h.ref&&h.ref.parentNode||{};f._containerOffsetW=g.parentNode.offsetWidth;f._containerOffsetH=g.parentNode.offsetHeight;a[h.id]=h;c||(c=setTimeout(d,parseInt(b.core.options.resizeTrackingInterval,10)||300))}}(),hb=v.schedular,ib=v.priorityList,ob={getExternalInterfaceMethods:function(){var a=ta[this.jsVars.type],a=a&&a.eiMethods,c="saveAsImage,print,exportChart,getXML,hasRendered,signature,cancelExport,getSVGString,lockResize,showChartMessage,drawCrossLine,",
d;if("string"===typeof a)c+=a+Ka;else if(void 0!==a||null!==a)for(d in a)c+=d+Ka;return c.substr(0,c.length-1)},drawOverlayButton:function(a){var c=this.jsVars,d=c.overlayButton,h,e;if(a&&a.show){d||(d=c.overlayButton=u.createElement("span"),v.dem.listen(d,"click",function(){b.raiseEvent("OverlayButtonClick",a,c.fcObj)}));for(h=a.message?a.message:"Back";d.firstChild;)d.removeChild(d.firstChild);d.appendChild(u.createTextNode(h));c.overlayButtonMessage=h;h={border:"1px solid "+(a.borderColor?a.borderColor.replace(sa,
wa):"#7f8975"),backgroundColor:a.bgColor?a.bgColor.replace(sa,wa):"#edefec",fontFamily:a.font?a.font:"Verdana,sans",color:"#"+a.fontColor?a.fontColor:"49563a",fontSize:(a.fontSize?a.fontSize:"10")+Ea,padding:(a.padding?a.padding:"3")+Ea,fontWeight:0===parseInt(a.bold,10)?N:E,position:"absolute",top:"0",right:"0",_cursor:"hand",cursor:t};for(e in h)d.style[e]=h[e];c.hcObj.container.appendChild(d);c.overlayButtonActive=!0}else d&&(c.overlayButton=d.parentNode.removeChild(d),c.overlayButtonActive=!1,
delete c.overlayButtonMessage)},print:function(a){var c=this.apiInstance,d=aa({},a);if(c.config.isPrinting||!c.config.hasRendered)return!1;b.raiseEvent("BeforePrint",d,c.chartInstance,void 0,function(){var a=c.linkedItems.container,h=[],e=a.parentNode,f=u.body||u.getElementsByTagName("body")[0],g=f.childNodes,l,p,ba,t;c.config.isPrinting=!0;Pa(g,function(a,c){1==a.nodeType&&(h[c]=a.style.display,a.style.display="none")});if(!1!==d.hideButtons){p=c.components.chartMenuBar.componentGroups[0].symbolList;
t=0;for(l=p.length;t<l;t++)if((ba=p[t])instanceof c.components.toolBoxAPI.SymbolWithContext){ba=ba.getListRefernce().getFirstContainer();break}ba.container.style.display=Z}f.appendChild(c.linkedItems.container);A.print();setTimeout(function(){ba.container.style.display=k;e.appendChild(a);Pa(g,function(a,c){1==a.nodeType&&(a.style.display=h[c])});!1!==d.hideButtons&&(ba.container.style.display=k);c.config.isPrinting=!1;b.raiseEvent("PrintComplete",d,c.chartInstance)},1E3)},function(){b.raiseEvent("PrintCancelled",
d,c.chartInstance)})},exportChart:function(a){return v.exportChart.call(this.apiInstance,a)},getSVGString:function(a){var c=this,d=c.apiInstance,b=d.chartInstance.args.asyncRender,d=d.getJobList();if("function"===typeof a)d.eiMethods.push(hb.addJob(function(){a(c.jsVars&&c.jsVars.instanceAPI&&c.jsVars.instanceAPI.components&&c.jsVars.instanceAPI.components.paper&&c.jsVars.instanceAPI.components.paper.toSVG())},ib.postRender));else return b?"<svg></svg>":c.jsVars&&c.jsVars.instanceAPI&&c.jsVars.instanceAPI.components&&
c.jsVars.instanceAPI.components.paper&&c.jsVars.instanceAPI.components.paper.toSVG()},resize:function(){var a=this.jsVars,c=a.container;a.instanceAPI.config.elScroll=!1;a.instanceAPI&&a.instanceAPI.redraw?a.instanceAPI.redraw():v.createChart(a.fcObj,c,a.type,void 0,void 0,!1,!0);delete a.isResizing},lockResize:function(a){return"boolean"!==typeof a?!!this.jsVars.resizeLocked:this.jsVars.resizeLocked=a},showChartMessage:function(a,b,h,e){var f=this,g=f.jsVars,l=f.apiInstance,k=l.chartInstance,p=k.args.asyncRender,
k=k.options,t=l.getJobList(),m,D=function(){b&&l&&l.config.hasRendered?(l._show(),f.showMessage(a,m,h)):(l._hide(),l.setChartMessage(a,{_chartMessageStyle:m}),l.drawChartMessage())};!e&&(e={});m={fontFamily:d(e.font,k.baseChartMessageFont,"Verdana,sans"),fontSize:c(e.fontSize,k.baseChartMessageFontSize,10),color:d(e.color&&pa(e.color,e.alpha),k.baseChartMessageColor)};g.msgStore[a]&&(a=g.msgStore[a]);p?t.eiMethods.push(hb.addJob(D,ib.postRender)):D();return a},showMessage:function(a,c,d){var b=this.apiInstance,
h=b.config,e=b.components,f=b.graphics.messageGroup,g=e.chartMessage||(e.chartMessage={}),g=g.graphics||(g.graphics={}),l=e.paper,k=b.linkedItems.smartLabel,e=g.messageText,p=g.messageVeil,m=g.message,D=l.width,w=l.height;f?f.toFront():b.graphics.messageGroup=f=l.group("messageGroup");p||(p=g.messageVeil=l.rect(0,0,D,w,f).attr({fill:"rgba(0,0,0,0.2)",stroke:Z}));p.show().toFront().attr("cursor",d?t:"default")[d?"click":"unclick"](b._hideChartMessage,b);e||(e=g.messageText=l.text(D/2,w/2,F,f));m&&
m.hide();a=a||F;k.setStyle(c);a=k.getSmartText(a,D-(h.marginRight||0)-(h.marginLeft||0),w-(h.marginTop||0)-(h.marginBotton||0));e.attr({"font-size":c.fontSize,"font-family":c.fontFamily,fill:c.color,text:a.text,ishot:!0,cursor:d?t:"default","line-height":14})[d?"click":"unclick"](b._hideChartMessage,b).show().toFront()},signature:function(){return"FusionCharts/3.4.0 (XT)"},drawCrossLine:function(a){var c=this.apiInstance.components,c=c["datasetGroup_"+c.dataset[0].type];c.config.customHighlightFlag=
!0;c.drawTrendRegion&&c.drawTrendRegion();c._moveTrendRegion&&c._moveTrendRegion(a,void 0,!1)}};delete C.fill;delete C.stroke;b.core.options.resizeTrackingInterval=300;b.core.options.preventTrackResize=!1;b.core.options.SVGDefinitionURL="relative";v.createChart=function(h,e,f,g,I,l,k){var p=h.jsVars,t,m=ta[f||(f=h.chartType())],D=h.apiInstance,z=p.hasNativeMessage;l=h.options;var G=h.args,n=p.secondTimeRender,r;if(e.offsetWidth&&e.offsetHeight){e.FusionCharts=b.core.items[h.id];G.asyncRender=c(G.asyncRender,
1);/^\s*absolute\s*$/i.test(b.core.options.SVGDefinitionURL)&&(J._url=(J._g&&J._g.win||A).location.href.replace(/#.*?$/,a));r=function(a){var c={renderer:"javascript"},d=p.fcObj,f=d.width,I=d.height,l=p.overlayButton;z=p.hasNativeMessage;p.container=e;p.hcObj=a;p.width=e.offsetWidth;p.height=e.offsetHeight;p.instanceAPI=D;a.hasRendered&&p.overlayButtonActive&&l&&(l.innerHTML=F,l.appendChild(u.createTextNode(p.overlayButtonMessage)),a.container.appendChild(l));(/\%/g.test(f)||/\%/g.test(I))&&e&&e.parentNode&&
!b.core.options.preventTrackResize&&kb(d,e);if(g&&(g({success:a.hasRendered,ref:e,id:h.id}),a.hasRendered)){D.config.hasRendered=!0;if(!0===h.disposed)return;z||(d.__state.firstRenderNotified=!0,D.getJobList().postRender.push(hb.addJob(function(){v.raiseEvent("rendered",{renderer:"javascript"},d,[d.id])},ib.postRender)))}a.hasRendered&&p.previousDrawCount<p.drawCount&&(c.width=p.width,c.height=p.height,c.drawCount=p.drawCount,c.displayingMessage=z,c.renderer=d.options.renderer,v.raiseEvent("drawcomplete",
c,d,[d.id]),z||k||D.getJobList().postRender.push(hb.addJob(function(){d.__state&&!d.__state.firstRenderNotified&&v.raiseEvent("rendered",{renderer:"javascript"},d,[d.id]);b.raiseEvent("renderComplete",c,d)},ib.postRender)))};if(D&&D.inited)b.raiseEvent("internal.drawStart",{chartType:f,logicName:D.name,logicBase:D.base&&D.base.name,defaultSeriesType:D.defaultSeriesType},h),I=h.jsVars&&h.jsVars.themeObject&&h.jsVars.themeObject.getThemedJSONData()||h.getChartData(b.dataFormats.JSON,!0),t=I.data,D.config&&
D.config.hasChartMessage&&D._hideChartMessage(),D.jsonData=t,k||v.raiseEvent("dataloaded",{},h,[h.id]),D._removeWaitingJobs(),D.configure(),D._feedAxesRawData(),D._setCategories(),w(D),D.draw(),h.hasRendered()||D.setChartEvents(),r({hasRendered:!0,container:e});else if(D&&"base"===f)D.setChartMessage(I,h,e),D.drawChartMessage(),e.signature=function(){return"FusionCharts/3.4.0 (XT)"},b.renderer.notifyRender({success:!0,ref:e,id:h.id});else{D&&"base"===D.name&&"base"!==f&&(D.dispose(),D=void 0);D?D.config&&
D.config.hasChartMessage&&D._hideChartMessage():D=h.apiInstance=m?new ta(f):new ta("base");D.chartInstance=h;D.origRenderWidth=h.__state.renderedWidth;D.origRenderHeight=h.__state.renderedHeight;if("base"!==f){e.jsVars=h.jsVars;m=D.eiMethods;h.ref=e;p.type=f;b.extend(e,ob);if(m&&"string"!==typeof m)for(t in m)e[t]=m[t];v.raiseEvent("loaded",{type:f,renderer:"javascript"},h,[h.id])}if("base"===f)D.setChartMessage(I,h,e),D.drawChartMessage();else if(void 0!==I)"string"===typeof I&&(D.setChartMessage(I,
h,e),D.drawChartMessage(),z=p.hasNativeMessage=!0);else if(!D||!D.init||D&&"base"===D.name)h._chartMessageImageStyle={imageHAlign:d(G.typeNotSupportedMessageImageHAlign,l.baseChartMessageImageHAlign).toLowerCase(),imageVAlign:d(G.typeNotSupportedMessageImageVAlign,l.baseChartMessageImageVAlign).toLowerCase(),imageAlpha:c(G.typeNotSupportedMessageImageAlpha,l.baseChartMessageImageAlpha),imageScale:c(G.typeNotSupportedMessageImageScale,l.baseChartMessageImageScale)},h._chartMessageStyle={color:G.typeNotSupportedMessageColor||
l.baseChartMessageColor,fontFamily:G.typeNotSupportedMessageFont||l.baseChartMessageFont,fontSize:G.typeNotSupportedMessageFontSize||l.baseChartMessageFontSize},D.setChartMessage(l.typeNotSupportedMessage,h,e),D.drawChartMessage(),z=p.hasNativeMessage=!0;else if(p.message)D.setChartMessage(p.message,h,e),D.drawChartMessage(),z=p.hasNativeMessage=!0;else if(p.loadError)h._chartMessageImageStyle={imageHAlign:d(G.dataLoadErrorMessageImageHAlign,l.baseChartMessageImageHAlign).toLowerCase(),imageVAlign:d(G.dataLoadErrorMessageImageVAlign,
l.baseChartMessageImageVAlign).toLowerCase(),imageAlpha:c(G.dataLoadErrorMessageImageAlpha,l.baseChartMessageImageAlpha),imageScale:c(G.dataLoadErrorMessageImageScale,l.baseChartMessageImageScale)},h._chartMessageStyle={color:G.dataLoadErrorMessageColor||l.baseChartMessageColor,fontFamily:G.dataLoadErrorMessageFont||l.baseChartMessageFont,fontSize:G.dataLoadErrorMessageFontSize||l.baseChartMessageFontSize},D.setChartMessage(l.dataLoadErrorMessage,h,e),D.drawChartMessage(),z=p.hasNativeMessage=!0;
else if(p.stallLoad)h._chartMessageImageStyle={imageHAlign:d(G.dataLoadStartMessageImageHAlign,l.baseChartMessageImageHAlign).toLowerCase(),imageVAlign:d(G.dataLoadStartMessageImageVAlign,l.baseChartMessageImageVAlign).toLowerCase(),imageAlpha:c(G.dataLoadStartMessageImageAlpha,l.baseChartMessageImageAlpha),imageScale:c(G.dataLoadStartMessageImageScale,l.baseChartMessageImageScale)},h._chartMessageStyle={fontFamily:G.dataLoadStartMessageFont||l.baseChartMessageFont,fontSize:G.dataLoadStartMessageFontSize||
l.baseChartMessageFontSize,color:G.dataLoadStartMessageColor||l.baseChartMessageColor},D.setChartMessage(l.dataLoadStartMessage,h,e),D.drawChartMessage(),z=p.hasNativeMessage=!0,r({hasRendered:!0,container:e});else if("zoomscatter"!==f||u.createElement("canvas").getContext)if(b.raiseEvent("internal.drawStart",{chartType:f,logicName:D.name,logicBase:D.base&&D.base.name,defaultSeriesType:D.defaultSeriesType},h),I=h.jsVars&&h.jsVars.themeObject&&h.jsVars.themeObject.getThemedJSONData()||h.getChartData(b.dataFormats.JSON,
!0),t=I.data,I.error instanceof Error)h._chartMessageImageStyle={imageHAlign:d(G.dataInvalidMessageImageHAlign,l.baseChartMessageImageHAlign).toLowerCase(),imageVAlign:d(G.dataInvalidMessageImageVAlign,l.baseChartMessageImageVAlign).toLowerCase(),imageAlpha:c(G.dataInvalidMessageImageAlpha,l.baseChartMessageImageAlpha),imageScale:c(G.dataInvalidMessageImageScale,l.baseChartMessageImageScale)},h._chartMessageStyle={fontFamily:G.dataInvalidMessageFont||l.baseChartMessageFont,fontSize:G.dataInvalidMessageFontSize||
l.baseChartMessageFontSize,color:G.dataInvalidMessageColor||l.baseChartMessageColor},D.setChartMessage(l.dataInvalidMessage,h,e),D.drawChartMessage(),z=p.hasNativeMessage=!0,h.__state.dataReady=!1,k||b.raiseEvent("dataInvalid",{error:I.error},p.fcObj,void 0,function(){v.raiseEvent("dataxmlinvalid",{},h,[h.id])});else{k||v.raiseEvent("dataloaded",{},h,[h.id]);if(!0===D.chartInstance.disposed)return;G.asyncRender&&!n&&"base"!==f&&(D.setChartMessage(D.chartInstance.options.loadMessage,void 0,e),D.drawChartMessage(),
D.config.hasChartMessage=!1);D.init(e,t,h,r)}else h._chartMessageImageStyle={imageHAlign:d(G.browserNotSupportedMessageImageHAlign,l.baseChartMessageImageHAlign).toLowerCase(),imageVAlign:d(G.browserNotSupportedMessageImageVAlign,l.baseChartMessageImageVAlign).toLowerCase(),imageAlpha:c(G.browserNotSupportedMessageImageAlpha,l.baseChartMessageImageAlpha),imageScale:c(G.browserNotSupportedMessageImageScale,l.baseChartMessageImageScale)},h._chartMessageStyle={color:G.browserNotSupportedMessageColor||
l.baseChartMessageColor,fontFamily:G.browserNotSupportedMessageFont||l.baseChartMessageFont,fontSize:G.browserNotSupportedMessageFontSize||l.baseChartMessageFontSize},D.setChartMessage(d(G.browserNotSupportedMessage,l.browserNotSupportedMessage),h,e),D.drawChartMessage(),z=p.hasNativeMessage=!0}p.secondTimeRender=!0}};Q.register("component",["legend","legend",{customConfigFn:null,init:function(){this.graphics||(this.graphics={});this.item||(this.items=[]);this.components||(this.components={})},drawLegend:function(a,
d){var b,h,f,g=this.chart,l=g.config;b=g.components;var k=b.paper,t=this.config,m=this.graphics||(this.graphics={}),D=g.graphics.legendGroup,w;h=m.box;var z=m.caption,G,n=l.height-l.canvasBottom,r=l.canvasLeft,B=l.canvasWidth,q=t.chartMarginLeft||0,u=t.chartMarginRight||0,R=t.chartMarginBottom||0,aa=l.actionBarHeight||0,L=t.actualCanvasMarginLeft||0,P=l.actualCanvasMarginBottom||0,v=l.actualCanvasMarginRight||0,Z=t.alignLegendWithCanvas,E=l.height,T=l.canvasTop,S=t.width,X=t.height,A=l.borderWidth;
f=t.borderRadius;var C=t.backgroundColor,H=t.borderColor,z=t.borderWidth||0,Ra=t.legendPos,N=.5*z,ca=.5*z+2,Ia=c(t.padding,4),sa=.5*Ia,wa=t.scroll.enabled,ma=t.drawn,g=g.get(M,U),va=g.dummyObj,ra=g.animObj,ha=g.transposeAnimDuration,qa=g.animType,na,W,da,fa,ka,g=b.legendScrollBar,O=0,za=0,O=l.oriCanvasLeft,ia=l.oriTopSpace,za=l.oriBottomSpace,ja=b.tb,ua=b.toolBoxAPI.Scroller;Ra===Ja&&(t.align=Ja,t.verticalAlign=K,G=t.layout="vertical");G?(void 0===a&&(a=l.width-u-v-S-A),void 0===d&&(O=c(ia,T),za=
c(za,n),d=O+.5*(E-za-O-X)+(t.y||0))):(void 0===a&&(G=l.width-(q+L+(u+v)),G=Z?B-S:G-S,r=Z?c(O,r):q+L,a=r+G/2),void 0===d&&(d=E-X-P-R-aa));X=J.crispBound(a,d,S,X,z);a=X.x;d=X.y;S=X.width;X=X.height;ma?(t.xL&&(t.xL=oa(Y(t.xL,ca),l.width-t.width-ca)),t.yL&&(t.yL=oa(Y(t.yL,ca),l.height-t.height-ca)),D.show().animateWith(va,ra,{transform:["T",t.xL||a,t.yL||d]},ha,qa)):D.show().transform(["T",a,d]);t.xPos=a;t.yPos=d;D.attr({cursor:t.legendAllowDrag?"move":F});t.legendAllowDrag&&!t._dragEvtListenerBinded&&
(D.drag(function(a,c){var d=c[0],b=c[1];t.legendAllowDrag&&(fa=W+d,ka=da+b,fa=oa(Y(fa,ca),l.width-t.width-ca),ka=oa(Y(ka,ca),l.height-t.height-ca),D.transform("t"+fa+","+ka),t.xPos=t.xL=fa,t.yPos=t.yL=ka)},function(){t.legendAllowDrag&&(W=t.xL||t.xPos,da=t.yL||t.yPos)}),t._dragEvtListenerBinded=!0);ma={x:0,y:0,width:S,height:X,r:f,stroke:H,"stroke-width":z,fill:C||"none",ishot:t.legendAllowDrag};h?(h.animateWith(va,ra,{x:0,y:0,width:S,height:X,r:f},ha,qa),h.attr({stroke:H,"stroke-width":z,fill:C||
"none"})):h=m.box=k.rect(ma,D);ma=t.drawn=!0;h.shadow(t&&t.shadow);w=m.itemGroup||(m.itemGroup=k.group("item",D));wa?(h={isHorizontal:!1},f={scroll:function(a){w.transform(["T",0,(na-t.totalHeight)*a])},mousedown:function(a){a.preventDefault();a.stopPropagation()}},g=b.legendScrollBar,g||(b.legendScrollBar=g=(new ua(h,(ja.idCount||0)+1,ja.pId)).attachEventHandlers(f)),na=X-Ia,w.attr({"clip-rect":"0,"+sa+(","+S+","+na)}),b=(na+Ia)/t.totalHeight,g.draw(S-10+sa-z,N,{height:X-z,scrollRatio:b,startPercent:0,
color:t.legendScrollBgColor}),D.appendChild(g.node)):(g&&g.node&&g.node.hide(),w.attr({"clip-rect":null}),w.node&&w.node.removeAttribute("clip-path"));z=m.caption;if(t.title&&t.title.text!==F&&t.validLegendItem){switch(t.title.align){case e:wa=Ia;break;case p:wa=S-Ia-(wa?10:0);break;default:wa=.5*S}D.trackTooltip(!0);S=t.title.style;ma={text:t.title.text,title:t.title.originalText||F,x:wa,y:Ia,fill:t.title.style.color,direction:t.textDirection,"line-height":S.lineHeight,"vertical-align":V,"text-anchor":t.title.align};
Ia={"font-weight":S.fontWeight,"font-style":S.fontStyle,"font-family":S.fontFamily,"font-size":S.fontSize};z?(z.show().attr(ma),z.css(Ia)):z=m.caption=k.text(ma,Ia,w);z.tooltip(t.title.originalText)}else z&&z.hide();t.showLegend&&!1!==t.enabled?this._drawPointLegendItem():D.hide()},reverseLegendFn:function(){var a=this.components.items||[],c,d=[],b,h=0,e=this.config;for(c=a.length-1;0<=c;c--)a[c].configuration.mainDS?(b=c,d=d.concat(a.splice(b,h+1)),h=0):h++;d.length&&(e.orderReversed=!0,this.components.items=
d.slice(0))},_manageLegendPosition:function(a){var c=this.config,d=this.chart.hasSubDataset,b=c.legendPos,h=this.components.items;c.reversed?d?!c.orderReversed&&this.reverseLegendFn():h&&h.reverse():d&&c.orderReversed&&this.reverseLegendFn();return b===Ja?this._placeLegendBlockRight(a):this._placeLegendBlockBottom(a)},_placeLegendBlockBottom:function(d){var b=this.chart,h=this.components,e=b.config,f=v.TESTSTR,g=e.width,l=e.height,k=e.canvasLeft,t=e.width-(e.canvasRight||0),p=b.linkedItems.smartLabel,
m=this.config,D=m.chartMarginLeft,z=m.chartMarginRight,w=m.chartMarginTop,n=m.alignLegendWithCanvas,r=m.minimiseWrappingInLegend,B=m.legendScale,K=m.numColumns,q=m.padding,u=2*d,R=2*q,aa=R,L=m.title,P=L.padding,Z=parseInt(m.itemStyle.fontSize,10)||10,E=h.items||[],V=E.length,h=m.oriSymbolPadding,S=m.textPadding,T=m.legendPadding,X=e.canvasMarginRight,A=e.canvasMarginLeft,C=b.components.yAxis||[],b=C[0],C=C[1],b=b&&b.config||{},C=C&&C.config||{},H=b.nameMaxW,Ra=C.nameMaxW,N=b.name&&b.name.style||{},
J=C.name&&C.name.style||{},ca=b.axisName||F,Ia=C.axisName||F,sa=0,wa=0,M=0,ma=0,va=C=0,ra=0,ha=0,qa=[],na=!1,W=0,da=0,ka,O,za=b=e.canvasWidth-e.canvasMarginLeft-e.canvasMarginRight,ia;m.paddingBottom=e.height-e.canvasBottom;p.useEllipsesOnOverflow(e.useEllipsesWhenOverflow);p.setStyle(N);ma=p.getOriSize(ca);p.setStyle(J);J=p.getOriSize(Ia);Z+=1;0>=Z&&(Z=1);b-=R;h*=B;Z=oa(Z*B,b);0>=Z&&(h=Z=0);m.symbolWidth=Z;m.textPadding=4;m.legendHeight=e=Z+2*h;m.rowHeight=B=Y(parseInt(m.itemStyle.lineHeight,10)||
12,e);q=S+h+q;p.setStyle(m.itemStyle);N=p.getOriSize(f).height;f=T+m.borderWidth/2+1;f=oa(f,d-N-8);T=.05*B;if(ma||J)ka=c(ma.height,0)>c(J.height,0)?(ia=H)&&ma.width:(ia=Ra)&&J.width;b=n?b:g-(ka+w>l-d?2*ia+z+D+X+A:z+D+A+X);m.initialItemY=0;m.initialItemX=0;if(m.showLegend&&0!==V){for(g=0;g<V;g+=1)ka=E[g],l=ka.config||(ka.config={}),w=ka.configuration,ka=l.name=G(w.label),ka===a||0===w.enabled||!1===w.enabled?l.enabled=0:(l.enabled=1,M+=1,O=!0,ka=p.getOriSize(ka),sa=Y(sa,ka.width),va=Y(va,oa(ka.height,
u)),wa+=ka.width);m.validLegendItem=O;ma=wa/M;w=e+T+S+h+R;wa+=w*M;m.x=(k-D-t+z)/2;m.x=!n&&wa>za?0:m.x;if(O){ma+=w;sa+=w;0<K&&M<K&&(K=M);wa<=b&&(0>=K||K===M)?(K=M,C=wa/M,na=!0,va>B&&(ha=(va-B)/2,B=va)):0<K&&(C=b/K)>ma?C>sa&&(C=sa):b>sa&&(r||1.5*ma>sa)?(K=Aa(b/sa),M<K&&(K=M),C=sa):b>=2*ma?(K=Aa(b/ma),M<K&&(K=M),C=Aa(b/K),C>sa&&(C=sa)):(K=1,C=b);m.itemWidth=C;k=fa(C-w);0>k&&(h=k=S=0);m.symbolPadding=h;m.textPadding=S;m.width=C*K-T;L.oriText!==a&&(p.setStyle(L.style),ka=p.getSmartText(L.oriText,b,u),
L.text=ka.text,ka.tooltext&&(L.originalText=ka.tooltext),L=ka.width+R,m.width<L&&(m.initialItemX=(L-m.width)/2,m.width=L),m.initialItemY=ra=ka.height+P);p.setStyle(m.itemStyle);for(g=0;g<V;g+=1)if(ka=E[g],l=ka.config,0!==l.enabled){0===k&&(qa[da]=!0,l.name=a,P=1,L=parseInt(da/K,10),t=da%K,l._legendX=t*C,l._legendY=L*B+R,l._legendH=P*B,l._totalWidth=Z+h);if(na)ka=p.getOriSize(l.name),ka.height<B&&(l._legendTestY=(B-ka.height)/2),l._markerYGutter=ha,l._legendX=W,l._legendY=R,l._legendH=B,l._totalWidth=
Z+q+ka.width,W+=ka.width+w;else{ka=p.getSmartText(l.name,k,u);l.name=ka.text;for(ka.tooltext&&(l.originalText=ka.tooltext);!0===qa[da];)da+=1;L=ka.height/B;t=da;for(P=0;P<L;P+=1,t+=K)qa[t]=!0;ka.height<B&&(l._legendTestY=(B-ka.height)/2);L=parseInt(da/K,10);t=da%K;l._legendX=t*C;l._legendY=L*B+R;l._legendH=P*B;l._totalWidth=Z+q+ka.width}da++}p=na?1:fa(qa.length/K);m.height=m.totalHeight=aa+(p*B+ra);m.rowHeight=B;m.legendNumColumns=K;m.height-2*h>d?(m.height=d,d=m.scroll||(m.scroll={}),d.enabled=!0,
d.flatScrollBars=m.flatScrollBars,d.scrollBar3DLighting=m.scrollBar3DLighting,m.width=m.width+12>b?m.width:m.width+12):m.scroll.enabled=!1;f+=m.height;m.isActive=!0;m.enabled=!0}else m.enabled=!1,f=m.width=0}else f=0,m.height=0,m.width=0;return{bottom:f,right:0}},_placeLegendBlockRight:function(c){var d=this.config,b=this.components,h=this.chart,e=h.config,f=h.linkedItems.smartLabel,g=h.components.canvas.config.canvasBorderThickness||0,l=d.textPadding,h=d.title.padding,k=d.oriSymbolPadding,t=d.legendPadding,
p=d.legendScale,m=parseInt(d.itemStyle.fontSize,10),D=2*e.canvasHeight,w=0,z=2*d.padding,n=z,F={},r=!1,b=b.items||[],K=b.length,B,q,u,R=0;c-=z+t;m+=1;0>=m&&(m=1);k*=p;m=oa(m*p,c);0>=m&&(k=m=0);d.symbolPadding=k;d.symbolWidth=m;d.legendHeight=p=m+2*k;d.rowHeight=Y(parseInt(d.itemStyle.lineHeight,10)||12,p);g=t+d.borderWidth/2+g;q=c-p-t-l;0>q&&(q=0);f.useEllipsesOnOverflow(e.useEllipsesWhenOverflow);f.setStyle(d.itemStyle);if(d.showLegend&&0!==K){for(R=0;R<K;R+=1)B=b[R],e=B.config||(B.config={}),u=
B.configuration,B=e.name=G(u.label),e._legendX=0,e._legendY=n,0===u.enabled||!1===u.enabled||B===a?e.enabled=0:(e.enabled=1,r=!0,0===q?(n+=e._legendH=p,e.name=a,e._totalWidth=m+k):(B=f.getSmartText(B,q,D),e.name=B.text,B.tooltext&&(e.originalText=B.tooltext),B.height<p&&(e._legendTestY=(p-B.height)/2),e._totalWidth=m+k+l+B.width+t,n+=e._legendH=Y(B.height,p),w=Y(B.width,w)));(d.validLegendItem=r)?(d.itemWidth=w+p+t+l,d.width=d.itemWidth+z,d.title.oriText!==a&&(f.setStyle(d.title.style),B=f.getSmartText(d.title.oriText,
c,D),d.title.text=B.text,B.tooltext&&(d.title.originalText=B.tooltext),f=B.width+z,d.width<f&&(d.initialItemX=(f-d.width)/2,d.width=f),d.initialItemY=B.height+h,n+=d.initialItemY),d.height=d.totalHeight=n,g=oa(d.width+g,c),F.right=g+t,d.isActive=!0,d.enabled=!0):(d.enabled=!1,d.width=0,F.right=0)}else F.right=0,d.height=0,d.width=0;return F},postSpaceManager:function(){var a=this.config,c=this.chart.config.canvasHeight;a.legendPos===Ja&&(a.height>c?(a.height=c,a.scroll.enabled=!0,a.scroll.flatScrollBars=
a.flatScrollBars,a.scroll.scrollBar3DLighting=a.scrollBar3DLighting,a.width+=(a.scroll.scrollBarWidth=10)+(a.scroll.scrollBarPadding=2)):a.scroll.enabled=!1)},configure:function(){var b=this.chart,h=this.config,e=b.config,f=e.style,g=b.jsonData.chart||b.jsonData.map,l=b.components.colorManager,k=b.is3D?Ta.chart3D:Ta.chart2D,p,m,z=c(g.useroundedges,0);p=f.outCancolor;m=c(g.legendpadding,7);var w=d(g.legenditemfont,f.outCanfontFamily),n=c(g.legendiconscale,1),r=la(g.legenditemfontsize,f.fontSize),B=
d(g.legenditemfontcolor,p).replace(/^#?([a-f0-9]+)/ig,"#$1"),K=d(g.legendiconbgcolor),q=d(g.legendiconbordercolor),u=d(g.legendiconbgalpha,g.legendiconalpha,100),R=d(g.legendiconborderalpha,g.legendiconalpha,100),L=c(g.legendiconsides,4),aa=c(g.legendiconborderthickness),P=c(g.legendiconstartangle,45),v=ea(d(g.legenditemhoverfontcolor,B)),Z=Va[c(g.legenditemfontbold,0)]||F,f=la(g.legendcaptionfontsize,f.fontSize)+"px";h.isActive=!1;h.chartMarginTop=e.origMarginTop;h.chartMarginRight=e.origMarginRight;
h.chartMarginBottom=e.origMarginBottom;h.chartMarginLeft=e.origMarginLeft;h.showLegend=c(g.showlegend,!b.dontShowLegendByDefault,1);r+="px";h.legendPos=d(g.legendposition,b.legendposition,T).toLowerCase();h.numColumns=c(g.legendnumcolumns,0);h.xL=h.yL=0;if(0>=n||5<n)n=1;h.drawCustomLegendIcon=c(g.drawcustomlegendicon,0);h.customLegendConfig={bgColor:K,borderColor:q,bgAlpha:u,borderAlpha:R,borderThickness:aa,startAngle:P,sides:L};h.legendScale=n;h.legendPadding=m;h.oriSymbolPadding=3;h.textPadding=
4;h.alignLegendWithCanvas=c(g.alignlegendwithcanvas,1);h.itemStyle={color:pa(B),fontFamily:w,fontSize:r,fontWeight:Z};ga(h.itemStyle);h.itemHiddenStyle={fontFamily:w,fontSize:r,color:pa(d(g.legenditemhiddencolor,"cccccc").replace(/^#?([a-f0-9]+)/ig,"#$1")),fontWeight:Z};ga(h.itemHiddenStyle);h.title.style={fontFamily:d(g.legendcaptionfont,w),fontSize:f,color:d(g.legendcaptionfontcolor,p).replace(/^#?([a-f0-9]+)/ig,"#$1"),fontWeight:Va[c(g.legendcaptionfontbold,1)]||F};h.title.align=Ua[g.legendcaptionalignment&&
g.legendcaptionalignment.toLowerCase()||Ua.center]||Ua.center;h.itemHoverStyle={color:pa(v.replace(/^#?([a-f0-9]+)/ig,"#$1"))};h.title.style["text-anchor"]=h.title.align;h.padding=4;e=d(g.legendbordercolor,l.getColor(k.legendBorderColor));p=c(g.legendborderalpha,100);m=c(g.legendbgalpha,100);h.backgroundColor=pa(d(g.legendbgcolor,l.getColor(k.legendBgColor)),m);h.borderColor=pa(e,p);h.borderWidth=c(g.legendborderthickness,!z||g.legendbordercolor?1:0);h.borderRadius=c(z,0);h.shadow=!!c(g.legendshadow,
1);h.symbol3DLighting=!!c(g.use3dlighting,g.useplotgradientcolor,1);h.shadow&&(h.shadow={enabled:h.shadow,opacity:Y(p,m)/100});h.reversed=!!c(g.reverselegend,0);h.style={padding:4};h.lineWidth=c(g.linethickness,2);(h.interactiveLegend=!1!==b.hasInteractiveLegend&&!!c(g.interactivelegend,1))?(h.interactiveLegend=!0,h.symbolStyle={_cursor:"hand",cursor:t}):(h.interactiveLegend=!1,h.itemStyle.cursor="default",h.itemHoverStyle.cursor="inherit");h.borderRadius=c(g.legendborderradius,z?3:0);h.legendAllowDrag=
!!c(g.legendallowdrag,0);h.title.text=h.title.oriText=G(D(g.legendcaption,a));h.legendScrollBgColor=ea(d(g.legendscrollbgcolor,g.scrollcolor,l.getColor("altHGridColor")));h.legendScrollBarColor=d(g.legendscrollbarcolor,e);h.legendScrollBtnColor=d(g.legendscrollbtncolor,e);h.minimiseWrappingInLegend=c(g.minimisewrappinginlegend,0);h.flatScrollBars=c(g.flatscrollbars,0);h.scrollBar3DLighting=c(g.scrollbar3dlighting,1);h.orderReversed=!1},_drawPointLegendItem:function(){var a=this,h=a.chart,f=h.hasSubDataset,
g=h.config,l=h.get(M,U),k=l.transposeAnimDuration,p=l.animType,m=l.dummyObj,l=l.animObj,D=h.components.dataset,z=h.components.paper,w=a.config,G=w.reversed,n=a.components.items||[],F=w.legendHeight,r=w.symbolPadding,B=w.symbolWidth,K=w.interactiveLegend,q=w.textPadding||2,u=c(w.padding,4),g=g.textDirection,R=w.itemHiddenStyle,L=w.itemStyle,aa=w.itemHoverStyle,P=w.lineWidth,Z=L.color,E=R&&R.color||"#CCCCCC",R=a.graphics,S=R.itemGroup,T=w.drawCustomLegendIcon,X=w.customLegendConfig,C,A,H,Ra,N,J,ca,
ma,Y,va,ra,qa,ka,W,da,fa,O,oa,za,ia,ja,ua,xa,ea,ya,Aa,ga,la,ta,Q=v.hashify,Ca=function(a){var c=this.data("legendItem"),d=c.configuration.datasetObj||c.dataset,d=d.getEventArgs?d.getEventArgs(c):{};a=ha(h.linkedItems.container,a);d.chartX=a.chartX;d.chartY=a.chartY;d.pageX=a.pageX;d.pageY=a.pageY;d.legendItemIndex=c.index;d.legendItemId=c.legendItemId;d.preventDefaults=function(){};b.raiseEvent("LegendItemClicked",d,h.chartInstance)},Da=function(a){var c=this.data("legendItem")||{},d=c.configuration.datasetObj||
c.dataset,e=this.data("interactive"),d=d.getEventArgs?d.getEventArgs(c):{};a=ha(h.chartInstance,a,h);var f=this.data("itemHoverStyle"),g=c.graphics&&c.graphics.legendItemText;!1!==c.dataset.visible&&e&&g&&g.attr({fill:f.color});d.chartX=a.chartX;d.chartY=a.chartY;d.pageX=a.pageX;d.pageY=a.pageY;d.legendItemIndex=c.index;d.legendItemId=c.legendItemId;b.raiseEvent("LegendItemRollover",d,h.chartInstance)},Ea=function(a){var c=this.data("legendItem")||{},d=c.configuration.datasetObj||c.dataset,e=this.data("interactive"),
d=d.getEventArgs?d.getEventArgs(c):{};a=ha(h.chartInstance,a,h);var f=!1!==c.dataset.visible,g=this.data("itemStyle"),l=c.graphics&&c.graphics.legendItemText;f&&e&&l&&l.attr({fill:g.color});d.chartX=a.chartX;d.chartY=a.chartY;d.pageX=a.pageX;d.pageY=a.pageY;d.legendItemIndex=c.index;d.legendItemId=c.legendItemId;b.raiseEvent("LegendItemRollout",d,h.chartInstance)},Ga=function(c){var d=this.data("legendItem"),b=d.dataset;this.data("interactive")&&d.legendClickFN.call(a,b,d,D);Ca.call(this,c)},Fa=function(){oa=
.5*B;O=ma+r+oa;Ra=Y+(da._markerYGutter||0)+r+oa;Ja&&(oa*=.6);la=Ia(ua.anchorSide);ia=ua.symbol=la&&la.split("_")||[];za="spoke"===ia[0]?1:0;Ka={polypath:[ia[1]||2,O,Ra,oa,ua.startAngle,ua.spoke||za]};Ta={cursor:L.cursor||t,stroke:H?xa:E,fill:H?ea:E,"stroke-width":ja,ishot:K}},Ma,Ta,La={},Ja,Ka,Na;C=w.initialItemX||0;A=w.initialItemY||0;if(!1!==w.enabled&&w.showLegend){S.css(L);ra=0;for(qa=n.length;ra<qa;ra+=1)w=n[ra],w.index=ra,ua=w.configuration,J=ua.type,da=w.config=w.config||(w.config={}),R=w.graphics||
(w.graphics={}),ka=w.dataset,ka.graphics&&(ka.graphics.legendGraphics=R),xa=da.strokeColor=ua.strokeColor||"000000",ea=da.fillColor=ua.fillColor||"000000",da.interactiveLegend=ua.interactiveLegend,da.legendBackgroundColor=ua.legendBackgroundColor?na({color:ua.legendBackgroundColor,alpha:20}):na(Sa),ya=ua.anchorSide,Aa=da.drawLine=ua.drawLine,P=ua.lineWidth||P,ga=ua.lineColor||xa,ma=C+da._legendX+u,Y=A+da._legendY-u,ja=da.strokeWidth=ua.strokeWidth||.5,va=da._legendH,H=!1!==ka.visible,ka=R.legendItemBackground,
N=R.legendItemText,W=R.legendItemLine,fa=R.legendItemSymbol,K=d(da.interactiveLegend,K),!K&&(L.cursor="default"),0!==da.enabled?(ta=ma+F+q-2,Na=Y+(da._legendTestY||0),ca={text:da.name,fill:H?Z:E,"text-anchor":e,"vertical-align":V,cursor:L.cursor||t,direction:g,"line-height":L.lineHeight},Ma=Ka=null,da.textAttr=ca,N?(N.show().animateWith(m,l,{x:ta,y:Na},k,p),N.attr(ca)):(ca.x=ta,ca.y=Na,N=R.legendItemText=z.text(ca,S).data("legendItem",da)),Ja=!1,T&&!1!==ua.customLegendIcon?(ta=X.borderColor,N=d(X.borderAlpha),
ga=X.bgColor,ca=d(X.bgAlpha,"100"),ya||"line"===J||Aa||"spline"===J?(J=Q(ua.rawStrokeColor),ua.rawFillColor=Q(ua.rawFillColor),ea=d(ga,ua.rawFillColor,da.color),/^#/.test(ea)&&(ea=pa(ea,ca)),ga=d(ta,J,da.strokeColor),ga=pa(ga,N),da.anchorSide=X.sides):(J=d(ua.rawFillColor,da.fillColor),ea=d(ga,J),ea=pa(ea,ca),X.borderColor?ga=pa(X.borderColor,N):(/rgb/.test(J)&&(J=Ya(J)),ga=Ha(J,60).replace(sa,wa),ga=pa(ga,N))),da.fillColor=ea,da.strokeColor=ga,oa=.5*B,O=ma+r+oa,Ra=Y+(da._markerYGutter||0)+r+oa,ia=
(la=Ia(X.sides))&&Ia(X.sides).split("_")||[],za="spoke"===ia[0]?1:0,Ka={polypath:[ia[1]||2,O,Ra,oa,X.startAngle,za]},Ta={cursor:L.cursor||t,stroke:H?ga:E,fill:H?ea:E,"stroke-width":c(X.borderThickness,1),ishot:K}):"line"===J||Aa?(Ra=Y+(da._markerYGutter||0)+r+.5*B,Ma={path:["M",ma+r,Ra,"L",ma+r+B,Ra]},Ja=!0,La={"stroke-width":P,stroke:H?ga:E,cursor:L.cursor||t,ishot:K},ya&&Fa()):ya?Fa():"line"!==J&&(fa=R.legendItemSymbol,J=a._getSymbolPath(ma+r,Y+(da._markerYGutter||0)+r,B,B,J),Ka={path:J.path},Ta=
{"stroke-width":.5,stroke:H?xa:E,fill:H?ea:E,cursor:L.cursor||t,ishot:K}),Ma&&Ja?(da.lineAttr=La,W||(W=R.legendItemLine=z.path(S),W.attr(Ma)),W.show().animateWith(m,l,Ma,k,p),W.attr(La).data("legendItem",da)):W&&W.hide(),Ka?(da.symbolAttr=Ta,fa||(fa=R.legendItemSymbol=z.polypath(S),fa.attr(Ka)),fa.show().animateWith(m,l,Ka,k,p),fa.attr(Ta),fa.data("legendItem",da)):fa&&fa.hide(),va={x:ma,y:Y,width:da._totalWidth,height:va},W={r:0,fill:da.legendBackgroundColor,"stroke-width":1,stroke:"none",cursor:L.cursor||
t,ishot:K},ka||(ka=R.legendItemBackground=z.rect(S),ka.attr(va).mouseover(Da).mouseout(Ea).click(Ga)),ka.show().animateWith(m,l,va,k,p),ka.attr(W),ka.data("legendItem",w).data("interactive",K).data("itemHoverStyle",aa).data("itemStyle",L)):(N&&N.hide(),ka&&ka.hide(),fa&&fa.hide(),W&&W.hide());!f&&G&&n.reverse()}},_getSymbolPath:function(a,c,d,b,h){var e=["M"],f,g,l;switch(h){case "column":case "dragcolumn":case "column3d":f=.25*d;h=.5*f;g=.7*b;l=.4*b;e=e.concat([a,c+b,"l",0,-g,f,0,0,g,"z","m",f+h,
0,"l",0,-b,f,0,0,b,"z","m",f+h,0,"l",0,-l,f,0,0,l,"z"]);break;case "bar2d":case "bar3d":f=.3*d;h=.6*d;g=b/4;l=g/2;e=e.concat([a,c,"L",a+h,c,a+h,c+g,a,c+g,"Z","M",a,c+g+l,"L",a+d,c+g+l,a+d,c+g+l+g,a,c+2*g+l,"Z","M",a,c+2*(g+l),"L",a+f,c+2*(g+l),a+f,c+b,a,c+b,"Z"]);break;case "area":case "area3d":case "areaspline":case "dragarea":g=.6*b;l=.2*b;h=.8*b;e=e.concat([a,c+h,"L",a,c+g,a+.3*d,c+l,a+.6*d,c+g,a+d,c+l,a+d,c+h,"Z"]);break;case "pie2d":case "pie3d":case "doughnut2d":case "doughnut3d":f=.5*d;h=.9*
f;d=a+f+1;b=c+f-1;a=a+f-1;c=c+f+1;e=e.concat(["M",d,b,"L",d,b-h+1,"A",h-1,h-1,0,0,1,d+h-1,b,"Z","M",a,c,"L",a,c-h,"A",h,h,0,1,0,a+h,c,"Z"]);break;case "boxandwhisker2d":e=e.concat([a,c,"L",a+d,c,a+d,c+b,a,c+b,"Z"]);break;default:e=e.concat([a,c,"L",a+d,c,a+d,c+b,a,c+b,"Z"])}return{path:e}},emptyItems:function(a,c){var d=this.components,b=d.items||(d.items=[]),h,e,d=void 0!==c?c:b.length,f=b.splice(a,d);a=0;for(d=f.length;a<d;a+=1)for(h in b=(f[a]||(f[a]={})).graphics,b)(e=b[h])&&e.remove&&"function"===
typeof e.remove&&e.remove()},removeItem:function(a){var c=this.getItems()||[],d,b,h,e=c.length;for(d=0;d<e;d++)if(b=c[d],h=b.legendItemId,a===h){Da.call(b);c.splice(d,1);break}},addItems:function(a,c,b){var h,e=this.components;h=this.lastItemId;var f=d(a.legendItemId,b.legendItemId),e=e.items||(e.items=[]);void 0!==f?(this.configureItems(f,{legendClickFN:c,configuration:b,dataset:a}),h=f):(void 0===h?this.lastItemId=h="FCLEGEND_0":(h=(h=h.split("_"))&&h[1],this.lastItemId=h="FCLEGEND_"+ ++h),e.push({legendItemId:h,
dataset:a,legendClickFN:c,configuration:b||{}}));return h},configureItems:function(a,c){var b=this.components.items,h,e,f=b.length,g,l;for(e=0;e<f&&(l=b[e],!l.dataset||(g=d(l.dataset.legendItemId,l.legendItemId),g!==a));e++);for(h in l)if(h in c)switch(h){case "configuration":this.mergeConf(c[h],l[h]);break;default:l[h]=c[h]}},mergeConf:function(a,c){var d,b;for(d in a)b=a[d],void 0!==b&&null!==b&&(c[d]=b)},getItems:function(){return this.components.items},hide:function(){this.chart.graphics.legendGroup.hide()}},
void 0,{enabled:!0,symbolWidth:12,borderRadius:1,backgroundColor:"#FFFFFF",initialItemX:0,title:{text:F,x:0,y:0,padding:2},scroll:{},itemStyle:{}}]);Q.register("component",["toolbox","horizontaltoolbox",{init:function(a){this.config={type:a};this.components={};this.graphics={};this._configure()},_getPosition:function(){var a=this.config.type,c=a.frame,d=a.orientation,b=a.placement,h={chart:{outer:{left:0,right:0,top:0,bottom:0},inner:{left:0,right:0,top:0,bottom:0}},canvas:{outer:{left:0,right:0,
top:0,bottom:0},inner:{left:0,right:0,top:0,bottom:0}}};!a&&(a={});return c&&b&&d?h[c][b][d]:a},_configure:function(){var b,h,e=this.config,f=this.chart,g=f.jsonData.chart,l=f.config,f=l.width,l=l.height;e.scale=c(g.toolbarbuttonscale,1.15);e.width=c(g.toolbarbuttonwidth,15);e.height=c(g.toolbarbuttonheight,15);e.radius=c(g.toolbarbuttonradius,2);e.spacing=c(g.toolbarbuttonspacing,5);e.fill=pa(d(g.toolbarbuttoncolor,"ffffff"));e.labelFill=pa(d(g.toolbarlabelcolor,"cccccc"));e.symbolFill=pa(d(g.toolbarsymbolcolor,
"ffffff"));e.hoverFill=pa(d(g.toolbarbuttonhovercolor,"ffffff"));e.stroke=pa(d(g.toolbarbuttonbordercolor,"bbbbbb"));e.symbolStroke=pa(d(g.toolbarsymbolbordercolor,"9a9a9a"));e.strokeWidth=c(g.toolbarbuttonborderthickness,1);e.symbolStrokeWidth=c(g.toolbarsymbolborderthickness,1);b=e.symbolPadding=c(g.toolbarsymbolpadding,5);e.symbolHPadding=c(g.toolbarsymbolhpadding,b);e.symbolVPadding=c(g.toolbarsymbolvpadding,b);h=e.position=d(g.toolbarposition,"tr").toLowerCase();switch(h){case "tr":case "rt":case "top right":case "right top":h=
"tr";break;case "br":case "rb":case "bottom right":case "right bottom":h="br";break;case "tl":case "lt":case "top left":case "left top":h="tl";break;case "bl":case "lb":case "bottom left":case "left bottom":h="bl";break;default:h="tr"}b=e.hAlign=(a+g.toolbarhalign).toLowerCase()===Fa?"l":h.charAt(1);h=e.vAlign=(a+g.toolbarvalign).toLowerCase()===T?"b":h.charAt(0);e.hDirection=c(g.toolbarhdirection,"r"===b?-1:1);e.vDirection=c(g.toolbarvdirection,"b"===h?-1:1);e.vMargin=c(g.toolbarvmargin,6);e.hMargin=
c(g.toolbarhmargin,10);e.x=c(g.toolbarx,"l"===b?0:f);e.y=c(g.toolbary,"t"===h?0:l)},_manageToolBoxPosition:function(a,c){var d,b,h=0,e=this.components;for(d in e)e.hasOwnProperty(d)&&(b=e[d],b=b._spaceOccupied(),h=Y(h,b.height));h>c&&this._postSpaceManager();return{top:0,bottom:h,left:0,right:0}},addItem:function(a){var c,d,b,h=this.components;for(c=0;c<a.length;c+=1)b=a[c],d=h[b.name]=new (Q.register("component",["toolButton","button"])),d.init(this,b),d.chart=this.chart},draw:function(){var a,c,
d=this.components,b=this.x,h=this.y;for(a in d)d.hasOwnProperty(a)&&(c=d[a],c.draw(b,h))},_postSpaceManager:function(){}}]);Q.register("component",["toolBox","verticalToolBox",{},"horizontaltoolbox"]);Q.register("component",["toolButton","button",{init:function(){this.config={};this.components={};this.graphics={};this._configure.apply(this,arguments)},_configure:function(a,b){var h=a.config,e=this.config;e.type=b.type;e.scale=c(b.scale,h.scale);e.width=c(b.width,h.width);e.height=c(b.height,h.height);
e.radius=c(b.radius,h.radius);e.spacing=c(b.spacing,h.spacing);e.fill=pa(d(b.fill,h.fill));h.x=c(b.x,h.x);h.y=c(b.y,h.y)},draw:function(){this["_draw"+this.config.type]()},_drawScroller:function(){var a=this.chart,d=a.components,h=a.config,e=a.jsonData.chart,f=d.paper,g=a.graphics,l=d.xAxis["0"]||{},k=l.config||{},t=k.rawAttr.axisLineThickness,d=h.scrollOptions||{},p=h.canvasTop,m=h.canvasLeft,D=h.canvasWidth,w=h.canvasHeight,z=h.canvasBorderWidth,k=z||(k.showLine?t:0),G=z||t,t=z||t,e=h.useRoundEdges||
(h.useRoundEdges=c(e.useroundedges,0)),n,r,F,B,K,q,u,R,L,aa,P,Z=g.scroller,z=g.datasetGroup,E;d.enabled&&(E=g.scroll=g.scroll||f.group("scroll").insertAfter(z),z=d.scrollRatio,B=c(d.startPercent),K=d.viewPortMax,q=d.viewPortMin,r=d.vxLength,fa(r),u=d.showButtons,R=d.height,L=d.padding,aa=d.color,P=d.flatScrollBars,r=d.windowedCanvasWidth=l.getAxisPosition(r),n=d.fullCanvasWidth=l.getAxisPosition(K-q)-r,F=ua(B*n),Z||(Z=g.scroller=f.scroller(m-G,p+w+k+L-!!k,D+G+t,R,!0,{showButtons:u,displayStyleFlat:P,
scrollRatio:z,scrollPosition:B},E).data("fullCanvasWidth",n).data("windowedCanvasWidth",r).attr({"scroll-display-style":P,fill:aa,r:e&&2||0}).scroll(function(c){var d=h.viewPortConfig;F=-ua(c*n);d.x=-F/d.scaleX;v.chartAPI.mscolumn2d._drawDataset.call(a);l.draw()})),function(){var c;J.eve.on("raphael.scroll.start."+Z.node.id,function(d){c=d;b.raiseEvent("scrollstart",{scrollPosition:d},a.chartInstance)});J.eve.on("raphael.scroll.end."+Z.node.id,function(d){b.raiseEvent("scrollend",{prevScrollPosition:c,
scrollPosition:d},a.chartInstance)})}());this._finalizeScrollPlots();return d.enabled},_finalizeScrollPlots:function(){var a=this.chart,d=a.config,h=a.container,f=a.graphics,g=f.scroller,l=f.datasetGroup,k=f.datalabelsGroup,t=f.trackerGroup,m,D={},w,z,G=a.components.xAxis["0"]||{};w=d.scrollOptions||{};var n=c(w.startPercent),r=w.fullCanvasWidth,F,B=d.animation,K=w.startPercent,d=[Y(0,d.canvasLeft),Y(0,d.canvasTop),Y(1,d.canvasWidth),Y(1,d.canvasHeight)];w.enabled&&(l.attr({"clip-rect":d}),k.attr({"clip-rect":d}),
t.attr({"clip-rect":d}),w=function(c){var d=f.canvas,h=m.left,l=m.top,k={pageX:0,pageY:0},t=c.state,k=eb&&v.getTouchEvent(c)||k;c=c.originalEvent;h=(c.clientX||c.pageX||k.pageX)-h;l=(c.clientY||c.pageY||k.pageY)-l;switch(t){case e:z=d.isPointInside(h,l);D.ox=z&&h||null;if(!z)return!1;D.prevScrollPosition=g.attrs["scroll-position"];b.raiseEvent("scrollstart",{scrollPosition:D.prevScrollPosition},a.logic.chartInstance);break;case p:b.raiseEvent("scrollend",{prevScrollPosition:D.prevScrollPosition,scrollPosition:D.scrollPosition},
a.logic.chartInstance);z=!1;D={};break;default:z&&(d=h-D.ox,D.ox=h,D.scrollPosition=g.attrs["scroll-position"]-d/r,g.attr({"scroll-position":D.scrollPosition}))}},eb&&(m=va(h),h&&(qa(h,"pointerdrag",w),ra(h,"pointerdrag",w))),0<n&&(F=-ua(n*r),l&&l.transform(["T",F,0]),t&&t.transform(["T",F,0]),G.setOffset&&G.setOffset(F),B&&K?a.animationCompleteQueue.push({fn:function(){k&&k.transform(["T",F,0])},scope:a}):k&&k.transform(["T",F,0])))},_spaceOccupied:function(){var a=this.config;return{x:a.x,y:a.y,
width:a.width,height:a.height}}}]);ta("base",{creditLabel:$a,setChartMessage:function(a,b,h){var e=this.components||(this.components={}),f=this.chartInstance,g=f.options,l=f.args,k=this.config||(this.config={}),t=this.linkedItems&&this.linkedItems.smartLabel||f.jsVars.smartLabel,p=v.getImageURL(void 0!==a?a:g.dataEmptyMessage),D,w;h&&!this.linkedItems?this.linkedItems={container:h}:h=this.linkedItems.container;D=k.prevWidth=h.offsetWidth;w=k.prevHeight=h.offsetHeight;a=k.height=Number(w);f=k.width=
Number(D);k.hasChartMessage=!0;e.paper?e.paper.setSize(D,w):(h=e.paper=new J(h,D,w),h.setConfig("stroke-linecap",m));J.svg&&this._createDummyText();p.image?(a=p.string,b=b?{imageHAlign:d(b._chartMessageImageStyle.imageHAlign,g.baseChartMessageImageHAlign).toLowerCase(),imageVAlign:d(b._chartMessageImageStyle.imageVAlign,g.baseChartMessageImageVAlign).toLowerCase(),imageAlpha:c(b._chartMessageImageStyle.imageAlpha,g.baseChartMessageImageAlpha),imageScale:c(b._chartMessageImageStyle.imageScale,g.baseChartMessageImageScale)}:
{imageHAlign:d(l.dataEmptyMessageImageHAlign,g.baseChartMessageImageHAlign).toLowerCase(),imageVAlign:d(l.dataEmptyMessageImageVAlign,g.baseChartMessageImageVAlign).toLowerCase(),imageAlpha:c(l.dataEmptyMessageImageAlpha,g.baseChartMessageImageAlpha),imageScale:c(l.dataEmptyMessageImageScale,g.baseChartMessageImageScale)},k.chartMessageType="image"):(b=b?{"font-family":b._chartMessageStyle.fontFamily||g.baseChartMessageFont,"font-size":b._chartMessageStyle.fontSize||g.baseChartMessageFontSize,fill:b._chartMessageStyle.color||
g.baseChartMessageColor}:{"font-family":l.dataEmptyMessageFont||g.baseChartMessageFont,"font-size":l.dataEmptyMessageFontSize||g.baseChartMessageFontSize,fill:l.dataEmptyMessageColor||g.baseChartMessageColor},t.setStyle(b),g=t.getSmartText(G(p.string),f,a),a={text:g.text,x:f/2,y:a/2},k.chartMessageType="text");k.chartMessageAttr=a;k.chartMessageStyle=b},_hideChartMessage:function(){var a=this.config,c=this.components.chartMessage,d=c&&c.graphics,b;if(c)for(b in"image"===a.chartMessageType&&!d.backgroundImage&&
d.backgroundElement&&(a.stopImageDraw=!0),a&&(a.hasChartMessage=!1),d)d[b].hide?d[b].hide():d[b][0]&&d[b][0].hide()},drawChartMessage:function(){var a=this.config,c=this.components,d=c.paper,b,c=c.chartMessage||(c.chartMessage={}),c=c.graphics||(c.graphics={});b=this.graphics||(this.graphics={});var h=aa(a.chartMessageAttr,a.chartMessageStyle);b=b.messageGroup||(b.messageGroup=d.group("messageGroup"));this._hideChartMessage();a.hasChartMessage=!0;"image"===a.chartMessageType?this._drawBackground(a.chartMessageAttr,
a.chartMessageStyle):c.message||"text"!==a.chartMessageType?(c.message=c.message.attr(h),c.message.show()):c.message=d.text(h,b);this._drawCreditLabel()},_createDummyText:function(){var a=this.components.paper,c=this.linkedItems,d=c.txtElem,b;d||(d=A.document.createElementNS("http://www.w3.org/2000/svg","text"),d.setAttribute("x",-100),d.setAttribute("y",-100),b=A.document.createTextNode("abcdefhiklmnopqrstuvwxyz"),d.appendChild(b),a.canvas.appendChild(d),J.cachedFontHeight&&(J.cachedFontHeight.txtElem=
c.txtElem=d))},dispose:function(){var a=this.components,a=a&&a.paper,c=this.linkedItems&&this.linkedItems.eventListeners,d=c&&c.length;for(this._clearTimers&&this._clearTimers();d--;)c[d].unlisten();this._removeWaitingJobs();a&&(a.clear(),a.remove());this.chartInstance&&delete this.chartInstance.apiInstance;Da.call(this)},_removeWaitingJobs:function(){var a=this.jobList,c,d,b,h;for(h in a)for(b=a[h],d=b.length,c=0;c<d;c++)hb.removeJob(b[c])},_drawBackground:function(h,e){var g=this,l=g.components,
I=g.graphics,k=g.jsonData&&g.jsonData.chart||{},t=l.paper,p=h?l.chartMessage:l.background,m=p.graphics,l=m.backgroundElement,D=m.borderElement,p=p.config||{},w=g.config,z=w.width,G=w.height,n,r,F,B,q,u,R,L=g.get&&g.get(M,U)||{},aa=L.animType,P=L.animObj,E=L.dummyObj,S=L.duration,X,C,A=h?I.messageGroup:I.backgroundGroup,H=p.borderWidth||0,I=p.borderRadius,L=p.borderDashStyle,Ra=p.borderColor,N=p.bgSWF=d(h,k.bgimage,k.bgswf),J=p.bgSWFAlpha=c(e&&e.imageAlpha,k.bgimagealpha,k.bgswfalpha,100),sa=p.imgClipRect=
H+","+H+","+(z-2*H)+","+(G-2*H),Ia=d(k.bgimagedisplaymode,Z).toLowerCase(),wa=(e&&f(e.imageVAlign)||f(k.bgimagevalign,a)).toLowerCase(),Y=(e&&e.imageHAlign||k.bgimagehalign||a).toLowerCase(),va=p.bgImageScale=c(e&&e.imageScale,k.bgimagescale,100),k=p.containerBackgroundColor=v.getContainerBackgroundColor(g);t.canvas.style.backgroundColor=k;"tile"==Ia||"fill"==Ia||"fit"==Ia?(wa!=V&&wa!=K&&wa!=T&&(wa=K),Y!=Fa&&Y!=K&&Y!=Ja&&(Y=K)):(wa!=V&&wa!=K&&wa!=T&&(wa=V),Y!=Fa&&Y!=K&&Y!=Ja&&(Y=Fa));p.bgSWFAlpha=
J;p.bgImageVAlign=wa;p.bgImageHAlign=Y;p.backgroundColor=p=!h&&g._getBackgroundCosmetics();k={x:H,y:H,width:z-2*H,height:G-2*H,stroke:"none",fill:na(p)};l?(l.animateWith(E,P,{x:H,y:H,width:z-2*H,height:G-2*H},S,aa),l.attr({stroke:"none",fill:na(p)})):m.backgroundElement=t.rect(k,A);k={x:H/2,y:H/2,width:z-H,height:G-H,stroke:Ra,"stroke-width":H,"stroke-dasharray":L,fill:"none",r:I||0};D||h?h||(D.animateWith(E,P,{x:H/2,y:H/2,width:z-H,height:G-H,r:I||0},S,aa),D.attr({stroke:Ra,"stroke-width":H,"stroke-dasharray":L,
fill:"none"})):m.borderElement=t.rect(k,A);if(N)n=new ca,F=r=1,n.onload=function(){if(w.stopImageDraw)w.stopImageDraw=!1;else{!m.backgroundImage&&(m.backgroundImage=[]);if(m.backgroundImage)for(C=0,X=m.backgroundImage.length;C<X;C++)m.backgroundImage[C].hide();B=ma(Ia,wa,Y,va,H,z,G,n);B["clip-rect"]=sa;if(B.tileInfo)for(r=B.tileInfo.xCount,F=u=B.tileInfo.yCount,q=B.y,delete B.tileInfo,R=0;r&&B.width&&B.height;)--u,m.backgroundImage[R]||(m.backgroundImage[R]=t.image(N,A)),m.backgroundImage[R].show(),
m.backgroundImage[R].animateWith(E,P,B,S,aa),m.backgroundImage[R].attr({src:N}).css({opacity:.01*J}),B.y+=B.height,0===u&&(u=F,--r,B.x+=B.width,B.y=q),R++;else m.backgroundImage[0]||(m.backgroundImage[0]=t.image(N,A),m.backgroundImage[0].attr(B)),m.backgroundImage[0].show(),m.backgroundImage[0].animateWith(E,P,B,S,aa),m.backgroundImage[0].css({opacity:.01*J}).attr({src:N,visibility:ka,"clip-rect":sa});b.raiseEvent("BackgroundLoaded",{url:N,bgImageAlpha:100*J,bgImageDisplayMode:Ia,bgImageVAlign:wa,
bgImageHAlign:Y,bgImageScale:va,imageWidth:n.width,imageHeight:n.height},g.chartInstance)}},n.onerror=function(a){b.raiseEvent("BackgroundLoadError",{url:N,bgImageAlpha:100*J,error:a,bgImageDisplayMode:Ia,bgImageVAlign:wa,bgImageHAlign:Y,bgImageScale:va},g.chartInstance)},n.src=N;else if(m.backgroundImage)for(C=0,X=m.backgroundImage.length;C<X;C++)m.backgroundImage[C].hide()},redraw:function(){var a=this.graphics.dummyObj;a&&a.stop(void 0,!0,!0);this.draw&&this.draw()},_drawCreditLabel:function(){var a=
b.core.options.creditLabel,c=this.chartInstance.args.creditLabel,d=this.config.height,h=this.graphics,f=h.creditLabel,g=h.creditGroup,l=h.parentGroup||h.messageGroup,k=this.components.paper,p={href:v.CREDIT_HREF,text:v.CREDIT_STRING},a=this.creditLabel&&(void 0===c?!1!==a:!1!==c);g||(g=h.creditGroup=k.group("creditgroup"));l&&g.insertAfter(l);d={text:p.text,x:6,y:d-4,"vertical-align":T,"text-anchor":e,fill:"rgba(0,0,0,0.5)",title:p.title||F};h={fontSize:9,fontFamily:"Verdana,sans",cursor:t,_cursor:"hand"};
a&&(f?f.attr(d).css(h):f=this.graphics.creditLabel=k.text(d,h,g).click(function(){try{A.open(p.href)}catch(a){(A.top||A).location.href=p.href}}))},_mouseEvtHandler:function(a){var c=a.data.mouseTracker,d=this.config,b=d.scrollEnabled,h=d.canvasLeft-(d.toleranceLeft||0),e=d.canvasRight+(d.toleranceRight||0),f=d.canvasBottom+(d.toleranceBottom||0),g=d.canvasTop-(d.toleranceTop||0),l=d.datasetOrder||this.components.dataset,k=v.getMouseCoordinate(this.linkedItems.container,a.originalEvent,this),p=k.chartX,
k=k.chartY,t,m=this.components,D="datasetGroup_"+l[0].type,w,z=!1,G=l.length,n,e=p>h&&p<e&&k>g&&k<f,f=c._lastDatasetIndex,h=c._lastPointIndex;b&&e&&this._swipeX(a,p);if(e)for(;G--&&!z;)(t=l[G])&&t.visible&&(w=t._getHoveredPlot&&t._getHoveredPlot(p,k))&&w.hovered&&(z=!0,w.datasetIndex=G,n=c._getMouseEvents(a,w.datasetIndex,w.pointIndex));(!z||n&&n.fireOut)&&void 0!==f&&(delete c._lastDatasetIndex,delete c._lastPointIndex,l[f]&&l[f]._firePlotEvent&&l[f]._firePlotEvent("mouseout",h,a));if(z)for(b=n.events&&
n.events.length,c._lastDatasetIndex=w.datasetIndex,h=c._lastPointIndex=w.pointIndex,d.drawTrendRegion&&m[D]._notifyGroup(!0,a),c=0;c<b;c+=1)t&&t._firePlotEvent&&t._firePlotEvent(n.events[c],h,a,w.datasetIndex);else d.drawTrendRegion&&m[D]._notifyGroup(!1,a);d.drawTrendRegion&&m[D]._getHoveredRegion(p,k,a)},eiMethods:{hideChartMessage:function(){var a=this.apiInstance;a._show.apply(a);a._hideChartMessage(a)}}});ta("mscartesian",{standaloneInit:!1,tooltipConstraint:"chart",annotationInteractionEvents:!0,
useScaleRecursively:!0,init:function(a,c,d,b){var h=this;d=h.chartInstance||d;var e=d.jsVars,f=c.colorrange,g,l=h.getJobList(),k=function(){h.draw();h.setChartEvents();b({hasRendered:!0,container:a})};c.chart=c.chart||c.graph||c.map||{};h.jsonData=c;c=h.components||(h.components={});c.background||(c.background={graphics:{},config:{}});c.canvas||(c.canvas={graphics:{},config:{}});g=Q.register("component",["caption","caption"]);c.caption||(c.caption=new g);c.caption.init();c.caption.chart=h;g=Q.register("component",
["caption","subCaption"]);c.subCaption||(c.subCaption=new g);c.subCaption.init();c.dataset||(c.dataset=[]);h.linkedItems={container:a,smartLabel:e.smartLabel};c.colorManager=new v.colorManager(h);c.numberFormatter=new Za(h);f&&(c.colorRange=new v.ColorRange(h));h._checkInvalidData()?(v.raiseEvent("nodatatodisplay",{},d,[d.id]),b({hasRendered:!0,container:a})):(h._createLegend(),h._createGradientLegend(),h.configure(),h.disposeChartStyleSheet(),h._createAxes(),h._feedAxesRawData(),h.config.realtimeEnabled&&
(e=Q.get("component",["manager","alert"]))&&(c.alertManager=new e,c.alertManager.init(h),c.alertManager.configure()),h.config.enablemousetracking&&(e=Q.get("component",["tracker","mouse"]))&&(c.mouseTracker=new e,c.mouseTracker.init(h),c.mouseTracker.configure(),v.toolTip.setup()),h._createDatasets(),h._createQuadrant&&h._createQuadrant(),d.args.asyncRender?l.draw.push(hb.addJob(k,ib.render)):k(),h.inited=!0,h.chartInstance.__state.dataReady=!0)},_scrollTo:function(a){var c=this.apiInstance,d=c.components.scrollBar,
h=d.node,e=d.conf,d=h.attr("scroll-position");e.scrollTo=!0;void 0!==a&&(a=oa(Y(a,0),1),1>h.attr("scroll-ratio")&&(b.raiseEvent("scrollStart",{scrollPosition:h.attr("scroll-position")},c.chartInstance),c.updateManager(a),b.raiseEvent("scrollEnd",{prevScrollPosition:d,scrollPosition:a},c.chartInstance)))},_checkInvalidData:function(){var a=this.jsonData,c=this.chartInstance;if(!(this.isWidget||this.isMap||a.data&&0!==a.data.length||a.dataset||a.value||a.lineset||a.annotations||a.category||a.tasks||
a.process||a.axis))return this.setChartMessage(),this.drawChartMessage(),c.__state.dataReady=!1,c.jsVars.hasNativeMessage=!0,c.jsVars.drawCount+=1,!0},_createToolBox:function(){var a,d,b,h,e,f,l,k;e=!!A.btoa;var p=this,t=p.jsonData.chart,m=c(t.exportshowmenuitem),D=t.exportformats,w=p.chartMenuTools,t=w.get,z=w.set,w=this.components,G=p.config,n=G.exportOption.enabled;a=w.chartMenuBar;b=w.actionBar;var G=G.printOption.enabled,r={PNG:"Export As "+g.PNG.toUpperCase(),JPG:"Export As "+g.JPG.toUpperCase(),
PDF:"Export As "+g.PDF.toUpperCase(),SVG:"Export As "+g.SVG.toUpperCase(),XLS:"Export As "+g.XLS.toUpperCase()},F,B={},K=[],q;if(!(a&&a.drawn||b&&b.drawn)){a=w.tb||(w.tb=new (Q.register("component",["toolbox","toolbox"])));k=a.init({graphics:p.graphics||(p.graphics={}),chart:p,components:w});w.toolBoxAPI=b=w.toolBoxAPI||(w.toolBoxAPI=a.getAPIInstances(a.ALIGNMENT_HORIZONTAL));h=b.SymbolWithContext;d=b.SymbolStore;f=b.ComponentGroup;l=b.Toolbar;a.idCount=a.idCount||0;a.pId=k;b=a.getDefaultConfiguration();
d.register("ContextIcon",function(a,c,d){var b=2*d;d=ua(b/4);var h=.7*ua(b/2),b=a-h;a+=h;h=c+d;d=c-d;return["M",b,c,"L",a,c,"M",b,h,"L",a,h,"M",b,d,"L",a,d]});d=new h("ContextIcon",a.idCount++,k);h=d.getListRefernce();if(n&&0!==m){if(D)for(m=D.split("|"),B=0,n=m.length;B<n;B++)D=m[B].split("="),q=D[0].toUpperCase(),r[q]&&(r[q]=D[1]||r[q]),r[q]&&(F||(F={}))&&(F[q]=!0);m=function(a){return function(){v.exportChart.call(p,a)}};for(q in r)"XLS"===q&&!e||F&&!F[q]||(B={},B[r[q]]={handler:m({exportformat:q}),
action:"click"},K.push(B));z(K)}G&&z([{Print:{handler:function(a){p.chartInstance.print.call(p.chartInstance,a)},action:"click"}}]);h.appendAsList(t());e=new f(a.idCount++,k);e.setConfiguaration({buttons:b,group:{fill:Sa,borderColor:Sa}});e.addSymbol(d);delete w.chartMenuBar;delete w.actionBar;a="t"===e.btnConfig.vAlign?w.chartMenuBar=new l(a.idCount++,a.pId):w.actionBar=new l(a.idCount++,a.pId);a.addComponent(e)}},chartMenuTools:function(){var a=[];return{get:function(){return a},set:function(c){var d,
b=c.length||0;for(d=0;d<b;d+=1)a.push(c[d])},reset:function(c,d){var b=d.components,h=b.actionBar;(b=b.chartMenuBar)&&(b.drawn=!1);h&&(h.drawn=!1);a.length=0;c&&(c.idCount=0,c.clean())},update:function(a,c,d){var b=d.components;d=d.components.toolBoxAPI.SymbolWithContext;var h=(b.chartMenuBar||b.actionBar).componentGroups,e,f,g,l,k,b=0;for(g=h.length;b<g;b++)for(f=h[b],f=f.symbolList||[],l=0,k=f.length;l<k;l++)f[l]instanceof d&&(e=f[l],e=e.getListRefernce().getFirstContainer().atomicLists);e=e||[];
b=0;for(g=e.length;b<g;b++)if(d=e[b],d.name===a){d.updateName(c);break}}}}(),getConfig:function(a){return a?this.config[a]:this.config},get:function(a,c){var d=this[a];return c?d&&d[c]:d},disposeChartStyleSheet:function(){var a=this.components.paper;a&&a.cssClear()},createChartStyleSheet:function(){this.components.paper.cssRender()},configure:function(){var b,e,k,p=this.components,I=this.jsonData,t,m=this.chartInstance,w=p.colorManager,z=this.is3D,n=z?Ta.chart3D:Ta.chart2D,r,K=this.isBar,u,P;u=!1;
var Z=p.legend,V={linear:"linear",easein:"easeIn",easeout:"easeOut",easeinout:"easeInOut",backin:"backIn",backout:"backOut",elastic:"elastic",bounce:"bounce"};I.chart=I.chart||I.graph||I.map||{};delete I.map;delete I.graph;t=I.chart;!t&&(t=I.chart={});p.colorRange||(p.colorRange=new v.ColorRange(this));r=this.config||(this.config={});this.__setDefaultConfig();R(t,r);r.snapLiterals={};r.viewPortConfig={scaleY:1,scaleX:1,x:0,y:0};z&&(K?(r.xDepth=5,r.yDepth=5):(r.xDepth=10,r.yDepth=10),r.showCanvasBase=
I=!!c(t.showcanvasbase,1),r.canvasBasePadding=c(t.canvasbasepadding,2),r.canvasBaseDepth=I?c(t.canvasbasedepth,10):0,r.canvasBgDepth=c(t.canvasbgdepth,3));p.colorManager&&p.colorManager.configure();r.placeAxisLabelsOnTop=c(t.placexaxislabelsontop,0);r.enableAnimation=I=c(t.animation,t.defaultanimation,1);p=c(t.transposeanimation,0);I=I?1E3*c(t.animationduration,1):0;p=p?1E3*c(t.transposeanimduration,.2):0;r.animationObj&&(u=!0);r.animationObj=p={initAnimDuration:I,transposeAnimDuration:p};p.duration=
u||void 0!==p.duration?p.transposeAnimDuration:p.initAnimDuration;for(P in V)P===d(t.animationeffect)&&(r.animationeffect=V[P]);r.showToolTip=c(t.showtooltip,1);r.exportOption={enabled:c(t.exportenabled,0),bgcolor:m.jsVars.transparent||0===c(m.options.containerBackgroundOpacity,1)?a:m.options.containerBackgroundColor||"#ffffff",bgalpha:(m.jsVars.transparent?0:c(m.options.containerBackgroundOpacity,1))+a,exporttargetwindow:d(t.exporttargetwindow,Na?"_blank":"_self"),exportaction:function(){var a;return t.exportaction&&
"string"===typeof t.exportaction?(a=t.exportaction.toLowerCase(),0<=[L.DOWNLOAD,L.SAVE,L.DOWNLOADSAVE].indexOf(a)?a:L.DOWNLOAD):L.DOWNLOAD}(),exportfilename:d(t.exportfilename,"FusionCharts"),exporthandler:d(t.html5exporthandler,t.exporthandler,X),exportparameters:d(t.exportparameters,a),exportformat:d(t.exportformat,g.PNG),exportcallback:d(t.exportcallback,a),logenabled:c(t.logenabled,0),logmode:function(){var a=t.logmode;return"undefined"!==typeof a&&"string"===typeof a&&a.toUpperCase()in B?B[a.toUpperCase()]:
B.AUTO}(),loghandler:d(t.html5loghandler,t.loghandler,h),exportwithimages:c(t.exportwithimages,1),exportatclientside:c(t.exportatclientside,1),exportmode:function(){var a;"undefined"!==typeof t.exportatclientside&&(a={1:l.AUTO,0:l.AUTO}[t.exportatclientside]);a=t.exportmode||a||l.AUTO;return a=a.toLowerCase()}()};(function(){var a=r.exportOption.exportmode,c={};c[l.CLIENT]=1;c[l.AUTO]=0;c[l.SERVER]=0;r.exportOption.exportatclientside=c[a]})();r.printOption={enabled:c(t.printshowbutton,t.showprintmenuitem,
0)};r.chartMenuOptions={position:b=d(t.toolbarposition,"tr").toLowerCase(),hAlign:e=(a+t.toolbarhalign).toLowerCase()===Fa?"l":b.charAt(1),vAlign:k=(a+t.toolbarvalign).toLowerCase()===T?"b":b.charAt(0),hDirection:c(t.toolbarhdirection,"r"===e?-1:1),vDirection:c(t.toolbarvdirection,"b"===k?-1:1),vMargin:c(t.toolbarvmargin,6),hMargin:c(t.toolbarhmargin,10),x:c(t.toolbarx,"l"===e?0:r.width),y:c(t.toolbary,"t"===k?0:r.height)};b=r.style={};r.textDirection="1"===t.hasrtltext?"rtl":F;b.inCanfontFamily=
e=d(t.basefont,"Verdana,sans");b.inCanfontSize=k=la(t.basefontsize,10);b.inCancolor=m=d(t.basefontcolor,w.getColor(n.baseFontColor));b.outCanfontFamily=d(t.outcnvbasefont,e);b.fontSize=u=la(t.outcnvbasefontsize,k);b.outCanfontSize=u+Ea;b.outCancolor=d(t.outcnvbasefontcolor,m).replace(/^#? ([a-f0-9]+)/ig,"#$1");b.baseFontSize=k;b.inCanfontSize=k+Ea;b.inCancolor=m.replace(/^#? ([a-f0-9]+)/ig,"#$1");b.inCanvasStyle=u={fontFamily:e,fontSize:k,color:m};b.inCanLineHeight=u=ga(u);P=(P=D(t.valuebordercolor,
a))?pa(P,c(t.valueborderalpha,t.valuealpha,100)):a;r.reverseXAxis=this.config.allowreversexaxis&&c(t.reversexaxis,0);r.showBorder=c(t.showborder,z?0:1);r.borderWidth=Y(r.showBorder?c(t.borderthickness,1):0,0);r.useplotgradientcolor=""===t.plotgradientcolor?0:r.useplotgradientcolor;r.valuefontbold=c(t.valuefontbold,r.valuefontbold);r.dataLabelStyle=z={fontFamily:d(t.valuefont,e),fontSize:d(t.valuefontsize,parseInt(k,10))+Ea,lineHeight:u,color:pa(d(t.valuefontcolor,m),c(t.valuefontalpha,t.valuealpha,
100)),fontWeight:r.valuefontbold?E:N,fontStyle:c(t.valuefontitalic)?"italic":N,border:P||t.valuebgcolor?c(t.valueborderthickness,1)+"px solid":F,borderColor:P,borderThickness:c(t.valueborderthickness,1),borderPadding:c(t.valueborderpadding,2),borderRadius:c(t.valueborderradius,0),backgroundColor:t.valuebgcolor?pa(t.valuebgcolor,c(t.valuebgalpha,t.valuealpha,100)):a,borderDash:c(t.valueborderdashed,0)?Ra(c(t.valueborderdashlen,4),c(t.valueborderdashgap,2),c(t.valueborderthickness,1)):"none"};ga(z);
r.orphanStyles={defaultStyle:{style:aa({},b.inCanvasStyle)},connectorlabels:{style:aa({},r.dataLabelStyle)},vyaxisname:{style:aa({},b.inCanvasStyle)}};r.legendPosition=d(t.legendposition,T);r.logoURL=f(t.logourl);r.logoPosition=d(t.logoposition,"tl").toLowerCase();r.logoAlpha=c(t.logoalpha,100);r.logoLink=f(t.logolink);r.logoScale=c(t.logoscale,100);r.logoLeftMargin=c(t.logoleftmargin,0);r.logoTopMargin=c(t.logotopmargin,0);r.minChartWidthPercent=c(t.minchartwidth,this.minChartWidth,50)/100;r.minChartHeightPercent=
c(t.minchartheight,this.minChartHeight,50)/100;r.minCanvasWidthPercent=c(t.mincanvaswidth,this.minCanvasWidth,60)/100;r.minCanvasHeightPercent=c(t.mincanvasheight,this.minCanvasHeight,30)/100;this._parseBackgroundCosmetics();this.components.caption.configure();this._parseCanvasCosmetics();r.origMarginTop=c(t.charttopmargin,this.chartTopMargin,15);r.origMarginLeft=c(t.chartleftmargin,this.chartLeftMargin,15);r.origMarginBottom=c(t.chartbottommargin,this.chartBottomMargin,15);r.origMarginRight=c(t.chartrightmargin,
this.chartRightMargin,15);n=d(t.zeroplanecolor,t.divlinecolor,w.getColor(n.divLineColor));z=d(t.zeroplanealpha,t.divlinealpha,w.getColor("divLineAlpha"));r.zeroPlaneColor=pa(n,z);r.zeroPlaneBorderColor=pa(d(t.zeroplanebordercolor,n),c(t.zeroplaneshowborder,1)?z:0);r.zeroPlaneShowBorder=c(t.zeroplaneshowborder,1);r.dataStreamURL=G(t.datastreamurl);r.realtimeEnabled=n=c(t.realtimeenabled,this.isRealTime);r.showLegend=c(t.showlegend,this.showLegend,1);r.link=t.clickurl;r.annRenderDelay=1E3*c(t.annrenderdelay,
0);r.transposeAxis=c(this.transposeAxis,t.transposeaxis,0);r.useEllipsesWhenOverflow=c(t.useellipseswhenoverflow,t.useellipsewhenoverflow,1);r.gLegendPadding=c(t.legendpadding,10);r.skipZeroPlots=c(t.skipzeroplots,1);r.drawTrendRegion=v.toolTip.drawTrendRegion=c(t.drawcrossline,0);r.drawCrossLineOnTop=c(t.drawcrosslineontop,0);r.rolloverbandanimation=c(t.crosslineanimation,0);r.rolloverbandanimationduration=1E3*c(t.crosslineanimationduration,.09);r.plotcolorintooltip=c(t.plotcolorintooltip,this.singleseries?
0:1);r.trendRegionColor=r.trendRegionStroke=pa(d(t.crosslinecolor,w.getColor(q.altHGridColorStr)),d(t.crosslinealpha,w.getColor(q.altHGridAlphaStr)));r.showsum=c(t.showsum,this.showsum,0);r.binSize=oa(c(t.plotbinsize,this.binSize,.5),1);r.labelBinSize=oa(c(t.labelbinsize,1),1);r.enableMouseOutEvent=c(t.enablemouseoutevent,this.enableMouseOutEvent,0);r.tooltipgrayoutcolor=d(t.tooltipgrayoutcolor,S);n&&this._realTimeConfigure();this._setToolTipOptions();Z.configure();this.linkedItems.linkClickFN=bb(this.jsonData,
this.chartInstance);this._createConfigurableComponents()},_createConfigurableComponents:function(){var a=this.config,c=this.components,d;a.realtimeEnabled&&a.usemessagelog&&(a=Q.get("component",["logger","message"]))&&(d=c.messageLogger,d||(c.messageLogger=new a,c.messageLogger.init(this)),c.messageLogger.configure())},_parseBackgroundCosmetics:function(){var a=this.is3D,b=this.components.background.config,h=this.components.colorManager,e=this.jsonData.chart,f;f=b.showBorder=c(e.showborder,this.showBorder,
a?0:1);b.borderWidth=f=Y(f?c(e.borderthickness,1):0,0);b.borderRadius=b.borderRadius=c(e.borderradius,0);b.borderDashStyle=b.borderDashStyle=c(e.borderdashed,0)?Ra(c(e.borderdashlen,4),c(e.borderdashgap,2),f):"none";b.borderAlpha=d(e.borderalpha,a?"100":h&&h.getColor("borderAlpha"));b.borderColor=b.borderColor=pa(d(e.bordercolor,a?"#666666":h&&h.getColor("borderColor")),b.borderAlpha)},_parseCanvasCosmetics:function(){var a,b,h=this.config;b=this.components;var e=b.canvas.config,f=this.jsonData.chart;
b=b.colorManager;var g,l=this.is3D?Ta.chart3D:Ta.chart2D,k=e.isRoundEdges=c(f.useroundedges,0);a=c(f.showxaxisline,f.showyaxisline,f.showaxislines,0)?0:1;e.canvasBorderRadius=c(f.plotborderradius,k?2:0);a=e.showCanvasBorder=!!c(f.showcanvasborder,a,void 0,k?0:1);g=e.oriCanvasBorderThickness=Y(c(f.canvasborderthickness,k?0:c(this.canvasborderthickness,2),0));e.canvasBorderWidth=this.is3D?0:a?g:0;e.canvasBorderColor=pa(d(f.canvasbordercolor,b.getColor("canvasBorderColor")),d(f.canvasborderalpha,b.getColor("canvasBorderAlpha")));
a=e.canBGAlpha=d(f.canvasbgalpha,b.getColor("canvasBgAlpha"));e.canBGColor={FCcolor:{color:d(f.canvasbgcolor,b.getColor(l.canvasBgColor)),alpha:d(f.canvasbgalpha,100),angle:d(f.canvasbgangle,0),ratio:d(f.canvasbgratio)}};b=e.shadow=c(f.showshadow,k,0)&&k?{enabled:!0,opacity:a/100}:0;e.shadowOnCanvasFill=b&&b.enabled;h.origMarginTop=c(f.charttopmargin,15);h.origMarginLeft=c(f.chartleftmargin,15);h.origMarginBottom=c(f.chartbottommargin,15);h.origMarginRight=c(f.chartrightmargin,15);h.origCanvasLeftMargin=
c(f.canvasleftmargin,0);h.origCanvasRightMargin=c(f.canvasrightmargin,0);h.origCanvasTopMargin=c(f.canvastopmargin,0);h.origCanvasBottomMargin=c(f.canvasbottommargin,0);e.canvasPadding=c(f.canvaspadding,0);e.origCanvasTopPad=c(f.canvastoppadding,0);e.origCanvasBottomPad=c(f.canvasbottompadding,0);e.origCanvasLeftPad=c(f.canvasleftpadding,0);e.origCanvasRightPad=c(f.canvasrightpadding,0)},_preDraw:function(){var a=this.config.realTimeConfig,a=a&&a.showRTmenuItem;this.config.realtimeEnabled&&this._setRealTimeCategories&&
this._setRealTimeCategories();this._setAxisValuePadding();this._setAxisLimits();this.chartMenuTools.reset(this.components.tb,this);a&&this._setRTmenu();this.config.useShowLogMenu&&this._setUseLog()},_setUseLog:function(){var a=this.components.messageLogger,c=this.chartMenuTools;c&&c.set([{"Show Log":{handler:function(){a.show()},action:"click"}}])},_manageSpace:function(){var a=this.components.canvas.config,c=this.linkedItems.container,d=this.config,b,h,e,f,g,l,k,t,p,m,D;d.width=b=c.offsetWidth;d.height=
D=c.offsetHeight;d.minChartHeight=p=d.minChartHeightPercent*D;d.minChartWidth=m=d.minChartWidthPercent*b;d.minCanvasWidth=c=d.minCanvasWidthPercent*m;d.minCanvasHeight=h=d.minCanvasHeightPercent*p;d.marginTop=e=d.origMarginTop;d.marginLeft=f=d.origMarginLeft;d.marginBottom=g=d.origMarginBottom;d.marginRight=l=d.origMarginRight;d.canvasMarginTop=d.origCanvasTopMargin;d.canvasMarginLeft=d.origCanvasLeftMargin;d.canvasMarginBottom=d.origCanvasBottomMargin;d.canvasMarginRight=d.origCanvasRightMargin;
d.canvasHeight=k=d.height-d.marginTop-d.marginBottom;d.canvasWidth=t=d.width-d.marginLeft-d.marginRight;d.availableHeight=k-h;d.availableWidth=t-c;k<p&&(k=D-p,d.canvasHeight=p,D=e+g,d.marginTop=k*e/D,d.marginBottom=k*g/D,d.availableHeight=p-h);t<m&&(k=b-m,D=l+f,d.canvasWidth=m,d.marginLeft=k*f/D,d.marginRight=k*l/D,d.availableWidth=m-c);d.canvasLeft=d.marginLeft;d.canvasTop=d.marginTop;a.canvasPaddingLeft=oa(a.origCanvasLeftPad,ua(.1*d.height));a.canvasPaddingRight=oa(a.origCanvasRightPad,ua(.1*d.height));
a.canvasPaddingTop=oa(a.origCanvasTopPad,ua(.1*d.height));a.canvasPaddingBottom=oa(a.origCanvasBottomPad,ua(.1*d.height));this._spaceManager()},_postSpaceManagement:function(){var a=this.config,c=this.components,d=c.xAxis&&c.xAxis[0],b=c.yAxis&&c.yAxis[0],h=c.legend,e=a.xDepth,f=c.canvas.config,c=f.canvasBorderWidth,g=f.canvasPadding||0,l=f.canvasPaddingLeft,k=f.canvasPaddingRight,t=f.canvasPaddingTop,f=f.canvasPaddingBottom;d&&d.setAxisDimention({x:a.canvasLeft+(e||0)+Y(l,g),y:a.canvasBottom+(a.shift||
0)+c,opposite:a.canvasTop-c,axisLength:a.canvasWidth-(e||0)-Y(l,g)-Y(k,g)});d&&this._allocateXAxisLabelSpace(d);b&&b.setAxisDimention({x:a.canvasLeft-c,y:a.canvasTop+t,opposite:a.canvasRight+c,axisLength:a.canvasHeight-t-f});d&&d.shiftLabels(-e,0);h.postSpaceManager();this._adjustCanvasPadding()},_allocateXAxisLabelSpace:function(a){var c=this.config,d=a.getAxisEndLabelDisplaySpace();a=d.left;var b=d.right,h=d.top,d=d.bottom,e=c.availableWidth,f=c.availableHeight,g=c.canvasLeft,l=c.canvasRight,k=
c.canvasTop,t=c.canvasBottom,p=c.width,m=c.height,D=function(a,c){return a<c&&0<c?c-a:0};h+d>f&&(c=h+d,h=f*h/c,d=f*d/c);a+b>e&&(c=a+b,a=e*a/c,b=e*b/c);a=D(g,a);b=D(p-l,b);h=D(k,h);d=D(m-t,d);this._allocateSpace({left:a,right:b,top:h,bottom:d})},_animCallBack:function(){var a=this.config;a.animationStarted&&(b.raiseEvent("internal.animationComplete",{},this.chartInstance),a.animationStarted=!1)},_setAnimDuration:function(){var a=this.config.animationObj;a&&(a.duration=a.transposeAnimDuration)},_setDataLabelStyle:function(){var a=
this.config.dataLabelStyle;this.graphics.datalabelsGroup.css({fontFamily:a.fontFamily,fontSize:a.fontSize,fontWeight:a.fontWeight,fontStyle:a.fontStyle})},_updateVisuals:function(){var a=this.linkedItems.container,c=this.components,d=c.paper,b=c.tooltip,h=this.chartInstance,e=this.get(M,U),f=e.animType,g=e.dummyObj,l=e.animObj,e=e.duration,k=this.config,t,p=k.prevWidth,D=k.prevHeight;k.animationStarted=!0;d?((p||D)&&d.setSize(p,D),p={width:a.offsetWidth,height:a.offsetHeight},t=!0,this._chartAnimation(!0),
d.animateWith(g,l,p,e,f)):(d=c.paper=new J(a,a.offsetWidth,a.offsetHeight),d.setConfig("stroke-linecap",m));J.svg&&this._createDummyText();k.prevWidth=a.offsetWidth;k.prevHeight=a.offsetHeight;d.tooltip(b.style,b.config.shadow,b.config.constrain);this.setChartCursor();this._createLayers();this._setDataLabelStyle();!t&&this._chartAnimation(!0);this._drawBackground();!1!==this.hasCanvas&&this._drawCanvas();c.chartMenuBar&&this._drawChartMenuBar();this._manageCaptionPosition();c.caption&&c.caption.draw();
this.drawLegend();c.actionBar&&this.drawActionBar();this._drawAxis&&this._drawAxis();this._drawDataset();this._drawQuadrant&&this._drawQuadrant();this._drawCreditLabel();this._drawLogo();h.annotations&&this._drawAnnotations();this.drawAxisUpdateUI&&this.drawAxisUpdateUI();c.messageLogger&&c.messageLogger.isDrawn()&&c.messageLogger.draw();this.drawScrollBar&&this.drawScrollBar();this.showRTvalue&&k.realTimeConfig.showRTValue&&this._drawRealTimeValue()},_chartAnimation:function(a){var c=this,d=c.graphics,
b=c.components.paper,h=c.config.animationObj,e,f=h.duration||h.transposeAnimDuration,g=c.getJobList(),l=c.config,k=l.animationeffect,t=function(){c._animCallBack()};!f||l.parentElementPause?hb.addJob(function(){c._animCallBack()},ib.animation):(h.animObj=f=J.animation({x:0},f,k,t,!1),h.animType=k,(e=d.dummyObj)?e.attr({x:100}):(d.dummyObj=e=b.rect({x:100,y:0,width:10,height:30}),e.hide()),h.dummyObj=d.dummyObj,e.stop(void 0,!0,!0),a?(e.animate(f),e.pause(void 0,!0),l.parentElementPause=!0,g.postRender.push(hb.addJob(function(){l.parentElementPause=
!1;c._setAnimDuration();e.resume(void 0,!0)},ib.animation))):(setTimeout(function(){c._setAnimDuration()},0),e.animate(f)))},draw:function(){var a=this.chartInstance;this.config.hasChartMessage?(this._hide(),this.drawChartMessage(),v.raiseEvent("nodatatodisplay",{},a,[a.id]),this.chartInstance.jsVars.drawCount+=1,this.chartInstance.__state.dataReady=!1,this.chartInstance.jsVars.hasNativeMessage=!0):(this._hideChartMessage(),this._clearTimers&&this._clearTimers(),this.config.plotOverFlow=!1,this._show(),
this._preDraw(),this._createToolBox(),this._manageSpace(),this._postSpaceManagement(),this._setInitialDrawingIndex&&this._setInitialDrawingIndex(),this._updateVisuals(),this.chartInstance.jsVars.drawCount+=1,this.chartInstance.jsVars.hasNativeMessage=!1)},drawLegend:function(){var a=this.components,c=a.legend,a=a.gradientLegend,d=this.hasLegend;this.config.gLegendEnabled?(c&&c.hide(),this.drawGradientLegend&&this.drawGradientLegend()):(a&&a.elem&&a.elem.gl.carpet&&a.elem.gl.carpet.node&&a.elem.gl.carpet.group.hide(),
!1!==d&&c.drawLegend())},manageGradientLegendSpace:function(a){var c=this.components.gradientLegend,d=c&&c.conf,b;b=oa(this.config.gLegendPadding,.5*a);d?(d=d.legendPosition,a=c.getLogicalSpace(a),b=d===T?{bottom:(a.height||0)+b}:{right:(a.width||0)+b}):b={bottom:0,right:0};return b},drawGradientLegend:function(){var a=this.components,c=this.config,d=this.jsonData.colorrange,b=a.gradientLegend||{},h=(b.conf||{}).legendPosition,e=c.canvasLeft,f=c.canvasTop,g=c.canvasWidth,l=c.canvasHeight,k=c.marginBottom,
t=c.marginRight,p=this.hasGradientLegend,m,D,w;m=b.getLogicalSpace();D=m.width;w=m.height;h===T?(h=g-D,t=e+(0>h?0:h/2),k=c.height-m.height-k-(c.actionBarHeight||0)):(h=l-w,k=f+(0>h?0:h/2),t=c.width-m.width-t);d&&p&&b.draw(t,k,{paper:a.paper,parentGroup:this.graphics.parentGroup})},_drawAxis:function(){var a=this.components,c=a.yAxis||[],d=a.xAxis||[],a=a.scale,b,h;b=0;for(h=d.length;b<h;b++)d[b].draw();b=0;for(h=c.length;b<h;b++)c[b].draw();a&&a.draw()},_drawAnnotations:function(){var a=this.jsonData,
b=a.chart,h=this.config,e=h.width,f=h.height,h=a&&a.annotations||{},g=this.chartInstance.annotations;if(a&&b&&c(b.showannotations,1)){var a=c(h.scaleonresize,b.scaleonresize,1),b={interactionevents:d(this.annotationInteractionEvents,!0),showbelow:d(h.showbelow,h.showbelowchart),autoscale:h.autoscale,scaletext:h.scaletext,scaleimages:h.scaleimages,constrainedscale:h.constrainedscale,scaleonresize:a,origw:d(h.origw,b.origw,this.origRenderWidth,e),origh:d(h.origh,b.origh,this.origRenderHeight,f),xshift:h.xshift,
yshift:h.yshift,grpxshift:h.grpxshift,grpyshift:h.grpyshift,xscale:h.xscale,yscale:h.yscale,rootxscale:c(h.xscale,100)/100,rootyscale:c(h.yscale,100)/100},l;b||(b={});for(l in void 0)b[l]=(void 0)[l];g.reset(h,b,this)}else g.clear();g.draw(this)},_clearTimers:function(){var a=this.config&&this.config.realTimeConfig,c=this.linkedItems.timers,d=c&&c.setTimeout,c=c&&c.setInterval,b;a&&(a.refreshIntervalFlag=!1);for(b in d)clearTimeout(d[b]);for(b in c)clearInterval(c[b])},_createLayers:function(){var a=
this.graphics||(this.graphics={}),c,d,b=this.components.paper,a=this.graphics;a.parentGroup=c=a.parentGroup||b.group("parentgroup");a.backgroundGroup=a.backgroundGroup||b.group("background",c);a.canvasGroup=a.canvasGroup||b.group("canvas",c);a.axisBottomGroup=a.axisBottomGroup||b.group("axisbottom",c);a.datasetGroup=d=a.datasetGroup||b.group("dataset",c);a.axisTopGroup=a.axisTopGroup||b.group("axistop",c);a.sumLabelsLayer=a.sumLabelsLayer||b.group("sumlabels",c);a.datalabelsGroup=a.datalabelsGroup||
b.group("datalabel",c);a.legendGroup=a.legendGroup||b.group("legend",c);a.captionGroup=a.captionGroup||b.group("caption",c);a.captionGroup.trackTooltip(!0);a.columnTrendGroup=a.columnTrendRegion||b.group("columnTrendGroup",d);a.columnGroup=a.columnGroup||b.group("column",d);a.areaGroup=a.areaGroup||b.group("area",d);a.lineGroup=a.lineGroup||b.group("line",d);a.trackerGroup||(a.trackerGroup=b.group("tracker",c),a.trackerGroup.trackTooltip(!0));a.buttonGroup=a.buttonGroup||b.group("buttons")},_spaceManager:function(){var a,
c,d=this.config,b=this.components,h=b.xAxis&&b.xAxis[0];c=b.yAxis&&b.yAxis||[];var e,f,g=b.legend.config.legendPos,l=d.xDepth,k=d.yDepth,t=d.canvasBgDepth,p=d.canvasBaseDepth,m=d.canvasBasePadding,D=b.canvas.config.canvasBorderWidth,w=d.realTimeConfig&&d.realTimeConfig.showRTValue,z=d.borderWidth,G=d.canvasMarginTop,r=d.canvasMarginBottom,n=d.canvasMarginLeft,B=d.canvasMarginRight,b=d.minCanvasHeight,F=d.minCanvasWidth;a=d.minChartWidth;var K=d.minChartHeight,q=d.height,u=d.width,R=!1,L=!1,P,aa=d.origCanvasTopMargin,
v=d.origCanvasBottomMargin,Z=d.origCanvasLeftMargin,E=d.origCanvasRightMargin,S,V,X=[];d.canvasWidth-2*z<a&&(f=(d.canvasWidth-a)/2);d.canvasHeight-2*z<K&&(e=(d.canvasHeight-K)/2);this._allocateSpace({top:e||z,bottom:e||z,left:f||z,right:f||z});z=0;for(f=c.length;z<f;z++)e=c[z],a=.7*d.availableWidth,a=e&&e.placeAxis(a)||{},X.push({axisIndex:z,spaceTaken:a}),e&&this._allocateSpace(a);d.yAxisSpaceAllocation=X;this._allocateSpace(this._manageActionBarSpace&&this._manageActionBarSpace(.225*d.availableHeight)||
{});this._manageLegendSpace(void 0);c=g===T?.6*d.availableHeight:.6*d.availableWidth;k&&(this._allocateSpace({bottom:k}),d.shift=l+m+p);t&&this._allocateSpace({right:t});d.canvasWidth-2*D<F&&(V=(d.canvasWidth-F)/2);this._allocateSpace({left:V||D,right:V||D});F>u-n-B&&(L=!0,k=d.canvasWidth-F,l=n+B,n=d.canvasMarginLeft=k*n/l,B=d.canvasMarginRight=k*B/l);n=n>d.canvasLeft?n-d.canvasLeft:0;B=B>u-d.canvasRight?B+d.canvasRight-u:0;this._allocateSpace({left:n,right:B});L&&(l=Z+E,L=d.canvasWidth,L>F&&(k=L-
F,n=k*Z/l,B=k*E/l),this._allocateSpace({left:n,right:B}));d.actualCanvasMarginRight=B;d.actualCanvasMarginBottom=P;this._manageChartMenuBar(c);c=.2*d.availableHeight;this._allocateSpace(this._getSumValueSpace(c));c=.3*d.availableHeight;d.realtimeEnabled&&(w?this._allocateSpace(this._realTimeValuePositioning(c)):this._hideRealTimeValue());this._resetViewPortConfig&&this._resetViewPortConfig();this._setAxisScale&&this._setAxisScale();c=.6*d.availableHeight;d.xAxisSpaceAllocation=P=h&&h.placeAxis(c);
h&&this._allocateSpace(P);c=.3*d.availableHeight;this._manageScrollerPosition&&this._manageScrollerPosition(c);d.canvasHeight-2*D<b&&(S=(d.canvasHeight-b)/2);this._allocateSpace({top:S||D,bottom:S||D});this._allocateSpace({bottom:p});b>q-G-r&&(R=!0,k=d.canvasHeight-b,l=G+r,G=d.canvasMarginTop=k*G/l,r=d.canvasMarginBottom=k*r/l);h=G>d.canvasTop?G-d.canvasTop:0;P=r>q-d.canvasBottom?r+d.canvasBottom-q:0;this._allocateSpace({top:h,bottom:P});R&&(l=aa+v,p=d.canvasHeight,p>b&&(k=p-b,h=k*aa/l,P=k*v/l),this._allocateSpace({top:h,
bottom:P}));d.actualCanvasMarginTop=h;d.actualCanvasMarginLeft=n},_manageLegendSpace:function(){var a=this.config,d=this.components,b=d.legend,h=d.gradientLegend,e;e=this.jsonData.colorrange;var d=this.hasLegend,f={},g=this.hasGradientLegend,l=c(this.jsonData.chart.mapbycategory,0);g&&e&&c(e.gradient)&&!l?(e=h.conf,g=!0,a.gLegendEnabled=!0,h=.5,e=e.legendPosition):(e=b.config,g=!1,a.gLegendEnabled=!1,e=e.legendPos,h=e===Ja?.8:.4);a=e===Ja?a.availableWidth*h:a.availableHeight*h;g?f=this.manageGradientLegendSpace(a):
!1!==d&&(f=b._manageLegendPosition(a));this._allocateSpace({bottom:f.bottom||0,right:f.right||0})},_getSumValueSpace:function(a){var d={},b=this.isBar,h=this.jsonData.chart,d=0!==this.showsum?c(h.showsum,this.showsum,0):0,e=this.config.stack100percent,f=this.config.isstacked,h=0,g=this.components["datasetGroup_"+this.defaultDatasetType],l=0;d&&e&&f&&g&&(d=g.getMaxSumValueSpace(),b?h=d.maxWidth:l=d.maxHeight,l>a&&(l=a),h>a&&(h=a));return{top:l,right:h}},_setAxisValuePadding:function(){var a=this.components.dataset,
c=a.length,d,b,h=-Infinity,e=-Infinity,f=this.components.xAxis;for(d=0;d<c;d++)b=a[d],b=b.getAxisValuePadding&&b.getAxisValuePadding()||{},h=Y(h,b.left||-Infinity),e=Y(e,b.right||-Infinity);-Infinity===h&&(h=0);-Infinity===e&&(e=0);f&&f[0].setAxisPadding(h,e)},_fetchCaptionPos:function(a){var c=this.config,d=this.components,b=c.width,h=d.chartMenuBar,f=h.componentGroups[0].btnConfig,h=h.getLogicalSpace().width,d=d.caption.config,g=d.width,f="l"===f.hAlign,l=c.width-a,k=c.origMarginRight,t=c.origMarginLeft,
p=f?t:k;return d.align===K?(f?a:l)-g/2-p-h:d.align===e?f?-1:b-c.canvasLeft-p-g-h+d.horizontalPadding:f?b-(k+t+h+g):-1},_manageChartMenuBar:function(a){var d=this.config,b=this.components,h=b.chartMenuBar,e=h&&h.getLogicalSpace(),b=b.caption.config,f=b.isOnTop,g=d.width/2,l=d.canvasRight,k=l?(d.canvasLeft+l)/2:g,l=0,g=b.alignWithCanvas?k:g,l=h&&h.componentGroups[0].btnConfig,h=e&&l.spaceNotHardCoded;l&&l.spaceNotHardCoded&&(l.x=c("l"===l.hAlign?0:d.width),l.y=c("t"===l.vAlign?0:d.height));delete b._offsetHeight;
f?(a=this._manageCaptionSpacing(a),h&&(l=this._fetchCaptionPos(g),b._offsetHeight=0>l?e.height:0,a.top=0>l?c(a.top,0)+e.height:Y(a.top,e.height))):(this._allocateSpace({top:h?e.height:0}),a=this._manageCaptionSpacing(a));this._allocateSpace(a);return{top:e?Y(e.height,a.top):a.top,bottom:a.bottom}},_manageActionBarSpace:function(){var a=this.config,c=this.components.actionBar,c=(c&&c.getLogicalSpace()||{}).height||0;a.actionBarHeight=c;return{bottom:c}},_getDSspace:function(a){var c=this.components.dataset,
d,b=c.length,h,e,f={},g={left:0,right:0,top:0,bottom:0,paddingLeft:0,paddingRight:0,paddingBottom:0,paddingTop:0},l;for(h=0;h<b;h++)if(d=c[h],e=d.groupManager)f[d.type]=e;else if(d.manageSpace)for(l in d=d.manageSpace&&d.manageSpace(),d)g[l]=Y(d[l],g[l]);for(l in f)if(e=f[l],e.manageSpace)for(l in d=e.manageSpace&&e.manageSpace(a),d)g[l]=Y(d[l],g[l]);c=g.paddingLeft;b=g.paddingRight;h=c+b;a<h&&(g.paddingLeft=a*c/h,g.paddingRight=a*b/h);return g},_adjustCanvasPadding:function(){var a=this.config,c=
this.components,d=c.dataset,b=d.length,h=c.xAxis&&c.xAxis[0],e=c.yAxis&&c.yAxis[0],f=a.xDepth,g={},l,k,t,p,c=c.canvas.config,m=c.canvasBorderWidth,D=c.canvasPadding;for(l=0;l<b;l++)k=d[l],(t=k.groupManager)&&(g[k.type]=t);for(p in g)t=g[p],t.preDrawCalculate&&t.preDrawCalculate();this._getDSspace&&(this._allocateSpace(this._getDSspace(.4*a.canvasWidth)),d=a.canvasLeft,b=c.canvasPaddingLeft,g=a.canvasTop,p=c.canvasPaddingTop,h&&h.setAxisDimention({x:d+(f||0)+Y(b,D),y:a.canvasBottom+(a.shift||0)+m,
opposite:g-m,axisLength:a.canvasWidth-(f||0)-Y(b,D)-Y(c.canvasPaddingRight,D)}),e&&e.setAxisDimention({x:d-m,y:g+p,opposite:a.canvasRight+m,axisLength:a.canvasHeight-p-c.canvasPaddingBottom}))},_setAxisLimits:function(){var a=this.components,c=a.dataset,b=a.yAxis,a=a.xAxis,h,e=c.length,f,g=-Infinity,l=Infinity,k=Infinity,t=-Infinity,p,m,D,w={},z=[],G=function(a){m=d(a.xMax,-Infinity);D=d(a.xMin,Infinity);g=Y(g,a.max);l=oa(l,a.min);t=Y(t,m);k=oa(k,D)};for(f=0;f<e;f++)h=c[f],(p=h.groupManager)?w[h.type]=
p:z.push(h);for(p in w)c=w[p].getDataLimits(),G(c);e=z.length;for(f=0;f<e;f++)c=z[f].getDataLimits(),G(c);G(this._getTrendLineMinMax("h"));-Infinity===g&&(g=0);Infinity===l&&(l=0);this.config.yMax=g;this.config.yMin=l;b[0].setAxisConfig({isPercent:this.config.isstacked?this.config.stack100percent:0});b[0].setDataLimit(g,l);if(-Infinity!==t||Infinity!==k)a[0].config.xaxisrange={max:t,min:k},a[0].setDataLimit(t,k)},_getTrendLineMinMax:function(a,c){var d="v"===a?this.jsonData.vtrendlines:this.jsonData.trendlines,
b={max:-Infinity,min:Infinity},h,e,f,g,l;c=c||"p";if(d)for(e=0,g=d.length;e<g;e+=1)for(f=0,l=d[e].line?d[e].line.length:0;f<l;f+=1)h=d[e].line[f],"s"===c&&"s"!==h.parentyaxis||"s"!==c&&"s"===h.parentyaxis||(b.max=Y(h.startvalue||-Infinity,h.endvalue||-Infinity,b.max),b.min=oa(h.startvalue||Infinity,h.endvalue||Infinity,b.min));return b},_setToolTipOptions:function(){var a=this.components,b=this.components.colorManager,h=this.jsonData.chart,e=a.tooltip||(e=a.tooltip={}),a=e.config||(a=e.config={}),
f=this.config,g=f.style,f=f.style.inCanvasStyle,l,k,t;l=pa(d(h.tooltipbgcolor,b.getColor("toolTipBgColor")),d(h.tooltipbgalpha,100));b=pa(d(h.tooltipbordercolor,b.getColor("toolTipBorderColor")),d(h.tooltipborderalpha,100));k=c(h.tooltipborderthickness,1)+"px";t=c(h.tooltippadding,3)+"px";e=e.style={fontFamily:g.inCanfontFamily,fontSize:g.inCanfontSize,lineHeight:f.lineHeight,color:pa(g.inCancolor),backgroundColor:l,borderColor:b,borderWidth:k,padding:t};h.tooltipcolor&&(e.color=ea(h.tooltipcolor));
if(h.tooltipborderradius||h.useroundedges)e.borderRadius=c(h.tooltipborderradius,2)+"px";a.shadow=c(h.showtooltipshadow,h.showshadow,1)?{enabled:!0,opacity:Y(c(h.tooltipbgalpha,100),c(h.tooltipborderalpha,100))/100}:!1;a.constrain=c(h.constraintooltip,1)},_createAxes:function(){var a=this.components,c=Q.register("component",["axis","cartesian"]),d;a.yAxis=[];a.xAxis=[];a.yAxis[0]=d=new c;a.xAxis[0]=a=new c;d.chart=this;a.chart=this;d.init();a.init();this._setCategories()},_feedAxesRawData:function(){var a=
this.config,b=this.components,h=b.colorManager,e=this.jsonData,f=e.chart,g,l=this.is3d,k=l?Ta.chart3D:Ta.chart2D;g={outCanfontFamily:d(f.outcnvbasefont,f.basefont,"Verdana,sans"),outCanfontSize:la(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:d(f.outcnvbasefontcolor,f.basefontcolor,h.getColor(k.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisBreaks:f.xaxisbreaks,axisNamePadding:f.xaxisnamepadding,axisValuePadding:f.labelpadding,axisNameFont:f.xaxisnamefont,axisNameFontSize:f.xaxisnamefontsize,
axisNameFontColor:f.xaxisnamefontcolor,axisNameFontBold:f.xaxisnamefontbold,axisNameFontItalic:f.xaxisnamefontitalic,axisNameBgColor:f.xaxisnamebgcolor,axisNameBorderColor:f.xaxisnamebordercolor,axisNameAlpha:f.xaxisnamealpha,axisNameFontAlpha:f.xaxisnamefontalpha,axisNameBgAlpha:f.xaxisnamebgalpha,axisNameBorderAlpha:f.xaxisnameborderalpha,axisNameBorderPadding:f.xaxisnameborderpadding,axisNameBorderRadius:f.xaxisnameborderradius,axisNameBorderThickness:f.xaxisnameborderthickness,axisNameBorderDashed:f.xaxisnameborderdashed,
axisNameBorderDashLen:f.xaxisnameborderdashlen,axisNameBorderDashGap:f.xaxisnameborderdashgap,useEllipsesWhenOverflow:f.useellipseswhenoverflow,divLineColor:d(f.vdivlinecolor,f.divlinecolor,h.getColor(k.divLineColor)),divLineAlpha:d(f.vdivlinealpha,f.divlinealpha,l?h.getColor("divLineAlpha3D"):h.getColor("divLineAlpha")),divLineThickness:c(f.vdivlinethickness,f.divlinethickness,1),divLineIsDashed:!!c(f.vdivlinedashed,f.vdivlineisdashed,f.divlinedashed,f.divlineisdashed,0),divLineDashLen:c(f.vdivlinedashlen,
f.divlinedashlen,4),divLineDashGap:c(f.vdivlinedashgap,f.divlinedashgap,2),showAlternateGridColor:c(f.showalternatevgridcolor,0),alternateGridColor:d(f.alternatevgridcolor,h.getColor("altVGridColor")),alternateGridAlpha:d(f.alternatevgridalpha,h.getColor("altVGridAlpha")),numDivLines:c(f.numvdivlines,this.numVDivLines),labelFont:f.labelfont,labelFontSize:f.labelfontsize,labelFontColor:f.labelfontcolor,labelFontAlpha:f.labelalpha,labelFontBold:f.labelfontbold,labelFontItalic:f.labelfontitalic,maxLabelHeight:f.maxlabelheight,
axisName:f.xaxisname,axisMinValue:f.xaxisminvalue,axisMaxValue:f.xaxismaxvalue,setAdaptiveMin:c(f.setadaptivexmin,this.setadaptivexmin,a.setadaptivexmin),adjustDiv:f.adjustvdiv,labelDisplay:f.labeldisplay,showLabels:f.showlabels,rotateLabels:f.rotatelabels,slantLabel:c(f.slantlabels,f.slantlabel),labelStep:c(f.labelstep,f.xaxisvaluesstep),showAxisValues:c(f.showxaxisvalues,f.showxaxisvalue),showLimits:c(f.showvlimits,this.showvlimits),showDivLineValues:c(f.showvdivlinevalues,f.showvdivlinevalues,
this.showvdivlinevalues),showZeroPlane:c(f.showvzeroplane,this.showzeroplane),zeroPlaneColor:f.vzeroplanecolor,zeroPlaneThickness:c(f.vzeroplanethickness,f.vdivlinethickness,a.zeroplanethickness,2),zeroPlaneAlpha:c(f.vzeroplanealpha,f.vdivlinealpha,a.zeroplanealpha),showZeroPlaneValue:c(f.showvzeroplanevalue,this.showzeroplanevalue),trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,showTrendlinesOnTop:f.showtrendlinesontop,
showAxisLine:l?0:c(f.showxaxisline,f.showaxislines,f.drawAxisLines,this.showxaxisline,0),axisLineThickness:c(f.xaxislinethickness,f.axislinethickness,1),axisLineAlpha:c(f.xaxislinealpha,f.axislinealpha,100),axisLineColor:d(f.xaxislinecolor,f.axislinecolor,"#000000")};h={outCanfontFamily:d(f.outcnvbasefont,f.basefont,"Verdana,sans"),outCanfontSize:la(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:d(f.outcnvbasefontcolor,f.basefontcolor,h.getColor(k.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,
"#$1"),axisBreaks:f.yaxisbreaks,axisNamePadding:f.yaxisnamepadding,axisValuePadding:f.yaxisvaluespadding,axisNameFont:f.yaxisnamefont,axisNameFontSize:f.yaxisnamefontsize,axisNameFontColor:f.yaxisnamefontcolor,axisNameFontBold:f.yaxisnamefontbold,axisNameFontItalic:f.yaxisnamefontitalic,axisNameBgColor:f.yaxisnamebgcolor,axisNameBorderColor:f.yaxisnamebordercolor,axisNameAlpha:f.yaxisnamealpha,axisNameFontAlpha:f.yaxisnamefontalpha,axisNameBgAlpha:f.yaxisnamebgalpha,axisNameBorderAlpha:f.yaxisnameborderalpha,
axisNameBorderPadding:f.yaxisnameborderpadding,axisNameBorderRadius:f.yaxisnameborderradius,axisNameBorderThickness:f.yaxisnameborderthickness,axisNameBorderDashed:f.yaxisnameborderdashed,axisNameBorderDashLen:f.yaxisnameborderdashlen,axisNameBorderDashGap:f.yaxisnameborderdashgap,axisNameWidth:f.yaxisnamewidth,useEllipsesWhenOverflow:f.useellipseswhenoverflow,rotateAxisName:c(f.rotateyaxisname,1),axisName:f.yaxisname,divLineColor:d(f.divlinecolor,h.getColor(k.divLineColor)),divLineAlpha:d(f.divlinealpha,
l?h.getColor("divLineAlpha3D"):h.getColor("divLineAlpha")),divLineThickness:c(f.divlinethickness,1),divLineIsDashed:!!c(f.divlinedashed,f.divlineisdashed,0),divLineDashLen:c(f.divlinedashlen,4),divLineDashGap:c(f.divlinedashgap,2),showAlternateGridColor:c(f.showalternatehgridcolor,1),alternateGridColor:d(f.alternatehgridcolor,h.getColor("altHGridColor")),alternateGridAlpha:d(f.alternatehgridalpha,h.getColor("altHGridAlpha")),numDivLines:c(f.numdivlines,this.numDivLines),axisMinValue:f.yaxisminvalue,
axisMaxValue:f.yaxismaxvalue,setAdaptiveMin:c(f.setadaptivesymin,f.setadaptiveymin),adjustDiv:f.adjustdiv,labelStep:f.yaxisvaluesstep,showAxisValues:c(f.showyaxisvalues,f.showyaxisvalue,this.showyaxisvalues),showLimits:c(f.showyaxislimits,f.showlimits,this.showLimits),showDivLineValues:c(f.showdivlinevalues,f.showdivlinevalue,this.showdivlinevalues),showZeroPlane:c(f.showzeroplane,this.showzeroplane),zeroPlaneColor:f.zeroplanecolor,zeroPlaneThickness:c(f.zeroplanethickness,f.divlinethickness,a.zeroplanethickness,
2),zeroPlaneAlpha:c(f.zeroplanealpha,f.divlinealpha,a.zeroplanealpha),showZeroPlaneValue:c(f.showzeroplanevalue,this.showzeroplanevalue),showZeroPlaneOnTop:a.showzeroplaneontop,trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:l?0:c(f.showyaxisline,f.showaxislines,f.drawAxisLines,this.showyaxisline,0),axisLineThickness:c(f.yaxislinethickness,f.axislinethickness,
1),axisLineAlpha:c(f.yaxislinealpha,f.axislinealpha,100),axisLineColor:d(f.yaxislinecolor,f.axislinecolor,"#000000")};g.vtrendlines=e.vtrendlines;h.trendlines=e.trendlines;e=b.yAxis&&b.yAxis[0];b=b.xAxis&&b.xAxis[0];e&&(e.setCommonConfigArr(h,!0,!1,!1),e.configure());b&&(b.setCommonConfigArr(g,!1,a.reverseXAxis,!1),b.configure())},_createLegend:function(){var a=this.components,c=Q.register("component",["legend","legend"]);Ga=a.legend=new c;Ga.chart=this;Ga.init()},_createGradientLegend:function(){var a=
this.components,c;this.hasGradientLegend&&(c=a.gradientLegend=a.gradientLegend||new (Q.register("component",["gradientLegend","gradientLegend"])),a.postLegendInitFn=c.init({chart:this}))},_setCategories:function(){var a=this.jsonData,c=this.components.xAxis,a=a.categories&&a.categories[0].category;c&&c[0].setCategory(a)},_getDiff:function(a,c,d,b){d>a&&(a=d,c=b);return{diff:a,startIndex:c}},_createDatasets:function(){var a,c=this.components,b=c.xAxis[0],h=this.jsonData,e=h.dataset,f=e&&e.length,g,
l,k,t=this.defaultDatasetType,p=this.applicableDSList,m=this.components.legend.components.items||[],D,w,z,r=this.config.isstacked,n,B,K=[],q=this.isRealTime,u=this.config.catLen,R={};e&&0!==e.length||this.setChartMessage();this.config.categories=h.categories&&h.categories[0].category;g=c.dataset||(c.dataset=[]);l=g.length;for(h=0;h<f;h++)if(z=e[h],z.seriesname&&(z.seriesname=G(z.seriesname)),k=z.parentyaxis||F,w=(w=this.isDual&&"s"===k.toLowerCase()?d(z.renderas,this.sDefaultDatasetType):d(z.renderas,
t))&&w.toLowerCase(),p[w]||(w=t),a=Q.get("component",["dataset",w]))void 0===R[w]?R[w]=0:R[w]++,n="datasetGroup_"+w,k=Q.register("component",["datasetGroup",w]),(D=c[n])&&K.push(D),k&&!D&&(D=c[n]=new k,D.chart=this,D.init()),(k=g[h])?(w=b.getCategoryLen(),a=u-w,n=q?k.components:k.JSONData,B=n.data&&n.data.length,n=q?0:z.data&&z.data.length||0,B-=n,a=this._getDiff(B,n,a,w),w=a.diff,a=a.startIndex,this.config._dataUpdated=!0,0<w&&k.removeData(a,w,!1),this.config._dataUpdated=!1,g[h].JSONData=z,g[h].configure(),
g[h]._deleteGridImages&&g[h]._deleteGridImages()):(k=new a,g.push(k),k.chart=this,k.index=h,D&&(r?D.addDataSet(k,0,R[w]):D.addDataSet(k,R[w],0)),k.init(z));if(l>f){w=l-f;D&&r&&D.removeDataSet(0,h,w);c=h;for(f=w+h;c<f;c++)D&&!r&&D.removeDataSet(h,0,1),Da.call(g[c]);g.splice(h,w);m.splice(h,w)}this.config.catLen=b.getCategoryLen()},_drawDataset:function(){var a=this.components.dataset,c,d=a.length,b,h,e={},f=[];for(b=0;b<d;b++)c=a[b],(h=c.groupManager)?e[c.type]=h:f.push(c);for(h in e)e[h].skipOverlapPlot(),
e[h].draw();d=f.length;for(b=0;b<d;b++)f[b].draw();this._setRTdata&&this._setRTdata()},_drawCanvas:function(){var a=this.jsonData.chart,d=this.components,b=this.config,h=this.graphics,e=d.paper,f=d.canvas,d=f.graphics,g=f.config,f=g.clip={},l=d.canvasBorderElement,k=this.get(M,U),t=k.animType,p=k.animObj,D=k.dummyObj,k=k.duration,w=d.canvasElement,z=b.canvasLeft,G=b.canvasTop,r=b.canvasWidth,B=b.canvasHeight,F=g.xDepth=b.xDepth||0,b=g.yDepth=b.yDepth||0,h=h.canvasGroup,K=g.canvasBorderRadius,q=g.canvasBorderWidth,
u=.5*q,R=g.canvasBorderColor,L=g.canBGColor,P=g.canBGAlpha,aa=g.shadow,a=g.showCanvasBG=!!c(a.showcanvasbg,1),v=g.shadowOnCanvasFill,Z=g.showCanvasBorder,g={x:z-u,y:G-u,width:r+q,height:B+q,r:K,"stroke-width":q,stroke:R,"stroke-linejoin":2<q?m:n};Z?l?(l.show(),l.animateWith(D,p,{x:z-u,y:G-u,width:r+q,height:B+q,r:K},k,t),l.attr({"stroke-width":q,stroke:R,"stroke-linejoin":2<q?m:n}),l.shadow(aa)):d.canvasBorderElement=e.rect(g,h).shadow(aa):l&&l.hide();f["clip-canvas"]=[Y(0,z-F),Y(0,G-b),Y(1,r+2*F),
Y(1,B+b)];f["clip-canvas-init"]=[Y(0,z-F),Y(0,G-b),1,Y(1,B+2*b)];a?(g={x:z,y:G,width:r,height:B,r:K,"stroke-width":0,stroke:"none",fill:na(L)},w?(w.show(),w.animateWith(D,p,{x:z,y:G,width:r,height:B,r:K},k,t),w.attr({"stroke-width":0,stroke:"none",fill:na(L)})):w=d.canvasElement=e.rect(g,h),v?w.shadow({opacity:P/100}):w.shadow(!1)):w&&w.hide()},_getBackgroundCosmetics:function(){var a=this.jsonData.chart,c=this.components.colorManager,b=this.is3D?Ta.chart3D:Ta.chart2D;return{FCcolor:{color:d(a.bgcolor,
this.bgColor,c.getColor(b.bgColor)),alpha:d(a.bgalpha,this.bgAlpha,c.getColor(b.bgAlpha)),angle:d(a.bgangle,c.getColor(b.bgAngle)),ratio:d(a.bgratio,c.getColor(b.bgRatio))}}},_manageCaptionSpacing:function(a,c){return this.components.caption.manageSpace(a,c)},_manageCaptionPosition:function(){this.components.caption.managePosition()},drawActionBar:function(){var a=this.config,c=this.components,d=c.actionBar||{},b=this.graphics,h=b.toolbarWrapperGroup,e=c.paper,f=d.componentGroups[0].btnConfig,c=d&&
d.getLogicalSpace();d.toolbarConfig.fill=Sa;d.toolbarConfig.vPadding=0;d.toolbarConfig.borderColor=Sa;h||(h=b.toolbarWrapperGroup=e.group("toolbarWrapper",b.parentGroup).insertBefore(b.datalabelsGroup));f.spaceNotHardCoded?d.draw("b"===f.vAlign&&"r"===f.hAlign?a.width-a.marginRight-c.width:a.marginLeft,a.height-a.marginBottom-c.height,{parentGroup:h}):d.draw(f.x,f.y);d.drawn=!0},_drawChartMenuBar:function(){var a=this.components.chartMenuBar,c=a.getLogicalSpace(),d=a.toolbarConfig,b=a.componentGroups[0].btnConfig,
h=b.vDirection,e=b.hDirection,f=b.y,g=b.x;d.fill=Sa;d.borderColor=Sa;b.spaceNotHardCoded?(f+=b.vMargin*h+oa(0,c.height*h),g+=b.hMargin*e-Y(0,c.width*e),a.draw("l"===b.hAlign?g+c.width:g-c.width,f)):a.draw(g,f);a.drawn=!0},_drawLogo:function(){var a=this,c=a.components.paper,d=a.config,h=d.borderWidth||0,e=d.height,f=d.width,g=a.graphics.logoImage,l=d.logoURL,k=d.logoAlpha/100,p=d.logoPosition,m=d.logoLink,D=d.logoScale,w=d.logoLeftMargin,z=d.logoTopMargin,G,r,d=a.get(M,U),n=d.animType,B=d.animObj,
F=d.dummyObj,q=d.duration,d={tr:{vAlign:V,hAlign:Ja},bl:{vAlign:T,hAlign:Fa},br:{vAlign:T,hAlign:Ja},cc:{vAlign:K,hAlign:K}},u,R,L;l?(u=new ca,(L=d[p])||(L={vAlign:V,hAlign:Fa}),u.onload=function(){R=ma("none",L.vAlign,L.hAlign,D,h,f,e,u);H&&(R.w=R.width||0,R.h=R.height||0);R.src=l;g?g.animateWith(F,B,R,q,n):g=a.graphics.logoImage=c.image(R);g.show();g.translate(w,z).css("opacity",k);m?g.css({cursor:t,_cursor:"hand"}):g.css({cursor:"default",_cursor:N});if(g.events&&g.events.length)for(r=0,G=g.events.length;r<
G;r++)g.events[r].unbind(),g.events.splice(r,1),--G,--r;g.mouseover(function(c){c=ha(a.chartInstance.ref,c);b.raiseEvent("LogoRollover",{logoURL:l,logoAlpha:100*k,logoPosition:p||"tl",logoScale:D,logoLink:m,chartX:c.chartX,chartY:c.chartY,pageX:c.pageX,pageY:c.pageY},a.chartInstance)});g.mouseout(function(c){c=ha(a.chartInstance.ref,c);b.raiseEvent("LogoRollout",{logoURL:l,logoAlpha:100*k,logoPosition:p||"tl",logoScale:D,logoLink:m,chartX:c.chartX,chartY:c.chartY,pageX:c.pageX,pageY:c.pageY},a.chartInstance)});
g.click(function(c){c=ha(a.chartInstance.ref,c);b.raiseEvent("LogoClick",{logoURL:l,logoAlpha:100*k,logoPosition:p||"tl",logoScale:D,logoLink:m,chartX:c.chartX,chartY:c.chartY,pageX:c.pageX,pageY:c.pageY},a.chartInstance,void 0,function(){m&&a.linkedItems.linkClickFN.call({link:m},a)})});b.raiseEvent("LogoLoaded",{logoURL:l,logoAlpha:100*k,logoPosition:p||"tl",logoScale:D,logoLink:m},a.chartInstance)},u.onerror=function(c){b.raiseEvent("LogoLoadError",{logoURL:l,logoAlpha:100*k,logoPosition:p||"tl",
logoScale:D,logoLink:m,error:c},a.chartInstance)},u.src=l):g&&g.hide()},_addCSSDefinition:function(a,c){var d=this.components.paper;c.color&&(c.fill=c.color);d.cssAddRule(a,c)},_allocateSpace:function(a){var c=this.components.canvas.config,d=this.config,b=d.canvasHeight,h=d.canvasWidth,e=d.availableHeight,f=d.availableWidth;d.canvasLeft+=a.left||0;d.canvasTop+=a.top||0;h=d.canvasWidth=Y(h-((a.left||0)+(a.right||0)),0);b=d.canvasHeight=Y(b-((a.top||0)+(a.bottom||0)),0);d.availableHeight=Y(e-((a.top||
0)+(a.bottom||0)),0);d.availableWidth=Y(f-((a.left||0)+(a.right||0)),0);d.canvasRight=d.canvasLeft+h;d.canvasBottom=d.canvasTop+b;c.canvasPaddingLeft=Y(c.canvasPaddingLeft,a.paddingLeft||0);c.canvasPaddingRight=Y(c.canvasPaddingRight,a.paddingRight||0);c.canvasPaddingTop=Y(c.canvasPaddingTop,a.paddingTop||0);c.canvasPaddingBottom=Y(c.canvasPaddingBottom,a.paddingBottom||0)},_updateCategory:function(a){var c=this.jsonData,c=c.categories&&c.categories[0].category,d=a.category,b=d.length,h=a.index,e=
a.prepend;a=a.add;var f;for(f=0;f<b;f++)h?(a&&c.splice(h-1+f,0,d[f]),!a&&(c[h-1+f]=d[f])):e?(a&&c.splice(f,0,d[f]),!a&&(c[f]=d[f])):(a&&c.push(d),!a&&(c[c.length-1]=d))},realTimeUpdate:function(a){var c=this.components,d=c.xAxis&&c.xAxis[0],c=c.dataset,b=a.dataset;a=a.categories&&a.categories.category||[];var h=d&&d.getCategoryLen(),e=this.config.realTimeConfig=this.config.realTimeConfig||(this.config.realTimeConfig={}),f=0,g;if(c){if(d){d.categoryInsert(h,a,!0);h=0;for(g=a.length;h<g;h++)a[h].vline||
(f+=1);d.categoryDelete(0,f,!0)}this.config._sumValuesUpdated=!1;h=0;for(g=c.length;h<g;h++)f=b[h],c[h].addData(f),c[h].removeData(0,f.data.length),c[h].maxminFlag&&(e.maxminFlag=c[h].maxminFlag)}},_RTmanageSpace:function(){var a=this.config,c=this.components,d=c.xAxis[0],b=c.yAxis[0],h=c.yAxis[1],e,f=c.canvas.config,c=f.canvasBorderWidth,g=f.canvasPaddingTop,l=f.canvasPaddingBottom,k=f.canvasPadding||0,t=f.canvasPaddingLeft,f=f.canvasPaddingRight,p;e=a.xAxisSpaceAllocation;p=a.yAxisSpaceAllocation||
[];var m=p[0]&&p[0].spaceTaken||{},D=p[1]&&p[1].spaceTaken||{},w=a.primaryAxisOnleft,z,G,r;e=(a.xAxisSpaceAllocation=d.placeAxis(a.availableHeight+e.bottom)).bottom-e.bottom;0!==e&&(this._allocateSpace({bottom:e}),e=a.availableWidth,p[0].spaceTaken=e=b.placeAxis(e+m.left),this._allocateSpace({left:e.left-m.left}),e=a.availableWidth,m=a.canvasLeft-c,G=a.canvasRight+c,h&&(z=G,r=m,0===w&&(w=m,m=z,z=w,w=G,G=r,r=w),p[1].spaceTaken=p=h.placeAxis(e+(D.right||0)),this._allocateSpace({right:(p.right||0)-(D.right||
0)}),h.setAxisDimention({x:z,y:a.canvasTop+g,opposite:r,axisLength:a.canvasHeight-g-l})),d&&d.setAxisDimention({x:a.canvasLeft+Y(t,k),y:a.canvasBottom+(a.shift||0)+c,opposite:a.canvasTop-c,axisLength:a.canvasWidth-Y(t,k)-Y(f,k)}),b&&b.setAxisDimention({x:m,y:a.canvasTop+g,opposite:G,axisLength:a.canvasHeight-g-l}),b.draw(),this._drawCanvas())},realTimeDraw:function(a,c,d,h,e){var f=this.components,g=f.xAxis&&f.xAxis[0],l=f.yAxis&&f.yAxis[0],k=f.yAxis&&f.yAxis[1],t=f.scale,f=f.dataset,p=this.config.realTimeConfig,
m=p.sync,D=p.showRTValue,w=p.maxminFlag,z,G,r=f.length;G=(new Date).getTime();this._chartAnimation(m);this.rtManageSpace&&this._RTmanageSpace();if(f){g&&g.draw();this._setAxisLimits();w&&l&&l.draw();k&&k.draw();w&&t&&t.draw();for(g=0;g<r;g++)z=f[g].groupManager,!z&&f[g].draw();D&&this._drawRealTimeValue&&this._drawRealTimeValue();z&&z.draw()}this._setRTdata&&this._setRTdata();G=(new Date).getTime()-G;c={data:c,updateObject:p.legacyUpdateObj,prevData:d,source:a?"XmlHttpRequest":"feedData",latency:G};
a&&(c.networkLatency=e,c.url=h);b.raiseEvent("realTimeUpdateComplete",c,this.chartInstance)},_getPrevData:function(){return this.config.realTimeConfig&&this.config.realTimeConfig.prevData},feedData:function(a,c,d,b){var h=this,e=h.config.realtimeEnabled,f=h.config.realTimeConfig||(h.config.realTimeConfig={}),g,l=h.components,k=l.xAxis,t=h.components.dataset,p,m,D=f.clearInterval,w=f.refreshInterval,z=f.updateInterval,G=h.linkedItems.timers||(h.linkedItems.timers={setTimeout:{},setInterval:{}}),r=
t.length,n=f.prevData;g=h._linearDataParser(a);if(e&&h.chartInstance.isActive()){if(f.clear){for(e=0;e<r;e++)t[e]._realTimeConfigure(!0);f.clear=!1}w<z&&(w=f.refreshInterval=f.updateInterval);l.messageLogger&&l.messageLogger.addLog(g);l.alertManager&&l.alertManager.processRTData(g);h.realTimeUpdate(g);h.canvasPadding&&h._adjustCanvasPadding();w&&!1===f.clearIntervalFlag?(h.realTimeDraw(c,a,n,d,b),f.refreshIntervalFlag=!1):w&&!f.refreshIntervalFlag?(f.refreshIntervalFlag=!0,G.setTimeout.loadData=setTimeout(function(){p=
(new Date).getTime();h.realTimeDraw(c,a,n,d,b);m=(new Date).getTime();f.refreshIntervalFlag=!1;f.refreshIntervalTimeDifference=m-p},1E3*w-(f.refreshIntervalTimeDifference||0)-(b||0))):w||h.realTimeDraw(c,a,n,d,b);D&&!f.clearIntervalFlag&&k&&(f.clearIntervalFlag=!0,G.setTimeout.clearData=setTimeout(function(a){p=(new Date).getTime();try{clearTimeout(a.setTimeout.loadData)}catch(c){clearTimeout(G.setTimeout.loadData)}h._clearChart();m=(new Date).getTime();f.clearIntervalTimeDifference=m-p;f.clearIntervalFlag=
!1},1E3*D-(f.clearIntervalTimeDifference||0)-(b||0),G));return!0}return!1},_clearChart:function(a){var c=this.components,d=c.xAxis&&c.xAxis[0],c=c.dataset,b=d.getCategoryLen(),h=this.config.realTimeConfig||(this.config.realTimeConfig={}),e=c.length;h.clear=!0;if(c){d&&d.categoryDelete(0,b,!0);this.config._sumValuesUpdated=!1;for(b=0;b<e;b++)d=c[b],c[b].removeData(0,d.components.data.length),c[b].maxminFlag&&(h.maxminFlag=c[b].maxminFlag);this.realTimeDraw()}this._setRealTimeCategories();v.raiseEvent("ChartCleared",
{source:a},this.chartInstance,[this.id,a])},_linearDataParser:function(c,d){var b,h,e,f,g,l,k,t,p,m,D,w,z,G,r,n,B,K,q,u,R,L,P=this.components.dataset,P=P&&P.length;G=this.config.realTimeConfig;var aa=G.prevData=[],v=G.legacyUpdateObj={},Z=v.values=[],E=v.target=[],S=v.valueVisibility=[],V=v.toolTexts=[],T=v.toolTextsTarget=[],X=v.colors=[],C=v.links=[],A=0,H={categories:{category:[]},dataset:[]},Ra=H.categories.category,N=H.dataset,J,ca=c,Ia;c=c&&c.toString&&c.toString()||F;this.rtParserModify&&(ca=
ca.replace(/([^\\])(\|)/g,"$1,"),c=c.replace(/\|/g,","));b=c.split("&");G=0;for(r=b.length;G<r;G+=1)if(h=b[G].split("="),e=h[1],h=h[0],h!==a&&void 0!==h&&void 0!==e&&(e!==a||d))switch(J=h.toLowerCase(),J){case "label":v.labels=n=e.split(",");break;case "vline":v.vlines=B=e.split(",");break;case "vlinelabel":v.vlineLabels=p=e.split(",");break;case "vlinecolor":v.vlineColors=m=e.split(",");break;case "vlinethickness":v.vlineThickness=D=e.split(",");break;case "vlinedashed":v.vlineDashed=w=e.split(",");
break;case "value":K=e.split("|");break;case "target":q=e.split("|");break;case "showlabel":v.showLabels=z=e.split(",");break;case "showvalue":f=e.split("|");break;case "tooltext":g=(g=(g=ca.match(/tooltext=(.*?\\&)*.*?[^\\]&/i))?g[0].substr(9,g[0].length-10):ca.match(/(tooltext=)(.*)/i)[2])&&g.replace(/([^\\])(\|)/g,"$1_FC@@**");g=g.split("_FC@@**");break;case "targettooltext":l=e.split("|");break;case "link":t=e.split("|");break;case "color":k=e.split("|");break;case "datastamp":v.dataStamp=u=e;
break;case "stopupdate":v.pause=R="1"==e;break;case "clear":v.clear=L="1"==e;break;default:v[h]=H[h]=e}b=K&&K.length;for(G=0;G<b;G++)Z[G]=K[G].split(","),E[G]=q&&q[G]&&q[G].split(","),S[G]=f&&f[G]&&f[G].split(","),T[G]=l&&l[G]&&l[G].split(","),X[G]=k&&k[G]&&k[G].split(","),C[G]=t&&t[G]&&t[G].split(","),g&&(Ia=g[G])&&(Ia=Ia.replace(/([^\\])(\,)/g,"$1_FC@@**"),V[G]=Ia.split("_FC@@**")),A=Y(A,Z[G].length);f=Y(n&&n.length||0,A||0);for(G=0;G<f;G++)Ra.push({label:n&&n[G],color:m&&m[G],showlabel:z&&z[G]});
B&&Ra.push({label:p&&p[0],vline:B&&B[0],color:m&&m[0],thickness:D&&D[0],dashed:w&&w[0],showlabel:z&&z[0]});for(G=0;G<P;G++){D={};p=D.data=[];w=aa[G]=[];for(m=0;m<f;m++)p.push({value:Z[G]&&Z[G][m],target:E[G]&&E[G][m],showvalue:S[G]&&S[G][m],tooltext:V[G]&&V[G][m]&&V[G][m].replace(/\\/g,""),tooltexttarget:T[G]&&T[G][m],color:X[G]&&X[G][m],link:C[G]&&C[G][m]}),w.push(Z[G]&&Z[G][m]);N.push(D)}R&&this._stopUpdate();L&&this._clearChart();u&&(this.config.dataStamp=u);return H},exportChart:function(a){return v.exportChart.call(this,
a)},chartHoverManager:function(){return function(a){var c=a.type,d=a.data,b=d.linkedItems.eventListeners||(d.linkedItems.eventListeners=[]);"mouseover"!==c&&"touchstart"!==c||!1!==d.mouseStateIn||(d.mouseStateIn=!0,d.onContainerRollOver(a),b.push(ra(H?u:A,"mouseover",d.winMouseHover,d)))}}(),setChartEvents:function(){var a=this.linkedItems.eventListeners||(this.linkedItems.eventListeners=[]),d=this.components.paper.canvas,b=this.linkedItems.container,h=c(this.jsonData.chart.enablechartmousemoveevent,
0);qa(b,"click",this.onContainerClick);a.push(ra(b,"click",this.onContainerClick,this));qa(d,"mouseover",this.chartHoverManager,this);qa(d,"touchstart",this.chartHoverManager,this);qa(d,"mouseout",this.chartHoverManager,this);qa(d,"touchend",this.chartHoverManager,this);a.push(ra(d,"mouseover touchstart mouseout touchend",this.chartHoverManager,this));qa(b,"mousemove",this.onContainerMouseMove,this);qa(b,"touchmove",this.onContainerMouseMove,this);h&&a.push(ra(b,"mousemove touchmove",this.onContainerMouseMove,
this))},setChartCursor:function(){var a=this.config.link,c=this.components.paper.canvas.style;J.svg?c.cursor=a?t:"default":this.components.paper.canvas.style.cursor=a?"hand":"default"},onContainerClick:function(a){var c=a.target||a.originalTarget||a.srcElement||a.relatedTarget||a.fromElement,d=c&&c.parentElement,h=c&&c.nodeName.toLowerCase(),e=a.data,f=e.chartInstance;a=v.getMouseCoordinate(e.linkedItems.container,a.originalEvent,e);var g;f.ref&&(g=aa({height:f.args.height,width:f.args.width,pixelHeight:f.ref.offsetHeight,
pixelWidth:f.ref.offsetWidth,id:f.args.id,renderer:f.args.renderer,container:f.options.containerElement},a),hb.addJob(function(){b.raiseEvent("chartclick",g,e.chartInstance)},ib.chartClick),c&&c.ishot&&e||"tspan"===h&&d&&d.ishot&&e||e.config.link&&e.linkedItems.linkClickFN.call(e,e))},onContainerMouseMove:function(a){var c=a.data,d=c.chartInstance;a=v.getMouseCoordinate(c.linkedItems.container,a.originalEvent,c);d.ref&&(d=aa({height:d.args.height,width:d.args.width,pixelHeight:d.ref.offsetHeight,
pixelWidth:d.ref.offsetWidth,id:d.args.id,renderer:d.args.renderer,container:d.options.containerElement},a),b.raiseEvent("chartMouseMove",d,c.chartInstance))},onContainerRollOver:function(a){var c=a.data,d=c.chartInstance;a=v.getMouseCoordinate(c.linkedItems.container,a.originalEvent,c);d.ref&&(d=aa({height:d.args.height,width:d.args.width,pixelHeight:d.ref.offsetHeight,pixelWidth:d.ref.offsetWidth,id:d.args.id,renderer:d.args.renderer,container:d.options.containerElement},a),b.raiseEvent("chartRollOver",
d,c.chartInstance))},onContainerRollOut:function(a){var c=a.chart,d=c.chartInstance;a=v.getMouseCoordinate(c.linkedItems.container,a.event,c);d.ref&&(d=aa({height:d.args.height,width:d.args.width,pixelHeight:d.ref.offsetHeight,pixelWidth:d.ref.offsetWidth,id:d.args.id,renderer:d.args.renderer,container:d.options.containerElement},a),b.raiseEvent("chartRollOut",d,c.chartInstance))},mouseStateIn:!1,winMouseHover:function(a){var c=a.originalEvent,c=c.target||c.originalTarget||c.srcElement||c.relatedTarget||
c.fromElement,d=a.data,b=d.components.paper;a={chart:d,event:a.originalEvent};H?b.getById(c.parentNode.raphaelid)||(d.onContainerRollOut(a),d.mouseStateIn=!1,qa(u,"mouseover",d.winMouseHover)):c.viewportElement||(d.mouseStateIn=!1,d.onContainerRollOut(a),qa(A,"mouseover",d.winMouseHover))},_show:function(){this.graphics&&this.graphics.parentGroup&&this.graphics.parentGroup.show()},_hide:function(){this.graphics&&this.graphics.parentGroup&&this.graphics.parentGroup.hide()},getJobList:function(){this.jobList||
(this.jobList={trackerDrawID:[],labelDrawID:[],entityDrawID:[],kdTreeID:[],draw:[],eiMethods:[],postRender:[]});return this.jobList},_setDatasetOrder:function(){var a=this.config,d=this.components.dataset,b=c(this.jsonData.chart.areaovercolumns,1),h={line:[],area:[],column:[]},e=d.length,f,g;for(f=0;f<e;f++)g=d[f],(h[g.type]||h.line).push(g);a.datasetOrder=b?h.column.concat(h.area).concat(h.line):h.area.concat(h.column).concat(h.line)}},ta.base,{valuefontbold:0,stickytracking:1,usemessagelog:0,zeroplanethickness:void 0,
animationeffect:"easeIn",showshadow:1,showhovereffect:void 0,plothovereffect:void 0,anchorhovereffect:void 0,plotborderdashed:void 0,stack100percent:void 0,showpercentvalues:void 0,showpercentintooltip:void 0,plotbordercolor:void 0,showtooltip:1,seriesnameintooltip:1,rotatevalues:0,minimizetendency:0,plotfillangle:270,valuepadding:2,useplotgradientcolor:1,plotborderthickness:1,plotfillalpha:P,showvalues:1,valueposition:z,tooltipsepchar:", ",usedataplotcolorforlabels:0,placevaluesinside:0,showplotborder:1,
use3dlighting:1,useroundedges:0,plotspacepercent:20,plotpaddingpercent:void 0,plotfillratio:void 0,maxcolwidth:50,plotborderdashlen:5,plotborderdashgap:4});Q.register("component",["caption","caption",{pIndex:2,customConfigFn:null,init:function(){var a=this.graphics;!this.components&&(this.components={});!a&&(this.graphics={})},configure:function(){var a=this.chart,b=a.jsonData.chart,h=a.components,g=h.caption,l=g.config,k=a.config.style,t=k.outCanfontFamily,m=k.outCancolor,k=k.fontSize,h=h.subCaption,
D=h.config;g.components.text=G(b.caption);h.components.text=G(b.subcaption);l.style={fontFamily:d(b.captionfont,t),color:pa(d(b.captionfontcolor,m).replace(/^#? ([a-f0-9]+)/ig,"#$1")),fontSize:c(b.captionfontsize,k+3)+Ea,fontWeight:0===c(b.captionfontbold)?N:E};l.align=D.align=d(b.captionalignment,La);switch(l.align){case Ja:l.align=p;break;case Fa:l.align=e;break;default:l.align=K}l.isOnTop=D.isOnTop=c(b.captionontop,1);l.isOnLeft=!c(b.captiononright,0);l.captionPosition=f(b.captionposition,V).toLowerCase();
l.alignWithCanvas=D.alignWithCanvas=c(a.aligncaptionwithcanvas,b.aligncaptionwithcanvas,1);l.horizontalPadding=D.horizontalPadding=c(b.captionhorizontalpadding,l.alignWithCanvas?0:15);l.drawCaption=!0;ga(l.style);D.style={fontFamily:d(b.subcaptionfont,b.captionfont,t),color:pa(d(b.subcaptionfontcolor,b.captionfontcolor,m).replace(/^#? ([a-f0-9]+)/ig,"#$1")),fontSize:c(b.subcaptionfontsize,c(Y(c(b.captionfontsize)-3,-1),k)+c(a.subTitleFontSizeExtender,1))+Ea,fontWeight:0===c(b.subcaptionfontbold,a.subTitleFontWeight,
b.captionfontbold)?N:E};ga(D.style)},draw:function(){var a=this.chart,c=a.config,d=a.components,b=a.config.textDirection,h=a.graphics,e=h.captionGroup,f=d.paper,g=a.linkedItems.smartLabel,l=d.caption,t=l.graphics,p=t.captionElement,m=d.subCaption,d=m.graphics,D=d.subCaptionElement,w=l.components,l=l.config,z=m.config,G=l.style,n=z.style,m=m.components,B=w.text,F=m.text,q=l.x,u=l.align,R,L=c.showToolTip;R=a.get(M,U);var a=R.animType,P=R.animObj,aa=R.dummyObj,v=R.duration;!B&&!F||e||(e=h.captionGroup=
f.group("caption"),e.trackTooltip(!0),h.tracker?e.insertBefore(h.trackerGroup):e.insertAfter(h.datasetGroup));B?(R={text:w.text,fill:G.color,x:q,y:l.y,"text-anchor":u||K,"vertical-align":l.verticalAlign||V,visibility:l.drawCaption?k:r,direction:b},p?(p.animateWith(aa,P,{x:q,y:l.y,"text-anchor":u||K,"vertical-align":l.verticalAlign||V,direction:b},v,a),p.attr({"text-anchor":u||K,text:w.text,fill:G.color,visibility:l.drawCaption?k:r}),p.css(G)):p=t.captionElement=f.text(R,G,e),p.tooltip(w.originalText),
g&&(g.useEllipsesOnOverflow(c.useEllipsesWhenOverflow),g.setStyle(G),g.getOriSize(w.text))):p&&(t.captionElement=p.remove());F?(R={text:m.text,fill:n.color,x:q,y:z.y,"text-anchor":u||K,"vertical-align":V,direction:b,visibility:l.drawCaption?k:r},D?(D.animateWith(aa,P,{x:q,y:z.y,"text-anchor":u||K,"vertical-align":V,direction:b},v,a),D.attr({"text-anchor":u||K,text:m.text,fill:n.color,visibility:l.drawCaption?k:r}),D.css(n)):D=d.subCaptionElement=f.text(R,n,e),D.tooltip(m.originalText)):D&&(d.subCaptionElement=
D.remove());e&&e.trackTooltip(L?!0:!1);B||F||!e||(h.captionGroup=e.remove())},manageSpace:function(d,b){var h=this.chart,e=h.config,f=h.components,g=f.caption,l=f.subCaption,k=g.config,t=l.config,g=g.components,l=l.components,p=h.jsonData.chart,h=h.linkedItems.smartLabel,m=d,D=G(p.caption),w=G(p.subcaption),z=p=c(p.captionpadding,10),r=e.canvasWidth,n=!1,B,K,q=0,u=0,R=0,L=0,P=0,u=Y(f.canvas.config.canvasBorderThickness,0),aa=f=0;!b&&(b=r);if(3<m){p<u&&(p=u+2);D!==a&&(B=k.style,L=fa(c(parseFloat(B.fontHeight,
10),parseFloat(B.lineHeight,10),12)));w!==a&&(K=t.style,P=c(parseInt(K.fontHeight,10),parseInt(K.lineHeight,10),12));if(0<L||0<P)m=Y(m,0),q=L+P+p,q>m?(u=m-q,n=!0,u<p?p=Y(u,5):(u-=p,p=0,P>u?(R=P-u+10,P=0,l._originalText=l.text,l.text=F):(u-=P,P=0,L>u&&(R=L-u)))):R=m-q,h.useEllipsesOnOverflow(e.useEllipsesWhenOverflow),0<L&&(h.setStyle(B),L+=R,B=h.getSmartText(D,b,L),R=L-B.height,k.height=L=B.height,g.text=B.text,g.originalText=B.tooltext?B.tooltext:!1,f=B.width),0<P&&(h.setStyle(K),P+=R,K=h.getSmartText(w,
b,P),R=P-K.height,P=K.height,l.text=K.text,t.height=K.height,l.originalText=K.tooltext?K.tooltext:!1,aa=K.width),n&&0<R&&(p+=oa(z-p,R)),k.captionPadding=p,k.height=L,k.width=f,t.width=aa,t.height=P,q=L+P+p;q>e.canvasHeight?(q=0,k.drawCaption=!1):k.drawCaption=!0;e=k.isOnTop?{top:q}:{bottom:q,top:5}}else e={bottom:0,top:0},k.drawCaption=!1;return e},managePosition:function(){var a=this.chart,d=a.config,b=a.components,h=b.caption,f=h.config,g=f.widgetValueHeight||0,l=b.subCaption.config,k=f.x,t=d.canvasWidth,
k=f.align,h=h.components.text,m=f.alignWithCanvas,D=f.horizontalPadding,w=d.width,z=d.canvasLeft,G=d.canvasRight,r=d.marginRight,n=d.marginLeft,d=d.marginTop,B=(ua(z)||0)+c(t,w)/2,t=f.height,F=l.height,K=b.legend.config,q=K.height,u=K.legendPadding,R=K.legendPos,L=b.gradientLegend||{},P=0,aa=!!(L.conf||{}).showLegend,v=a.config.borderWidth,b=b.actionBar,Z=0;K.isActive||(q=0);aa&&a.config.gLegendEnabled&&(P=L.getLogicalSpace().height);switch(k){case p:k=m?G-D:w-D;break;case e:k=m?z+D:D;break;default:k=
m?B:n+.5*(w-n-r)||w/2}f.x=k;f.isOnTop?f.y=(v||0)+(d||0):(R===Ja&&(P=q=u=0),b&&(k=b.getLogicalSpace()||{},Z=k.height,void 0===Z||Infinity===Z||0>Z)&&(Z=0),f.y=a.config.height-a.config.marginBottom-t-(F||0)-(v||0)-(u||0)-(q||0)-P-g-Z);f.y+=f._offsetHeight||0;l.y=h?f.y+t+2:f.y||d||0}}]);Q.register("component",["caption","subcaption",{pIndex:2,init:function(){var a=this.graphics;!this.components&&(this.components={});!a&&(this.graphics={})}}]);ta("scrollbase",{standaloneInit:!1,_scrollBar:function(){var a=
[];return{get:function(){return a},clear:function(){a.length=0},add:function(c,d){a.push({conf:c,handler:d})}}}()},ta.mscartesian,{enablemousetracking:!0});ta("msinversecartesian",{standaloneInit:!1,_createAxes:function(){var a=this.components,c=Q.register("component",["axis","cartesian"]),d;a.yAxis=[];a.xAxis=[];a.yAxis[0]=d=new c;a.xAxis[0]=a=new c;d.chart=this;a.chart=this;d.init();a.init();this._setCategories()},_feedAxesRawData:function(){var a=this.components,b=this.config,h=a.colorManager,
e=this.jsonData,f=e.chart,g,l=(g=this.is3d)?Ta.chart3D:Ta.chart2D;g={outCanfontFamily:d(f.outcnvbasefont,f.basefont,"Verdana,sans"),outCanfontSize:la(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:d(f.outcnvbasefontcolor,f.basefontcolor,h.getColor(l.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:f.xaxisnamepadding,axisValuePadding:f.labelpadding,axisNameFont:f.xaxisnamefont,axisNameFontSize:f.xaxisnamefontsize,axisNameFontColor:f.xaxisnamefontcolor,axisNameFontBold:f.xaxisnamefontbold,
axisNameFontItalic:f.xaxisnamefontitalic,axisNameBgColor:f.xaxisnamebgcolor,axisNameBorderColor:f.xaxisnamebordercolor,axisNameAlpha:f.xaxisnamealpha,axisNameFontAlpha:f.xaxisnamefontalpha,axisNameBgAlpha:f.xaxisnamebgalpha,axisNameBorderAlpha:f.xaxisnameborderalpha,axisNameBorderPadding:f.xaxisnameborderpadding,axisNameBorderRadius:f.xaxisnameborderradius,axisNameBorderThickness:f.xaxisnameborderthickness,axisNameBorderDashed:f.xaxisnameborderdashed,axisNameBorderDashLen:f.xaxisnameborderdashlen,
axisNameBorderDashGap:f.xaxisnameborderdashgap,useEllipsesWhenOverflow:f.useellipseswhenoverflow,divLineColor:d(f.vdivlinecolor,f.divlinecolor,h.getColor(l.divLineColor)),divLineAlpha:d(f.vdivlinealpha,f.divlinealpha,g?h.getColor("divLineAlpha3D"):h.getColor("divLineAlpha")),divLineThickness:c(f.vdivlinethickness,f.divlinethickness,1),divLineIsDashed:!!c(f.vdivlinedashed,f.vdivlineisdashed,f.divlinedashed,f.divlineisdashed,0),divLineDashLen:c(f.vdivlinedashlen,f.divlinedashlen,4),divLineDashGap:c(f.vdivlinedashgap,
f.divlinedashgap,2),showAlternateGridColor:c(f.showalternatevgridcolor,0),alternateGridColor:d(f.alternatevgridcolor,h.getColor("altVGridColor")),alternateGridAlpha:d(f.alternatevgridalpha,h.getColor("altVGridAlpha")),numDivLines:f.numvdivlines,maxLabelHeight:f.maxlabelheight,labelFont:f.labelfont,labelFontSize:f.labelfontsize,labelFontColor:f.labelfontcolor,labelFontAlpha:f.labelalpha,labelFontBold:f.labelfontbold,labelFontItalic:f.labelfontitalic,axisName:f.xaxisname,axisMinValue:f.xaxisminvalue,
axisMaxValue:f.xaxismaxvalue,setAdaptiveMin:f.setadaptivexmin,adjustDiv:f.adjustvdiv,labelDisplay:f.labeldisplay,showLabels:f.showlabels,rotateLabels:f.rotatelabels,slantLabel:c(f.slantlabels,f.slantlabel),labelStep:c(f.labelstep,f.xaxisvaluesstep),showAxisValues:c(f.showxaxisvalues,f.showxaxisvalue),showLimits:f.showvlimits,showDivLineValues:c(f.showvdivlinevalues,f.showvdivlinevalues),showZeroPlane:f.showvzeroplane,zeroPlaneColor:f.vzeroplanecolor,zeroPlaneThickness:f.vzeroplanethickness,zeroPlaneAlpha:f.vzeroplanealpha,
showZeroPlaneValue:f.showvzeroplanevalue,trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:c(f.showxaxisline,f.showaxislines,f.drawAxisLines,0),axisLineThickness:c(f.xaxislinethickness,f.axislinethickness,1),axisLineAlpha:c(f.xaxislinealpha,f.axislinealpha,100),axisLineColor:d(f.xaxislinecolor,f.axislinecolor,"#000000")};b={outCanfontFamily:d(f.outcnvbasefont,
f.basefont,"Verdana,sans"),outCanfontSize:la(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:d(f.outcnvbasefontcolor,f.basefontcolor,h.getColor(l.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:f.yaxisnamepadding,axisValuePadding:f.yaxisvaluespadding,axisNameFont:f.yaxisnamefont,axisNameFontSize:f.yaxisnamefontsize,axisNameFontColor:f.yaxisnamefontcolor,axisNameFontBold:f.yaxisnamefontbold,axisNameFontItalic:f.yaxisnamefontitalic,axisNameBgColor:f.yaxisnamebgcolor,axisNameBorderColor:f.yaxisnamebordercolor,
axisNameAlpha:f.yaxisnamealpha,axisNameFontAlpha:f.yaxisnamefontalpha,axisNameBgAlpha:f.yaxisnamebgalpha,axisNameBorderAlpha:f.yaxisnameborderalpha,axisNameBorderPadding:f.yaxisnameborderpadding,axisNameBorderRadius:f.yaxisnameborderradius,axisNameBorderThickness:f.yaxisnameborderthickness,axisNameBorderDashed:f.yaxisnameborderdashed,axisNameBorderDashLen:f.yaxisnameborderdashlen,axisNameBorderDashGap:f.yaxisnameborderdashgap,axisNameWidth:f.yaxisnamewidth,useEllipsesWhenOverflow:f.useellipseswhenoverflow,
rotateAxisName:c(f.rotateyaxisname,1),axisName:f.yaxisname,divLineColor:d(f.divlinecolor,h.getColor(l.divLineColor)),divLineAlpha:d(f.divlinealpha,h.getColor("divLineAlpha")),divLineThickness:c(f.divlinethickness,1),divLineIsDashed:!!c(f.divlinedashed,f.divlineisdashed,0),divLineDashLen:c(f.divlinedashlen,4),divLineDashGap:c(f.divlinedashgap,2),showAlternateGridColor:c(f.showalternatehgridcolor,1),alternateGridColor:d(f.alternatehgridcolor,h.getColor("altHGridColor")),alternateGridAlpha:d(f.alternatehgridalpha,
h.getColor("altHGridAlpha")),numDivLines:f.numdivlines,axisMinValue:f.yaxisminvalue,axisMaxValue:f.yaxismaxvalue,setAdaptiveMin:f.setadaptiveymin,adjustDiv:f.adjustdiv,labelStep:f.yaxisvaluesstep,showAxisValues:c(f.showyaxisvalues,f.showyaxisvalue),showLimits:c(f.showyaxislimits,f.showlimits,this.showLimits),showDivLineValues:c(f.showdivlinevalues,f.showdivlinevalue),showZeroPlane:f.showzeroplane,zeroPlaneColor:f.zeroplanecolor,zeroPlaneThickness:c(f.zeroplanethickness,f.divlinethickness,b.zeroplanethickness,
2),zeroPlaneAlpha:c(f.zeroplanealpha,f.zeroplanealpha,b.zeroplanealpha,80),showZeroPlaneValue:f.showzeroplanevalue,showZeroPlaneOnTop:b.showzeroplaneontop,trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:c(f.showyaxisline,f.showaxislines,f.drawAxisLines,0),axisLineThickness:c(f.yaxislinethickness,f.axislinethickness,1),axisLineAlpha:c(f.yaxislinealpha,
f.axislinealpha,100),axisLineColor:d(f.yaxislinecolor,f.axislinecolor,"#000000")};g.vtrendlines=e.vtrendlines;b.trendlines=e.trendlines;e=a.yAxis&&a.yAxis[0];a=a.xAxis&&a.xAxis[0];e&&(e.setCommonConfigArr(b,!0,!0,!1),e.configure());a&&(a.setCommonConfigArr(g,!1,!1,!1),a.configure(),a.setAxisConfig({isRelativeAxisInverse:!0}))}},ta.mscartesian);ta("sscartesian",{standaloneInit:!1,hasLegend:!1,_createDatasets:function(){var a=this.components,c=a.legend,d=this.jsonData,b=d.dataset,h=d.data||b&&b[0].data,
f=this.defaultDatasetType,e,g,d=this._dataSegregator(h);this.config.categories=d.data;b=a.dataset||(a.dataset=[]);if(!h||0===h.length)this.setChartMessage();else if(f&&(g=Q.get("component",["dataset",f])))if(h="datasetGroup_"+f,e=Q.register("component",["datasetGroup",f]),f=a[h],e&&!f&&(f=a[h]=new e,f.chart=this,f.init()),b[0]){a=b[0];f=a.JSONData;b=a.components.data||[];h=f.data.length-(a.config.showSum||0);g=d.data&&d.data.length||0;if(h>g){if(c)for(f=g;f<h;f++)b[f]&&b[f].legendItemId&&c.removeItem(b[f].legendItemId);
a.removeData(g,h-g,!1)}a.JSONData=d;a.configure()}else a=new g,b.push(a),a.chart=this,f&&f.addDataSet(a,0,0),a.index=0,a.init(d)},_dataSegregator:function(a){var c=[];Pa(a,function(a){"true"!==a.vline&&!0!==a.vline&&1!==a.vline&&"1"!==a.vline&&c.push(a)});return{data:c}},_setCategories:function(){var a=this.jsonData,c=a.dataset;this.components.xAxis[0].setCategory(a.data||c&&c[0].data)}},ta.mscartesian,{linethickness:4});ta("msdybasecartesian",{standaloneInit:!1,_createAxes:function(){var a=this.components,
c,d=Q.register("component",["axis","cartesian"]),b;a.yAxis=[];a.xAxis=[];a.yAxis[0]=b=new d;a.yAxis[1]=c=new d;a.xAxis[0]=a=new d;b.chart=this;c.chart=this;a.chart=this;b.init();c.init();a.init();this._setCategories()},_feedAxesRawData:function(){var a=this.config,b=this.components,h=b.colorManager,f=this.jsonData,e=f.chart,g,l,k=this.is3d,t=k?Ta.chart3D:Ta.chart2D,p,m=a.primaryAxisOnleft=c(e.primaryaxisonleft,1),D=c(e.syncaxislimits,0);l=[{line:[]}];p=[{line:[]}];var w,z=f.trendlines||[];g={outCanfontFamily:d(e.outcnvbasefont,
e.basefont,"Verdana,sans"),outCanfontSize:la(e.outcnvbasefontsize,e.basefontsize,10),outCancolor:d(e.outcnvbasefontcolor,e.basefontcolor,h.getColor(t.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:e.xaxisnamepadding,axisValuePadding:e.labelpadding,axisNameFont:e.xaxisnamefont,axisNameFontSize:e.xaxisnamefontsize,axisNameFontColor:e.xaxisnamefontcolor,axisNameFontBold:e.xaxisnamefontbold,axisNameFontItalic:e.xaxisnamefontitalic,axisNameBgColor:e.xaxisnamebgcolor,axisNameBorderColor:e.xaxisnamebordercolor,
axisNameAlpha:e.xaxisnamealpha,axisNameFontAlpha:e.xaxisnamefontalpha,axisNameBgAlpha:e.xaxisnamebgalpha,axisNameBorderAlpha:e.xaxisnameborderalpha,axisNameBorderPadding:e.xaxisnameborderpadding,axisNameBorderRadius:e.xaxisnameborderradius,axisNameBorderThickness:e.xaxisnameborderthickness,axisNameBorderDashed:e.xaxisnameborderdashed,axisNameBorderDashLen:e.xaxisnameborderdashlen,axisNameBorderDashGap:e.xaxisnameborderdashgap,useEllipsesWhenOverflow:e.useellipseswhenoverflow,divLineColor:d(e.vdivlinecolor,
e.divlinecolor,h.getColor(t.divLineColor)),divLineAlpha:d(e.vdivlinealpha,e.divlinealpha,k?h.getColor("divLineAlpha3D"):h.getColor("divLineAlpha")),divLineThickness:c(e.vdivlinethickness,e.divlinethickness,1),divLineIsDashed:!!c(e.vdivlinedashed,e.vdivlineisdashed,e.divlinedashed,e.divlineisdashed,0),divLineDashLen:c(e.vdivlinedashlen,e.divlinedashlen,4),divLineDashGap:c(e.vdivlinedashgap,e.divlinedashgap,2),showAlternateGridColor:c(e.showalternatevgridcolor,0),alternateGridColor:d(e.alternatevgridcolor,
h.getColor("altVGridColor")),alternateGridAlpha:d(e.alternatevgridalpha,h.getColor("altVGridAlpha")),numDivLines:e.numvdivlines,maxLabelHeight:e.maxlabelheight,labelFont:e.labelfont,labelFontSize:e.labelfontsize,labelFontColor:e.labelfontcolor,labelFontAlpha:e.labelalpha,labelFontBold:e.labelfontbold,labelFontItalic:e.labelfontitalic,axisName:e.xaxisname,axisMinValue:e.xaxisminvalue,axisMaxValue:e.xaxismaxvalue,setAdaptiveMin:e.setadaptivexmin,adjustDiv:e.adjustvdiv,labelDisplay:e.labeldisplay,showLabels:e.showlabels,
rotateLabels:e.rotatelabels,slantLabel:c(e.slantlabels,e.slantlabel),labelStep:c(e.labelstep,e.xaxisvaluesstep),showAxisValues:c(e.showxaxisvalues,e.showxaxisvalue),showLimits:e.showvlimits,showDivLineValues:c(e.showvdivlinevalues,e.showvdivlinevalues),zeroPlaneColor:e.vzeroplanecolor,zeroPlaneThickness:c(e.vzeroplanethickness,e.vdivlinethickness,2),zeroPlaneAlpha:c(e.vzeroplanealpha,e.vdivlinealpha,a.zeroplanealpha),showZeroPlaneValue:e.showvzeroplanevalue,trendlineColor:e.trendlinecolor,trendlineToolText:e.trendlinetooltext,
trendlineThickness:e.trendlinethickness,trendlineAlpha:e.trendlinealpha,showTrendlinesOnTop:e.showtrendlinesontop,showAxisLine:k?0:c(e.showxaxisline,e.showaxislines,e.drawAxisLines,0),axisLineThickness:c(e.xaxislinethickness,e.axislinethickness,1),axisLineAlpha:c(e.xaxislinealpha,e.axislinealpha,100),axisLineColor:d(e.xaxislinecolor,e.axislinecolor,"#000000")};a={outCanfontFamily:d(e.outcnvbasefont,e.basefont,"Verdana,sans"),outCanfontSize:la(e.outcnvbasefontsize,e.basefontsize,10),outCancolor:d(e.outcnvbasefontcolor,
e.basefontcolor,h.getColor(t.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:c(e.pyaxisnamepadding,e.yaxisnamepadding),axisValuePadding:c(e.pyaxisvaluespadding,e.yaxisvaluespadding),axisNameFont:d(e.pyaxisnamefont,e.yaxisnamefont),axisNameFontSize:c(e.pyaxisnamefontsize,e.yaxisnamefontsize),axisNameFontColor:d(e.pyaxisnamefontcolor,e.yaxisnamefontcolor),axisNameFontBold:c(e.pyaxisnamefontbold,e.yaxisnamefontbold),axisNameFontItalic:c(e.pyaxisnamefontitalic,e.yaxisnamefontitalic),
axisNameBgColor:d(e.pyaxisnamebgcolor,e.yaxisnamebgcolor),axisNameBorderColor:d(e.pyaxisnamebordercolor,e.yaxisnamebordercolor),axisNameAlpha:c(e.pyaxisnamealpha,e.yaxisnamealpha),axisNameFontAlpha:c(e.pyaxisnamefontalpha,e.yaxisnamefontalpha),axisNameBgAlpha:c(e.pyaxisnamebgalpha,e.yaxisnamebgalpha),axisNameBorderAlpha:c(e.pyaxisnameborderalpha,e.yaxisnameborderalpha),axisNameBorderPadding:c(e.pyaxisnameborderpadding,e.yaxisnameborderpadding),axisNameBorderRadius:c(e.pyaxisnameborderradius,e.yaxisnameborderradius),
axisNameBorderThickness:c(e.pyaxisnameborderthickness,e.yaxisnameborderthickness),axisNameBorderDashed:c(e.pyaxisnameborderdashed,e.yaxisnameborderdashed),axisNameBorderDashLen:c(e.pyaxisnameborderdashlen,e.yaxisnameborderdashlen),axisNameBorderDashGap:c(e.pyaxisnameborderdashgap,e.yaxisnameborderdashgap),axisNameWidth:c(e.pyaxisnamewidth,e.yaxisnamewidth),useEllipsesWhenOverflow:e.useellipseswhenoverflow,rotateAxisName:c(e.rotateyaxisname,1),axisName:d(e.pyaxisname,e.yaxisname),divLineColor:d(e.divlinecolor,
h.getColor(t.divLineColor)),divLineAlpha:d(e.divlinealpha,h.getColor("divLineAlpha")),divLineThickness:c(e.divlinethickness,1),divLineIsDashed:!!c(e.divlinedashed,e.divlineisdashed,0),divLineDashLen:c(e.divlinedashlen,4),divLineDashGap:c(e.divlinedashgap,2),showAlternateGridColor:c(e.showalternatehgridcolor,1),alternateGridColor:d(e.alternatehgridcolor,h.getColor("altHGridColor")),alternateGridAlpha:d(e.alternatehgridalpha,h.getColor("altHGridAlpha")),numDivLines:e.numdivlines,axisMinValue:D?c(e.syaxisminvalue,
e.pyaxisminvalue,e.yaxisminvalue):c(e.pyaxisminvalue,e.yaxisminvalue),axisMaxValue:D?c(e.syaxismaxvalue,e.pyaxismaxvalue,e.yaxismaxvalue):c(e.pyaxismaxvalue,e.yaxismaxvalue),setAdaptiveMin:e.setadaptiveymin,adjustDiv:e.adjustdiv,labelStep:e.yaxisvaluesstep,showAxisValues:c(e.showyaxisvalues,e.showyaxisvalue),showLimits:c(e.showyaxislimits,e.showlimits,this.showLimits),showDivLineValues:c(e.showdivlinevalues,e.showdivlinevalue),zeroPlaneColor:e.zeroplanecolor,zeroPlaneThickness:c(e.zeroplanethickness,
e.divlinethickness,a.zeroplanethickness,2),zeroPlaneAlpha:c(e.zeroplanealpha,e.divlinealpha,a.zeroplanealpha),showZeroPlaneValue:e.showzeroplanevalue,showZeroPlaneOnTop:a.showzeroplaneontop,trendlineColor:e.trendlinecolor,trendlineToolText:e.trendlinetooltext,trendlineThickness:e.trendlinethickness,trendlineAlpha:e.trendlinealpha,showTrendlinesOnTop:e.showtrendlinesontop,showAxisLine:k?0:c(e.showyaxisline,e.showaxislines,e.drawAxisLines,0),axisLineThickness:c(e.yaxislinethickness,e.axislinethickness,
1),axisLineAlpha:c(e.yaxislinealpha,e.axislinealpha,100),axisLineColor:d(e.yaxislinecolor,e.axislinecolor,"#000000")};h={outCanfontFamily:d(e.outcnvbasefont,e.basefont,"Verdana,sans"),outCanfontSize:la(e.outcnvbasefontsize,e.basefontsize,10),outCancolor:d(e.outcnvbasefontcolor,e.basefontcolor,h.getColor(t.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:e.yaxisnamepadding,axisValuePadding:e.yaxisvaluespadding,axisNameFont:e.syaxisnamefont,axisNameFontSize:e.syaxisnamefontsize,axisNameFontColor:e.syaxisnamefontcolor,
axisNameFontBold:e.syaxisnamefontbold,axisNameFontItalic:e.syaxisnamefontitalic,axisNameBgColor:e.syaxisnamebgcolor,axisNameBorderColor:e.syaxisnamebordercolor,axisNameAlpha:e.syaxisnamealpha,axisNameFontAlpha:e.syaxisnamefontalpha,axisNameBgAlpha:e.syaxisnamebgalpha,axisNameBorderAlpha:e.syaxisnameborderalpha,axisNameBorderPadding:e.syaxisnameborderpadding,axisNameBorderRadius:e.syaxisnameborderradius,axisNameBorderThickness:e.syaxisnameborderthickness,axisNameBorderDashed:e.syaxisnameborderdashed,
axisNameBorderDashLen:e.syaxisnameborderdashlen,axisNameBorderDashGap:e.syaxisnameborderdashgap,axisNameWidth:e.syaxisnamewidth,useEllipsesWhenOverflow:e.useellipseswhenoverflow,rotateAxisName:c(e.rotateyaxisname,1),axisName:e.syaxisname,divLineColor:d(e.divlinecolor,h.getColor(t.divLineColor)),divLineAlpha:d(e.divlinealpha,h.getColor("divLineAlpha")),divLineThickness:c(e.divlinethickness,1),divLineIsDashed:!!c(e.divlinedashed,e.divlineisdashed,0),divLineDashLen:c(e.divlinedashlen,4),divLineDashGap:c(e.divlinedashgap,
2),showAlternateGridColor:c(e.showalternatehgridcolor,1),alternateGridColor:d(e.alternatehgridcolor,h.getColor("altHGridColor")),alternateGridAlpha:d(e.alternatehgridalpha,h.getColor("altHGridAlpha")),numDivLines:e.numdivlines,axisMinValue:D?c(e.syaxisminvalue,e.pyaxisminvalue,e.yaxisminvalue):e.syaxisminvalue,axisMaxValue:D?c(e.syaxismaxvalue,e.pyaxismaxvalue,e.yaxismaxvalue):e.syaxismaxvalue,setAdaptiveMin:e.setadaptivesymin||e.setadaptiveymin,adjustDiv:e.adjustdiv,labelStep:e.yaxisvaluesstep,showAxisValues:c(e.showsyaxisvalues,
e.showsyaxisvalue,e.showyaxisvalues,e.showyaxisvalue),showLimits:c(e.showsecondarylimits,e.showyaxislimits,e.showlimits),showDivLineValues:c(e.showdivlinesecondaryvalue,e.showyaxisvalues,e.showyaxisvalue,1),zeroPlaneColor:e.zeroplanecolor,zeroPlaneThickness:c(e.zeroplanethickness,e.divlinethickness,2),zeroPlaneAlpha:e.zeroplanealpha,showZeroPlaneValue:e.showzeroplanevalue,trendlineColor:e.trendlinecolor,trendlineToolText:e.trendlinetooltext,trendlineThickness:e.trendlinethickness,trendlineAlpha:e.trendlinealpha,
showTrendlinesOnTop:e.showtrendlinesontop,showAxisLine:k?0:c(e.showsyaxisline,e.showaxislines,e.drawAxisLines,0),axisLineThickness:c(e.syaxislinethickness,e.axislinethickness,1),axisLineAlpha:c(e.syaxislinealpha,e.axislinealpha,100),axisLineColor:d(e.syaxislinecolor,e.axislinecolor,"#000000")};g.vtrendlines=f.vtrendlines;D=0;for(t=z.length;D<t;D++)for(f=z[D]&&z[D].line||[],k=f.length,w=0;w<k;w++)e=f[w]||{},e.parentyaxis&&e.parentyaxis.toLowerCase(),"s"===e.parentyaxis?l[0].line.push(e):p[0].line.push(e);
a.trendlines=p;h.trendlines=l;p=b.yAxis[0];l=b.yAxis[1];b=b.xAxis[0];1===m?(p.setCommonConfigArr(a,!0,!1,!1),l.setCommonConfigArr(h,!0,!1,!0)):(p.setCommonConfigArr(a,!0,!1,!0),l.setCommonConfigArr(h,!0,!1,!1));b.setCommonConfigArr(g,!1,!1,!1);p.configure();l.configure();b.configure();l.setAxisConfig({isActive:!1,isPercent:this.isPercentage,axisIndex:1,uniqueClassName:1})},_setAxisLimits:function(){var a=this.components,d=a.dataset,b=a.yAxis,a=a.xAxis,h,e=d.length,f,g=-Infinity,l=Infinity,k=-Infinity,
t=Infinity,p=Infinity,m=-Infinity,D,w,z;D=c(this.jsonData.chart.syncaxislimits,0);var G={};w=function(a){return-Infinity===a||Infinity===a?null:a};var r=function(a){n?(k=Y(k,a.sYMax||a.max),t=oa(t,a.sYMin||a.min)):(g=Y(g,a.max),l=oa(l,a.min));m=Y(m,a.xMax||-Infinity);p=oa(p,a.xMin||Infinity)},n=0;for(f=0;f<e;f++)h=d[f],z=h.groupManager,n=h.config.parentYAxis,z?(G[h.type]=z,G[h.type].yAxisIndex=n):(h=h.getDataLimits(),r(h));for(z in G)n=G[z].yAxisIndex,h=G[z].getDataLimits(),g=Y(g,h.max),l=oa(l,h.min),
k=Y(k,h.sYMax),t=oa(t,h.sYMin);d=this._getTrendLineMinMax("h");z=this._getTrendLineMinMax("h","s");g=Y(g,d.max);l=oa(l,d.min);k=Y(k,z.max);t=oa(t,z.min);D?(D=Y(g,k),w=oa(l,t),b[0].setDataLimit(D,w),b[1].setDataLimit(D,w)):(g=w(g),l=w(l),k=w(k),t=w(t),b[0].setDataLimit(g,l),b[1].setDataLimit(k,t));b[0].getDivLineCount();if(-Infinity!==m||Infinity!==p)a[0].config.xaxisrange={max:m,min:p},a[0].setDataLimit(m,p)},_postSpaceManagement:function(){var a=this.config,c=this.components,d=c.yAxis,b=c.xAxis&&
c.xAxis[0],h=d[0],d=d[1],e=c.legend,f=a.xDepth,g=c.canvas.config,l=g.canvasBorderWidth,k=g.canvasPadding,t=g.canvasPaddingLeft,p=g.canvasPaddingRight,c=g.canvasPaddingTop,m=a.primaryAxisOnleft,g=g.canvasPaddingBottom;b&&b.setAxisDimention({x:a.canvasLeft+(f||0)+Y(t,k),y:a.canvasBottom+(a.shift||0)+l,opposite:a.canvasTop-l,axisLength:a.canvasWidth-(f||0)-Y(t,k)-Y(p,k)});m?(a.yAxisStartXPos=a.canvasLeft-l,a.sYAxisStartXPos=a.canvasRight+l):(a.yAxisStartXPos=a.canvasRight+l,a.sYAxisStartXPos=a.canvasLeft-
l);l=a.yAxisStartXPos;k=a.sYAxisStartXPos;h&&h.setAxisDimention({x:l,y:a.canvasTop+c,opposite:k,axisLength:a.canvasHeight-c-g});d&&d.setAxisDimention({x:k,y:a.canvasTop+c,opposite:l,axisLength:a.canvasHeight-c-g});b&&b.shiftLabels(-f,0);e.postSpaceManager();this.config.realtimeEnabled&&this._setRealTimeCategories&&this._setRealTimeCategories();this._adjustCanvasPadding()}},ta.mscartesian);ta("mscartesian3d",{standaloneInit:!1,is3d:!0,_createDatasets:function(){var a=this.components,c=a.xAxis[0],b=
this.jsonData,h=b.dataset,e=h&&h.length,f,g,l,k=this.defaultDatasetType,t=this.applicableDSList,p=this.components.legend,m,D,w,z,n=this.config.isstacked,r,B,K=[],q=this.isRealTime,u=this.config.catLen,R={};h||this.setChartMessage();this.config.categories=b.categories&&b.categories[0].category;f=a.dataset||(a.dataset=[]);g=f.length;for(b=0;b<e;b++)if(z=h[b],z.seriesname&&(z.seriesname=G(z.seriesname)),l=z.parentyaxis||F,D=(D=this.isDual&&"s"===l.toLowerCase()?d(z.renderas,this.sDefaultDatasetType):
d(z.renderas,k))&&D.toLowerCase(),t[D]||(D=k),w=Q.get("component",["dataset",D]))void 0===R[D]?R[D]=0:R[D]++,r="datasetGroup_"+D,l=Q.register("component",["datasetGroup",D]),(m=a[r])&&K.push(m),l&&!m&&(m=a[r]=new l,m.chart=this,m.init()),(l=f[b])?(D=c.getCategoryLen(),r=u-D,w=q?l.components:l.JSONData,B=w.data&&w.data.length||0,w=z.data&&z.data.length||0,B-=w,r>B||(r=B,D=w),0<r&&l.removeData(D,r,!1),f[b].JSONData=z,f[b].configure(),f[b]._deleteGridImages&&f[b]._deleteGridImages()):(l=new w,f.push(l),
l.chart=this,l.index=b,m&&(n?m.addDataSet(l,0,R[D]):m.addDataSet(l,R[D],0)),l.init(z));if(g>e){r=g-e;m&&n&&m.removeDataSet(0,b,r);a=b;for(e=r+b;a<e;a++)m&&!n&&m.removeDataSet(b,0,1),f[a].visible=!1,f[a].draw(),p.removeItem(f[a].legendItemId);f.splice(b,r)}this.config.catLen=c.getCategoryLen()},_drawCanvas:function(){var a=this.config,b=a.canvasLeft,h=a.canvasTop,e=a.canvasWidth,f=a.canvasHeight,g=this.jsonData.chart,l=this.components,k=l.canvas,t=l.colorManager,l=l.paper,p=k.graphics,m=p.canvasBorderElement,
D=p.canvasElement,w=k.config,z=w.clip={},k=this.graphics.canvasGroup,G=p.canvasBg,r=p.canvas3DBase,B=this.get(M,U),F=B.animType,K=B.animObj,q=B.dummyObj,B=B.duration,u=p.canvas3dbaseline,R=w.canvasBgColor,L=w.showCanvasBG=!!c(g.showcanvasbg,1),P=a.canvasBgDepth,aa=a.showCanvasBase,v=a.canvasBaseDepth,Z=w.canvasBaseColor3D=d(g.canvasbasecolor,t.getColor("canvasBaseColor3D")),E=w.use3DLighting=c(g.use3dlighting,1),R=Ta.chart3D,S=w.canvasBorderRadius=c(g.plotborderradius,0),V=w.canvasBorderColor=pa(d(g.canvasbordercolor,
t.getColor("canvasBorderColor"))),T=w.canBGAlpha=d(g.canvasbgalpha,t.getColor("canvasBgAlpha")),X=w.canBGColor=d(g.canvasbgcolor,t.getColor(R.canvasBgColor)),C=a.xDepth,g=a.yDepth,t=a.canvasBasePadding||2,R=E?w.canvasBgColor={FCcolor:{color:Ca(X,85)+Ka+Ha(X,55),alpha:T+Ka+T,ratio:ab,angle:Xa(a.width-(a.marginLeft+a.marginRight),a.height-(a.marginTop+a.marginBottom),1)}}:w.canvasBgColor=pa(X,T);X.split(Ka);T.split(Ka);C=w.xDepth=10;g=w.yDepth=10;a={x:b-0,y:h-0,width:e+0,height:f+0,r:S,"stroke-width":0,
stroke:V,"stroke-linejoin":n};m?(m.animateWith(q,K,{x:b-0,y:h-0,width:e+0,height:f+0,r:S},B,F),m.attr({"stroke-width":0,stroke:V,"stroke-linejoin":n})):p.canvasBorderElement=l.rect(a,k);z["clip-canvas"]=[Y(0,b-C),Y(0,h),Y(1,e+C),Y(1,f+g)];z["clip-canvas-init"]=[Y(0,b-C),Y(0,h-g),1,Y(1,f+2*g)];a={x:b,y:h,width:e,height:f,r:S,"stroke-width":0,stroke:"none",fill:na(R)};L?(D?(D.show(),D.animateWith(q,K,{x:b,y:h,width:e,height:f,r:S},B,F),D.attr({"stroke-width":0,stroke:"none",fill:na(R)})):p.canvasElement=
l.rect(a,k),a=["M",b+e,",",h,"L",b+e+P,",",h+1.2*P,",",b+e+P,",",h+f-P,",",b+e,",",h+f,"Z"],G?(G.show(),G.animateWith(q,K,{path:a},B,F),G.attr({path:a})):G=p.canvasBg=l.path(a,k),G.attr({"stroke-width":0,stroke:"none",fill:na(R)})):(D&&D.hide(),G&&G.hide());aa?(a=b-C-t,m=h+f+g+t,D=C+t,G=g+t,r?(r.show(),r._.cubeside.show(),r._.cubetop.show(),r.animateWith(q,K,{cubepath:[a,m,e,v,D,G]},B,F),r.attr({cubepath:[a,m,e,v,D,G]})):r=p.canvas3DBase=l.cubepath(a,m,e,v,D,G,k),r.attr({stroke:"none","stroke-width":0,
fill:[Z.replace(sa,wa),!E]}),u?(u.show(),u.animateWith(q,K,{path:["M",b,h+f,"H",e+b]},B,F)):u=p.canvas3dbaseline=l.path(void 0,k),u.attr({path:["M",b,h+f,"H",e+b],stroke:J.tintshade(Z.replace(sa,wa),.05).rgba})):(r&&(r.hide(),r._.cubeside.hide(),r._.cubetop.hide()),u&&u.hide())}},ta.mscartesian,{showplotborder:0});ta("msdybasecartesian3d",{standaloneInit:!1,is3d:!0,_drawCanvas:ta.mscartesian3d},ta.msdybasecartesian);ta("sscartesian3d",{standaloneInit:!1,hasLegend:!1,is3d:!0,_drawCanvas:ta.mscartesian3d},
ta.sscartesian,{showplotborder:0});ta("msbarcartesian",{standaloneInit:!1,_createAxes:function(){var a=this.components,c=Q.get("component",["axis","cartesian"]),d;a.yAxis=[];a.xAxis=[];a.yAxis[0]=d=new c;a.xAxis[0]=a=new c;d.chart=this;a.chart=this;d.init();a.init();this._setCategories()},_feedAxesRawData:function(){var a=this.config,b=this.components,h=b.colorManager,e=this.jsonData,f=e.chart,g,l=this.is3d,k=l?Ta.chart3D:Ta.chart2D;g={outCanfontFamily:d(f.outcnvbasefont,f.basefont,"Verdana,sans"),
outCanfontSize:la(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:d(f.outcnvbasefontcolor,f.basefontcolor,h.getColor(k.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:f.xaxisnamepadding,maxLabelWidthPercent:f.maxlabelwidthpercent,minLabelWidthPercent:f.minlabelwidthpercent,axisValuePadding:f.labelpadding,axisNameFont:f.xaxisnamefont,axisNameFontSize:f.xaxisnamefontsize,axisNameFontColor:f.xaxisnamefontcolor,axisNameFontBold:f.xaxisnamefontbold,axisNameFontItalic:f.xaxisnamefontitalic,
axisNameBgColor:f.xaxisnamebgcolor,axisNameBorderColor:f.xaxisnamebordercolor,axisNameAlpha:f.xaxisnamealpha,axisNameFontAlpha:f.xaxisnamefontalpha,axisNameBgAlpha:f.xaxisnamebgalpha,axisNameBorderAlpha:f.xaxisnameborderalpha,axisNameBorderPadding:f.xaxisnameborderpadding,axisNameBorderRadius:f.xaxisnameborderradius,axisNameBorderThickness:f.xaxisnameborderthickness,axisNameBorderDashed:f.xaxisnameborderdashed,axisNameBorderDashLen:f.xaxisnameborderdashlen,axisNameBorderDashGap:f.xaxisnameborderdashgap,
axisNameWidth:f.xaxisnamewidth,useEllipsesWhenOverflow:f.useellipseswhenoverflow,divLineColor:d(f.vdivlinecolor,f.divlinecolor,h.getColor(k.divLineColor)),divLineAlpha:d(f.vdivlinealpha,f.divlinealpha,l?h.getColor("divLineAlpha3D"):h.getColor("divLineAlpha")),divLineThickness:c(f.vdivlinethickness,f.divlinethickness,1),divLineIsDashed:!!c(f.vdivlinedashed,f.vdivlineisdashed,f.divlinedashed,f.divlineisdashed,0),divLineDashLen:c(f.vdivlinedashlen,f.divlinedashlen,4),divLineDashGap:c(f.vdivlinedashgap,
f.divlinedashgap,2),showAlternateGridColor:c(f.showalternatehgridcolor,1),alternateGridColor:d(f.alternatehgridcolor,h.getColor("altHGridColor")),alternateGridAlpha:d(f.alternatehgridalpha,h.getColor("altHGridAlpha")),numDivLines:f.numvdivlines,labelFont:f.labelfont,labelFontSize:f.labelfontsize,labelFontColor:f.labelfontcolor,labelFontAlpha:f.labelalpha,labelFontBold:f.labelfontbold,labelFontItalic:f.labelfontitalic,axisName:f.xaxisname,axisMinValue:f.xaxisminvalue,axisMaxValue:f.xaxismaxvalue,setAdaptiveMin:f.setadaptivexmin,
adjustDiv:f.adjustvdiv,labelDisplay:f.labeldisplay,showLabels:f.showlabels,rotateLabels:f.rotatelabels,slantLabel:c(f.slantlabels,f.slantlabel),labelStep:c(f.labelstep,f.xaxisvaluesstep),showAxisValues:c(f.showxaxisvalues,f.showxaxisvalue),showLimits:f.showvlimits,showDivLineValues:c(f.showvdivlinevalues,f.showvdivlinevalues),zeroPlaneColor:f.vzeroplanecolor,zeroPlaneThickness:c(f.vzeroplanethickness,f.vdivlinethickness,2),zeroPlaneAlpha:c(f.vzeroplanealpha,f.vdivlinealpha,a.zeroplanealpha),showZeroPlaneValue:f.showvzeroplanevalue,
trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,rotateAxisName:c(f.rotatexaxisname,1),trendlineAlpha:f.trendlinealpha,showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:l?0:c(f.showxaxisline,f.showaxislines,f.drawAxisLines,0),axisLineThickness:c(f.xaxislinethickness,f.axislinethickness,1),axisLineAlpha:c(f.xaxislinealpha,f.axislinealpha,100),axisLineColor:d(f.xaxislinecolor,f.axislinecolor,"#000000")};a={outCanfontFamily:d(f.outcnvbasefont,
f.basefont,"Verdana,sans"),outCanfontSize:la(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:d(f.outcnvbasefontcolor,f.basefontcolor,h.getColor(k.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:f.yaxisnamepadding,axisValuePadding:f.yaxisvaluespadding,axisNameFont:f.yaxisnamefont,axisNameFontSize:f.yaxisnamefontsize,axisNameFontColor:f.yaxisnamefontcolor,axisNameFontBold:f.yaxisnamefontbold,axisNameFontItalic:f.yaxisnamefontitalic,axisNameBgColor:f.yaxisnamebgcolor,axisNameBorderColor:f.yaxisnamebordercolor,
axisNameAlpha:f.yaxisnamealpha,axisNameFontAlpha:f.yaxisnamefontalpha,axisNameBgAlpha:f.yaxisnamebgalpha,axisNameBorderAlpha:f.yaxisnameborderalpha,axisNameBorderPadding:f.yaxisnameborderpadding,axisNameBorderRadius:f.yaxisnameborderradius,axisNameBorderThickness:f.yaxisnameborderthickness,axisNameBorderDashed:f.yaxisnameborderdashed,axisNameBorderDashLen:f.yaxisnameborderdashlen,axisNameBorderDashGap:f.yaxisnameborderdashgap,axisNameWidth:f.yaxisnamewidth,useEllipsesWhenOverflow:f.useellipseswhenoverflow,
axisName:f.yaxisname,divLineColor:d(f.divlinecolor,h.getColor(k.divLineColor)),divLineAlpha:d(f.divlinealpha,l?h.getColor("divLineAlpha3D"):h.getColor("divLineAlpha")),divLineThickness:c(f.divlinethickness,1),divLineIsDashed:!!c(f.divlinedashed,f.divlineisdashed,0),divLineDashLen:c(f.divlinedashlen,4),divLineDashGap:c(f.divlinedashgap,2),showAlternateGridColor:c(f.showalternatevgridcolor,1),alternateGridColor:d(f.alternatevgridcolor,h.getColor("altVGridColor")),alternateGridAlpha:d(f.alternatevgridalpha,
h.getColor("altVGridAlpha")),numDivLines:f.numdivlines,axisMinValue:f.yaxisminvalue,axisMaxValue:f.yaxismaxvalue,setAdaptiveMin:f.setadaptiveymin,adjustDiv:f.adjustdiv,labelStep:f.yaxisvaluesstep,showAxisValues:c(f.showyaxisvalues,f.showyaxisvalue),showLimits:c(f.showyaxislimits,f.showlimits,this.showLimits),showDivLineValues:c(f.showdivlinevalues,f.showdivlinevalue),zeroPlaneColor:f.zeroplanecolor,zeroPlaneThickness:c(f.zeroplanethickness,f.divlinethickness,2),zeroPlaneAlpha:c(f.zeroplanealpha,f.divlinealpha,
a.zeroplanealpha),showZeroPlaneValue:f.showzeroplanevalue,trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,isTrendZone:0,showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:l?0:c(f.showyaxisline,f.showaxislines,f.drawAxisLines,0),axisLineThickness:c(f.yaxislinethickness,f.axislinethickness,1),axisLineAlpha:c(f.yaxislinealpha,f.axislinealpha,100),axisLineColor:d(f.yaxislinecolor,f.axislinecolor,"#000000"),
numberFormatterFn:"yAxis"};a.vtrendlines=e.trendlines;g.trendlines=e.vtrendlines;e=b.yAxis[0];b=b.xAxis[0];e.setCommonConfigArr(a,!1,!1,!1);b.setCommonConfigArr(g,!0,!0,!1);e.configure();b.configure()},_spaceManager:function(){var a,c,d=this.config,b=this.components,h=b.yAxis&&b.yAxis[0],f=b.xAxis&&b.xAxis||[];c=b.legend.config.legendPos;var e=d.xDepth,g=d.yDepth,l=d.canvasBgDepth,k=d.canvasBaseDepth,t=d.canvasBasePadding,p=b.canvas.config.canvasBorderWidth,m=d.realTimeConfig&&d.realTimeConfig.showRTValue,
D=d.borderWidth,w=d.canvasMarginTop,z=d.canvasMarginBottom,G=d.canvasMarginLeft,r=d.canvasMarginRight,b=d.minCanvasHeight,n=d.minCanvasWidth,B=d.minChartWidth,F=d.minChartHeight,K=d.height,q=d.width,u=!1,R=!1,L,P=d.origCanvasTopMargin,aa=d.origCanvasBottomMargin,v=d.origCanvasLeftMargin,Z=d.origCanvasRightMargin,E,S,V;d.canvasWidth-2*D<B&&(E=(d.canvasWidth-B)/2);d.canvasHeight-2*D<F&&(a=(d.canvasHeight-F)/2);this._allocateSpace({top:a||D,bottom:a||D,left:E||D,right:E||D});f=f[0];a=.7*d.availableWidth;
d.yAxisSpaceAllocation=a=f&&f.placeAxis(a);f&&this._allocateSpace(a);f=.225*d.availableHeight;f=this._manageActionBarSpace&&this._manageActionBarSpace(f)||{};this._allocateSpace(f);this._manageLegendSpace();c=c===T?.6*d.availableHeight:.6*d.availableWidth;g&&(this._allocateSpace({left:g}),d.shift=e+t+k);l&&this._allocateSpace({top:l});d.canvasWidth-2*p<n&&(V=(d.canvasWidth-n)/2);this._allocateSpace({left:V||p,right:V||p});n>q-G-r&&(R=!0,g=d.canvasWidth-n,e=G+r,G=d.canvasMarginLeft=g*G/e,r=d.canvasMarginRight=
g*r/e);G=G>d.canvasLeft?G-d.canvasLeft:0;r=r>q-d.canvasRight?r+d.canvasRight-q:0;this._allocateSpace({left:G,right:r});this._allocateSpace({left:k});R&&(e=v+Z,k=d.canvasWidth,k>n&&(g=k-n,G=g*v/e,r=g*Z/e),this._allocateSpace({left:G,right:r}));d.actualCanvasMarginRight=r;d.actualCanvasMarginBottom=L;this._manageChartMenuBar(c);c=.2*d.availableHeight;this._allocateSpace(this._getSumValueSpace(c));c=.3*d.availableHeight;d.realtimeEnabled&&(m?this._allocateSpace(this._realTimeValuePositioning(c)):this._hideRealTimeValue());
c=.6*d.availableHeight;d.xAxisSpaceAllocation=L=h&&h.placeAxis(c);h&&this._allocateSpace(L);c=.3*d.availableHeight;this._manageScrollerPosition&&this._manageScrollerPosition(c);d.canvasHeight-2*p<b&&(S=(d.canvasHeight-b)/2);this._allocateSpace({top:S||p,bottom:S||p});b>K-w-z&&(u=!0,g=d.canvasHeight-b,e=w+z,w=d.canvasMarginTop=g*w/e,z=d.canvasMarginBottom=g*z/e);h=w>d.canvasTop?w-d.canvasTop:0;L=z>K-d.canvasBottom?z+d.canvasBottom-K:0;this._allocateSpace({top:h,bottom:L});u&&(e=P+aa,z=d.canvasHeight,
z>b&&(g=z-b,h=g*P/e,L=g*aa/e),this._allocateSpace({top:h,bottom:L}));d.actualCanvasMarginTop=h;d.actualCanvasMarginLeft=G},_postSpaceManagement:function(){var a=this.config,c=this.components,d=c.xAxis&&c.xAxis[0],b=c.yAxis&&c.yAxis[0],h=c.legend,f=a.xDepth,e=c.canvas.config,c=e.canvasBorderWidth,g=e.canvasPadding,l,k,t;b&&this._allocateXAxisLabelSpace(b);l=e.canvasPaddingLeft;k=e.canvasPaddingRight;t=e.canvasPaddingTop;e=e.canvasPaddingBottom;b&&b.setAxisDimention({x:a.canvasLeft+l,y:a.canvasBottom+
c,opposite:a.canvasTop-c,axisLength:a.canvasWidth-l-k});d&&d.setAxisDimention({x:a.canvasLeft-(a.shift||0)-c,y:a.canvasTop+(f||0)+Y(t,g),opposite:a.canvasRight+c,axisLength:a.canvasHeight-(f||0)-Y(t,g)-Y(e,g)});h.postSpaceManager()}},ta.mscartesian,{maxbarheight:50});ta("ssbarcartesian",{standaloneInit:!1,_createAxes:ta.msbarcartesian,_feedAxesRawData:ta.msbarcartesian,_spaceManager:ta.msbarcartesian,_postSpaceManagement:ta.msbarcartesian,_allocateXAxisLabelSpace:ta.msbarcartesian},ta.sscartesian);
ta("msbarcartesian3d",{standaloneInit:!1,_createDatasets:ta.mscartesian3d,is3d:!0,_drawCanvas:function(){var a=this.config,b=a.canvasLeft,h=a.canvasTop,f=a.canvasWidth,e=a.canvasHeight,g=this.jsonData.chart,l=this.components,k=l.canvas,t=l.colorManager,l=l.paper,p=k.graphics,D=p.canvasBorderElement,w=p.canvasElement,z=k.config,G=z.clip={},k=this.graphics.canvasGroup,r=p.canvasBg,B=p.canvas3DBase,F=this.get(M,U),K=F.animType,q=F.animObj,u=F.dummyObj,F=F.duration,R=p.canvas3dbaseline,L=z.canvasBgColor,
P=z.showCanvasBG=!!c(g.showcanvasbg,1),aa=a.canvasBgDepth,v=a.showCanvasBase,Z=a.canvasBaseDepth,E=z.canvasBaseColor3D=d(g.canvasbasecolor,t.getColor("canvasBaseColor3D")),S=z.use3DLighting=c(g.use3dlighting,1),L=Ta.chart3D,V=z.canvasBorderRadius=c(g.plotborderradius,0),T=z.canvasBorderWidth=0,X=.5*T,C=z.canvasBorderColor=pa(d(g.canvasbordercolor,t.getColor("canvasBorderColor"))),A=z.canBGAlpha=d(g.canvasbgalpha,t.getColor("canvasBgAlpha")),H=z.canBGColor=d(g.canvasbgcolor,t.getColor(L.canvasBgColor)),
t=z.xDepth,g=z.yDepth,L=S?z.canvasBgColor={FCcolor:{color:Ca(H,85)+Ka+Ha(H,55),alpha:A+Ka+A,ratio:ab,angle:Xa(a.width-(a.marginLeft+a.marginRight),a.height-(a.marginTop+a.marginBottom),1)}}:z.canvasBgColor=pa(H,A);H.split(Ka);A.split(Ka);t=z.xDepth=5;g=z.yDepth=5;a={x:b-X,y:h-X,width:f+T,height:e+T,r:V,"stroke-width":T,stroke:C,"stroke-linejoin":2<T?m:n};D?(D.animateWith(u,q,{x:b-X,y:h-X,width:f+T,height:e+T,r:V},F,K),D.attr({"stroke-width":T,stroke:C,"stroke-linejoin":2<T?m:n})):p.canvasBorderElement=
l.rect(a,k);G["clip-canvas"]=[Y(0,b-t),Y(0,h),Y(1,f+t),Y(1,e+g)];G["clip-canvas-init"]=[Y(0,b-t),Y(0,h-g),1,Y(1,e+2*g)];a={x:b,y:h,width:f,height:e,r:V,"stroke-width":0,stroke:"none",fill:na(L)};P?(w?(w.show(),w.animateWith(u,q,{x:b,y:h,width:f,height:e,r:V},F,K),w.attr({"stroke-width":0,stroke:"none",fill:na(L)})):p.canvasElement=l.rect(a,k),f=["M",b,",",h,"L",b+1.2*aa,",",h-aa,",",b+f-aa,",",h-aa,",",b+f,",",h,"Z"],r?(r.show(),r.animateWith(u,q,{path:f},F,K),r.attr({path:f})):r=p.canvasBg=l.path(f,
k),r.attr({"stroke-width":0,stroke:"none",fill:na(L)})):(w&&w.hide(),r&&r.hide());v?(f=b-t-Z-1,a=h+g+1,D=t+1,w=g+1,B?(B.show(),B._.cubeside.show(),B._.cubetop.show(),B.animateWith(u,q,{cubepath:[f,a,Z,e,D,w]},F,K),B.attr({cubepath:[f,a,Z,e,D,w]})):B=p.canvas3DBase=l.cubepath(f,a,Z,e,D,w,k),B.attr({stroke:"none","stroke-width":0,fill:[E.replace(sa,wa),!S]}),R?(R.show(),R.animateWith(u,q,{path:["M",b,h,"V",e+h]},F,K)):R=p.canvas3dbaseline=l.path(void 0,k),R.attr({path:["M",b,h,"V",e+h],stroke:J.tintshade(E.replace(sa,
wa),.05).rgba})):(B&&(B.hide(),B._.cubeside.hide(),B._.cubetop.hide()),R&&R.hide())}},ta.msbarcartesian,{showplotborder:0});ta("ssbarcartesian3d",{standaloneInit:!1,_createAxes:ta.msbarcartesian,_feedAxesRawData:ta.msbarcartesian,_drawCanvas:ta.msbarcartesian3d,_spaceManager:ta.msbarcartesian,_postSpaceManagement:ta.msbarcartesian,_allocateXAxisLabelSpace:ta.msbarcartesian},ta.sscartesian3d);ta("mspolar",{standaloneInit:!1,hasCanvas:!1,_createAxes:function(){var a=this.components,c=Q.register("component",
["axis","polarcartesan"]),d=Q.register("component",["axis","polar"]);a.yAxis=[];a.xAxis=[];a.yAxis[0]=c=new c;a.xAxis[0]=a=new d;c.chart=this;a.chart=this;c.init();a.init();c.setAxisConfig({polarAxis:a});this._setCategories()},_feedAxesRawData:function(){var a=this.components,b=a.colorManager,h=this.jsonData,f=h.chart,e,g=(e=this.is3d)?Ta.chart3D:Ta.chart2D;e={outCanfontFamily:d(f.outcnvbasefont,f.basefont,"Verdana,sans"),outCanfontSize:la(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:d(f.outcnvbasefontcolor,
f.basefontcolor,b.getColor(g.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:f.xaxisnamepadding,axisValuePadding:f.labelpadding,axisNameFont:f.xaxisnamefont,axisNameFontSize:f.xaxisnamefontsize,axisNameFontColor:f.xaxisnamefontcolor,axisNameFontBold:f.xaxisnamefontbold,axisNameFontItalic:f.xaxisnamefontitalic,axisNameBgColor:f.xaxisnamebgcolor,axisNameBorderColor:f.xaxisnamebordercolor,axisNameAlpha:f.xaxisnamealpha,axisNameFontAlpha:f.xaxisnamefontalpha,axisNameBgAlpha:f.xaxisnamebgalpha,
axisNameBorderAlpha:f.xaxisnameborderalpha,axisNameBorderPadding:f.xaxisnameborderpadding,axisNameBorderRadius:f.xaxisnameborderradius,axisNameBorderThickness:f.xaxisnameborderthickness,axisNameBorderDashed:f.xaxisnameborderdashed,axisNameBorderDashLen:f.xaxisnameborderdashlen,axisNameBorderDashGap:f.xaxisnameborderdashgap,useEllipsesWhenOverflow:f.useellipseswhenoverflow,divLineColor:d(f.vdivlinecolor,f.divlinecolor,b.getColor(g.divLineColor)),divLineAlpha:d(f.vdivlinealpha,f.divlinealpha,e?b.getColor("divLineAlpha3D"):
b.getColor("divLineAlpha")),divLineThickness:c(f.vdivlinethickness,f.divlinethickness,1),divLineIsDashed:!!c(f.vdivlinedashed,f.vdivlineisdashed,f.divlinedashed,f.divlineisdashed,0),divLineDashLen:c(f.vdivlinedashlen,f.divlinedashlen,4),divLineDashGap:c(f.vdivlinedashgap,f.divlinedashgap,2),showAlternateGridColor:c(f.showalternatevgridcolor,1),alternateGridColor:d(f.alternatevgridcolor,b.getColor("altVGridColor")),alternateGridAlpha:d(f.alternatevgridalpha,b.getColor("altVGridAlpha")),numDivLines:f.numvdivlines,
labelFont:f.labelfont,labelFontSize:f.labelfontsize,labelFontColor:f.labelfontcolor,labelFontAlpha:f.labelalpha,labelFontBold:f.labelfontbold,labelFontItalic:f.labelfontitalic,axisName:f.yaxisname,axisMinValue:f.xaxisminvalue,axisMaxValue:f.xaxismaxvalue,setAdaptiveMin:f.setadaptivexmin,adjustDiv:f.adjustvdiv,labelDisplay:f.labeldisplay,showLabels:f.showlabels,rotateLabels:f.rotatelabels,slantLabel:c(f.slantlabels,f.slantlabel),labelStep:c(f.labelstep,f.xaxisvaluesstep),showAxisValues:c(f.showxaxisvalues,
f.showxaxisvalue),showLimits:f.showvlimits,showDivLineValues:c(f.showvdivlinevalues,f.showvdivlinevalues),zeroPlaneColor:f.vzeroplanecolor,zeroPlaneThickness:f.vzeroplanethickness,zeroPlaneAlpha:f.vzeroplanealpha,showZeroPlaneValue:f.showvzeroplanevalue,trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:c(f.showxaxisline,f.showaxislines,f.drawAxisLines,
0),axisLineThickness:c(f.xaxislinethickness,f.axislinethickness,1),axisLineAlpha:c(f.xaxislinealpha,f.axislinealpha,100),axisLineColor:d(f.xaxislinecolor,f.axislinecolor,"#000000"),showRadarBorder:f.showradarborder,radarBorderColor:f.radarbordercolor,radarBorderThickness:f.radarborderthickness,radarBorderAlpha:f.radarborderalpha,radarFillColor:f.radarfillcolor,radarFillAlpha:f.radarfillalpha,radarSpikeColor:f.radarspikecolor,radarSpikeThickness:f.radarspikethickness,radarSpikeAlpha:f.radarspikealpha,
radarInLineAlpha:f.radarinlinealpha};b={outCanfontFamily:d(f.outcnvbasefont,f.basefont,"Verdana,sans"),outCanfontSize:la(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:d(f.outcnvbasefontcolor,f.basefontcolor,b.getColor(g.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:f.yaxisnamepadding,axisValuePadding:f.yaxisvaluespadding,axisNameFont:f.yaxisnamefont,axisNameFontSize:f.yaxisnamefontsize,axisNameFontColor:f.yaxisnamefontcolor,axisNameFontBold:f.yaxisnamefontbold,axisNameFontItalic:f.yaxisnamefontitalic,
axisNameBgColor:f.yaxisnamebgcolor,axisNameBorderColor:f.yaxisnamebordercolor,axisNameAlpha:f.yaxisnamealpha,axisNameFontAlpha:f.yaxisnamefontalpha,axisNameBgAlpha:f.yaxisnamebgalpha,axisNameBorderAlpha:f.yaxisnameborderalpha,axisNameBorderPadding:f.yaxisnameborderpadding,axisNameBorderRadius:f.yaxisnameborderradius,axisNameBorderThickness:f.yaxisnameborderthickness,axisNameBorderDashed:f.yaxisnameborderdashed,axisNameBorderDashLen:f.yaxisnameborderdashlen,axisNameBorderDashGap:f.yaxisnameborderdashgap,
axisNameWidth:f.yaxisnamewidth,useEllipsesWhenOverflow:f.useellipseswhenoverflow,rotateAxisName:c(f.rotateyaxisname,1),axisName:f.xaxisname,divLineColor:d(f.divlinecolor,b.getColor(g.divLineColor)),divLineAlpha:d(f.divlinealpha,b.getColor("divLineAlpha")),divLineThickness:c(f.divlinethickness,1),divLineIsDashed:!!c(f.divlinedashed,f.divlineisdashed,0),divLineDashLen:c(f.divlinedashlen,4),divLineDashGap:c(f.divlinedashgap,2),showAlternateGridColor:c(f.showalternatehgridcolor,1),alternateGridColor:d(f.alternatehgridcolor,
b.getColor("altHGridColor")),alternateGridAlpha:d(f.alternatehgridalpha,b.getColor("altHGridAlpha")),numDivLines:f.numdivlines,axisMinValue:f.yaxisminvalue,axisMaxValue:f.yaxismaxvalue,setAdaptiveMin:f.setadaptiveymin,adjustDiv:f.adjustdiv,labelStep:f.yaxisvaluesstep,showAxisValues:c(f.showyaxisvalues,f.showyaxisvalue),showLimits:c(f.showyaxislimits,f.showlimits,this.showLimits),showDivLineValues:c(f.showdivlinevalues,f.showdivlinevalue),zeroPlaneColor:f.zeroplanecolor,zeroPlaneThickness:c(f.zeroplanethickness,
f.divlinethickness,2),zeroPlaneAlpha:f.zeroplanealpha,showZeroPlaneValue:f.showzeroplanevalue,trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:c(f.showyaxisline,f.showaxislines,f.drawAxisLines,0),axisLineThickness:c(f.yaxislinethickness,f.axislinethickness,1),axisLineAlpha:c(f.yaxislinealpha,f.axislinealpha,100),axisLineColor:d(f.yaxislinecolor,f.axislinecolor,
"#000000")};e.vtrendlines=h.trendlines;b.trendlines=h.vtrendlines;h=a.yAxis[0];a=a.xAxis[0];h.setCommonConfigArr(b,!0,!1,!1);a.setCommonConfigArr(e,!1,!1,!1);h.configure();a.configure()},_spaceManager:function(){var a,c,d=this.config;c=this.components;var b=d.radarborderthickness,h=d.legendPosition,f=c.xAxis&&c.xAxis[0],e=c.yAxis&&c.yAxis[0];a=this.hasLegend;c=c.legend;var g;g=h===T?.3*d.canvasHeight:.3*d.canvasWidth;!1!==a&&f&&this._allocateSpace(c._manageLegendPosition(g));c=.7*d.canvasHeight;a=
.7*d.canvasWidth;f&&this._allocateSpace(f.placeAxis(a,c));a=.7*d.canvasWidth;e&&e.placeAxis(a);a=.225*d.availableHeight;a=this._manageActionBarSpace&&this._manageActionBarSpace(a)||{};this._allocateSpace(a);a=0<d.radarradius?2*d.radarradius:oa(d.canvasHeight,d.canvasWidth);d.canvasHeight>a&&(c=za((d.canvasHeight-a)/2),this._allocateSpace({top:c,bottom:c}));d.canvasWidth>a&&(c=za((d.canvasWidth-a)/2),this._allocateSpace({left:c,right:c}));c=h===T?.6*d.availableHeight:.6*d.availableWidth;this._manageChartMenuBar(c);
e.setAxisDimention({x:d.canvasLeft+d.canvasWidth/2-b/2,y:d.canvasTop,axisLength:d.canvasHeight/2});f.setAxisConfig({centerX:d.canvasLeft+d.canvasWidth/2,centerY:d.canvasTop+d.canvasHeight/2,radius:oa(d.canvasWidth/2,d.canvasHeight/2)-b/2})}},ta.mscartesian);ta("mslog",{standaloneInit:!1,_createAxes:function(){var a=this.components,c=Q.register("component",["axis","cartesian"]),d=Q.register("component",["axis","log"]);a.yAxis=[];a.xAxis=[];a.yAxis[0]=d=new d;a.xAxis[0]=a=new c;d.chart=this;a.chart=
this;d.init();a.init();this._setCategories()},_feedAxesRawData:function(){var a=this.components,b=a.colorManager,h=this.jsonData,f=h.chart,e,g=(e=this.is3d)?Ta.chart3D:Ta.chart2D,l=1===c(f.invertyaxis,0)?!0:!1;e={outCanfontFamily:d(f.outcnvbasefont,f.basefont,"Verdana,sans"),outCanfontSize:la(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:d(f.outcnvbasefontcolor,f.basefontcolor,b.getColor(g.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:f.xaxisnamepadding,axisValuePadding:f.labelpadding,
axisNameFont:f.xaxisnamefont,axisNameFontSize:f.xaxisnamefontsize,axisNameFontColor:f.xaxisnamefontcolor,axisNameFontBold:f.xaxisnamefontbold,axisNameFontItalic:f.xaxisnamefontitalic,axisNameBgColor:f.xaxisnamebgcolor,axisNameBorderColor:f.xaxisnamebordercolor,axisNameAlpha:f.xaxisnamealpha,axisNameFontAlpha:f.xaxisnamefontalpha,axisNameBgAlpha:f.xaxisnamebgalpha,axisNameBorderAlpha:f.xaxisnameborderalpha,axisNameBorderPadding:f.xaxisnameborderpadding,axisNameBorderRadius:f.xaxisnameborderradius,
axisNameBorderThickness:f.xaxisnameborderthickness,axisNameBorderDashed:f.xaxisnameborderdashed,axisNameBorderDashLen:f.xaxisnameborderdashlen,axisNameBorderDashGap:f.xaxisnameborderdashgap,useEllipsesWhenOverflow:f.useellipseswhenoverflow,divLineColor:d(f.vdivlinecolor,f.divlinecolor,b.getColor(g.divLineColor)),divLineAlpha:d(f.vdivlinealpha,f.divlinealpha,e?b.getColor("divLineAlpha3D"):b.getColor("divLineAlpha")),divLineThickness:c(f.vdivlinethickness,f.divlinethickness,1),divLineIsDashed:!!c(f.vdivlinedashed,
f.vdivlineisdashed,f.divlinedashed,f.divlineisdashed,0),divLineDashLen:c(f.vdivlinedashlen,f.divlinedashlen,4),divLineDashGap:c(f.vdivlinedashgap,f.divlinedashgap,2),showAlternateGridColor:c(f.showalternatevgridcolor,0),alternateGridColor:d(f.alternatevgridcolor,b.getColor("altVGridColor")),alternateGridAlpha:d(f.alternatevgridalpha,b.getColor("altVGridAlpha")),numDivLines:f.numvdivlines,maxLabelHeight:f.maxlabelheight,labelFont:f.labelfont,labelFontSize:f.labelfontsize,labelFontColor:f.labelfontcolor,
labelFontAlpha:f.labelalpha,labelFontBold:f.labelfontbold,labelFontItalic:f.labelfontitalic,axisName:f.xaxisname,axisMinValue:f.xaxisminvalue,axisMaxValue:f.xaxismaxvalue,setAdaptiveMin:f.setadaptivexmin,adjustDiv:f.adjustvdiv,labelDisplay:f.labeldisplay,showLabels:f.showlabels,rotateLabels:f.rotatelabels,slantLabel:c(f.slantlabels,f.slantlabel),labelStep:c(f.labelstep,f.xaxisvaluesstep),showAxisValues:c(f.showxaxisvalues,f.showxaxisvalue),showLimits:f.showvlimits,showDivLineValues:c(f.showvdivlinevalues,
f.showvdivlinevalues),showZeroPlane:f.showvzeroplane,zeroPlaneColor:f.vzeroplanecolor,zeroPlaneThickness:f.vzeroplanethickness,zeroPlaneAlpha:f.vzeroplanealpha,showZeroPlaneValue:f.showvzeroplanevalue,trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:c(f.showxaxisline,f.showaxislines,f.drawAxisLines,0),axisLineThickness:c(f.xaxislinethickness,f.axislinethickness,
1),axisLineAlpha:c(f.xaxislinealpha,f.axislinealpha,100),axisLineColor:d(f.xaxislinecolor,f.axislinecolor,"#000000")};b={outCanfontFamily:d(f.outcnvbasefont,f.basefont,"Verdana,sans"),outCanfontSize:la(f.outcnvbasefontsize,f.basefontsize,10),outCancolor:d(f.outcnvbasefontcolor,f.basefontcolor,b.getColor(g.baseFontColor)).replace(/^#? ([a-f0-9]+)/ig,"#$1"),axisNamePadding:f.yaxisnamepadding,axisValuePadding:f.yaxisvaluespadding,axisNameFont:f.yaxisnamefont,axisNameFontSize:f.yaxisnamefontsize,axisNameFontColor:f.yaxisnamefontcolor,
axisNameFontBold:f.yaxisnamefontbold,axisNameFontItalic:f.yaxisnamefontitalic,axisNameBgColor:f.yaxisnamebgcolor,axisNameBorderColor:f.yaxisnamebordercolor,axisNameAlpha:f.yaxisnamealpha,axisNameFontAlpha:f.yaxisnamefontalpha,axisNameBgAlpha:f.yaxisnamebgalpha,axisNameBorderAlpha:f.yaxisnameborderalpha,axisNameBorderPadding:f.yaxisnameborderpadding,axisNameBorderRadius:f.yaxisnameborderradius,axisNameBorderThickness:f.yaxisnameborderthickness,axisNameBorderDashed:f.yaxisnameborderdashed,axisNameBorderDashLen:f.yaxisnameborderdashlen,
axisNameBorderDashGap:f.yaxisnameborderdashgap,axisNameWidth:f.yaxisnamewidth,useEllipsesWhenOverflow:f.useellipseswhenoverflow,rotateAxisName:c(f.rotateyaxisname,1),axisName:f.yaxisname,divLineColor:d(f.divlinecolor,b.getColor(g.divLineColor)),divLineAlpha:d(f.divlinealpha,b.getColor("divLineAlpha")),divLineThickness:c(f.divlinethickness,2),divLineIsDashed:!!c(f.divlinedashed,f.divlineisdashed,0),divLineDashLen:c(f.divlinedashlen,4),divLineDashGap:c(f.divlinedashgap,2),showAlternateGridColor:c(f.showalternatehgridcolor,
1),alternateGridColor:d(f.alternatehgridcolor,b.getColor("altHGridColor")),alternateGridAlpha:d(f.alternatehgridalpha,b.getColor("altHGridAlpha")),numDivLines:f.numdivlines,axisMinValue:f.yaxisminvalue,axisMaxValue:f.yaxismaxvalue,setAdaptiveMin:f.setadaptiveymin,adjustDiv:f.adjustdiv,labelStep:f.yaxisvaluesstep,showAxisValues:c(f.showyaxisvalues,f.showyaxisvalue),showLimits:c(f.showyaxislimits,f.showlimits,this.showLimits),showDivLineValues:c(f.showdivlinevalues,f.showdivlinevalue),showZeroPlane:f.showzeroplane,
zeroPlaneColor:f.zeroplanecolor,zeroPlaneThickness:f.zeroplanethickness,zeroPlaneAlpha:f.zeroplanealpha,showZeroPlaneValue:f.showzeroplanevalue,trendlineColor:f.trendlinecolor,trendlineToolText:f.trendlinetooltext,trendlineThickness:f.trendlinethickness,trendlineAlpha:f.trendlinealpha,showTrendlinesOnTop:f.showtrendlinesontop,showAxisLine:c(f.showyaxisline,f.showaxislines,f.drawAxisLines,0),axisLineThickness:c(f.yaxislinethickness,f.axislinethickness,1),axisLineAlpha:c(f.yaxislinealpha,f.axislinealpha,
100),base:f.base,logBase:f.logbase,axisLineColor:d(f.yaxislinecolor,f.axislinecolor,"#000000"),showMinorDivLineValues:c(f.showminordivlinevalues,0),numMinorDivLines:f.numminordivlines};"1"===b.base&&(b.base=10,b.logBase=10);b.minorDivlinecolor=d(f.minordivlinecolor,b.divLineColor);b.minorDivLineThickness=d(f.minordivlinethickness,1);b.minorDivLineAlpha=d(f.minordivlinealpha,b.divLineAlpha/2);e.vtrendlines=h.vtrendlines;b.trendlines=h.trendlines;h=a.yAxis[0];a=a.xAxis[0];h.setCommonConfigArr(b,!0,
l,!1);a.setCommonConfigArr(e,!1,!1,!1);h.configure();a.configure()},_setAxisLimits:function(){var a=this.components,c=a.dataset,d=a.yAxis,a=a.xAxis,b,h=c.length,f,e=-Infinity,g=Infinity,l=Infinity,k=-Infinity,t,p={},m=[],D=function(a){e=Y(e,a.max);g=oa(g,a.min);k=Y(k,a.xMax||-Infinity);l=oa(l,a.xMin||Infinity)};for(f=0;f<h;f++)b=c[f],(t=b.groupManager)?p[b.type]=t:m.push(b);for(t in p)c=p[t].getDataLimits(),D(c);h=m.length;for(f=0;f<h;f++)c=m[f].getDataLimits(),D(c);D(this._getTrendLineMinMax("h"));
-Infinity===e&&(e=1);Infinity===g&&(g=1);d[0].setDataLimit(e,g);if(-Infinity!==k||Infinity!==l)a[0].config.xaxisrange={max:k,min:l},a[0].setDataLimit(k,l)}},ta.mscartesian);ta("guageBase",{standaloneInit:!1,hasCanvas:!1,_createAxes:function(){},_feedAxesRawData:function(){},_setCategories:function(){},_setAxisLimits:function(){},_adjustCanvasPadding:function(){},placeDataLabels:function(){var a=function(a,c){return a.point.value-c.point.value},d=function(a,c){return a.angle-c.angle},b=[e,e,p,p],h=
[-1,1,1,-1],f=[1,1,-1,-1];return function(e,g,l,k){var t=this.config,p=this.components.dataset[0].conf,m=t.canvasLeft,w=t.canvasTop,z=t.canvasWidth,G=m+.5*t.canvasWidth,n=w+.5*t.canvasHeight,B=this.linkedItems.smartLabel,F=p.dataLabelOptions,q=F.style,u=c(fa(parseFloat(q.lineHeight)),12),R=D(F.placeLabelsInside,1===g.length?!0:!1),L=F.skipOverlapLabels,P=F.manageLabelOverflow,aa=F.connectorPadding,v;v=k&&k.metrics||[G,n,2*p.pieMinRadius,p.innerSize||0];var Z=v[1],E=v[0];k=.5*v[2];var S=[[],[],[],
[]],p=l.labelsRadius=k+F.distance,n=G=parseInt(q.fontSize,10),V=n/2,aa=[aa,aa,-aa,-aa];l=l.labelsMaxInQuadrant||(l.labelsMaxInQuadrant=Aa(p/n));var F=F.isSmartLineSlanted,T=v[3]/2,X,C,A,H,Ra,N,J,ca,Ia,sa,wa,M,ma,va,ra,ha;v=Number.POSITIVE_INFINITY;var qa,na;A=[];C=[];B.useEllipsesOnOverflow(t.useEllipsesWhenOverflow);e||B.setStyle(q);if(1==g.length&&!T&&R)A=g[0],(wa=A.dataLabel)&&wa.show(),A.slicedTranslation=[m,w],wa&&(wa.attr({visibility:ka,align:K,transform:["t",E,Z]}),wa.x=E);else if(R)ha=T+(k-
T)/2,Pa(g,function(a){qa=a.config;na=a.graphics;(wa=na.label)&&wa.show();wa&&(sa=qa.angle,Ia=Z+ha*ia(sa),Ra=E+ha*xa(sa),wa.x=Ra,wa._x=Ra,wa.y=Ia,a.sliced&&(ra=a.slicedTranslation,ma=ra[0]-m,va=ra[1]-w,Ra+=ma,Ia+=va),wa.attr({visibility:ka,align:K,transform:["t",Ra,Ia]}))});else{Pa(g,function(a){qa=a.config;na=a.graphics;(wa=na.label)&&wa.show();wa&&(sa=qa.angle%W,0>sa&&(sa=W+sa),M=0<=sa&&sa<ya?1:sa<ja?2:sa<Ma?3:0,S[M].push({point:a,angle:sa}))});for(g=e=4;g--;){if(L&&(t=S[g].length-l,0<t))for(S[g].sort(a),
q=S[g].splice(0,t),t=0,C=q.length;t<C;t+=1)A=q[t].point,A.dataLabel.attr({visibility:r}),A.connector&&A.connector.attr({visibility:r});S[g].sort(d)}g=Y(S[0].length,S[1].length,S[2].length,S[3].length);t=Y(oa(g,l)*n,p+n);C=S[0].concat(S[1]);A=S[2].concat(S[3]);for(g=C.length-1;0<=g;g--)q=C[g].point.config,delete q.clearance,delete q.clearanceShift,T=za(t*ia(q.angle)),Math.abs(v-T)<2*u&&(q.clearance=0,C[g+1].point.clearanceShift=u/2),v=T;v=Number.POSITIVE_INFINITY;g=0;for(C=A.length;g<C;g++)q=A[g].point.config,
delete q.clearance,delete q.clearanceShift,T=za(t*ia(q.angle)),Math.abs(v-T)<2*u&&(q.clearance=0,A[g-1].point.clearanceShift=u/2),v=T;S[1].reverse();for(S[3].reverse();e--;){q=S[e];C=q.length;L||(n=C>l?t/C:G,V=n/2);u=C*n;v=t;for(g=0;g<C;g+=1,u-=n)T=za(t*ia(q[g].angle)),v<T?T=v:T<u&&(T=u),v=(q[g].oriY=T)-n;R=b[e];C=t-(C-1)*n;v=0;for(g=q.length-1;0<=g;--g,C+=n)if(A=q[g].point,sa=q[g].angle,qa=A.config,na=A.graphics,A=qa.sliced,wa=na.label,T=za(t*ia(sa)),T<v?T=v:T>C&&(T=C),v=T+n,u=void 0===qa.clearance?
2*fa(c(parseFloat(qa.style.border),12),12):2*fa(c(parseFloat(qa.style.border),qa.clearance)),J=(T+q[g].oriY)/2,T=E+f[e]*p*xa(da.asin(J/t)),J*=h[e],J+=Z,ca=Z+k*ia(sa),H=E+k*xa(sa),(2>e&&T<H||1<e&&T>H)&&(T=H),Ra=T+aa[e],Ia=J-V-2,N=Ra+aa[e],wa.x=N,wa._x=N,P&&(X=1<e?N-this.canvasLeft:this.canvasLeft+z-N,B.setStyle(qa.style),u=c(fa(parseFloat(qa.style.lineHeight)),12)+u,u=B.getSmartText(qa.labelText,X,u),void 0===qa.clearance&&u.height>n&&(J+=n),wa.attr({text:u.text}).tooltip(u.tooltext)),wa.y=Ia,A&&(ma=
qa.transX,va=qa.transY,Ra+=ma,T+=ma,H+=ma,ca+=va,N+=ma),wa.attr({visibility:ka,"text-anchor":R,vAlign:K,x:N,y:J}),u=na.connector)na.connectorPath=A=["M",H,ca,"L",F?T:H,J,Ra,J],u.attr({path:A,visibility:ka})}}}}()},ta.sscartesian);ta("scatterBase",{standaloneInit:!1,usesXYinCategory:!0,_setCategories:function(){var a=this.jsonData,c=this.components.xAxis,b=d(a.chart.xaxislabelmode,"categories"),a=a.categories&&a.categories[0].category;c[0].setAxisConfig({xAxisLabelMode:"categories"});"auto"!==b&&"mixed"!==
b&&a&&0<a.length?c[0].setCategory(a):"auto"!==b?(c[0].setCategory(a,!1),c[0].setAxisConfig({xAxisLabelMode:"mixed"})):c[0].setAxisConfig({xAxisLabelMode:"auto"})},_setAxisLimits:function(){var a=this.components,c=this.jsonData,b=a.xAxis,h=d(c.chart.xaxislabelmode,"categories"),c=c.categories&&c.categories[0],c=(c&&c.category||[]).slice(),f,e,g,l,k;f=Infinity;g=-Infinity;var t,p;ta("mscartesian")._setAxisLimits.call(this);e=b[0].getLimit();l=e.tickInterval;for(k=0;k<c.length;k+=1)if(t=c[k].x)t<f&&
(f=t),t>g&&(g=t);k=this._getTrendLineMinMax("v");g=Y(g,k.max);f=oa(f,k.min);if(g>e.max||f<e.min)g=Y(g,e.max),f=oa(f,e.min),b[0].setDataLimit(g,f);if("mixed"===h||"auto"===h||!(c&&0<c.length)){g=[];f=a.numberFormatter.xAxis;if("mixed"===h)for(k=0,h=c.length;k<h;k+=1)g[c[k].x||c[k].y||k]=!0;else c=[];t=b[0].getAxisConfig();p=k=e.min;for(h=e.max;k<=h;)g[k]||c.push({label:F+f.call(a.numberFormatter,k),x:k,showverticalline:0===k?t.showZeroPlane:1,isNumeric:!0,linecolor:0===k?t.zeroPlaneColor:t.divLineColor,
linealpha:0===k?t.zeroPlaneAlpha:t.divLineAlpha,linethickness:0===k?t.zeroPlaneThickness:t.divLineThickness,linedashed:t.divLineIsDashed,linedashLen:t.divLineDashLen,linedashgap:t.divLineDashGap}),0>k&&0<k+l?(k=0,p+=l):k<p?k=p:(k+=l,p+=l);b[0].setCategory(c,!1)}},_createQuadrant:function(){var a;a=this.components;var c=Q.register("component",["quadrant","cartesian"]);a.quadrant=a=new c;a.chart=this;a.init()},_drawQuadrant:function(){this.components.quadrant.draw()},_getDiff:function(a,c){return{diff:a,
startIndex:c}}},ta.mscartesian,{zeroplanethickness:1,zeroplanealpha:40,showzeroplaneontop:0,setadaptivexmin:1});ta("areabase",{standaloneInit:!1,enableMouseTracker:!0},ta.mscartesian,{anchorborderthickness:1,anchorimageurl:void 0,anchorimagepadding:1,anchorsides:1,anchoralpha:void 0,anchorbgalpha:O,anchorimagealpha:O,anchorimagescale:100,anchorstartangle:90,anchorshadow:0,anchorbgcolor:void 0,anchorbordercolor:void 0,anchorradius:3,showvalues:1,plotfillalpha:P,linedashlen:5,linedashgap:4,linedashed:void 0,
linealpha:O,linethickness:2,drawfullareaborder:1,connectnulldata:0})}]);Q.register("module",["private","modules.renderer.js-renderer",function(){var b=this.hcLib.Raphael,v=Math.round;b.ca.ishot=function(v){if(this.removed)return!1;var C=this.node;v=v||"";C.ishot=v;switch(this.type){case "group":for(C=this.bottom;C;)C.attr("ishot",v),C=C.next;break;case "text":if(b.svg)for(C=C.getElementsByTagName("tspan")[0];C;)C.ishot=v,C=C.nextSibling}return!1};b.addSymbol({printIcon:function(b,C,H){var A=.75*H,
u=.5*H,a=.33*H,O=v(b-H)+.5,q=v(C-H)+.5,M=v(b+H)+.5;H=v(C+H)+.5;var U=v(b-A)+.5,N=v(C-A)+.5,A=v(b+A)+.5,E=v(C+u)+.5,r=v(b+u)+.5,k=v(C+a)+.5;b=v(b-u)+.5;a=v(C+a+a)+.5;return["M",U,q,"L",A,q,A,N,U,N,"Z","M",O,N,"L",O,E,U,E,U,C,A,C,A,E,M,E,M,N,"Z","M",U,C,"L",U,H,A,H,A,C,"Z","M",r,k,"L",b,k,"M",r,a,"L",b,a]},exportIcon:function(b,C,H){var A=.66*H,u=.5*A,a=v(b-H)+.5,O=v(C-H)+.5,q=v(b+H)+.5;H=v(C+H)-.5;var M=v(b-u)+.5,U=C<H-3?H-3:v(C)+.5,u=v(b+u)-.5,N=v(b+A)-.5,A=v(b-A)+.5;return["M",a,U,"L",a,H,q,H,q,
U,q,H,a,H,"Z","M",b,H-1,"L",A,C,M,C,M,O,u,O,u,C,N,C,"Z"]}})}]);Q.register("module",["private","modules.renderer.js-axis-cartesian",function(){var b=this.hcLib,v=b.parseConfiguration,J=b.BLANKSTRING,C=b.extend2,H=b.pluck,A=b.toPrecision,u=b.pluckNumber,a=b.setLineHeight,O=b.pluckFontSize,q=b.toRaphaelColor,M=b.graphics.convertColor,U=b.parseUnsafeString,N=b.ONESTRING,E=b.getDashStyle,r=b.plotEventHandler,k=b.getValidValue,m=b.getFirstValue,n=b.parseTooltext,L=b.preDefStr,g=L.visibleStr,l=L.hiddenStr,
B=L.POSITION_MIDDLE,e=L.POSITION_START,V=L.POSITION_TOP,p=L.POSITION_BOTTOM,T=L.POSITION_END,K=8===this.window.document.documentMode?g:"",L=Math,t=L.round,Z=L.min,P=L.max,S=L.abs,z=L.ceil,R=L.floor,w=L.pow,F=L.log,X=function(a,d){var b=!1,c=d%2,e;a[1]===a[4]&&(b=a[1],e=t(b),a[1]=a[4]=c?e>b?e-.5:e+.5:e,b=!0);a[2]===a[5]&&(b=a[2],e=t(b),a[2]=a[5]=c?e>b?e-.5:e+.5:e,b=!0);return{path:a,isCrisped:b}};Q.register("component",["axis","cartesian",{pIndex:2,customConfigFn:"_feedAxesRawData",init:function(a,
d,b,c){var e;this.graphics={};this.components={};e=this.config;e.isVertical=d;e.isReverse=b;e.isOpposit=c;e.isActive=!0;e.drawLabels=!0;e.drawOnlyCategoryLine=!1;e.drawLabelsOpposit=!1;e.drawLabelOnBothSide=!1;e.drawPlotlines=!0;e.drawAxisLine=!0;e.drawPlotBands=!0;e.drawAxisName=!0;e.drawAxisNameOpposit=!1;e.axisNameAlignCanvas=!1;e.drawAxisNameFromBottom=!1;e.drawTrendLines=!0;e.drawTrendLabels=!0;e.drawTick=!0;e.drawTickMinor=!0;e.animateAxis=!0;e.drawAxisLineWRTCanvas=!0;e.isRelativeAxisInverse=
!1;e.axisIndex=0;e.uniqueClassName=0;e.viewPortRatio={};e.canvas={};e.rawAttr=a;e.axisRange={};e.isConfigured=!0;e.axisDimention={};e.extremeLabels={firstLabel:{},lastLabel:{}};e._setRangeAgain=!1;e._defaultForceDecimal=void 0;e._defaultDecimalPrecision=void 0},setCommonConfigArr:function(a,d,b,c){var e=this.config;e.rawAttr=a;e.isVertical=d;e.isReverse=b;e.isOpposit=c},configure:function(){var b=this.config,d=b.rawAttr,f=this.chart,c=f.components,e=this.chart.is3D,f=f.jsonData.chart,g=c.numberFormatter;
b.trendLines=d.trendlines;b.vTrendLines=d.vtrendlines;this.__setDefaultConfig();v(d,b);b.axisName=U(d.axisName);b.axisValuePadding=b.axisNamePadding||u(d.axisValuePadding,4);b.axisNamePadding=b.axisNamePadding||u(d.axisNamePadding,5);b.maxLabelWidthPercent=u(d.maxLabelWidthPercent);b.maxLabelWidthPercent=S(b.maxLabelWidthPercent);b.minLabelWidthPercent=S(u(d.minLabelWidthPercent));b.numDivLines=u(d.numDivLines,4);0>b.numDivLines&&(b.numDivLines=0);b.categoryNumDivLines=u(d.numDivLines,0);0>b.axisValuePadding&&
(b.axisValuePadding=0);b.categoryDivLinesFromZero=1;b.axisMinValue=g.getCleanValue(d.axisMinValue);b.axisMaxValue=g.getCleanValue(d.axisMaxValue);b.zeroPlaneColor=H(d.zeroPlaneColor,d.divLineColor);b.zeroPlaneThickness=H(d.zeroPlaneThickness,d.divLineThickness);b.axisLineColor=M(d.axisLineColor,d.axisLineAlpha);b.tickAlpha=u(d.tickAlpha,b.axisLineAlpha);b.tickColor=M(H(d.tickColor,d.axisLineColor),b.tickAlpha);b.tickWidth=u(d.tickWidth,b.axisLineThickness);b.showVLines=u(f.showvlines,1);b.showVLinesOnTop=
u(f.showvlinesontop,0);b.showVLineLabels=u(f.showvlinelabels,this.showVLineLabels,1);b.showVLineLabelBorder=u(f.showvlinelabelborder,1);b.rotateVLineLabels=u(f.rotatevlinelabels,0);b.vLineColor=H(f.vlinecolor,"333333");b.vLineLabelColor=H(f.vlinelabelcolor);b.vLineThickness=H(f.vlinethickness,1);b.vLineAlpha=u(f.vlinealpha,80);b.vLineLabelBgColor=H(f.vlinelabelbgcolor,"ffffff");b.vLineLabelBgAlpha=u(f.vlinelabelbgalpha,e?50:100);b.staggerLines=Math.max(u(f.staggerlines,2),2);1>b.staggerlines&&(b.staggerlines=
1);b.trendlineValuesOnOpp=H(d.trendlineValuesOnOpp,d.trendlineValuesOnOpp,0);b.labelDisplay=H(d.labelDisplay,"auto").toLowerCase();b.labelStep=u(d.labelStep,0);b.labelStep=t(b.labelStep);0>b.labelStep&&(b.labelStep=0);b._oriLabelStep=b.labelStep;b.showLimits=u(d.showLimits,b.showAxisValues);b.showUpperLimit=d.showLimits;b.showDivLineValues=u(d.showDivLineValues,b.showAxisValues);b.showCanvasBorder=c.canvas.config.showCanvasBorder?1:0;b.axisBreak=d.axisBreaks;b.isBreak=!!b.axisBreak;b.isBreak&&this._processAxisBreak();
c=(c=m(d.axisNameBorderColor,""))?M(c,u(d.axisNameBorderAlpha,d.axisNameAlpha,100)):"";b.name=b.name||{};b.name.style={fontFamily:H(d.axisNameFont,d.outCanfontFamily),fontSize:H(d.axisNameFontSize,parseInt(d.outCanfontSize,10))+"px",color:M(H(d.axisNameFontColor,d.outCancolor),u(d.axisNameFontAlpha,d.axisNameAlpha,100)),fontWeight:u(d.axisNameFontBold,1)?"bold":"normal",fontStyle:u(d.axisNameFontItalic)?"italic":"normal",border:c||d.axisNameBgColor?u(d.axisNameBorderThickness,1)+"px solid":void 0,
borderColor:c,borderThickness:u(d.axisNameBorderThickness,1),borderPadding:u(d.axisNameBorderPadding,2),borderRadius:u(d.axisNameBorderRadius,0),backgroundColor:d.axisNameBgColor?M(d.axisNameBgColor,u(d.axisNameBgAlpha,d.axisNameAlpha,100)):"",borderDash:u(d.axisNameBorderDashed,0)?E(u(d.axisNameBorderDashLen,4),u(d.axisNameBorderDashGap,2),u(d.axisNameBorderThickness,1)):"none"};b.name.style.lineHeight=a(b.name.style);c=(c=m(f.trendvaluebordercolor,""))?M(c,u(f.trendvalueborderalpha,f.trendvaluealpha,
100)):"";b.trend=b.trend||{};b.trend.trendStyle={fontFamily:H(f.trendvaluefont,d.outCanfontFamily),color:H(f.trendvaluefontcolor,d.trendlineColor,d.outCancolor,"333333"),fontSize:O(f.trendvaluefontsize,parseInt(d.outCanfontSize,10))+"px",fontWeight:u(f.trendvaluefontbold)?"bold":"normal",fontStyle:u(f.trendvaluefontitalic)?"italic":"normal",border:c||f.trendvaluebgcolor?u(f.trendvalueborderthickness,1)+"px solid":"",borderColor:c,borderThickness:u(f.trendvalueborderthickness,1),borderPadding:u(f.trendvalueborderpadding,
2),borderRadius:u(f.trendvalueborderradius,0),backgroundColor:f.trendvaluebgcolor?M(f.trendvaluebgcolor,u(f.trendvaluebgalpha,f.trendvaluealpha,100)):"",borderDash:u(f.trendvalueborderdashed,0)?E(u(f.trendvalueborderdashlen,4),u(f.trendvalueborderdashgap,2),u(f.trendvalueborderthickness,1)):"none"};b.trend.trendStyle.lineHeight=a(b.trend.trendStyle);b.labels=b.labels||{};b.lines=b.lines||{};b.band=b.band||{};c=(c=m(f.labelbordercolor,""))?M(c,u(f.labelborderalpha,f.labelalpha,100)):"";b.labels.style=
{fontFamily:H(d.labelFont,d.outCanfontFamily),fontSize:u(d.labelFontSize,parseInt(d.outCanfontSize,10))+"px",fontWeight:u(d.labelFontBold)?"bold":"normal",fontStyle:u(d.labelFontItalic)?"italic":"normal",color:M(H(d.labelFontColor,d.outCancolor),u(d.labelFontAlpha,100)),labelLink:f.labellink,border:c||f.labelbgcolor?u(f.labelborderthickness,1)+"px solid":"",borderColor:c,borderThickness:u(f.labelborderthickness,1),borderPadding:u(f.labelborderpadding,2),borderRadius:u(f.labelborderradius,0),backgroundColor:f.labelbgcolor?
M(f.labelbgcolor,u(f.labelbgalpha,f.labelalpha,100)):"",borderDash:u(f.labelborderdashed,0)?E(u(f.labelborderdashlen,4),u(f.labelborderdashgap,2),u(f.labelborderthickness,1)):"none"};b.labels.style.lineHeight=a(b.labels.style);b.numberFormatterFn=H(d.numberFormatterFn);b.axisEndLabelDisplaySpace={left:0,right:0,top:0,bottom:0};b.isConfigured=!0;b._defaultForceDecimal=void 0;b._defaultDecimalPrecision=void 0},_processAxisBreak:function(){var a=this.config,d,b,c,e;a.breakPoints=[];d=a.axisBreak.split("|");
c=0;e=d.length;for(b=0;c<e;c+=1)d[c]=d[c].split(","),isNaN(d[c][0])||isNaN(d[c][1])||(a.breakPoints[b]={start:u(d[c][0]),end:u(d[c][1]),length:u(d[c][2],0)},b+=1);a.breakPoints.sort(function(a,c){return a.start-c.start});a.hasBreakPoints=!0;this._validateBreakPoints()},_validateBreakPoints:function(){var a=this.config,d=a.breakPoints,b=0,c,e=d.length;for(c=0;c<e;c+=1)b+=d[c].end-d[c].start;a.totalBreakAmount=b},_getRelativeBreakValue:function(a){var d=this.config.breakPoints,b,c=d.length,e=0;for(b=
0;b<c;b+=1){if(a>=d[b].start&&a<=d[b].end)return d[b].start-e;if(a<d[b].start)break;e+=d[b].end-d[b].start}return a-e},_getRealBreakValue:function(a){var d=this.config.breakPoints,b,c=d.length;for(b=0;b<c;b+=1)if(a>=d[b].start)a+=d[b].end-d[b].start;else if(a<d[b].start)break;return a},getBreakPoints:function(){var a=this.config;return a.hasBreakPoints?a.breakPoints:!1},setCanvas:function(a){this.config.canvas=a},getAxisBase:function(){var a=this.config,d=a.axisRange.min,b=a.axisRange.max;return 0>
d&&0<b?0:a.isReverse?b:0>=b?b:d},getValue:function(a){var d=this.config,b=d.axisRange,c=d.canvas,e=d.axisDimention||{},g=this.chart.config,l=g.viewPortConfig,k=e.axisLength||c.canvasWidth||g.canvasWidth,e=e.axisLength||c.canvasHeight||g.canvasHeight,c=b.max,b=b.min,g=c-b;d.isVertical?(k=e*l.scaleY/g,a=d.isReverse?b+(l.y*l.scaleY+Number(a))/k:c-(l.y*l.scaleY+Number(a))/k):(k=k*l.scaleX/g,a=d.isReverse?c-(l.x*l.scaleX+Number(a))/k:b+(l.x*l.scaleX+Number(a))/k);return a},_getLabelElement:function(a){var d=
this.components;return this.config.hasCategory?d&&d.categoryLabel&&d.categoryLabel[a]&&d.categoryLabel[a].graphics&&d.categoryLabel[a].graphics.label:this.graphics&&this.graphics.labels&&this.graphics.labels[a]},_getVisibleConfig:function(){var a=this.config,d=a.axisRange,b=a.canvas,c=a.axisDimention||{},e=this.chart.config,g=e.viewPortConfig,l=c.axisLength||b.canvasWidth||e.canvasWidth,b=c.axisLength||b.canvasHeight||e.canvasHeight,c=d.max,d=d.min,e=c-d;a.isVertical?(e/=b,a=g.scaleY,l=c-e*g.y,b=
c-e*(g.y+b/a)):(e/=l,a=g.scaleX,b=d+e*g.x,l=d+e*(g.x+l/a));return{maxValue:l,minValue:b}},_adjustNumberFormatter:function(a){var d=this.config,b=d.axisIndex,c=this.chart.components,e=d._defaultDecimalPrecision,g=d._defaultForceDecimal,l=0,b=d.isVertical||"yAxis"===d.numberFormatterFn?(c.numberFormatter.Y[b]||c.numberFormatter.Y[0]).yAxisLabelConf:c.numberFormatter.paramX;void 0!==e?b.decimalprecision=e:d._defaultDecimalPrecision=b.decimalprecision;void 0!==g?b.forcedecimals=g:d._defaultForceDecimal=
b.forcedecimals;0<parseInt(a)||!(a=a.toString().split(".")[1])||(l=a.match(/^[0]*/)[0].length,l+1>b.decimalprecision&&(b.forcedecimals=1),b.decimalprecision=P(l+1,b.decimalprecision))},_setTickIntervalAfterZoom:function(){var a=this.config,d=this.chart.config.viewPortConfig,f=a.isVertical,c=a.axisRange,e=b.getAxisLimits,g=a.numDivLines,l=a.setAdaptiveMin,k=a.adjustDiv,k=a.rawAttr,t,p,m,w;a.hasCategory||(f=f?d.scaleY:d.scaleX,d=u(k.axisrange?k.axisrange.max:c.max),w=u(k.axisrange?k.axisrange.min:c.min),
p=c.max,m=c.min,l=t=!l,k=u(1===f?a.adjustDiv:0),a=e(d,w,p,m,t,l,g*f,k),c.min=Number(A(a.Min,10)),c.max=Number(A(a.Max,10)),c.tickInterval=Number(A(a.divGap,10)),this._adjustNumberFormatter(c.tickInterval),0===c.tickInterval&&(c.tickInterval=1))},_getAttribAsObj:function(a){var d,b={};for(d in a)a.hasOwnProperty(d)&&"string"===typeof a[d]&&a[d]&&(b[d]=a[d]);return b},_extractAttribToEnd:function(a,d){var b;a._attrib=C({},d);a._attrib=C(a._attrib,this._getAttribAsObj(a));for(b in a)a.hasOwnProperty(b)&&
a[b]&&"object"===typeof a[b]&&"_attrib"!==b&&this._extractAttribToEnd(a[b],a._attrib)},setCategory:function(a,d){var b;function c(a){var c={labelfont:["fontFamily"],labelfontcolor:["fontColor"],labelfontsize:["fontSize",function(a){return a?u(a)+"px":void 0}],labelfontbold:["fontWeight",function(a){return a?"bold":"normal"}],labelfontitalic:["fontStyle",function(a){return a?"italic":"normal"}],labelfontalpha:["fontAlpha"]},d=function(a){return a},b=!1,f,h,e,l={},k,t;for(f in g)"category"===f||f in
a||(h=g[f],a[f]=h);for(f in c){e=c[f];k=e[0];t=e[1]||d;h=a[f];e=a[k.toLowerCase()];if(void 0!==h||void 0!==e)if(void 0!==(h=t(h))||void 0!==(h=t(e)))l[k]=h,b=!0;b&&(a.style=l)}}var e=this.chart.jsonData.categories,g=e&&e[0]||{},e=this.config,l=e.axisRange;b=a&&a.length;var k=e.startPad||0,t=e.endPad||0,p=0,m=void 0!==d?d:!0,w,z,r,n,B,F;e.hasCategory=1;e.categories={};n=e.categories.category=[];B=e.categories.vline=[];z=e.categories.catIdMap={};e.isCategoryAnimate=!1;e.isCategoryVlineAnimate=!1;for(r=
0;r<b;r+=1)(w=a[r])||(w={}),F=Number(w.x),"true"!==w.vline&&!0!==w.vline&&1!==w.vline&&"1"!==w.vline?(w.id&&(z[w.id.toLowerCase()]={catObj:w,index:r}),c(w),F===F&&this.chart.usesXYinCategory&&(w.x=F,e.irregularCatAxis=!0),n.push(w),n[p].label=U(n[p].label),p+=1):(w.startIndex=n.length-1,B.push(w));e.oriCatLen=p-1;1===p&&(0===k&&(k=.5),0===t&&(t=.5));m&&(b=p-1+t,l.min=Number(A(-k,10)),l.max=Number(A(b,10)),l.tickInterval=Number(A(1,10)));e.isConfigured=!0},updateCategory:function(a,d){var b=this.config,
c,e;c=b.categories.category;if(c[a])for(e in d)d.hasOwnProperty(e)&&(c[a][e]=d[e]);b.isConfigured=!0},categoryInsert:function(a,d,b){var c=this.config,e=c.axisRange,g=d.length,l=c.endPad||0,k,t,p,m,w;k=c.categories.category;p=c.categories.catIdMap;t=c.categories.vline;for(m=0;m<g;m+=1)w=d[m],"true"!==w.vline&&!0!==w.vline&&1!==w.vline&&"1"!==w.vline?(w.id&&(p[w.id]={catObj:w,i:a}),k.splice(a,0,w),a+=1):(w.startIndex=a-2,t.push(w));b&&(e.max=Number(A(k.length-1+l,10)));c.isConfigured=!0},categoryDelete:function(a,
d,b){var c=this.config,e=c.axisRange,g,l,k;c.isCategoryAnimate=!0;g=c.animateCategories=c.categories.category.slice();l=0;for(k=g.length;l<k;l++)g[l].animate=!0,g[l].leftShift=d,g[l]["delete"]=l<d;c.isCategoryVlineAnimate=!0;g=c.animateCategoriesVline=c.categories.vline.slice();l=0;for(k=g.length;l<k;l++)g[l].animate=!0,g[l].leftShift=d;c.categories.category.splice(a,d);this._shiftVline(a,d,"left");b&&(e.max-=d);c.isConfigured=!0},categoryUpdate:function(a,d){var b=this.config,c;c=b.categories.category;
c[a]&&(c[a]=d);b.isConfigured=!0},_getRotateTextTransformString:function(a,d,b){var c,e="";a=a.matrix.toMatrixString();a.replace(/\(([^\)]*)/,function(a,h){c=h.split(",");c[4]=Number(c[4])+d;c[5]=Number(c[5])+b;e=c.join();return a});e="m"+e;""===a&&(e="t"+d+","+b);return e},_shiftVline:function(a,d,b){var c=this.config,e=c.categories.vline,c=c.categories.category.length,g=e.length,l,k;for(l=0;l<g;l+=1)if(k=e[l],k.startIndex>=a&&(k.startIndex="right"===b?k.startIndex+d:k.startIndex-d,0>k.startIndex-
d||k.startIndex-d>=c))e.splice(l,1),--g,--l},shiftLabels:function(a,d){var b=this.config.labels;b.shiftX=a;b.shiftY=d},setAxisPadding:function(a,d){var b=this.config;a=b.startPad=u(a,0);d=b.endPad=u(d,0);0===b.oriCatLen&&(0===a&&(a=.5),0===d&&(d=.5));b.hasCategory?0<=b.oriCatLen&&this.setAxisRange({max:b.oriCatLen+d,min:-a}):b.originalMax&&b.originalMin&&this.setDataLimit(b.originalMax,b.originalMin)},setAxisConfig:function(a){var d=this.config,b;for(b in a)a.hasOwnProperty(b)&&(d[b]=a[b])},getAxisConfig:function(a){var d=
this.config;return a?d[a]:d},setLabelConfig:function(a){var d=this.config.labels,b;for(b in a)a.hasOwnProperty(b)&&(d[b]=a[b])},setAxisRange:function(a){var d=this.config.axisRange,b;for(b in a)a.hasOwnProperty(b)&&void 0!==d[b]&&(d[b]=a[b])},getAxisEndLabelDisplaySpace:function(){return this.config.axisEndLabelDisplaySpace||{}},getDivLineCount:function(){var a=this.config.axisRange;return S((a.max-a.min)/a.tickInterval)-1},getLabel:function(a){var d=this.config;a=d.categories&&d.categories.category[a];
var d=[3],b={};a&&a.tooltext&&(b.label=a.label,a.tooltext=n(a.tooltext,d,b));return{label:a&&(a.oriLabel||a.label),tooltext:a&&a.tooltext}},getCategoryFromId:function(a){var d=this.config;return(a=d.categories&&d.categories.catIdMap[a])?a:{}},getCategoryPositionById:function(a){var d=this.config;return(a=d.categories&&d.categories.catIdMap[a])?a.catObj.x||a.index:!1},getClosestDiv:function(a,d){var b=this.config,c=b.axisRange,e=c.tickInterval,g=c.min,c=a;b.hasCategory&&(g=0,e=1);d=d||e/2;g=(a-g)%
e;e-=g;b.showZeroPlaneValue&&0>a-g&&0<a&&(g=a);b.showZeroPlaneValue&&0<a+e&&0>a&&(e=-a);g<=e?g<=d&&(c=a-g):e<=d&&(c=a+e);return c},setAxisDimention:function(a){var d=this.config,d=d.axisDimention||(d.axisDimention={});d.x=u(a.x,d.x);d.y=u(a.y,d.y);d.opposite=u(a.opposite,d.opposite);d.axisLength=u(a.axisLength,d.axisLength)},setDataLimit:function(a,d){var f=this.config,c=f.axisRange,e=b.getAxisLimits,g=f.isPercent?100:f.axisMaxValue,l=f.isPercent?0:f.axisMinValue,k=f.numDivLines,t=f.setAdaptiveMin,
p=f.adjustDiv,m=f.startPad||0,w=f.endPad||0;f.originalMax=a;f.originalMin=d;a=f.isPercent?100:a+w;d=f.isPercent?0:d-m;t=m=!t;f.hasBreakPoints&&(a-=f.totalBreakAmount);f=e(u(a,g),u(d,l),g,l,m,t,k,p);c.min=Number(A(f.Min,10));c.max=Number(A(f.Max,10));c.tickInterval=Number(A(f.divGap,10));this._adjustNumberFormatter(c.tickInterval);0===c.tickInterval&&(c.tickInterval=1)},getPixel:function(a){var d=this.config,b=d.canvas,c=this.chart.config,e=d.axisDimention||{},g=c.viewPortConfig,l=e.axisLength||b.canvasHeight||
c.canvasHeight,k=e.y||b.canvasTop||c.canvasTop,t=e.x||b.canvasLeft||c.canvasLeft,p=e.y+e.axisLength||b.canvasBottom||c.canvasBottom,b=e.x+e.axisLength||b.canvasRight||c.canvasRight,c=d.axisRange.min;d.hasBreakPoints&&(a=this._getRelativeBreakValue(a));g||(g={x:t,y:k,scaleX:1,scaleY:1});d.isVertical?(e=-this.getPVR(),a=d.isReverse?p-((a-c)*e+(l*g.scaleY-g.y*g.scaleY)):k+((a-c)*e+(l*g.scaleY-g.y*g.scaleY))):(e=this.getPVR(),a=d.isReverse?b-((a-c)*e-g.x*g.scaleX):t+((a-c)*e-g.x*g.scaleX));return a},
_getCustomPixel:function(a,b){var f=this.config,c=f.canvas,e=this.chart.config,g=f.axisRange,l=e.viewPortConfig,k=b||c.canvasHeight||e.canvasHeight,t=b||c.canvasWidth||e.canvasWidth,p=c.canvasTop||e.canvasTop,m=c.canvasLeft||e.canvasLeft,w=w||e.canvasBottom,c=c.canvasRight||e.canvasRight,e=g.min,g=g.max-e;f.hasBreakPoints&&(a=this._getRelativeBreakValue(a));l||(l={x:m,y:p,scaleX:1,scaleY:1});f.isVertical?(t=-(k*l.scaleY/g),f=f.isReverse?w-((a-e)*t+(k*l.scaleY-l.y*l.scaleY)):p+((a-e)*t+(k*l.scaleY-
l.y*l.scaleY))):(t=t*l.scaleX/g,f=f.isReverse?c-((a-e)*t-l.x*l.scaleX):m+((a-e)*t-l.x*l.scaleX));return f},getLimit:function(){var a=this.config.axisRange;return{min:a.min,max:a.max,tickInterval:a.tickInterval}},getAxisPosition:function(a){return this.getPixel(a)},getPVR:function(){var a=this.config,b=a.canvas,f=a.isVertical,c=a.axisRange,e=a.axisDimention||{},g=this.chart.config,a=g.viewPortConfig,l=e.axisLength||b.canvasHeight||g.canvasHeight,b=e.axisLength||b.canvasWidth||g.canvasWidth,c=c.max-
c.min,c=0<c?c:1;return f?l*a.scaleY/c:b*a.scaleX/c},_isZoomed:function(){var a=this.chart.config;if(this.config.isVertical){if(a.viewPortConfig&&1===a.viewPortConfig.scaleY)return!1}else if(a.viewPortConfig&&1===a.viewPortConfig.scaleX)return!1;return!0},draw:function(){var a=this.config,b=a.canvas,f=this.chart,c=f.config,e=a.isVertical,g=f.graphics,l=f.components.paper,k=c.viewPortConfig,t=a.viewPortRatio||{},p=b.canvasLeft||c.canvasLeft,m=b.canvasTop||c.canvasTop,w=b.canvasWidth||c.canvasWidth,
z=b.canvasHeight||c.canvasHeight,b=a.axisContainer,c=a.axisLabelContainerTop,r=a.axisPlotLineContainer,n=a.axisPlotLineContainerTop,B=a.vlineLabelContainer,F=a.axisBandContainer,q=a.axisNameContainer,K=a.axisTrendContainerTop,u=a.axisTrendContainerBottom,R=a.axisTrendLabelContainer,L=a.axisAxisLineContainer,P=a.axisAxisLineContainerBottom,v=a.divLineThickness||0,Z=g.axisBottomGroup,E=g.axisTopGroup,T=a.animateAxis,S,V,X,C,A,H,N,J,M,O,U,Q,Ja;M=k.y*k.scaleY;O=k.x*k.scaleX;f=f.get("config","animationObj");
U=f.animObj;Q=f.dummyObj;S=f.transposeAnimDuration;Ja=e?p+","+(m-v)+","+w+","+(z+2*v):p-v+","+m+","+(w+2*v)+","+z;v=g.axisBandGroup=g.axisBandGroup||l.group("dataset-Band-group",Z);V=g.axisPlotLineGroup=g.axisPlotLineGroup||l.group("dataset-Line-group",Z);J=g.axisTrendGroupBottom=g.axisTrendGroupBottom||l.group("dataset-Trend-group-bottom",Z);X=g.axisPlotLineGroupTop=g.axisPlotLineGroupTop||l.group("dataset-Line-group-top",E);A=g.axisNameGroup=g.axisNameGroup||l.group("dataset-Name-group",Z);C=g.axisLineGroup=
g.axisLineGroup||l.group("axis-Line-group",E);N=g.axisTrendGroupTop=g.axisTrendGroupTop||l.group("dataset-Trend-group-top",E);H=g.axisLabelGroup=g.axisLabelGroup||l.group("dataset-Label-group",Z);g=g.axisLabelGroupTop=g.axisLabelGroupTop||l.group("dataset-Label-group",E);b||(a.axisContainer=b=l.group("dataset-axis",H));c||(a.axisLabelContainerTop=c=l.group("dataset-top-label",g));L||(a.axisAxisLineContainer=l.group("axis-line-tick",C));B||(a.vlineLabelContainer=B=l.group("axis-vline-label",C));F?
S&&T?F.animateWith(Q,U,{"clip-rect":p+","+m+","+w+","+z},S,f.animType):F.attr({"clip-rect":p+","+m+","+w+","+z}):(a.axisBandContainer=F=l.group("dataset-axis-bands",v),F.attr({"clip-rect":p+","+m+","+w+","+z}));r?S&&T?r.animateWith(Q,U,{"clip-rect":Ja},S,f.animType):r.attr({"clip-rect":Ja}):(a.axisPlotLineContainer=r=l.group("dataset-axis-lines",V),r.attr({"clip-rect":Ja}));n?S&&T?n.animateWith(Q,U,{"clip-rect":Ja},S,f.animType):n.attr({"clip-rect":Ja}):(a.axisPlotLineContainerTop=n=l.group("dataset-axis-lines-top",
X),n.attr({"clip-rect":Ja}));K?S&&T?K.animateWith(Q,U,{"clip-rect":p+","+m+","+w+","+z},S,f.animType):K.attr({"clip-rect":p+","+m+","+w+","+z}):(a.axisTrendContainerTop=K=l.group("dataset-axis-trend-top",N),K.attr({"clip-rect":p+","+m+","+w+","+z}));u?S&&T?u.animateWith(Q,U,{"clip-rect":p+","+m+","+w+","+z},S,f.animType):u.attr({"clip-rect":p+","+m+","+w+","+z}):(a.axisTrendContainerBottom=u=l.group("dataset-axis-trend-bottom",J),u.attr({"clip-rect":p+","+m+","+w+","+z}));R||(a.axisTrendLabelContainer=
l.group("dataset-axis-trend-label",N));q||(a.axisNameContainer=l.group("dataset-axis-name",A));P||(a.axisAxisLineContainerBottom=l.group("axis-line-tick-bottom",Z));t.scaleX!==k.scaleX||t.scaleY!==k.scaleY?(t.scaleX=k.scaleX,t.scaleY=k.scaleY):e?(a=M-k.y*k.scaleY,B.transform("t0,"+a),b.transform("t0,"+a),c.transform("t0,"+a),r.transform("t0,"+a),n.transform("t0,"+a),F.transform("t0,"+a),K.transform("t0,"+a),u.transform("t0,"+a)):(a=O-k.x*k.scaleX,B.transform("t"+a+",0"),b.transform("t"+a+",0"),c.transform("t"+
a+",0"),r.transform("t"+a+",0"),n.transform("t"+a+",0"),F.transform("t"+a+",0"),K.transform("t"+a+",0"),u.transform("t"+a+",0"));this._drawComponents()},hide:function(){var a=this.config;a.axisContainer&&(a.axisLabelContainerTop.hide(),a.axisContainer.hide(),a.axisPlotLineContainer.hide(),a.axisPlotLineContainerTop.hide(),a.axisBandContainer.hide(),a.axisNameContainer.hide(),a.axisTrendContainerTop.hide(),a.axisTrendContainerBottom.hide(),a.axisTrendLabelContainer.hide(),a.axisAxisLineContainer.hide(),
a.axisAxisLineContainerBottom.hide())},show:function(){var a=this.config;a.axisContainer&&(a.axisLabelContainerTop.show(),a.axisContainer.show(),a.axisPlotLineContainer.show(),a.axisPlotLineContainerTop.show(),a.axisBandContainer.show(),a.axisNameContainer.show(),a.axisTrendContainerTop.show(),a.axisTrendContainerBottom.show(),a.axisTrendLabelContainer.show(),a.axisAxisLineContainer.show(),a.axisAxisLineContainerBottom.show())},_drawComponents:function(){var a=this.config,b=this.chart.is3D,f,c;a.drawAxisName&&
this._drawAxisName();a.drawAxisLine&&this._drawAxisLine();a.drawAxisLine&&a.hasBreakPoints&&this._drawBreakPoints();a.isActive||(f=a.lines.isDraw,c=a.band.isDraw,a.lines.isDraw=0,a.band.isDraw=0);a.hasCategory?(a.drawLabels&&this._drawCategory(),a.drawOnlyCategoryLine&&this._drawCategoryLine()):(a.drawLabels&&this._drawLabel(),a.drawPlotlines&&this._drawPlotLine());a.hasCategory&&"auto"!==a.xAxisLabelMode?(a.drawPlotlines&&this._drawCategoryVline(),a.drawPlotlines&&!b&&this._drawCategoryPlotLine(),
a.drawPlotBands&&!a.hasBreakPoints&&!b&&this._drawCategoryPlotBand(),"mixed"===a.xAxisLabelMode&&a.drawPlotBands&&!a.hasBreakPoints&&!b&&this._drawPlotBand()):a.drawPlotBands&&!a.hasBreakPoints&&!b&&this._drawPlotBand();a.isActive||(a.lines.isDraw=f,a.band.isDraw=c);a.drawTrendLines&&this._drawTrendLine();a.isConfigured=!1},_manageReuseableElement:function(a,b,f){var c=this.config.isConfigured,e=this.chart.components.paper,g,l,k,t;g=a._graphicElem||(a._graphicElem=[]);l=a._freeElem||(a._freeElem=
[]);k=a._usedElem||(a._usedElem={});t=a._drawnIds={};return{getElement:function(a,h){var p=h||{};t[a]=!0;if(k[a])return k[a]._applyAllAttr=c,k[a]._firstTimeDraw=!1,k[a];if(0<l.length)return k[a]=l.pop(),k[a]._applyAllAttr=!0,k[a]._firstTimeDraw=!1,k[a];g.push(e[b](p,f));k[a]=g[g.length-1];k[a]._firstTimeDraw=!0;k[a]._applyAllAttr=!1;return k[a]},freeUnusedElement:function(){for(var a in k)k.hasOwnProperty(a)&&!t[a]&&(k[a].attr({visibility:"hidden"}),l.push(k[a]),delete k[a])}}},_drawLabel:function(){var a=
this.config,b=a.canvas,f=a.axisDimention||{},c=this.chart,g=c.config,l=c.components,k=a.axisRange,t=a.isOpposit,m,w=a.labels,r=w.style,n,B,F=a.isVertical,q=a.animateAxis,K=k.max,u=k.min,L=b.canvasTop||g.canvasTop,P=b.canvasLeft||g.canvasLeft,v=b.canvasBottom||g.canvasBottom,b=b.canvasRight||g.canvasRight,g=a.axisNameContainer,Z=a.labelPadding,E=a.showUpperLimit,X=l.paper,C=a.labelMaxH,H=a.labelMaxW,N=a.extremeLabels,J=F?f.x:f.y,f=f.opposite,M=a.drawLabelOnBothSide,O=this.graphics.labels||[],U=0,W=
!0,Q=!1,ea,ga,la,Ca={fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontStyle:r.fontStyle,lineHeight:r.lineHeight},Ha,pa,La,Ja,Fa,ta=function(){(E||!E&&1>=a.labels.step)&&!Q&&n<K&&n+m>K&&(B=n=K-m,Q=!0);a.showZeroPlane&&0>n&&0<n+m?(n=0,B+=m):n<B?n=B:(n+=m,B+=m)};r.lineHeight&&(ea=r.lineHeight,-1!==ea.indexOf("px")&&(ea=ea.replace("px",""),ea=parseFloat(ea)));if(a.labels.isDraw){!M&&a.drawLabelsOpposit&&(t=!t,J=f);W=c.get("config","animationObj");La=W.animObj;Ja=W.dummyObj;c=W.transposeAnimDuration;
Fa=W.animType;W=S(this.getPixel(u)-this.getPixel(u+k.tickInterval));F?(a.labelMaxH>W&&!a.hasCategory&&(ga=z(a.labelMaxH/W)),ga>a.labels.step&&(a.labels.step=ga)):(a.labelMaxW>W&&!a.hasCategory&&(ga=z(a.labelMaxW/W)),ga>a.labels.step&&(a.labels.step=ga,E=!0));a.labels.step?m=k.tickInterval*a.labels.step:m=k.tickInterval;la=a.labels.rotation;k=this._getVisibleConfig();W=this._isZoomed();U=u+m*R((k.minValue-3*m-u)/m);ga=u+m*R((k.maxValue+3*m-u)/m);U=U<u?u:U;ga=ga>K?K:ga;Ha={fill:r.color,"line-height":ea,
"font-size":r.fontSize};M&&(pa={fill:r.color,"line-height":ea,"font-size":r.fontSize});F||(la?(Ha["text-anchor"]=t?e:T,Ha["vertical-align"]="center",M&&(pa["text-anchor"]=t?T:e,pa["vertical-align"]="center")):(Ha["vertical-align"]=t?p:V,M&&(pa["vertical-align"]=t?V:p)));g.css(Ca);N.firstLabel={};N.lastLabel={};B=n=U;for(U=0;n<=ga;){if(!W||!(n<k.minValue||n>k.maxValue))if(a.labels.drawNormalVal||a.labels.drawLimitVal&&(n===u||n===K))if(a.labels.drawNormalVal||n===u||n===K)if(a.labels.drawLimitVal||
n!==u&&n!==K)if(0!==a.showZeroPlane&&0!==a.showZeroPlaneValue||0!==n){if(1===a.showZeroPlane&&1===a.showZeroPlaneValue&&(0>n&&0<n+m||0<n&&0>n-m)&&n!==u&&n!==K)if(F){if(this.getPixel(n)+C>=this.getPixel(0)&&this.getPixel(0)>=this.getPixel(n)-C){ta();continue}}else if(this.getPixel(n)+H>=this.getPixel(0)&&this.getPixel(0)>=this.getPixel(n)-H){ta();continue}r=a.hasBreakPoints?A(this._getRealBreakValue(n),10):A(n,10);if(F)ea=a.numberFormatterFn?l.numberFormatter[a.numberFormatterFn]:a.isPercent?l.numberFormatter.percentValue:
l.numberFormatter.yAxis,ea=""+ea.call(l.numberFormatter,r,a.axisIndex),Ha["text-anchor"]=t?e:T,Ha.text=ea,Ha.x=t?(J||b)+Z:(J||P)-Z,Ha.y=this.getPixel(r),M&&(pa["text-anchor"]=t?T:e,pa.text=ea,pa.x=t?(f||P)-Z:(f||b)+Z,pa.y=this.getPixel(r));else{ea=a.numberFormatterFn?l.numberFormatter[a.numberFormatterFn]:a.isPercent?l.numberFormatter.percentValue:l.numberFormatter.xAxis;ea=""+ea.call(l.numberFormatter,r);Ha.text=ea;Ha.x=this.getPixel(r);Ha.y=t?(J||L)-Z:(J||v)+Z;if(n!==K&&E&&Ha.x+a.labelMaxW>b){ta();
continue}M&&(pa.text=ea,pa.x=this.getPixel(r),pa.y=t?(f||v)+Z:(f||L)-Z)}w.shiftX&&(Ha.x+=w.shiftX);w.shiftY&&(Ha.y+=w.shiftY);Ha.transform=X.getSuggestiveRotation(la,Ha.x,Ha.y);O[U]?(r=O[U],c&&q?r.animateWith(Ja,La,Ha,c,Fa):r.attr(Ha)):O[U]=r=X.text(Ha,g);U+=1;M&&(pa.transform=X.getSuggestiveRotation(la,pa.x,pa.y),O[U]?(r=O[U],c&&q?r.animateWith(Ja,La,pa,c,Fa):r.attr(pa)):O[U]=r=X.text(pa,g),U+=1);n===K?N.lastLabel.graphic=r:n===u&&(N.firstLabel.graphic=r)}ta()}if(O[U])for(n=U;n<O.length;n++)O[n].attr({text:""});
this.graphics.labels=O}else if(O[U])for(n=U;n<O.length;n++)O[n].attr({text:""})},_drawAxisName:function(){var a=this.config,b=a.canvas,f=this.chart,c=f.config,e=f.components,k=a.axisDimention||{},t=a.name.style,p=a.name.value,m=a.isVertical,w=a.isOpposit,z=f.linkedItems.smartLabel,r=b.canvasBottom||c.canvasBottom,n=b.canvasLeft||c.canvasLeft,B=b.canvasRight||c.canvasRight,F=b.canvasTop||c.canvasTop,K=b.canvasHeight||c.canvasHeight,q=b.canvasWidth||c.canvasWidth,b=a.axisNameContainer,R=a.axisNamePadding,
L=a.nameMaxH,v=a.nameMaxW,Z=m?k.x:k.y,E=k.opposite,S=this.graphics.axisName||{},k=u(a.name.rotation,m?270:90),e=e.paper,T={fontFamily:t.fontFamily,fontSize:t.fontSize,lineHeight:t.lineHeight,fontWeight:t.fontWeight,fontStyle:t.fontStyle},V=a.animateAxis,X,C,A,H;a.name.isDraw?(X=f.get("config","animationObj"),C=X.animObj,A=X.dummyObj,f=X.transposeAnimDuration,H=X.animType,X={fontFamily:t.fontFamily,fill:t.color,"vertical-align":"center","font-size":t.fontSize,"line-height":t.lineHeight},z.useEllipsesOnOverflow(c.useEllipsesWhenOverflow),
z.setStyle({fontSize:t.fontSize,fontFamily:t.fontFamily,lineHeight:t.lineHeight,fontWeight:t.fontWeight}),!a.drawLabelOnBothSide&&a.drawAxisNameOpposit&&(w=!w,Z=E),m?(a.relativeAxis&&a.relativeAxis.config&&a.relativeAxis.config.axisNamePadding&&(R=P(a.relativeAxis.config.axisNamePadding,R)),w&&c.canvasMarginRight&&(R=P(R,c.canvasMarginRight-c.marginLeft-v)),!w&&c.canvasMarginLeft&&(R=P(R,c.canvasMarginLeft-c.marginRight-v)),q=a.axisNameAlignCanvas||c.captionalignment&&"left"==c.captionalignment?K:
P(K,a.oriCanvasHeight||0),k?(p=z.getSmartText(p,q,v),z=p.tooltext,q=p.width):(p=z.getSmartText(p,v,q),z=p.tooltext,q=p.height),c=a.drawAxisNameFromBottom?r-q/2:q>K?c.height/2:F+K/2,X.text=p.text,X.x=w?(Z||B)+R+v/2:(Z||n)-R-v/2,X.y=c):(p=z.getSmartText(p,q,L),z=p.tooltext,w&&c.canvasMarginTop&&(R=P(R,c.canvasMarginTop-c.marginTop-L)),!w&&c.canvasMarginBottom&&(R=P(R,c.canvasMarginBottom-c.marginBottom-L)),X.text=p.text,X.x=n+q/2,X.y=w?(Z||F)-R-L/2:(Z||r)+R+L/2),X.transform=e.getSuggestiveRotation(m?
k:0,X.x,X.y),this.graphics.axisName?(X.visibility=g,f&&V?S.animateWith(A,C,X,f,H):S.attr(X),a.showTooltip&&z&&S.trackTooltip(!0),S.css(T)):(S=e.text(X,T,b).tooltip(z),a.showTooltip&&z&&S.trackTooltip(!0)),""!==p.text?S.attr({"text-bound":[t.backgroundColor,t.borderColor,t.borderThickness,t.borderPadding,t.borderRadius,t.borderDash]}):S.attr({"text-bound":[]}),this.graphics.axisName=S):this.graphics.axisName&&this.graphics.axisName.attr({visibility:l})},_drawPlotLine:function(){var a=this.config,b=
a.axisRange,f=b.tickInterval,c=a.isVertical,e=a.canvas,g=this.chart,l=this.chart.is3D,k=g.config,t=e.canvasBottom||k.canvasBottom,p=e.canvasLeft||k.canvasLeft,m=e.canvasRight||k.canvasRight,e=e.canvasTop||k.canvasTop,k=b.max,b=b.min,w=a.axisPlotLineContainer,z=a.axisPlotLineContainerTop,r=a.showCanvasBorder,n=g.components.paper,B=this.graphics.line||[],F=0,q=M(a.divLineColor,a.divLineAlpha),K=a.divLineThickness,u=a.divLineIsDashed?E(a.divLineDashLen,a.divLineDashGap,K):"none",L=M(a.zeroPlaneColor,
a.zeroPlaneAlpha),P=a.zeroPlaneThickness,v=a.animateAxis,Z,T,V,C,A,H,N,J,u={stroke:q,"stroke-width":K,"stroke-dasharray":u};2>S(this.getPixel(b)-this.getPixel(b+f))&&(a.lines.isDraw=0);if(a.lines.isDraw){F=g.get("config","animationObj");H=F.animObj;N=F.dummyObj;g=F.transposeAnimDuration;J=F.animType;T=this._getVisibleConfig();F=b+f*R((T.minValue-3*f-b)/f);T=b+f*R((T.maxValue+3*f-b)/f);F=F<b?b:F;T=T>k?k:T;A=w;C=V=F;for(F=0;V<=T;)0===a.showZeroPlane&&0===V||r&&(V===k||V===b)||(0===V&&V!==b&&V!==k&&
(u.stroke=L,u["stroke-width"]=P,a.showZeroPlaneOnTop&&!l&&(A=z)),Z=a.hasBreakPoints?this._getRealBreakValue(V):V,Z=c?X(["M",p,this.getPixel(Z),"L",m,this.getPixel(Z)],K):X(["M",this.getPixel(Z),e,"L",this.getPixel(Z),t],K),u.path=Z.path,u["shape-rendering"]=Z.isCrisped?"crisp":void 0,B[F]?(Z=B[F],A.appendChild(Z),g&&v?Z.animateWith(N,H,u,g,J):Z.attr(u)):(Z=n.path(u,A),B[F]=Z),0===V&&V!==b&&V!==k&&(u.stroke=q,u["stroke-width"]=K,A=w),F+=1),a.showZeroPlane&&0>V&&0<V+f?(V=0,C+=f):V<C?V=C:(V+=f,C+=f);
if(B[F])for(V=F;V<B.length;V++)B[V].attr({path:[]});this.graphics.line=B}else if(B[F])for(V=F;V<B.length;V++)B[V].attr({path:[]})},_drawAxisLine:function(){var a=this.config,b=a.axisRange,f=a.isVertical,c=a.isOpposit,e=a.canvas,g=this.chart,l=g.config,k=a.breakPoints,t=e.canvasBottom||l.canvasBottom,p=e.canvasLeft||l.canvasLeft,m=e.canvasRight||l.canvasRight,w=e.canvasTop||l.canvasTop,e=a.axisDimention||{},z=f?e.x:e.y,r=a.drawAxisLineWRTCanvas,n=g.jsonData.chart,e=g.components.paper,l=this.graphics.axisLine||
[],B=!1,F=0,K=b.max,q=b.min,b=b.tickInterval,L=a.axisAxisLineContainerBottom,P={},v=a.animateAxis,Z,S,T,P=1===u(n.showyaxisline,n.showyaxisline)?u(n.yaxislinethickness,n.pyaxislinethickness,1):0;if(a.showAxisLine){Z=g.get("config","animationObj");n=Z.animObj;T=Z.dummyObj;g=Z.transposeAnimDuration;Z=Z.animType;if(f)if(c?z=(r?m:z||m)+a.axisLineThickness/2:(z=r?p:z||p,z-=a.axisLineThickness/2),a.hasBreakPoints){P=["M",z,t,"L"];t=0;for(r=k.length;t<r;t+=1)p=this.getPixel(k[t].start),P.push(z,p,"M",z,
p-4,"L");P.push(z,w)}else S=X(["M",z,t,"L",z,w],a.axisLineThickness),P=S.path;else if(c?(z=r?w:z||w,z-=a.axisLineThickness/2):(z=r?t:z||t,z+=a.axisLineThickness/2),a.hasBreakPoints){P=["M",p-P,z,"L"];t=0;for(r=k.length;t<r;t+=1)p=this.getPixel(k[t].start),P.push(p,z,"M",p-4,z,"L");P.push(m,z)}else S=X(["M",p-P,z,"L",m,z],a.axisLineThickness),P=S.path;l[F]?(k=l[F],g&&v?k.animateWith(T,n,{path:P,stroke:a.axisLineColor,"stroke-linecap":"butt","stroke-width":a.axisLineThickness,"shape-rendering":S.isCrisped?
"crisp":void 0},g,Z):k.attr({path:P,"stroke-linecap":"butt",stroke:a.axisLineColor,"stroke-width":a.axisLineThickness,"shape-rendering":S.isCrisped?"crisp":void 0})):(k=e.path({path:P,"stroke-linecap":"butt",stroke:a.axisLineColor,"stroke-width":a.axisLineThickness},L),l[F]=k);F+=1;if(a.drawTick&&a.tickLength)for(P={stroke:a.tickColor,"stroke-width":a.tickWidth},c=f?c?z+a.tickLength:z-a.tickLength:c?z-a.tickLength:z+a.tickLength,S=this._getVisibleConfig(),F=q+b*R((S.minValue-3*b-q)/b),S=q+b*R((S.maxValue+
3*b-q)/b),S=S>K?K:S,t=F<q?q:F,F=1;t<=S;t+=b)q=a.hasBreakPoints?this._getRealBreakValue(t):t,q=this.getPixel(q),P.path=f?"M"+z+" "+q+"L"+c+" "+q:"M"+q+" "+z+"L"+q+" "+c,l[F]?(q=l[F],g&&v?q.animateWith(T,n,P,g,Z):q.attr(P)):(q=e.path(P,L),l[F]=q),!B&&t<K&&t+b>K&&(t=K-b,B=!0),F+=1}if(l[F])for(t=F;t<l.length;t++)l[t].attr({path:[]});this.graphics.axisLine=l},_drawBreakPoints:function(){var a=this.config,b=a.isVertical,e=this.chart,c=e.config,g=a.breakPoints,c=a.canvas.canvasLeft||c.canvasLeft,l=e.components.paper,
k=this.graphics.brokeLine||[],t=e.graphics,p=a.animateAxis,m,w,z,r,n,B,F,q;if(a.showAxisLine)for(m=e.get("config","animationObj"),B=m.animObj,F=m.dummyObj,e=m.transposeAnimDuration,q=m.animType,m=0,r=g.length;m<r;m+=1)b?(w=c-a.axisLineThickness/2,z=this.getPixel(g[m].start),z=["M",w-4,z+4/3,"L",w+4,z-4/3,"M",w-4,z-8/3,"L",w+4,z-16/3]):z=["M",0,0],k[m]?(w=k[m],e&&p?w.animateWith(F,B,{path:z,stroke:a.axisLineColor,"stroke-width":a.axisLineThickness},e,q):w.attr({path:z,stroke:a.axisLineColor,"stroke-width":a.axisLineThickness})):
(w=l.path({path:z,stroke:a.axisLineColor,"stroke-width":a.axisLineThickness},t.axisLineGroup),k[m]=w),n+=1;if(k[n])for(m=n;m<k.length;m++)k[m].attr({path:[]});this.graphics.brokeLine=k},_drawPlotBand:function(){var a=this.config,b=a.axisRange,e=a.canvas,c=this.chart,g=c.config,l=e.canvasLeft||g.canvasLeft,k=e.canvasTop||g.canvasTop,p=e.canvasHeight||g.canvasHeight,e=e.canvasWidth||g.canvasWidth,g=b.tickInterval,m=a.isVertical,w=a.isReverse,z=b.max,r=b.min,b=a.axisBandContainer,n=c.components.paper,
B=this.graphics.band||[],F=0,K=a.showAlternateGridColor,u=a.alternateGridColor,L=a.alternateGridAlpha,P=a.animateAxis,v,Z,T,V,E;2>S(this.getPixel(r)-this.getPixel(r+g))&&(a.band.isDraw=0);if(K&&a.band.isDraw){F=c.get("config","animationObj");K=F.animObj;V=F.dummyObj;c=F.transposeAnimDuration;E=F.animType;v=this._getVisibleConfig();F=r+g*R((v.minValue-3*g-r)/g);v=r+g*R((v.maxValue+3*g-r)/g);F=F<r?r:F;v=v>z?z:v;z=t((F-r)/g)+1;u={fill:q(M(u,L)),"stroke-width":0};r=this.getPVR();Z=L=F;for(F=0;L<v;z+=
1)0===z%2&&(T=a.showZeroPlane&&0>L&&0<L+g?L:L!==Z?Z-L:g,m?(u.x=l,u.y=this.getPixel(w?L:L+S(T)),u.width=e,u.height=S(T*r)):(u.x=this.getPixel(L),u.y=k,u.width=S(T*r),u.height=p),B[F]?(T=B[F],c&&P?T.animateWith(V,K,u,c,E):T.attr(u)):(T=n.rect(u,b),B[F]=T),F+=1),a.showZeroPlane&&0>L&&0<L+g?(L=0,Z+=g):L<Z?L=Z:(L+=g,Z+=g);if(B[F])for(L=F;L<B.length;L++)B[L].attr({x:0,y:0,width:0,height:0,fill:null,"stroke-width":0});this.graphics.band=B}else if(B[F])for(L=F;L<B.length;L++)B[L].attr({x:0,y:0,width:0,height:0,
fill:null,"stroke-width":0})},_drawTrendLine:function(){var a=this.config,b=a.canvas,f=this.chart,c=f.config,g=f.components,l=a.isOpposit,t=a.isVertical,p=f.is3D,m=a.axisIndex,w=g.numberFormatter,z=b.canvasBottom||c.canvasBottom,r=b.canvasLeft||c.canvasLeft,B=b.canvasRight||c.canvasRight,F=b.canvasTop||c.canvasTop,q=b.canvasHeight||c.canvasHeight,b=b.canvasWidth||c.canvasWidth,K=a.axisRange,c=K.max,K=K.min,R,L,v=a.trend.trendStyle,S=a.labelPadding,C=a.axisTrendContainerTop,A=a.axisTrendContainerBottom,
J=a.axisTrendLabelContainer,O=g.paper,Aa=this.components.trendObj||[],ua={fontFamily:v.fontFamily,fontSize:v.fontSize,lineHeight:v.lineHeight,fontWeight:v.fontWeight,fontStyle:v.fontStyle},ia=a.vTrendLines,xa=a.trendLines,ja=!0,ya=a.drawTrendLabels,W=a.axisDimention||{},Q=a.animateAxis,ea,ga,la,Ca,Ha,pa,La=0,Ja,Fa,ta,Ka,Ea,Da,Ga,Na,Ua,Pa,Sa;Ea=this._getVisibleConfig();a.hasBreakPoints&&(Ea.minValue=this._getRealBreakValue(Ea.minValue),Ea.maxValue=this._getRealBreakValue(Ea.maxValue));(ja=this._isZoomed())?
(R=P(this.getPixel(Ea.minValue),this.getPixel(Ea.maxValue)),L=Z(this.getPixel(Ea.minValue),this.getPixel(Ea.maxValue))):(Ea.minValue=K,Ea.maxValue=c);ia?Ua=l?(W.opposite||z)-(a.trendBottomPadding||0):(W.y||z)+(a.trendBottomPadding||0):(Ua=l?(W.opposite||r)+(S||0):(W.x||r)-(S||0),Pa=l?(W.x||B)+(S||0):(W.opposite||B)+(S||0));t?g.trendlines=[]:g.vTrendlines=[];if(l=xa||ia){ea=f.get("config","animationObj");S=ea.animObj;W=ea.dummyObj;f=ea.transposeAnimDuration;Sa=ea.animType;la=0;for(Ca=l.length;la<Ca;la+=
1)for(ea=0,ga=l[la].line&&l[la].line.length;ea<ga;ea+=1)Da=l[la].line[ea],Ja=t?"yAxis":"xAxis",Fa=w.getCleanValue(H(Da.startvalue,Da.value,0)),pa=Number(Da.endvalue)||void 0,Ha=k(U(H(Da.tooltext,l[0].tooltext,a.trendlineToolText))),Ha=n(Ha,[7,15,16,17,18,19],{startValue:Fa,startDataValue:w[Ja](Fa,m),endValue:pa||Fa,endDataValue:w[Ja](pa||Fa,m),axisName:a.axisName},Da),Fa>c||Fa<K||pa>c||pa<K||!(ia&&Fa>=Ea.minValue&&Fa<=Ea.maxValue||pa&&pa>=Ea.minValue&&pa<=Ea.maxValue||pa&&Fa<=Ea.minValue&&pa>=Ea.maxValue||
xa&&Fa>Ea.minValue&&Fa<=Ea.maxValue||pa&&pa>=Ea.minValue&&pa<=Ea.maxValue||pa&&Fa>=Ea.minValue&&pa<=Ea.maxValue)||(ia?(Ka=U(Da.displayvalue||""),Ga=this.getPixel(a.hasBreakPoints?this._getRelativeBreakValue(Fa):Fa),ta=u(Da.istrendzone,a.isTrendZone,1),Na=pa?this.getPixel(a.hasBreakPoints?this._getRelativeBreakValue(pa):pa):0,void 0!==pa&&""!==pa&&pa!==Fa&&ta?(ta={fill:M(H(Da.color,a.trendlineColor),H(Da.alpha,a.trendlineAlpha,40)),"stroke-width":0,path:["M",Ga,F,"L",Ga,z,"L",Na,z,"L",Na,F,"Z"]},g.vTrendlines.push({isTrendZone:!0,
x1:Ga<Na?Ga:Na,y1:F,x2:Ga>Na?Ga:Na,y2:z,tooltext:Ha}),Ka={fill:M(H(Da.color,v.color),H(Da.alpha,a.trendlineAlpha,99)),"vertical-align":V,text:Ka,x:Ga+(Na-Ga)/2,y:Ua}):(ta=u(Da.thickness,a.trendlineThickness,1),ta=ta>b?1:ta,Fa=pa?X(["M",Ga,F,"L",Na,z],ta):X(["M",Ga,F,"L",Ga,z],ta),g.vTrendlines.push({isTrendZone:!1,x1:Ga,y1:F,x2:pa?Na:Ga,y2:z,tolerance:5>ta?2.5:ta/2,tooltext:Ha}),ta={stroke:M(H(Da.color,a.trendlineColor),H(Da.alpha,a.trendlineAlpha,99)),"stroke-width":ta,"stroke-dasharray":H(Da.dashed,
a.trendlinesAreDashed)===N?E(u(Da.dashlen,a.trendlinesDashLen),u(Da.dashgap,a.trendlinesDashGap),ta):"none","shape-rendering":Fa.isCrisped?"crisp":void 0,path:Fa.path},Ka={fill:M(H(Da.color,v.color),H(Da.alpha,a.trendlineAlpha,99)),"vertical-align":V,text:Ka,x:pa?Na:Ga,y:Ua}),ja&&(!ya||Ka.x>R||Ka.x<L)&&(Ka.text="")):xa&&(Ka=U(Da.displayvalue||""),Ja=u(Da.valueonright,0),ta=u(Da.istrendzone,a.isTrendZone,0),Ga=this.getPixel(Fa),Na=pa?this.getPixel(pa):0,void 0!==pa&&""!==pa&&pa!==Fa&&ta?(ta={fill:M(H(Da.color,
a.trendlineColor),H(Da.alpha,a.trendlineAlpha,40)),"stroke-width":0,path:["M",r,Ga,"L",B,Ga,"L",B,Na,"L",r,Na,"Z"]},g.trendlines.push({isTrendZone:!0,x1:r,y1:Ga<Na?Ga:Na,x2:B,y2:Ga>Na?Ga:Na,tooltext:Ha,showontop:u(Da.showontop)}),Ka={"text-anchor":Ja?e:T,fill:M(H(Da.color,v.color),H(Da.alpha,a.trendlineAlpha,99)),text:Ka,x:Ja?Pa:Ua,y:Ga+(Na-Ga)/2}):(ta=u(Da.thickness,a.trendlineThickness,1),ta=ta>q?1:ta,Fa=pa?X(["M",r,Ga,"L",B,Na],ta):X(["M",r,Ga,"L",B,Ga],ta),g.trendlines.push({isTrendZone:!1,x1:r,
y1:Ga,x2:B,y2:pa?Na:Ga,tolerance:5>ta?2.5:ta/2,tooltext:Ha,showontop:u(Da.showontop)}),ta={stroke:M(H(Da.color,a.trendlineColor),H(Da.alpha,a.trendlineAlpha,99)),"stroke-width":ta,"stroke-dasharray":H(Da.dashed,a.trendlinesAreDashed)===N?E(u(Da.dashlen,a.trendlinesDashLen),u(Da.dashgap,a.trendlinesDashGap),ta):"none","shape-rendering":Fa.isCrisped?"crisp":void 0,path:Fa.path},Ka={"text-anchor":Ja?e:T,fill:M(H(Da.color,v.color),H(Da.alpha,a.trendlineAlpha,99)),text:Ka,x:Ja?Pa:Ua,y:pa?Ja?Na:Ga:Ga}),
ja&&(!ya||Ka.y>R||Ka.y<L)&&(Ka.text="")),pa=u(Da.showontop),pa=p||1!==pa&&1!==a.showTrendlinesOnTop?A:C,Aa[La]?(Ja=Aa[La].graphics.drawing,Fa=Aa[La].graphics.label,pa.appendChild(Ja),Aa[La].graphics.config.text=Ka.text,f&&Q?(Ja.animateWith(W,S,ta,f,Sa),Fa.animateWith(W,S,Ka,f,Sa)):(Ja.attr(ta),Fa.attr(Ka)),Fa.css(ua),Fa.tooltip(Da.valueToolText)):(Ja=O.path(ta,pa),Fa=O.text(Ka,ua,J),Fa.tooltip(Da.valueToolText),Aa[La]={},Aa[La].graphics={},Aa[La].graphics.drawing=Ja,Aa[La].graphics.label=Fa,Aa[La].graphics.config=
{text:Ka.text}),a.showTooltip&&Da.valueToolText?Fa.trackTooltip(!0):Fa.trackTooltip(!1),a.showTooltip&&Ha?Ja.tooltip(Ha).trackTooltip(!0):Ja.trackTooltip(!1),La+=1);if(Aa[La])for(ea=La;ea<Aa.length;ea++)Aa[ea].graphics.drawing.attr({path:["M",0,0]}),Aa[ea].graphics.label.attr({text:"","text-bound":[]});this.components.trendObj=Aa;for(ea=0;ea<La;ea++)Aa[ea].graphics.label.attr({"text-bound":Aa[ea].graphics.config.text?[v.backgroundColor,v.borderColor,v.borderThickness,v.borderPadding,v.borderRadius,
v.borderDash]:[]})}if(Aa[La])for(ea=La;ea<Aa.length;ea++)Aa[ea].graphics.drawing.attr({path:["M",0,0]}),Aa[ea].graphics.label.attr({text:"","text-bound":[]})},_drawCategory:function(){var b,d,f,c,g,l,k=this.config,t=k.axisDimention||{},m=k.canvas,w=this.chart,n=w.config,F=w.linkedItems.smartLabel,q,R,L=n.realtimeEnabled,P=k.isOpposit,v=k.labels,Z=v.style,X=k.isVertical,C=m.canvasBottom||n.canvasBottom,A=m.canvasLeft||n.canvasLeft,N=m.canvasRight||n.canvasRight,m=m.canvasTop||n.canvasTop,J=k.axisContainer,
O=k.labelPadding,U=w.components.paper,ua=X?t.x:t.y,t=t.opposite,ia=k.drawLabelOnBothSide,xa=this.components.categoryLabel||(this.components.categoryLabel=[]),ja=w.jsonData.categories,ya,W,Q,ea=function(a){return function(c){r.call(this,w,c,a)}},ga=0;q=0;var la=k.animateAxis,Ca,n=n.scrollEnabled,Ha,pa,La,Ja;Ca=function(a){for(var c=0,b=a.length;c<b;c++)if(a[c].label)return c};var Fa,ta,Ka,Ea,Da,Ga,Na,Ua,Pa,Sa,ab;Ha=k.isCategoryAnimate&&k.animateCategories?k.animateCategories:k.categories.category;
Ja=L?Ca(Ha):0;La=Ha?Ha.length-1:0;this._drawCategoryLine(Ha,Ja,La);if(k.labels.isDraw){ga=w.get("config","animationObj");Pa=ga.animObj;Sa=ga.dummyObj;Ca=ga.transposeAnimDuration;ab=ga.animType;X&&(ga=S(this.getPixel(0)-this.getPixel(1)),k.labelMaxH>ga&&(q=z(k.labelMaxH/ga)),q>k.labels.step&&(k.labels.step=q));Na=0<k.labels.step?k.labels.step:1;L&&(Na=1);pa=this.getPVR();Ua=this._isZoomed();ta=this._getVisibleConfig();q=(Ka=k.labels.rotation)?k.labelMaxH:k.labelMaxW;R=Ka?k.labelMaxW:k.labelMaxH;!k.drawLabelOnBothSide&&
k.drawLabelsOpposit&&(P=!P,ua=t);ja&&ja[0]&&"auto"!==k.xAxisLabelMode&&(ya=ja[0].font,W=ja[0].fontsize,Q=ja[0].fontcolor);ya={fontFamily:H(ya,Z.fontFamily),fontSize:H(W,Z.fontSize),fontWeight:H(Z.fontWeight),fontStyle:H(Z.fontStyle)};ya.lineHeight=a(ya);J.css(ya);ja=this._manageReuseableElement(this.components.categoryLabel,"text",J);J=Ja;for(ga=0;J<=La;J+=Na)if(W=Ha[J],!(!W||L&&W.stepSkipped||(d=this._getCategoryValue(W,J),0===u(W.showlabel,k.showLabels,1)||Ua&&(d<ta.minValue||d>ta.maxValue)||!("auto"!==
k.xAxisLabelMode&&"mixed"!==k.xAxisLabelMode||0!==k.showZeroPlane&&0!==k.showZeroPlaneValue||0!==d)||!k.labels.drawNormalVal&&(!k.labels.drawLimitVal||J!==Ja&&J!==La)||!k.labels.drawNormalVal&&J!==Ja&&J!==La||!(k.labels.drawLimitVal||J!==Ja&&J!==La)))){c=H(W.font,W.labelfont);g=H(W.fontsize,W.labelfontsize);l=H(W.fontbold,W.labelfontbold)?u(W.fontbold,W.labelfontbold,0)?"bold":"normal":void 0;Da=H(W.fontitalic,W.labelfontitalic)?u(W.fontitalic,W.labelfontitalic,0)?"italic":"normal":void 0;f=M(H(W.fontcolor,
W.labelfontcolor,Q,Z.color),u(W.labelalpha,k.rawAttr.labelFontAlpha,w.singleseries?void 0:W.alpha,100));c||g||l||Da?(b={},c&&(b.fontFamily=c),g&&(b.fontSize=g),l&&(b.fontWeight=l),Da&&(b.fontStyle=Da),b.lineHeight=g?a(b):ya.lineHeight):b=void 0;if(b||ya)c=(b||ya).lineHeight,-1!==c.indexOf("px")&&(Ea=c.replace(/px/i,""),Ea=parseFloat(Ea));!1===W.appliedSmartLabel&&(F.setStyle(W._ovrStyle||ya),c=F.getSmartText(W.oriLabel||W.label,q,R),W.oriLabel=W.oriLabel||W.label,W.label=c.text,W.appliedSmartLabel=
!0);Da=this.getPixel(d);X?(g=W.label||"",l=Number(W.labelPadding)||0,c={fill:f,"line-height":Ea,opacity:1,"text-anchor":P?e:T,text:g,cursor:!w.singleseries&&W.link||W.labellink||Z.labelLink?"pointer":"",x:P?(ua||N)+O:(ua||A)-O,y:l?Da+l:Da},ia&&(Ga={fill:f,"line-height":Ea,opacity:1,"text-anchor":P?T:e,text:g,cursor:!w.singleseries&&W.link||W.labellink||Z.labelLink?"pointer":"",x:P?(t||A)-O:(t||N)+O,y:l?Da+l:Da})):(g=W.label||"",l=Number(W.labelPadding)||0,c={fill:f,"line-height":Ea,opacity:1,text:g,
cursor:!w.singleseries&&W.link||W.labellink||Z.labelLink?"pointer":"",x:Da,y:P?(ua||m)-O:(ua||C)+O},ia&&(Ga={fill:f,"line-height":Ea,opacity:1,text:g,cursor:!w.singleseries&&W.link||W.labellink||Z.labelLink?"pointer":"",y:P?(t||C)+O:(t||m)-O}),Ka?(c["text-anchor"]=P?e:T,c["vertical-align"]="center",ia&&(Ga["text-anchor"]=P?T:e,Ga["vertical-align"]="center")):(c["text-anchor"]=B,c["vertical-align"]=P?p:V,ia&&(Ga["vertical-align"]=P?V:p,Ga["text-anchor"]=B)),l&&(c.y=P?c.y-l:c.y+l,ia&&(Ga.y=P?Ga.y+l:
Ga.y-l)));v.shiftX&&(c.x+=v.shiftX,ia&&(Ga.x+=v.shiftX));v.shiftY&&(c.y+=v.shiftY,ia&&(Ga.y+=v.shiftY));c.transform=U.getSuggestiveRotation(Ka,c.x,c.y);ia&&(Ga.transform=U.getSuggestiveRotation(Ka,Ga.x,Ga.y));xa[ga]||(xa[ga]={},xa[ga].graphics={},xa[ga].config={});f=xa[ga].graphics.label=ja.getElement("p"+d,c);f._applyAllAttr&&f.attr(c);b&&f._firstTimeDraw?(f.css(b),f._appliedCss=!0):f._applyAllAttr&&!f._firstTimeDraw&&b?(f.css({fontFamily:b&&b.fontFamily?b.fontFamily:ya.fontFamily,fontSize:b&&b.fontSize?
b.fontSize:ya.fontSize,fontWeight:b&&b.fontWeight?b.fontWeight:ya.fontWeight,fontStyle:b&&b.fontStyle?b.fontStyle:ya.fontStyle}),f._appliedCss=!0):f._appliedCss&&!b&&(f.removeCSS(),delete f._appliedCss);f._firstTimeDraw||(f._applyAllAttr?(g=c,g.visibility=K):g={x:c.x,y:c.y,"text-anchor":c["text-anchor"],"vertical-align":c["vertical-align"],text:g,transform:c.transform,visibility:K},Ca&&la&&!W.animate?f.animateWith(Sa,Pa,g,Ca,ab):f.attr(g));k.showTooltip&&W.labelTooltext?(f.tooltip(W.labelTooltext),
f.trackTooltip(!0)):f.trackTooltip(!1);ia&&(Fa=xa[ga].graphics.secondLabel=ja.getElement("s"+d,Ga),Fa.css(b),Fa._firstTimeDraw||(Fa._applyAllAttr?(g=Ga,g.visibility=K):g={x:Ga.x,y:Ga.y,transform:c.transform,visibility:K},Ca&&la&&!W.animate?Fa.animateWith(Sa,Pa,g,Ca,ab):Fa.attr(g)),k.showTooltip&&W.labelTooltext?(Fa.tooltip(W.labelTooltext),Fa.trackTooltip(!0)):Fa.trackTooltip(!1));f._firstTimeDraw&&f.click(ea("dataLabelClick")).hover(ea("dataLabelRollOver"),ea("dataLabelRollOut"));b=n?J:ga;f.data("eventArgs",
{link:!w.singleseries&&W.link||W.labellink||Z.labelLink,text:c.text,index:b});ia&&(Fa._firstTimeDraw&&Fa.click(ea("dataLabelClick")).hover(ea("dataLabelRollOver"),ea("dataLabelRollOut")),xa[ga].graphics.secondLabel.data("eventArgs",{link:!w.singleseries&&W.link||W.labellink||Z.labelLink,text:c.text,index:ga}));W.animate&&!X&&(b={x:c.x-W.leftShift*pa},W["delete"]&&(b.opacity=0),b.transform=U.getSuggestiveRotation(Ka,b.x,c.y),xa[ga].graphics.label.animateWith(Sa,Pa,b,Ca,ab),ia&&(b={x:Ga.x-W.leftShift*
pa},W["delete"]&&(b.opacity=0),b.transform=U.getSuggestiveRotation(Ka,b.x,Ga.y),xa[ga].graphics.secondLabel.animateWith(Sa,Pa,b,Ca,ab)));if(f._applyAllAttr||f._firstTimeDraw)u(W.borderthickness,W.labelborderthickness)&&u(W.borderthickness,W.labelborderthickness,1),b=W.bordercolor||W.labelbordercolor?M(W.bordercolor||W.labelbordercolor,u(W.borderalpha,W.labelborderalpha,W.alpha,W.labelalpha,100)):"",d=u(W.borderthickness,W.labelborderthickness),f=u(W.borderpadding,W.labelborderpadding),c=u(W.borderradius,
W.labelborderradius),g=W.bgcolor||W.labelbgcolor?M(W.bgcolor||W.labelbgcolor,u(W.bgalpha,W.labelbgalpha,W.alpha,W.labelalpha,k.rawAttr.labelFontAlpha,100)):"",l=u(W.borderdashed,W.labelborderdashed,0)?E(u(W.borderdashlen,W.labelborderdashlen,4),u(W.borderdashgap,W.labelborderdashgap,2),u(W.borderthickness,W.labelborderthickness,1)):0===u(W.borderdashed,W.labelborderdashed)?"none":Z.borderDash,W.label?(xa[ga].graphics.label.attr({"text-bound":[H(g,Z.backgroundColor),H(b,Z.borderColor),H(d,Z.borderThickness),
H(f,Z.borderPadding),H(c,Z.borderRadius),H(l,Z.borderDash)]}),ia&&xa[ga].graphics.secondLabel.attr({"text-bound":[H(g,Z.backgroundColor),H(b,Z.borderColor),H(d,Z.borderThickness),H(f,Z.borderPadding),H(c,Z.borderRadius),H(l,Z.borderDash)]})):(xa[ga].graphics.label.attr({"text-bound":[]}),ia&&xa[J].graphics.secondLabel.attr({"text-bound":[]}));ga+=1}this.components.categoryLabel=xa;ja.freeUnusedElement()}else if(xa[ga])for(J=ga;J<xa.length;J++)xa[J].graphics.label.attr({text:"","text-bound":[]})},
_getCategoryValue:function(a,b){return this.chart.usesXYinCategory?u(a.x,a.y,b):b},_drawCategoryLine:function(a,b,e){var c=this.config,g=c.canvas,l=this.chart,k=l.config,t=l.components,p=c.isVertical,m=g.canvasBottom||k.canvasBottom,w=g.canvasLeft||k.canvasLeft,z=g.canvasRight||k.canvasRight,g=g.canvasTop||k.canvasTop,k=c.axisPlotLineContainer,r=c.showCanvasBorder,n=c.xAxisLabelMode,F=t.paper,t=t.colorManager,B=this.components.categoryLabelLine||[],q=l.jsonData.categories,K,R,L,P,v,Z,S=0,T=c.animateAxis,
V,C,A,N,J,W,O,U;a||(a=c.isCategoryAnimate&&c.animateCategories?c.animateCategories:c.categories.category);b=b||0;e=e||a?a.length-1:0;if(c.drawPlotlines){S=l.get("config","animationObj");W=S.animObj;O=S.dummyObj;l=S.transposeAnimDuration;U=S.animType;this.getPVR();J=this._isZoomed();C=this._getVisibleConfig();q&&q[0]&&(K=q[0].verticallinecolor,R=q[0].verticallinealpha,L=q[0].verticallinethickness,P=q[0].verticallinedashed,v=q[0].verticallinedashlen,Z=q[0].verticallinedashgap);q=b;for(S=0;q<=e;q+=1)(V=
a[q])&&(!r||"auto"!==n&&"mixed"!==n||q!==e&&q!==b)&&(N=this._getCategoryValue(V,q),1!==Number(V.showverticalline)||J&&(N<C.minValue||N>C.maxValue)||(A=this.getPixel(N),N={stroke:M(H(V.linecolor,K,c.divLineColor,t.getColor("divLineColor")),H(V.linealpha,R,t.getColor("divLineAlpha"))),"stroke-width":u(V.linethickness,L,1)},N["stroke-dasharray"]=u(V.linedashed,P,0)?E(u(V.linedashLen,v,4),u(V.linedashgap,Z,2),N["stroke-width"]):"none",A=p?X(["M",w,A,"L",z,A],N["stroke-width"]):X(["M",A,g,"L",A,m],N["stroke-width"]),
N.path=A.path,N["shape-rendering"]=A.isCrisped?"crisp":void 0,B[S]?(A=B[S].graphics.line,A.attr(N),l&&T&&!V.animate?A.animateWith(O,W,N,l,U):A.attr(N)):(A=F.path(N,k),B[S]={},B[S].graphics={},B[S].config={},B[S].graphics.line=A),S+=1));this.components.categoryLabelLine=B}if(B[S])for(q=S;q<B.length;q++)B[q].graphics.line.attr({path:["M",0,0]})},_drawCategoryVline:function(){var a=this.config,b=a.axisRange,f=b.min,b=b.max,c=a.canvas,g=this.chart,l=g.config,k=l.style||{},t=g.components.paper,m=c.canvasBottom||
l.canvasBottom,w=c.canvasLeft||l.canvasLeft,z=c.canvasRight||l.canvasRight,r=c.canvasTop||l.canvasTop,n=c.canvasHeight||l.canvasHeight,c=c.canvasWidth||l.canvasWidth,F=a.categories.category,q=a.isVertical,K=g.linkedItems.smartLabel,R=a.axisPlotLineContainerTop,L=a.axisPlotLineContainer,P=a.vlineLabelContainer,v=a.isRelativeAxisInverse,Z={fontFamily:l.style.inCanfontFamily,fontSize:l.style.inCanfontSize,color:l.style.inCancolor,lineHeight:l.style.inCanLineHeight},C=this.components.categoryVline||[],
A=this.components.categoryVlineLabel||[],N=0,O=0,ua=a.animateAxis,ia,xa,ja,ya,W,Q,ea,ga,la,Ca,Ha,pa,La,Ja,Fa,ta,Ka,Ea,Da,Ga,Na,Ua,Pa,Sa,ab,Xa,Za,bb,eb,Va,Ya,$a;xa=a.isCategoryVlineAnimate&&a.animateCategoriesVline?a.animateCategoriesVline:a.categories.vline;ia=g.get("config","animationObj");bb=ia.animObj;eb=ia.dummyObj;g=ia.transposeAnimDuration;ia=ia.animType;ya=xa.length;ja=this.getPVR();Va=this._isZoomed();Ya=this._getVisibleConfig();for(ea=0;ea<ya;ea++)W=xa[ea],Q=U(W.label),ga=!!u(W.showlabelborder,
a.showVLineLabelBorder,1),la=!!u(W.showlabelbackground,1),Ca=H(W.labelhalign,q?e:B),"center"==Ca?Ca=B:"left"==Ca?Ca=e:"right"==Ca&&(Ca=T),Ha=H(W.labelvalign,q?B:p).toLowerCase(),Ha==B?Ha="center":Ha==V?Ha=p:Ha==p&&(Ha=V),pa=u(W.labelposition,0),La=u(W.lineposition,.5),Ja=u(W.showvlines,a.showVLines,1),Fa=u(W.alpha,a.vLineAlpha,80),ta=H(W.color,a.vLineColor).replace(/^#?/,"#"),la=la?H(W.labelbgcolor,a.vLineLabelBgColor,"333333").replace(/^#?/,"#"):J,Ua=H(W.labelcolor,a.vLineLabelColor,W.color,k.inCancolor,
a.vLineColor).replace(/^#?/,"#"),Ka=u(W.thickness,a.vLineThickness,1),Ea=!!Number(H(W.dashed,0)),Da=u(W.dashlen,5),Na=u(W.dashgap,2),Ga=Z.fontSize,parseInt(Ga.replace(/px/i,""),10),Ga=u(W.rotatelabel,a.rotateVLineLabels)?270:0,La=0>La||1<La?.5:La,pa=0>pa||1<pa?0:pa,K.useEllipsesOnOverflow(l.useEllipsesWhenOverflow),K.setStyle(Z),K.getOriSize(Q),ta=M(ta,Ja?Fa:"0"),Fa=1===Number(W.showontop)||1===a.showVLinesOnTop?R:L,Xa=!1,$a=W.animate&&!q?W.startIndex+1:W.startIndex,Pa=F[$a],Sa=F[$a+1],Pa?Sa||(ab=
F[0]&&F[0].x?b:a.oriCatLen,Xa=!0):(ab=F[0]&&F[0].x?f:-1,Xa=!0),Xa||(ab=u(Pa.x,Pa.y,$a),La*=ab-u(Sa.x,Sa.y,$a+1)),La=ab+S(La),Va&&(La<Ya.minValue||La>Ya.maxValue)||!W.animate&&(La<f||La>b)||W.animate&&(La<f||La>b+Za)||(La=this.getPixel(La),Da={opacity:1,stroke:ta,"stroke-width":Ka,"stroke-dasharray":Ea?E(Da,Na,Ka):"none"},Ea={opacity:1,text:Q,"text-anchor":Ca,"vertical-align":Ha,"text-bound":[]},Ua={fill:Ja?Ua:ta,fontSize:Z.fontSize,fontFamily:Z.fontFamily,lineHeight:Z.lineHeight,backgroundColor:la},
q?(Na=X(["M",w,La,"L",z,La],Ka),Da.path=Na.path,Ea.x=w+c*(v?1-pa:pa),Ea.y=La):(Na=X(["M",La,r,"L",La,m],Ka),Da.path=Na.path,Ea.x=La,Ea.y=r+n*(v?1-pa:pa)),Da["shape-rendering"]=Na.isCrisped?"crisp":void 0,Ca==e?Ea.x+=2:Ca==T&&(Ea.x-=2),Ha==V?Ea.Y+=2:Ha==p&&(Ea.Y-=2),C[N]?(Ca=C[N].graphics.drawing,Fa.appendChild(Ca),g&&ua&&!W.animate?Ca.animateWith(eb,bb,Da,g):Ca.attr(Da)):(Ca=t.path(Da,Fa),C[N]={},C[N].graphics={},C[N].config={},C[N].graphics.drawing=Ca),Q&&(Ea.transform=t.getSuggestiveRotation(Ga,
Ea.x,Ea.y),A[O]?(Ca=A[O].graphics.label,Ca.css(Ua),g&&ua&&!W.animate?Ca.animateWith(eb,bb,Ea,g,ia):Ca.attr(Ea)):(Ca=t.text(Ea,Ua,P).css(Ua),A[O]={},A[O].graphics={},A[O].config={},A[O].graphics.label=Ca)),W.animate&&!q&&(Za=W.leftShift*ja,Ca={x:Ea.x-Za},Na=X(["M",La-Za,r,"L",La-Za,m],Ka),Ka={path:Na.path,"shape-rendering":Na.isCrisped?"crisp":void 0},W["delete"]&&(Ca.opacity=0,Ca["text-bound"]=[],Ka.opacity=0),Q&&A[O].graphics.label.animateWith(eb,bb,Ca,g,ia),C[N].graphics.drawing.animateWith(eb,
bb,Ka,g,ia)),Q&&(A[O].graphics.label.attr({"text-bound":[la,Ja&&ga?ta:J,Ja&&ga?1:0,2,void 0,Ja&&ga?"solid":J]}),O++),N++);if(C[N])for(ea=N;ea<C.length;ea++)C[ea].graphics.drawing.attr({path:["M",0,0]});if(A[O])for(ea=O;ea<A.length;ea++)A[ea].graphics.label.attr({text:"","text-bound":[]});this.components.categoryVline=C;this.components.categoryVlineLabel=A},_drawCategoryPlotLine:function(){var a=this.config,b=a.isVertical,e=a.axisRange,c=e.max,g=e.min,l=a.canvas,k=this.chart,t=k.config,p=a.categories.category,
m=p.length,e=l.canvasBottom||t.canvasBottom,w=l.canvasLeft||t.canvasLeft,z=l.canvasRight||t.canvasRight,l=l.canvasTop||t.canvasTop,t=a.axisPlotLineContainer,r=k.components.paper,n=this.graphics.line||[],B=0,F=M(a.divLineColor,a.divLineAlpha),q=a.divLineThickness,K=a.divLineIsDashed?E(a.divLineDashLen,a.divLineDashGap,q):"none",u=a.animateAxis,L,P,F={stroke:F,"stroke-width":q,"stroke-dasharray":K};if(p[0]&&(void 0!==p[0].x||void 0!==p[0].y)){if(n[B]&&"categories"===a.xAxisLabelMode)for(c=B;c<n.length;c++)n[c].attr({path:[]})}else if(a.lines.isDraw&&
a.categoryNumDivLines){B=k.get("config","animationObj");p=B.animObj;K=B.dummyObj;k=B.transposeAnimDuration;P=B.animType;a.categoryDivLinesFromZero&&(g=0,c=m-1);m=S(c-g)/(a.categoryNumDivLines+1);m=0===m?1:m;L=this._getVisibleConfig();B=g+m*R((L.minValue-3*m-g)/m);L=g+m*R((L.maxValue+3*m-g)/m);B=(B<g?g:B)+m;L=(L>c?c:L)-m;c=B;for(B=0;c<=L;c+=m)g=a.hasBreakPoints?this._getRealBreakValue(c):c,g=b?X(["M",w,this.getPixel(g),"L",z,this.getPixel(g)],q):X(["M",this.getPixel(g),l,"L",this.getPixel(g),e],q),
F.path=g.path,F["shape-rendering"]=g.isCrisped?"crisp":void 0,n[B]?(g=n[B],k&&u?g.animateWith(K,p,F,k,P):g.attr(F)):(g=r.path(F,t),n[B]=g),B+=1;if(n[B])for(c=B;c<n.length;c++)n[c].attr({path:[]});this.graphics.line=n}else if(n[B])for(c=B;c<n.length;c++)n[c].attr({path:[]})},_drawCategoryPlotBand:function(){var a=this.config,b=a.axisRange,e=b.max,c=b.min,g=a.canvas,l=this.chart,k=l.config,p=a.categories.category,m=p.length,b=g.canvasLeft||k.canvasLeft,w=g.canvasRight||k.canvasRight,z=g.canvasTop||
k.canvasTop,r=g.canvasHeight||k.canvasHeight,g=g.canvasWidth||k.canvasWidth,k=a.isVertical,n=a.axisBandContainer,B=l.components.paper,F=this.graphics.band||[],K=0,u=a.showAlternateGridColor,L=a.alternateGridColor,P=a.alternateGridAlpha,v=a.categoryDivLinesFromZero,Z=a.animateAxis,T,V,E;if(p[0]&&(void 0!==p[0].x||void 0!==p[0].y)){if(F[K])for(P=K;P<F.length;P++)F[P].attr({x:0,y:0,width:0,height:0,fill:null,"stroke-width":0})}else if(u&&a.band.isDraw&&a.categoryNumDivLines){K=l.get("config","animationObj");
p=K.animObj;u=K.dummyObj;l=K.transposeAnimDuration;E=K.animType;v&&(c=0,e=m-1);a=S(e-c)/(a.categoryNumDivLines+1);a=0===a?1:a;K=this._getVisibleConfig();m=c+a*R((K.minValue-3*a-c)/a);v=c+a*R((K.maxValue+3*a-c)/a);m=m<c?c:m;v=v>e?e:v;c=t((m-c)/a);m+=a;L={fill:q(M(L,P)),"stroke-width":0};V=this.getPVR();P=m;for(K=0;P-a<v;c+=1,P+=a)0===c%2&&(T=P===m?a+S(this.getValue(0))+1:P===v?a+S(this.getValue(w-b)-e):a,k?(L.x=b,L.y=P===v?this.getPixel(P-S(a)):this.getPixel(P-S(T)),L.width=g,L.height=S(T*V)):(L.x=
P===v?this.getPixel(P-S(a)):this.getPixel(P-S(T)),L.y=z,L.width=S(T*V),L.height=r),F[K]?(T=F[K],l&&Z?T.animateWith(u,p,L,l,E):T.attr(L)):(T=B.rect(L,n),F[K]=T),K+=1);if(F[K])for(P=K;P<F.length;P++)F[P].attr({x:0,y:0,width:0,height:0,fill:null,"stroke-width":0});this.graphics.band=F}else if(F[K])for(P=K;P<F.length;P++)F[P].attr({x:0,y:0,width:0,height:0,fill:null,"stroke-width":0})},resetNumericAxisComponents:function(){var a=this.graphics.line,b=this.graphics.labels,e;if(a&&a[0])for(e=0;e<a.length;e+=
1)a[e].attr({path:[]});if(b&&b[0])for(e=0,a=b.length;e<a;e+=1)b[e].attr({text:""})},resetCategoryAxisComponents:function(){var a=this.graphics.line,b=this.components.categoryVline,e=this.components.categoryLabel,c=this.components.categoryLabelLine,g;if(a&&a[0])for(g=0;g<a.length;g+=1)a[g].attr({path:[]});if(e&&e[0])for(g=0,a=e.length;g<a;g+=1)e[g].graphics.label.attr({text:"","text-bound":[]}),e[g].graphics.secondLabel&&e[g].graphics.secondLabel.attr({text:"","text-bound":[]});if(c&&c[0])for(g=0,
a=c.length;g<a;g+=1)c[g].graphics.line.attr({path:["M",0,0]});if(b&&b[0])for(g=0,a=b.length;g<a;g+=1)b[g].graphics.drawing.attr({path:["M",0,0]}),b[g].graphics.label.attr({text:"","text-bound":[]})},placeAxis:function(a){return this.config.isVertical?this._placeVerticalAxis(a):this._placeHorizontalAxis(a)},_placeVerticalAxis:function(a){var b=this.config,e=this.chart,c=e.config,g=e.components,l=e.linkedItems.smartLabel,k=b.axisRange,t=b.minLabelWidthPercent,p=b.name,m=b.isOpposit,w=g.numberFormatter,
z=c.canvasHeight,r=b.labelPadding=u(b.rawAttr.axisValuePadding,4),n=u(b.rawAttr.axisNamePadding,5),B=b.useEllipsesWhenOverflow,F=b.name.style,q=b.trend.trendStyle,K=b.axisName,R=b.trendLines,L=b.drawLabelsOpposit,v=b.drawAxisNameOpposit,S=b.drawLabelOnBothSide,T=0,V=0,E=0,X=0,C=0,A={left:0,right:0},N="",J="",M=0,O;O=-1;var ea,ga,la,Q,Ha;t&&(O=t/100*c.width);c.viewPortConfig&&1!==c.viewPortConfig.scaleY&&(b._setRangeAgain=!0);b._setRangeAgain&&this._setTickIntervalAfterZoom();b.oriCanvasHeight=z;0>
r&&(b.labelPadding=2);M=b.drawTick&&b.tickLength?b.axisLineThickness+b.tickLength:b.axisLineThickness;b.showAxisLine?(b.labelPadding=u(r,2)+M,0>b.labelPadding&&(b.labelPadding=(0>b.axisLineThickness?0:M)+2),a-=b.axisLineThickness):(b.labelPadding=u(r,2),0>b.labelPadding&&(b.labelPadding=2));r=k.max;k=k.min;b.name.rotation=0;b.labels.step=b.labelStep;b.labels.isDraw=1;b.lines.isDraw=1;b.band.isDraw=1;b.labels.drawNormalVal=b.showDivLineValues;b.labels.drawLimitVal=b.showLimits;M=F.lineHeight;M=Number(M.replace(/px/i,
""));M<a&&(a-=M);1!==b.showLimits&&1!==b.showDivLineValues&&(b.labels.isDraw=0);t=b.drawLabels?this._getVMaxLabelDimention(S?a-2*b.labelPadding/2:a-b.labelPadding):{width:0,height:0};if(t.width+b.labelPadding>a&&!b.hasCategory||0===t.width)b.labels.isDraw=0;b.labels.isDraw&&(b.labelMaxW=t.width>O?t.width:O,b.labelMaxH=t.height,T=b.labelMaxW+b.labelPadding,V=S?2*T:T);if(b.drawTrendLines&&b.drawTrendLabels&&R){O=b.isPercent?g.numberFormatter.percentValue:b.isVertical?g.numberFormatter.yAxis:g.numberFormatter.xAxis;
l.useEllipsesOnOverflow(c.useEllipsesWhenOverflow);l.setStyle({fontSize:q.fontSize,fontFamily:q.fontFamily,lineHeight:q.lineHeight,fontWeight:q.fontWeight});c=0;for(q=R.length;c<q;c+=1)for(t=0,ga=R[c].line&&R[c].line.length;t<ga;t+=1)la=R[c].line[t],Q=w.getCleanValue(H(la.startvalue,la.value,0)),Ha=u(la.endvalue,Q),Q<=r&&Q>=k&&Ha<=r&&Ha>=k&&(b.isOpposit&&(la.valueonright=1),Q=u(la.valueonright,0),X=1===Q?la.endvalue||la.startvalue:la.startvalue||la.endvalue,ea=U(la.origText||la.displayvalue||X||""),
ea===X&&(ea=""+O.call(g.numberFormatter,ea)),Q?ea.length>J.length&&(J=ea):ea.length>N.length&&(N=ea));t=l.getOriSize(J);C=t.width+b.labelPadding;t=l.getOriSize(N);X=t.width+b.labelPadding;m?(C>V&&C>a&&(C=a),V=P(V,C+b.labelPadding),X>a-V&&(X=Z(X,a-V))):(X>V&&X>a&&(X=a),V=P(V,X+b.labelPadding),C>a-V&&(C=Z(C,a-V)));c=0;for(q=R.length;c<q;c+=1)for(t=0,ga=R[c].line&&R[c].line.length;t<ga;t+=1){la=R[c].line[t];Q=w.getCleanValue(H(la.startvalue,la.value,0));Ha=u(la.endvalue,Q);ea=1===Number(la.valueonright)?
la.origText||la.displayvalue||""+Ha||"":la.origText||la.displayvalue||""+Q||"";ea=U(""+ea);if(Number(ea)===Ha||Number(ea)===Q)ea=""+O.call(g.numberFormatter,ea);la.origText=ea;N=(Q=u(la.valueonright,0))?l.getSmartText(ea,C,e.canvasHeight,B):l.getSmartText(ea,V,e.canvasHeight,B);la.displayvalue=N.text;N.tooltext?la.valueToolText=N.tooltext:delete la.valueToolText}}a+=M;!b.drawAxisName||0>=a-V-C||""===K?(p.isDraw=!1,p.value=""):(l.setStyle({fontSize:F.fontSize,fontFamily:F.fontFamily,lineHeight:F.lineHeight,
fontWeight:F.fontWeight}),p.isDraw=!0,b.rotateAxisName?(b.name.rotation=m?90:270,e=l.getSmartText(K,z,a-V-C),p.value=K,b.nameMaxW=Z(e.height)):(e=l.getSmartText(K,a-V-C,z),p.value=K,b.nameMaxW=Z(e.width,a-V),b.nameMaxH=e.height,0<=b.axisNameWidth&&(b.nameMaxW=Z(b.nameMaxW,b.axisNameWidth))),E=b.nameMaxW+n);m?(S?(A.left+=P(T,X),A.right+=P(T,C)):L?(A.left+=P(T,X),A.right+=C):(A.left+=X,A.right+=P(T,C)),v?(b.axisNamePadding=A.left+n,A.left+=E):(b.axisNamePadding=A.right+n,A.right+=E)):(S?(A.left+=P(T,
X),A.right+=P(T,C)):L?(A.left+=X,A.right+=P(T,C)):(A.left+=P(T,X),A.right+=C),v?(b.axisNamePadding=A.right+n,A.right+=E):(b.axisNamePadding=A.left+n,A.left+=E));p.isDraw&&b.axisNamePadding+b.nameMaxW>a&&(b.axisNamePadding=a-b.nameMaxW);return A},_placeHorizontalAxis:function(a){var b=this.config,e=this.chart,c=e.config,g=e.components,l=e.linkedItems.smartLabel,k=b.axisRange,t=b.name,p=b.isOpposit,m=g.numberFormatter,w=b.drawLabelsOpposit,z=b.drawAxisNameOpposit,r=b.drawLabelOnBothSide,n=0,B=c.canvasWidth,
F=b.labelPadding=u(b.rawAttr.axisValuePadding,4),q=u(b.rawAttr.axisNamePadding,5),K=b.useEllipsesWhenOverflow,R=b.name.style,L=b.trend.trendStyle,v=b.axisName,Z=b.vTrendLines,S,T,V=0,E=0,X={top:0,bottom:0},A=0,C=0,N,J,M,O,ga,la;c.viewPortConfig&&1!==c.viewPortConfig.scaleX&&(b._setRangeAgain=!0);b._setRangeAgain&&this._setTickIntervalAfterZoom();0>F&&(b.labelPadding=2);C=b.drawTick&&b.tickLength?b.axisLineThickness+b.tickLength:b.axisLineThickness;b.showAxisLine?(b.labelPadding=u(F,2)+C,0>b.labelPadding&&
(b.labelPadding=(0>b.axisLineThickness?0:C)+2),a-=b.axisLineThickness):(b.labelPadding=u(F,2),0>b.labelPadding&&(b.labelPadding=2));F=k.max;k=k.min;b.labels.rotation=0;b.labels.step=b.labelStep;b.labels.isDraw=1;b.lines.isDraw=1;b.band.isDraw=1;b.labels.drawNormalVal=b.showDivLineValues;b.labels.drawLimitVal=b.showLimits;C=R.lineHeight;C=Number(C.replace(/px/i,""));C<a&&(a-=C);b.rotateLabels&&"stagger"!==b.labelDisplay&&"none"!==b.labelDisplay&&(b.labelDisplay="rotate");1!==b.showLimits&&1!==b.showDivLineValues&&
(b.labels.isDraw=0);O=b.drawLabels?this._getHMaxLabelDimention(r?(a-2*b.labelPadding)/2:a-b.labelPadding):{width:0,height:0};b.labels.rotation?O.width+b.labelPadding>a&&!b.hasCategory&&(b.labels.isDraw=0):O.height+b.labelPadding>a&&!b.hasCategory&&(b.labels.isDraw=0);b.labels.isDraw&&(b.labels.rotation?(b.labelMaxW=O.height,b.labelMaxH=O.width,n=O.width+b.labelPadding):(b.labelMaxW=O.width,b.labelMaxH=O.height,n=O.height+b.labelPadding),V=r?2*n:n);V=P(V,b.labelPadding);O=V<=a?a-V:a;if(b.drawTrendLines&&
b.drawTrendLabels&&Z&&b.isActive)for(la=b.isPercent?g.numberFormatter.percentValue:b.isVertical?g.numberFormatter.yAxis:g.numberFormatter.xAxis,l.useEllipsesOnOverflow(c.useEllipsesWhenOverflow),l.setStyle({fontSize:L.fontSize,fontFamily:L.fontFamily,lineHeight:L.lineHeight,fontWeight:L.fontWeight}),c=0,T=Z.length;c<T;c+=1)for(N=0,M=Z[c].line&&Z[c].line.length;N<M;N+=1)ga=Z[c].line[N],S=m.getCleanValue(H(ga.startvalue,ga.value,0)),J=u(ga.endvalue,S),S<=F&&S>=k&&J<=F&&J>=k&&(S=u(ga.valueonright,0),
S=1===S?ga.endvalue||ga.startvalue:ga.startvalue||ga.endvalue,J=U(ga.origText||ga.displayvalue||S||""),J===S&&(J=""+la.call(g.numberFormatter,J)),ga.origText=J,S=l.getSmartText(J,e.canvasWidth,L.lineHeight,K),J=S.height+2,0>O-J?ga.displayvalue="":(ga.displayvalue=S.text,A=A<S.height?S.height:A),S.tooltext?ga.valueToolText=S.tooltext:delete ga.valueToolText);V+=A;O=O-A+C;a+=C;!b.drawAxisName||0>=O||""===v?(t.isDraw=!1,t.value=""):(l.setStyle({fontSize:R.fontSize,fontFamily:R.fontFamily,lineHeight:R.lineHeight,
fontWeight:R.fontWeight}),t.isDraw=!0,e=l.getSmartText(v,B,O),t.value=v,b.nameMaxW=B,b.nameMaxH=e.height,E=e.height+q,b.axisNamePadding=q+V,b.axisNamePadding+e.height>a&&(b.axisNamePadding=a-e.height,E=e.height+b.axisNamePadding-V));p?(r?(X.bottom+=n+A,X.top+=n):w?X.bottom+=n+A:(X.top+=n,X.bottom+=A),b.trendBottomPadding=X.bottom-A+2,z?X.bottom+=E:X.top+=E):(r?(X.bottom+=n+A,X.top+=n):w?(X.top+=n,X.bottom+=A):X.bottom+=n+A,b.trendBottomPadding=X.bottom-A+2,z?X.top+=E:X.bottom+=E);return X},_getHMaxLabelDimention:function(b){function d(a,
c){switch(c.toLowerCase()){case "left":return Math.abs(e._getCustomPixel(a));case "right":return Math.abs(l.width-e._getCustomPixel(a))}}var e=this,c=e.config,g=e.chart,l=g.config,k=g.components,t=g.linkedItems.smartLabel,p=c.axisRange,m=c.labels,w=c.labelDisplay,z=c.slantLabel,n=m.style,r=c.maxLabelHeight,F=p.tickInterval,B=c.staggerLines,q=c.labelStep,K=l.canvasLeft,R=l.canvasRight,L=B-2,v,Z,V,T=p.max,X=p.min,q=0,E=c.categories&&c.categories.category,H=E&&E.length,N=g.distributedColumns,J=0,M,O,
U,ea={text:void 0,width:0,style:void 0},g=0,ga,la,Q,Ha,pa=function(){},La=pa,Ja=pa,Fa=pa,ta,Ka=function(a){for(var c=0,b=a.length;c<b;c++)if(a[c].label||a[c].orilabel)return c},Ea={},Da,Ga,Na=0,Ua=!1,Pa=0,Sa,ab,Xa=!1,Za,bb=parseInt(n.lineHeight.replace(/(\d+)px/,"$1"),10),eb=Number.POSITIVE_INFINITY,Va,Ya,$a=Number.POSITIVE_INFINITY;if(N)for(J=e.getPixel(p.min),p=0;p<H;p++)N=2*(e.getPixel(E[p].x)-J),E[p].plotWidth=N,J+=N;if(c.hasCategory&&(!E||0===E.length))return{width:0,height:0};"rotate"===w&&
(c.rotateLabels=1);c.hasCategory||(c.irregularCatAxis=!1);Z=0===L?1:1===L?1.5:L;t.useEllipsesOnOverflow(l.useEllipsesWhenOverflow);t.setStyle({fontSize:n.fontSize,fontFamily:n.fontFamily,lineHeight:n.lineHeight,fontWeight:n.fontWeight});if(c.irregularCatAxis){E.sort(function(a,c){return a.x-c.x});p=0;for(J=E.length;p<J;p++){M=E[p];if(void 0!==Sa){$a=Math.abs(M.x-Sa);L=S(e._getCustomPixel(X)-e._getCustomPixel(X+$a));t.setStyle(M.style||{});H=t.getOriSize("W");H=H.width;if(L<1.2*H){M.label="";$a=eb;
continue}Za._individualIWR=L;M._individualIWL=L;eb=$a}Za=M;Sa=M.x}$a===Number.POSITIVE_INFINITY&&($a=Math.floor(Math.min(M.x,T-M.x)),$a=Math.max($a,4));p=0;for(J=E.length;p<J;p++)M=E[p],p||(M._individualIWL=Infinity),p===J-1&&(M._individualIWR=Infinity),M.individualIW=Math.min(M._individualIWL,M._individualIWR);U=S(e._getCustomPixel(X)-e._getCustomPixel(X+$a));U=Math.min(2*d(E[0].x,"left"),2*d(E[J-1].x,"right"),U)}else U=S(e._getCustomPixel(X)-e._getCustomPixel(X+F));b<bb&&(b=bb);b=r?r:b;Ea.__root__=
{getHeight:function(a){return parseInt(E[a]._ovrStyle.lineHeight.replace(/(\d+)px/,"$1"),10)},getWidth:function(){return b},getCalculatedLabelStep:function(b){var d=0,h=b.length,g=Number.NEGATIVE_INFINITY,l={},k,p,m,w=0,z;if(c.irregularCatAxis)return c.labelStep;for(;d<h;d++)if(k=b[d])k.label||(k.label=""),p=k.oriLabel||k.label,O={fontSize:n.fontSize,fontFamily:n.fontFamily,lineHeight:n.lineHeight,fontWeight:n.fontWeight},w++,k.style=k.style||{},C(O,k.style),k=O.fontSize+O.fontFamily+O.lineHeight+
O.fontWeight,l[k]?p.length>l[k].label.length&&(l[k].label=p):l[k]={label:p,style:O};for(m in l)l.hasOwnProperty(m)&&(b=l[m].style,d=l[m].label,b.lineHeight=a(b),t.setStyle(b),c.rotateLabels&&(z=parseInt(b.lineHeight.replace(/(\d+)px/,"$1"),10)),ga=t.getSmartText(d,void 0,z),b=0===c.rotateLabels?60<ga.width?60:ga.width:ga.height,g=Math.max(b,g));g=Math.floor(S(e._getCustomPixel(T)-e._getCustomPixel(X))/g);l=Math.max(Math.ceil(w/g),c.labelStep);U=S(e._getCustomPixel(X)-e._getCustomPixel(X+l));return w<=
g?c.labelStep:l}};Ea._inProp={};Ea.getCopyById=function(a){var c=this.__root__,b=this._inProp.copyStore,d,b=b||{};if(d=b[a])return d;C(d=b[a]={},c);return d};if(c.hasCategory){switch(w){case "rotate":m.rotation=z?300:270;Ha=Ea.getCopyById("rotate");break;case "stagger":Ha=Ea.getCopyById("stagger");Ha.getHeight=function(a){var b;b=(a=c.categories.category[a])&&a.style||(a.style={});O={fontSize:n.fontSize,fontFamily:n.fontFamily,lineHeight:n.lineHeight,fontWeight:n.fontWeight};C(O,b);t.setStyle(O);
return t.getOriSize(a.label).height};Ha.getWidth=function(a){return a.individualIW?a.individualIW:2*U*Z-4};Fa=function(a){var c,d=a.length,e=0,f,g,l;t.setStyle(n);c=t.getOriSize("WWW").height;if(Math.floor(a[d-1]._cumulativeSum)<=Math.ceil(d*(c+2)))g=Math.floor(b/c),B=0>g-B?g:B;else{g=Math.floor(b/(c+4));do for(e=0,l=g,f=l-1,d=a.length;f<d;){d-f<g&&(f=d-1);c=a[f];e=c._cumulativeSum-e;if(~~e>-~b){Ua=!0;break}else Ua=!1;e=c._cumulativeSum;f+=l}while(g--&&Ua);g++;B=Math.min(B,g)}};La=function(a){var c,
b,d,e,f=0;e=0;for(d=a.length;e<d;e++)c=a[e],c.stepSkipped||(b=c&&c.style||{},(b=b.lineHeight)||(b=n.lineHeight),(V=f++%B)?c.labelPadding=b.replace(/px/i,"")*V:c.labelPadding=0)};break;case "none":Ha=Ea.getCopyById("none");Ha.getHeight=pa;Ja=Ha.getWidth=pa;c.rotateLabels&&(m.rotation=z?300:270,ab=b);Ha.getCalculatedLabelStep=function(){return c.labelStep};break;default:Ha=Ea.getCopyById("auto"),Ha.getHeight=function(){return b},Ha.getWidth=function(a){return a.individualIW?a.individualIW:U-8},Ja=function(a,
b){var d,e,f,h;if(!c.irregularCatAxis&&(t.setStyle(a),d=t.getOriSize("WWW"),d=d.width,d>=U&&0!==c.rotateLabels)){m.rotation=z?300:270;m.forceRotate=!0;Ha=Ea.getCopyById("rotate");la=Ha.getWidth;Q=Ha.getHeight;d=ea.width=0;for(e=b.length;d<e;d++)(f=b[d])&&(f.label||f.oriLabel)&&0!==u(f.showlabel,c.showLabels,1)&&!0!==f.stepSkipped&&(h=f._ovrStyle,t.setStyle({fontSize:h.fontSize,fontFamily:h.fontFamily,lineHeight:h.lineHeight,fontWeight:h.fontWeight}),ga=t.getSmartText(f.oriLabel,la(f),Q(d)),f.label=
ga.text,f.labelTooltext=ga.tooltext,f._sLabel=ga,ea.width<ga.width&&(ea.text=ga.text,ea.width=ga.width,ea.height=ga.height,ea.style=h));Da=ea.text}}}la=Ha.getWidth;Q=Ha.getHeight;q=c.labels.step=c.labelStep=Ha.getCalculatedLabelStep(E);p=ta=Ka(E);J=E.length;for(ta=0;p<J;p++,ta++)(M=E[p])&&(M.label||M.oriLabel||M.orilabel)&&0!==u(M.showlabel,c.showLabels,1)&&(Xa=!0,O={fontSize:n.fontSize,fontFamily:n.fontFamily,lineHeight:n.lineHeight,fontWeight:n.fontWeight},C(O,M.style),O.lineHeight=a(O),v=O.fontSize+
O.fontFamily+O.lineHeight+O.fontWeight,v!==Ga&&(t.setStyle(O),Ga=v),ta%q?(M.stepSkipped=!0,M.appliedSmartLabel=!1,Pa++):(M.stepSkipped=!1,M.appliedSmartLabel=!0,M._ovrStyle=O,v=E[p].plotWidth?P("rotate"===w?E[p].plotWidth-3:0,Q(p)):P("rotate"===w?e.getPixel(1)-e.getPixel(0)-3:0,Q(p)),r&&"rotate"!==w&&(v=Math.min(r,v)),ga=t.getSmartText(M.oriLabel||M.label,la(M),v),Na+=M._nLineHeight=ga.height+2,M._cumulativeSum=Na,M.oriLabel=M.oriLabel||M.label,M.label=ga.text,M.labelTooltext=ga.tooltext,M._sLabel=
ga,ea.width<ga.oriTextWidth&&(C(ea,ga),ea.style=O),g<ga.height&&(g=ga.height)));if(!Xa)return{height:0,width:0};Fa(E,Pa);La(E,Pa);Ja(ea.style,E);Da=ea.text||"";if("mixed"===c.xAxisLabelMode)for(r=c.isPercent?k.numberFormatter.percentValue:k.numberFormatter.xAxis,q=Da.length,p=X;p<=T;p+=F)Ga=c.hasBreakPoints?e._getRealBreakValue(p):p,Ga=""+r.call(k.numberFormatter,Ga,c.axisIndex),Ga.length>q&&(Da=Ga,q=Ga.length);ea.height=Math.max(g,ea.height||0);k=E.length;p=0;for(J=E.length;p<J&&(Va=E[p],!Va._sLabel);p++);
J=E.length;for(p=J-1;0<=p&&(Ya=E[p],!Ya._sLabel);p--);F=e._isZoomed();m.rotation||F||!Va._sLabel?(c.axisEndLabelDisplaySpace.left=0,c.axisEndLabelDisplaySpace.right=0):(c.axisEndLabelDisplaySpace.left=Math.max(K-(e._getCustomPixel(Va.x||0)-Va._sLabel.width/2),0),c.axisEndLabelDisplaySpace.right=Math.max(e._getCustomPixel(Ya.x||k-1)+Ya._sLabel.width/2-R,0));K=ea}else{r=c.numberFormatterFn?k.numberFormatter[c.numberFormatterFn]:c.isPercent?k.numberFormatter.percentValue:k.numberFormatter.xAxis;for(p=
X;p<=T;p+=F)Ga=c.hasBreakPoints?A(e._getRealBreakValue(p),10):A(p,10),Ga=""+r.call(k.numberFormatter,Ga,c.axisIndex),p===X&&(ta=Ga),p===T&&(v=Ga),Ga.length>q&&(Da=Ga,q=Ga.length);t.setStyle({fontSize:n.fontSize,fontFamily:n.fontFamily,lineHeight:n.lineHeight,fontWeight:n.fontWeight});K=t.getOriSize(Da||"");"rotate"===w&&(m.rotation=270);c.rotateLabels&&(m.rotation=z?300:270);m.rotation||(ta=t.getOriSize(ta||""),v=t.getOriSize(v||""),c.axisEndLabelDisplaySpace.left=ta.width/2+2,c.axisEndLabelDisplaySpace.right=
v.width/2+2)}c.hasCategory&&"stagger"===w&&(K.height=B*ea.height);K.width=ab?Math.min(ab,K.width):K.width;return K},_getVMaxLabelDimention:function(b){var d,e,c,g,l=this.config,k=this.chart,t=k.components,p=k.config,m=k.linkedItems.smartLabel,w=l.axisRange,z=l.labels.style,n=w.tickInterval,r=l.useEllipsesWhenOverflow;c=l.maxLabelWidthPercent;e=l.minLabelWidthPercent;var B=w.max;g=w.min;var w=0,F=k.jsonData.categories,k={height:0,width:0},q,K;m.useEllipsesOnOverflow(p.useEllipsesWhenOverflow);m.setStyle({fontSize:z.fontSize,
fontFamily:z.fontFamily,lineHeight:z.lineHeight,fontWeight:z.fontWeight});if(l.hasCategory){F&&(q=F[0].font,K=F[0].fontsize);c&&(t=c/100*p.width,t<b&&(b=t));e&&(p=e/100*p.width,p>b&&(b=p));t=l.categories.category;p=0;for(n=t.length;p<n;p++)B=t[p],0!==u(B.showlabel,l.showLabels)&&(d=H(B.font,B.labelfont,q,z.fontFamily),e=H(B.fontsize,B.labelfontsize,K,z.fontSize).replace(/px/i,"")+"px",c="normal"==z.fontWeight?u(B.fontbold,B.labelfontbold,0)?"bold":"normal":z.fontWeight,g="normal"==z.fontStyle?u(B.fontitalic,
B.labelfontitalic,0)?"italic":"normal":z.fontStyle,d={fontFamily:H(d,q,z.fontFamily),fontSize:H(e,K,z.fontSize),fontWeight:H(c,z.fontWeight),fontStyle:H(g,z.fontStyle)},d.lineHeight=a(d),m.setStyle(d),d=m.getSmartText(B.oriLabel||B.label,b,z.lineHeight,r),B.oriLabel=B.oriLabel||B.label,B.label=d.text,B.labelTooltext=d.tooltext,d.width>w&&(k=d,w=d.width));return k}b=l.numberFormatterFn?t.numberFormatter[l.numberFormatterFn]:l.isPercent?t.numberFormatter.percentValue:t.numberFormatter.yAxis;for(p=g;p<=
B;p+=n)z=l.hasBreakPoints?A(this._getRealBreakValue(p),10):A(p,10),z=""+b.call(t.numberFormatter,z,l.axisIndex),z.length>w&&(d=z,w=z.length);return m.getOriSize(d)},getLogAxisLimits:function(a,b,e,c,g,l){var k=function(a){return null===a||void 0===a||""===a||isNaN(a)?!1:!0},t=0,p=[],m,n,r,B,q,K,u,L;a===b&&(b-=b/100);k(e)&&Number(e)>=a?a=Number(e):(e=1<g?z(F(a)/F(g)):R(F(a)/F(g)),a=w(g,e),n=e);n||(n=1<g?z(F(a)/F(g)):R(F(a)/F(g)));k(c)&&Number(c)<=b?b=Number(c):(e=1<g?R(F(b)/F(g)):z(F(b)/F(g)),b=w(g,
e),m=e);m||(m=1<g?R(F(b)/F(g)):z(F(b)/F(g)));c=Number(String(F(g)/F(10)));l=Number(l)||(R(c)==c?8:4);1<g?(r=n,B=m):0<g&&1>g&&(r=m,B=n);c=n;for(m=r;m>=B;--m)if(r=w(g,c),b<=r&&a>=r&&(p[t++]={value:r,ismajor:!0}),m!=B){n=1<g?-1:1;r=w(g,c)-w(g,c+n);e=r/(l+1);for(k=1;k<=l;++k)r=w(g,c+n)+e*k,b<=r&&a>=r&&(p[t++]={value:r,ismajor:!1});1<g?c--:c++}for(u in p)for(L in p[u])"value"==L&&(q||(q=p[u][L]==b&&(p[u].isextreme=p[u].isMin=!0)),K||(K=p[u][L]==a&&(p[u].isextreme=p[u].isMax=!0)));q||(p[t++]={value:b,ismajor:!0,
isMin:!0,isextreme:!0});K||(p[t]={value:a,ismajor:!0,isMax:!0,isextreme:!0});return{Max:a,Min:b,divArr:p}},getCategoryLen:function(){return this.config.categories?this.config.categories.category.length:0},getCleanValue:function(a,b){var e=this.chart;return(this.components.numberFormatter||e.components.numberFormatter).getCleanValue(a,b)},dataLabels:function(a){var b=this.chart;return(this.components.numberFormatter||b.components.numberFormatter).dataLabels(a,this.config.axisIndex)},setNumberFormatter:function(a){this.components.numberFormatter=
a}},void 0,{setAdaptiveMin:0,adjustDiv:1,axisNameWidth:void 0,rotateAxisName:0,useEllipsesWhenOverflow:1,divLineColor:void 0,divLineAlpha:void 0,divLineThickness:void 0,divLineIsDashed:void 0,divLineDashLen:void 0,divLineDashGap:void 0,showAlternateGridColor:void 0,alternateGridColor:void 0,alternateGridAlpha:void 0,showZeroPlane:1,zeroPlaneAlpha:80,showZeroPlaneValue:1,showZeroPlaneOnTop:0,showAxisLine:void 0,axisLineThickness:void 0,axisLineAlpha:void 0,tickLength:void 0,trendlineToolText:void 0,
trendlineColor:"333333",trendlineThickness:1,trendlineAlpha:void 0,showTrendlinesOnTop:0,trendlinesAreDashed:0,trendlinesDashLen:5,trendlinesDashGap:2,isTrendZone:void 0,showTrendlines:1,showTrendlineLabels:1,showLabels:1,maxLabelHeight:void 0,rotateLabels:void 0,slantLabel:0,showAxisValues:1,showTooltip:1}])}]);Q.register("module",["private","modules.renderer.js-axis-log",function(){var b=this.hcLib,v=b.pluck,J=b.toPrecision,C=b.pluckNumber,H=b.graphics.convertColor,A=b.getDashStyle,b=b.preDefStr,
u=b.POSITION_START,a=b.POSITION_TOP,O=b.POSITION_BOTTOM,q=b.POSITION_END,b=Math,M=b.abs,U=b.log;Q.register("component",["axis","log",{configure:function(){var a=this.config,b=a.rawAttr,r=this.chart.components,k=r.numberFormatter,r=r.colorManager;Q.register("component",["axis","cartesian"]).prototype.configure.call(this);a.minorDivlinecolor=H(v(b.minorDivlinecolor,r.getColor("divLineColor")),C(b.minorDivLineAlpha,r.getColor("divLineAlpha")/2));a.axisMinValue=k.getCleanValue(b.axisMinValue);a.axisMaxValue=
k.getCleanValue(b.axisMaxValue);0>=a.axisMinValue&&(a.axisMinValue=void 0);0>=a.axisMaxValue&&(a.axisMaxValue=void 0);a.minorDivLineThickness=C(b.minorDivLineThickness,1)},setDataLimit:function(a,b){var r=this.config,k=r.axisRange,m=this.getLogAxisLimits,n=r.axisMaxValue,q=r.axisMinValue,r=m(C(a,n),C(b,q),n,q,r.base,r.numMinorDivLines);k.min=Number(J(r.Min,10));k.max=Number(J(r.Max,10));k.divArr=r.divArr||{}},_setTickIntervalAfterZoom:function(){var a=this.config,b=this.chart.config.viewPortConfig,
r=a.isVertical,k=a.axisRange,m=this.getLogAxisLimits,n=a.rawAttr,q,g;a.hasCategory||(r=r?b.scaleY:b.scaleX,b=C(n.axisrange?n.axisrange.max:k.max),g=C(n.axisrange?n.axisrange.min:k.min),n=1===r?a.axisMaxValue:k.max,q=1===r?a.axisMinValue:k.min,C(1===r?a.adjustDiv:0),a=m(b,g,n,q,a.base,a.numMinorDivLines),k.min=Number(J(a.Min,10)),k.max=Number(J(a.Max,10)),k.divArr=a.divArr||{})},getValue:function(a){var b,r,k=this.config,m=k.axisRange,n=k.isVertical;b=k.canvas;r=k.axisDimention||{};var q=this.chart.config,
g=q.viewPortConfig,l=r.axisLength||b.canvasWidth||q.canvasWidth,B=m.max,m=m.min,q=a/(r.axisLength||b.canvasHeight||q.canvasHeight);b=Math.log(m);r=Math.log(B);n?(a=k.isReverse?b-q*(r-b):r-q*(r-b),a=Math.pow(Math.E,a)):(n=l*g.scaleX/(B-m),a=k.isReverse?B-(g.x*g.scaleX+Number(a))/n:m+(g.x*g.scaleX+Number(a))/n);return a},getPixel:function(a){var b=this.config,r=this.chart.config,k=b.axisRange,m=r.viewPortConfig,n=r.canvasHeight,q=r.canvasWidth,g=r.canvasTop,l=r.canvasLeft,B=r.canvasBottom,r=r.canvasRight,
e=k.max,k=k.min,u=b.base,p=U(e)/u,v=U(k)/u;a=U(a)/u-v;m||(m={x:l,y:g,scaleX:1,scaleY:1});b.isVertical?(q=-n*m.scaleY/(p-v),b=b.isReverse?B-(a*q+(n*m.scaleY-m.y*m.scaleY)):g+(a*q+(n*m.scaleY-m.y*m.scaleY))):(q=q*m.scaleX/(U(e-k)/u),b=b.isReverse?r-(a*q-m.x*m.scaleX):l+(a*q-m.x*m.scaleX));return b},_drawPlotLine:function(){var a=this.config,b=a.axisRange,r=a.isVertical,k=this.chart,m=k.config,n=m.canvasLeft,q=m.canvasRight,g=m.canvasTop,m=m.canvasBottom,l=a.showCanvasBorder,B=b.max,e=b.min,u=a.axisPlotLineContainer,
p=k.components.paper,v=this.graphics.line||[],K=0,t=H(a.divLineColor,a.divLineAlpha),Z=a.divLineThickness,P=a.divLineIsDashed?A(a.divLineDashLen,a.divLineDashGap,Z):"none",S=H(a.zeroPlaneColor,a.zeroPlaneAlpha),z=a.zeroPlaneThickness,R=a.animateAxis,w,F,X,h,d,f,c,D,G;h={stroke:t,"stroke-width":Z,"stroke-dasharray":P};P={stroke:a.minorDivlinecolor,"stroke-width":a.minorDivLineThickness,"stroke-dasharray":P};if(a.lines.isDraw){w=k.get("config","animationObj");D=w.animObj;G=w.dummyObj;k=w.transposeAnimDuration;
w=w.animType;this._getVisibleConfig();d=b.divArr;f=d.length;for(b=0;b<f;b++)if(X=d[b],c=X.value,F=this.getPixel(c),X=X.ismajor?h:P,!l||c!==e&&c!==B)if(0!==a.showZeroPlaneValue||0!==a.showZeroPlane||0!==c)0===c&&1===a.showZeroPlane&&1===a.showZeroPlaneValue&&(X.stroke=S,X["stroke-width"]=z),X.path=r?"M"+n+" "+F+"L"+q+" "+F:"M"+F+" "+g+"L"+F+" "+m,v[K]?(F=v[K],k&&R?F.animateWith(G,D,X,k,w):F.attr(X)):(F=p.path(X,u),v[K]=F),0===c&&1===a.showZeroPlane&&1===a.showZeroPlaneValue&&(X.stroke=t,X["stroke-width"]=
Z),K+=1;if(v[K])for(b=K;b<v.length;b++)v[b].attr({path:[]});this.graphics.line=v}else if(v[K])for(b=K;b<v.length;b++)v[b].attr({path:[]})},_drawLabel:function(){var b=this.config,v=this.chart,r=v.config,k=v.components,m=b.axisRange,n=b.isOpposit,L,g=b.labels,l=g.style,B=b.isVertical,e=m.max,V=m.min,p=r.canvasBottom,T=r.canvasLeft,K=r.canvasRight,r=r.canvasTop,t=b.axisContainer,Z=b.labelPadding,P=k.paper,S=b.labelMaxH,z=b.labelMaxW,R=b.axisStartPosition,w=this.graphics.labels||[],F=0,X=b.animateAxis,
h,d,f,c,D,G,A,C={fontFamily:l.fontFamily,fontSize:l.fontSize,fontWeight:l.fontWeight,fontStyle:l.fontStyle,lineHeight:l.lineHeight},H,J,wa,ca;l.lineHeight&&(G=l.lineHeight,-1!==G.indexOf("px")&&(G=G.replace("px",""),parseFloat(G)));if(b.labels.isDraw){h=v.get("config","animationObj");v=h.animObj;G=h.dummyObj;wa=h.animType;h=h.transposeAnimDuration;M(this.getPixel(V)-this.getPixel(V+m.tickInterval));ca=this._isZoomed();b.labels.step?L=m.tickInterval*b.labels.step:L=m.tickInterval;D=b.labels.rotation;
c=this._getVisibleConfig();l={fill:l.color,"font-size":l.fontSize};t.css(C);C=m.divArr;H=C.length;for(m=0;m<H;m++)if(J=C[m],A=J.value,d=this.getPixel(A),!(!J.ismajor&&!b.showMinorDivLineValues||f&&d>f-b.labelMaxH&&d<f+b.labelMaxH||ca&&(A<c.minValue||A>c.maxValue)||!b.labels.drawNormalVal&&(!b.labels.drawLimitVal||A!==V&&A!==e)||!b.labels.drawNormalVal&&A!==V&&A!==e||!(b.labels.drawLimitVal||A!==V&&A!==e)||0===b.showZeroPlaneValue&&0===b.showZeroPlane&&0===A)){if(1===b.showZeroPlane&&1===b.showZeroPlaneValue&&
(0>A&&0<A+L||0<A&&0>A-L))if(B){if(d+S>=this.getPixel(0)&&this.getPixel(0)>=d-S)continue}else if(d+z>=this.getPixel(0)&&this.getPixel(0)>=d-z)continue;B?(f=b.numberFormatterFn?k.numberFormatter[b.numberFormatterFn]:b.isPercent?k.numberFormatter.percentValue:k.numberFormatter.yAxis,f=""+f.call(k.numberFormatter,A),A=b.hasCategory?b.categories.category[m].labelPadding||0:0,l["text-anchor"]=n?u:q,l.text=f,l.x=n?(R||K)+Z:(R||T)-Z,l.y=A?d+A:d,f=l.y):(f=b.numberFormatterFn?k.numberFormatter[b.numberFormatterFn]:
b.isPercent?k.numberFormatter.percentValue:k.numberFormatter.xAxis,f=""+f.call(k.numberFormatter,A),A=b.hasCategory?Number(b.categories.category[m].labelPadding)||0:0,l.text=f,l.x=d,l.y=n?(R||r)-Z:(R||p)+Z,A&&(l.y+=A),D?(l["text-anchor"]=n?u:q,l["vertical-align"]="center"):l["vertical-align"]=n?O:a,f=l.x);g.shiftX&&(l.x+=g.shiftX);g.shiftY&&(l.y+=g.shiftY);l.transform=P.getSuggestiveRotation(D,l.x,l.y);w[F]?(d=w[F],h&&X?d.animateWith(G,v,l,h,wa):d.attr(l)):w[F]=P.text(l,t);F+=1}if(w[F])for(m=F;m<
w.length;m++)w[m].attr({text:""});this.graphics.labels=w}else if(w[F])for(m=F;m<w.length;m++)w[m].attr({text:""})},_drawPlotBand:function(){},_getVMaxLabelDimention:function(){var a=this.config,b=this.chart,r=b.components,k=b.linkedItems.smartLabel,m=a.labels.style,n=0,q=a.axisRange.divArr,g=q.length,l;k.useEllipsesOnOverflow(b.config.useEllipsesWhenOverflow);k.setStyle({fontSize:m.fontSize,fontFamily:m.fontFamily,lineHeight:m.lineHeight,fontWeight:m.fontWeight});b=a.isPercent?r.numberFormatter.percentValue:
r.numberFormatter.xAxis;for(a=0;a<g;a++)m=q[a],m=""+b.call(r.numberFormatter,m.value),m.length>n&&(l=m,n=m.length);return k.getOriSize(l)},_getHMaxLabelDimention:function(){var a=this.config,b=this.chart,r=b.components,k=b.linkedItems.smartLabel,m=a.labels.style,n=0,q=a.axisRange.divArr,g=q.length,l;k.useEllipsesOnOverflow(b.config.useEllipsesWhenOverflow);k.setStyle({fontSize:m.fontSize,fontFamily:m.fontFamily,lineHeight:m.lineHeight,fontWeight:m.fontWeight});b=a.isPercent?r.numberFormatter.percentValue:
r.numberFormatter.xAxis;for(a=0;a<g;a++)m=q[a],m=""+b.call(r.numberFormatter,m.value),m.length>n&&(l=m,n=m.length);return k.getOriSize(l)},getCleanValue:function(a){var b=null,r=this.chart.components.numberFormatter;a=M(a);0<a&&(b=r.getCleanValue(a));return b}},"cartesian",{base:10,showMinorDivLineValues:1,numMinorDivLines:void 0}])}]);Q.register("module",["private","modules.renderer.js-axis-polarcartesan",function(){var b=this.hcLib,v=b.graphics.convertColor,J=b.getDashStyle,C=Math.floor;Q.register("component",
["axis","polarcartesan",{_drawComponents:function(){var b=this.config;b.drawLabels&&this._drawLabel();b.drawPlotlines&&this._drawPlotLine()},_drawPlotLine:function(){var b=this.config,A=b.axisRange,u=A.tickInterval,a=this.chart,O=A.max,A=A.min,q=b.axisPlotLineContainer,M=a.components.paper,U=this.graphics.line||[],N=0,E=v(b.divLineColor,b.divLineAlpha),r=b.divLineThickness,k=b.divLineIsDashed?J(b.divLineDashLen,b.divLineDashGap,r):"none",m=v(b.zeroPlaneColor,b.zeroPlaneAlpha),n=b.zeroPlaneThickness,
L=b.animateAxis,g,l,B,e,V,p,T,K,t,k={stroke:E,"stroke-width":r,"stroke-dasharray":k};g=a.get("config","animationObj");K=g.animObj;t=g.dummyObj;a=g.transposeAnimDuration;g=g.animType;if(b.lines.isDraw){B=this._getVisibleConfig();N=A+u*C((B.minValue-3*u-A)/u);B=A+u*C((B.maxValue+3*u-A)/u);N=N<A?A:N;B=B>O?O:B;V=O=N;for(N=0;O<B;){if(O!==A&&(0!==b.showZeroPlane||0!==O)){0===O&&1===b.showZeroPlane&&(k.stroke=m,k["stroke-width"]=n);k.path=["M"];l=b.polarAxis;e=l.config.categories.category;p=e.length;for(e=
0;e<p;e++)T=l.getPixel(e,l.config.centerY-this.getPixel(O)),k.path.push(T.x,T.y,"L");k.path.pop();k.path.push("Z");U[N]?(l=U[N],a&&L?l.animateWith(t,K,k,a,g):l.attr(k)):(l=M.path(k,q),U[N]=l);0===O&&1===b.showZeroPlane&&(k.stroke=E,k["stroke-width"]=r);N+=1}b.showZeroPlane&&0>O&&0<O+u?(O=0,V+=u):O<V?O=V:(O+=u,V+=u)}if(U[N])for(O=N;O<U.length;O++)U[O].attr({path:[]});this.graphics.line=U}else if(U[N])for(O=N;O<U.length;O++)U[O].attr({path:[]})}},"cartesian"])}]);Q.register("module",["private","modules.renderer.js-axis-gauge",
function(){var b=this.hcLib,v=b.pluck,J=b.toPrecision,C=b.pluckNumber,H=b.graphics.convertColor,A=b.parseUnsafeString,u=b.preDefStr,a=u.POSITION_MIDDLE,O=u.POSITION_START,q=u.POSITION_TOP,M=u.POSITION_BOTTOM,U=u.POSITION_END,u=Math,N=u.round,E=u.min,r=u.max,k=u.abs,m=u.ceil,n=u.pow;Q.register("component",["axis","gauge",{configure:function(){var a=this.config,b=a.rawAttr,l=this.chart.components.colorManager;Q.register("component",["axis","cartesian"]).prototype.configure.call(this);a.majorTMColor=
H(v(b.majorTMColor,l.getColor("tickColor")),C(b.majorTMAlpha,100));a.tickValueStep=C(b.tickValueStep,1);a.tickValueStep=N(a.tickValueStep);0>=a.tickValueStep&&(a.tickValueStep=1);a.connectTickMarks=a.showTickMarks?C(b.connectTickMarks,1):0;a.showTickValues=C(b.showTickValues,a.showTickMarks);a.reverseScale=1==C(b.reverseScale,0);a.minorTMColor=H(v(b.minorTMColor,a.majorTMColor),C(b.minorTMAlpha,a.majorTMAlpha,100));a.minorTMHeight=a.showTickMarks?C(b.minorTMHeight,N(a.majorTMHeight/2)):0;a.tickValueDistance=
C(b.tickValueDistance,0)+2;a.upperLimitDisplay=A(b.upperLimitDisplay)||"";a.lowerLimitDisplay=A(b.lowerLimitDisplay)||"";a.drawTickMarkConnector=b.drawTickMarkConnector||0},setDataLimit:function(a,b){var l=this.config,k=l.axisRange,e=this.getGaugeAxisLimit,m=l.upperlimit,p=l.lowerlimit,n=l.setAdaptiveMin,r=l.majorTMNumber,l=l.adjustTM,t;t=!n;e=e.call(this,C(a,m),C(b,p),m,p,n,t,r,l);k.min=Number(J(e.min,10));k.max=Number(J(e.max,10));k.tickInterval=e.majorTickInt||1;k.numMajorTM=e.numMajorTM},_setTickIntervalAfterZoom:function(){},
_drawComponents:function(){var a=this.config;a.drawTick&&this._drawTick();a.drawLabels&&this._drawLabel();a.drawTrendLines&&this._drawTrendLine()},_drawTick:function(){var a=this.config,b=a.axisRange,l=b.tickInterval,k=a.isVertical,e=a.isOpposit,m=a.drawTick,p=a.drawTickMinor,n=a.canvas,r=this.chart,t=r.config,q=n.canvasBottom||t.canvasBottom,u=n.canvasLeft||t.canvasLeft,v=n.canvasRight||t.canvasRight,z=n.canvasTop||t.canvasTop,n=b.max,t=b.min,R=r.components.paper,w=this.graphics.tick||[],F=a.minorTMNumber,
b=b.numMajorTM||a.majorTMNumber,X=a.axisAxisLineContainer,h=0,d=a.animateAxis,f,c,D,G,A,E;D={stroke:a.majorTMColor,"stroke-width":a.majorTMThickness,"stroke-linecap":"round"};c={stroke:a.minorTMColor,"stroke-width":a.minorTMThickness,"stroke-linecap":"round"};if(a.lines.isDraw&&m){f=r.get("config","animationObj");r=f.animObj;A=f.dummyObj;m=f.transposeAnimDuration;f=f.animType;k?e?a.placeTicksInside?(e=v-a.tickMarkDistance,q=e-a.majorTMHeight,u=e-a.minorTMHeight):(e=v+a.tickMarkDistance,q=e+a.majorTMHeight,
u=e+a.minorTMHeight):a.placeTicksInside?(e=u+a.tickMarkDistance,q=e+a.majorTMHeight,u=e+a.minorTMHeight):(e=u-a.tickMarkDistance,q=e-a.majorTMHeight,u=e-a.minorTMHeight):e?a.placeTicksInside?(e=z+a.tickMarkDistance,q=e+a.majorTMHeight,u=e+a.minorTMHeight):(e=z-a.tickMarkDistance,q=e-a.majorTMHeight,u=e-a.minorTMHeight):a.placeTicksInside?(e=q-a.tickMarkDistance,q=e-a.majorTMHeight,u=e-a.minorTMHeight):(e=q+a.tickMarkDistance,q=e+a.majorTMHeight,u=e+a.minorTMHeight);a=a.drawTickMarkConnector?k?["M",
e,this.getPixel(t),"L",e,this.getPixel(n)]:["M",this.getPixel(t),e,"L",this.getPixel(n),e]:[];D.path=a;w[h]?(a=w[h],m&&d?a.animateWith(A,r,{path:D.path},m,f):a.attr({path:D.path})):(a=R.path(D,X),w[h]=a);h+=1;for(z=0;z<b;z+=1)if(E=z<b-1?J(Number(t+l*z),10):n,D.path=k?"M"+e+" "+this.getPixel(E)+"L"+q+" "+this.getPixel(E):"M"+this.getPixel(E)+" "+e+"L"+this.getPixel(E)+" "+q,w[h]?(a=w[h],m&&d?a.animateWith(A,r,D,m,f):a.attr(D)):(a=R.path(D,X),w[h]=a),h+=1,E!==n&&p)for(v=l/(F+1),G=1;G<=F&&!(E+v*G>=n);G+=
1)c.path=k?"M"+e+" "+this.getPixel(E+v*G)+"L"+u+" "+this.getPixel(E+v*G):"M"+this.getPixel(E+v*G)+" "+e+"L"+this.getPixel(E+v*G)+" "+u,w[h]?(a=w[h],m&&d?a.animateWith(A,r,c,m,f):a.attr(c)):(a=R.path(c,X),w[h]=a),h+=1;if(w[h])for(z=h;z<w.length;z++)w[z].attr({path:[]});this.graphics.tick=w}else if(w[h])for(z=h;z<w.length;z++)w[z].attr({path:[]})},_drawLabel:function(){var b=this.config,g=b.canvas,l=b.axisDimention||{},n=this.chart,e=n.config,r=n.components,p=n.linkedItems.smartLabel,u=b.axisRange,
K=b.isOpposit,t=b.isReverse,v=u.numMajorTM||b.majorTMNumber,P=b.labels,S=P.style,z=b.isVertical,R=u.max,w=u.min,F=g.canvasTop||e.canvasTop,X=g.canvasLeft||e.canvasLeft,h=g.canvasBottom||e.canvasBottom,g=g.canvasRight||e.canvasRight,d=b.axisLabelContainerTop,f=b.labelPadding,c=r.paper,D=b.labelMaxH,G=b.labelMaxW,l=z?l.x:l.y,E=this.graphics.labels||[],A=0,C=b.animateAxis,H,N,ca,ma,qa,va;va={fontFamily:S.fontFamily,fontSize:S.fontSize,fontWeight:S.fontWeight,fontStyle:S.fontStyle,lineHeight:S.lineHeight};
var ha,ra,ka,na;S.lineHeight&&(ma=S.lineHeight,-1!==ma.indexOf("px")&&(ma=ma.replace("px",""),ma=parseFloat(ma)));if(b.labels.isDraw){H=n.get("config","animationObj");ha=H.animObj;ra=H.dummyObj;n=H.transposeAnimDuration;H=H.animType;N=k(this.getPixel(w)-this.getPixel(w+u.tickInterval));z?(b.labelMaxH>N&&!b.hasCategory&&(qa=m(b.labelMaxH/N)),qa>b.labels.step&&(b.labels.step=qa)):(b.labelMaxW>N&&!b.hasCategory&&(qa=m(b.labelMaxW/N)),qa>b.labels.step&&(b.labels.step=qa),ka=X,na=e.width-g);qa=(z?G:N/
2)*b.labels.step;D=z?N/2:D;u=u.tickInterval;G=b.labels.step?b.labels.step:1;p.useEllipsesOnOverflow(e.useEllipsesWhenOverflow);p.setStyle({fontSize:S.fontSize,fontFamily:S.fontFamily,lineHeight:S.lineHeight,fontWeight:S.fontWeight});d.css(va);for(e=0;e<v;e+=G)if(N=e<v-G?J(Number(w+u*e),10):R,b.labels.drawNormalVal||b.labels.drawLimitVal&&(N===w||N===R))if(b.labels.drawNormalVal||N===w||N===R)if(b.labels.drawLimitVal||N!==w&&N!==R){va=r.numberFormatter.scale;if(N===w&&b.lowerLimitDisplay)va=p.getSmartText(b.lowerLimitDisplay,
qa,D+ma/2),ca=va.text;else if(N===R&&b.upperLimitDisplay)va=p.getSmartText(b.upperLimitDisplay,qa,D+ma/2),ca=va.text;else if(b.labels.drawNumericVal||N!==w&&N!==R)if(b.labels.drawNumericVal)ca=va.call(r.numberFormatter,N),va=p.getOriSize(""+ca);else continue;else if(va=p.getSmartText(va.call(r.numberFormatter,N),qa,D+ma/2),va.text===va.oriText)ca=va.text;else continue;z?(ca={fill:S.color,"line-height":ma,"text-anchor":K?O:U,text:ca,x:K?(l||g)+f:(l||X)-f,y:this.getPixel(N)},(!t&&N===w&&b.lowerLimitDisplay||
t&&N===R&&b.upperLimitDisplay)&&va.height>ma&&(ca["vertical-align"]=M),(!t&&N===R&&b.upperLimitDisplay||t&&N===w&&b.lowerLimitDisplay)&&va.height>ma&&(ca["vertical-align"]=q),b.placeValuesInside&&(ca["text-anchor"]=K?U:O)):(ca={fill:S.color,"line-height":ma,text:ca,"text-anchor":a,x:this.getPixel(N),y:K?(l||F)-f:(l||h)+f},(!t&&N===w||t&&N===R)&&va.width>2*ka&&(ca["text-anchor"]=O),(!t&&N===R||t&&N===w)&&va.width>2*na&&(ca["text-anchor"]=U),ca["vertical-align"]=b.placeValuesInside?K?q:M:K?M:q);P.shiftX&&
(ca.x+=P.shiftX);P.shiftY&&(ca.y+=P.shiftY);E[A]?(N=E[A],n&&C?N.animateWith(ra,ha,ca,n,H):N.attr(ca)):E[A]=N=c.text(ca,d);va&&va.tooltext?(N.tooltip(va.tooltext),N.trackTooltip(!0)):N.trackTooltip(!1);A+=1}if(E[A])for(e=A;e<E.length;e++)E[e].attr({text:""});this.graphics.labels=E}else if(E[A])for(e=A;e<E.length;e++)E[e].attr({text:""})},placeAxis:function(a){var b=this.chart,l=b.components,m=b.linkedItems.smartLabel,e=this.config,n=e.axisRange,p=e.isVertical,q=e.isOpposit,K=e.labels.style,t=n.tickInterval,
u=n.max,P=n.min,v,z=0,R=0,n="",w,F,X,h,d;w={left:0,right:0,top:0,bottom:0};if(0>=a)return w;e.labels.isDraw=!0;e.labels.drawNumericVal=!0;e.labels.drawNormalVal=e.showTickValues;e.labels.drawLimitVal=e.showLimits;e.lines.isDraw=!0;e.labels.step=e.tickValueStep;e.labelPadding=0;m.useEllipsesOnOverflow(b.config.useEllipsesWhenOverflow);m.setStyle({fontSize:K.fontSize,fontFamily:K.fontFamily,lineHeight:K.lineHeight,fontWeight:K.fontWeight});e.drawTick&&e.showTickMarks&&e.lines.isDraw?(a-=e.tickMarkDistance,
R=r(e.minorTMHeight,e.majorTMHeight),e.placeTicksInside?(a+=e.tickMarkDistance,e.placeValuesInside&&(e.labelPadding=e.tickMarkDistance+R)):R>a?e.lines.isDraw=!1:(p?q?w.right+=R+e.tickMarkDistance:w.left+=R+e.tickMarkDistance:q?w.top+=R+e.tickMarkDistance:w.bottom+=R+e.tickMarkDistance,a-=R,e.placeValuesInside||(e.labelPadding=e.tickMarkDistance+R))):e.lines.isDraw=!1;a-=e.tickValueDistance;if(e.drawLabels&&(e.showTickValues||e.showLimits)){b=k(this._getCustomPixel(P)-this._getCustomPixel(P+t))/2;
e.labelPadding+=e.tickValueDistance;a-=e.tickValueDistance;v=l.numberFormatter.scale;for(F=P+t;F<u;F+=t)K=""+v.call(l.numberFormatter,J(F,10)),K.length>z&&(n=K,z=K.length);R=m.getOriSize(n);p?R.width>a&&(e.labels.drawNumericVal=!1,e.upperLimitDisplay||e.lowerLimitDisplay||(e.labels.isDraw=!1),n="",R=m.getOriSize(n)):R.height>a&&(e.labels.drawNumericVal=!1,e.upperLimitDisplay||e.lowerLimitDisplay||(e.labels.isDraw=!1),n="",R=m.getOriSize(n));z=p?a:b;K=p?b:a;e.showLimits?(F=v.call(l.numberFormatter,
u),h=v.call(l.numberFormatter,P),l=e.upperLimitDisplay||""+F,v=e.lowerLimitDisplay||""+h,d=m.getOriSize(l),d.width>R.width&&(X=m.getSmartText(l,z,K),l===F&&X.text===X.oriText||e.labels.drawNumericVal)&&(n=l,R=d),F=m.getOriSize(v),F.width>R.width&&(X=m.getSmartText(v,z,K),v===h&&X.text===X.oriText||e.labels.drawNumericVal)&&(n=v),""===n&&(n=m.getOriSize(e.upperLimitDisplay).width>m.getOriSize(e.lowerLimitDisplay).width?l:v,R=m.getOriSize(n))):e.labels.drawLimitVal=!1;if(p)m.getSmartText(n,z,K);else for(F=
P;F<=u;F+=t)if(P=m.getSmartText(n,z,K),""===P.text)z+=b;else break;P=m.getSmartText(n,z,K);e.labelMaxW=r(P.width,R.width);e.labelMaxH=r(P.height,R.height);!e.placeValuesInside&&e.labels.isDraw?p?(e.labelMaxW=E(e.labelMaxW,a),q?w.right+=e.labelMaxW+e.tickValueDistance:w.left+=e.labelMaxW+e.tickValueDistance):(e.labelMaxH=E(e.labelMaxH,a),q?w.top+=e.labelMaxH+e.tickValueDistance:w.bottom+=e.labelMaxH+e.tickValueDistance):e.labelPadding=-e.labelPadding}else e.labels.isDraw=!1;return e.spaceTaken=w},
getGaugeAxisLimit:function(a,b,l,k,e,m,p,r){var q=!0,t=!0,u=Number(l),v=Number(k),S,z;z={max:0,min:0,MajorTickInterval:1,numMajorTM:p};if(l&&k)u>a&&(a=u),v<b&&(b=v);else if(isNaN(a)&&(a=.9,t=!1),isNaN(b)&&(b=0,q=!1),a===b&&0===a&&(isNaN(u)||(a=u),isNaN(u)||0===u))a=.9;S=Math.max(Math.floor(Math.log(Math.abs(b))/Math.LN10),Math.floor(Math.log(Math.abs(a))/Math.LN10));p=n(10,S);2>Math.abs(a)/p&&2>Math.abs(b)/p&&(S--,p=n(10,S));S=n(10,Math.floor(Math.log(a-b)/Math.LN10));0<a-b&&10<=p/S&&(p=S);S=(Math.floor(a/
p)+1)*p;0>b?m=-1*(Math.floor(Math.abs(b/p))+1)*p:m?m=0:(m=Math.floor(Math.abs(b/p)-1)*p,m=0>m?0:m);e&&0>=a&&(S=0);z.max=!l||l&&u<a&&t?S:u;z.min=!k||k&&v>b&&q?m:v;z.min>z.max?z.min==v&&z.max==u?(k=z.min,z.min=z.max,z.max=k):z.min==v?z.max=z.min+1:z.max==u&&(z.min=z.max-1):z.min==z.max&&(z.max=z.min+1);z.range=Math.abs(z.max-z.min);z.MajorTickInterval=p;this.calcTickInterval(z,l,r);z.max>u&&u>=a&&(z.max=u,z.range=u-z.min,z.numMajorTM=Math.ceil(z.range/z.majorTickInt)+1);z.min<v&&v<=b&&(z.min=v,z.range=
z.max-v,z.numMajorTM=Math.ceil(z.range/z.majorTickInt)+1);return z},calcTickInterval:function(a,b,l){var k=0;-1!=a.numMajorTM&&2>a.numMajorTM&&(a.numMajorTM=2);b||b||-1===a.numMajorTM?(a.numMajorTM=-1==a.numMajorTM?5:a.numMajorTM,l&&(b=function(a,b){for(var g=0,l=1,k;;){k=a.numMajorTM+g*l;k=0===k?1:k;if(b.isRangeDivisible(a.range,k,a.MajorTickInterval))break;g=-1==l||g>a.numMajorTM?++g:g;if(25<g){k=a.numMajorTM;break}l=g<=a.numMajorTM?-1*l:1}a.numMajorTM=1<k?k:a.numMajorTM},l=a.numMajorTM,b(a,this),
2===a.numMajorTM&&(a.numMajorTM=l,1<a.range&&(a.range+=1,0>a.min?--a.min:a.max+=1),b(a,this),k=0))):(a.numMajorTM=-1==a.numMajorTM?5:a.numMajorTM,b=this.getDivisibleRange(a.min,a.max,a.range,a.numMajorTM,a.MajorTickInterval,!0),l=b-a.range,a.range=b,0<a.max?a.max+=l:a.min-=l);a.majorTickInt=(a.max-a.min+k)/(a.numMajorTM-1)},isRangeDivisible:function(a,g,l){a/=g-1;g=new b.MathExt;return g.numDecimals(a)>g.numDecimals(l)?!1:!0},getDivisibleRange:function(a,b,l,k,e,m){if(3>k)return l;a=Math.abs(b-a);
b=a/(k-1);this.isRangeDivisible(a,k,e)||(m&&Number(b)/Number(e)<(1<e?2:.5)&&(e/=10),b=(Math.floor(b/e)+1)*e,a=b*(k-1));return a}},"cartesian",{majorTMNumber:-1,majorTMHeight:6,showTickMarks:1,majorTMThickness:1,upperlimit:void 0,lowerlimit:void 0,adjustTM:1,minorTMNumber:4,minorTMThickness:1,tickMarkDistance:3,placeTicksInside:0,placeValuesInside:0}])}]);Q.register("module",["private","modules.renderer.js-axis-polarGauge",function(){var b=this.hcLib,v=b.pluck,J=b.toPrecision,C=b.pluckNumber,H=b.graphics.convertColor,
A=b.parseUnsafeString,u=b.getDashStyle,a=b.getValidValue,O=b.getFirstValue,b=b.preDefStr,q=b.POSITION_MIDDLE,M=b.POSITION_START,U=b.POSITION_TOP,N=b.POSITION_BOTTOM,E=b.POSITION_END,r=Math,k=r.sin,m=r.cos,n=r.abs,L=2*r.PI;Q.register("component",["axis","polarGauge",{configure:function(){var a=this.config,b=a.rawAttr;Q.register("component",["axis","gauge"]).prototype.configure.call(this);a.upperLimitDisplay=b.upperLimitDisplay||"";a.lowerLimitDisplay=b.lowerLimitDisplay||"";a.polarPadding=4},_drawComponents:function(){var a=
this.config;a.drawTick&&this._drawTick();a.drawLabels&&this._drawLabel();a.drawTrendLines&&this._drawTrendLine()},getAxisPosition:function(a,b){return this.getPixel(a,b)},getPixel:function(a,b){var n=this.config,e=n.axisRange,r=e.min,p=e.max-r,q=n.startAngle||L/2,K=n.totalAngle||L/2,t=n.centerX||0,e=n.centerY||0;b=C(b,n.radius,0);n=q+K/p*(a-r);r=t+b*m(n);e+=b*k(n);return{x:r,y:e,angle:n}},getAngle:function(a){var b=this.config,k=b.axisRange,e=k.min;return(b.startAngle||L/2)+(b.totalAngle||L/2)/(k.max-
e)*(a-e)},placeAxis:function(a){var b=this.config,k=this.chart,e=k.components,m=k.linkedItems.smartLabel,p=b.axisRange,r=b.labels.style,q=p.tickInterval,t=b.upperLimitDisplay,u=b.lowerLimitDisplay,v=p.max,S=p.min,z=0,R,p={left:0,right:0,top:0,bottom:0};m.useEllipsesOnOverflow(k.config.useEllipsesWhenOverflow);m.setStyle({fontSize:r.fontSize,fontFamily:r.fontFamily,lineHeight:r.lineHeight,fontWeight:r.fontWeight});b.labels.isDraw=1;b.labels.drawNormalVal=1;b.labels.drawLimitVal=1;b.lines.isDraw=1;
b.labels.step=b.tickValueStep;b.labelPadding=0;if(b.drawLabels&&b.showTickValues&&0<a){n(this.getPixel(S)-this.getPixel(S+q));b.labelPadding+=b.tickValueDistance;k=e.numberFormatter.scale;for(r=S;r<=v;r+=q)S=""+k.call(e.numberFormatter,J(r,10)),S.length>z&&(R=S,z=S.length);e=m.getOriSizeImprove(R,!0);if(e.width>a/2)return b.labels.isDraw=!1,p;if(b.showLimits){if(""!==t||""!==u)t=m.getOriSizeImprove(t,!0),t.width>e.width&&(e=t),t=m.getOriSizeImprove(u,!0),t.width>e.width&&(e=t)}else b.labels.drawLimitVal=
!1;b.labelMaxW=e.width;b.labelMaxW>a/2&&(b.labelMaxW=a/2);b.labelMaxH=e.height;b.placeValuesInside?b.labelPadding=-b.labelPadding:(p.right+=b.labelMaxW+b.tickValueDistance,p.left+=b.labelMaxW+b.tickValueDistance,p.top+=b.labelMaxH+b.tickValueDistance,p.bottom+=b.labelMaxH+b.tickValueDistance)}else b.labels.isDraw=!1;return p},_drawLabel:function(){var a=this.config,b=this.chart,k=b.components,e=a.axisRange,m=b.linkedItems.smartLabel,p,n=a.labels.style,r=a.labelPadding||0,t=!1,u=a.radius,v=C(a.gaugeOuterRadius,
u),u=C(a.gaugeInnerRadius,u),S=a.centerX,z=a.centerY,R=a.placeValuesInside,w=a.labelMaxH,F=a.labelMaxW,X=e.max,h=e.min,d=a.axisLabelContainerTop,f=k.paper,c=this.graphics.labels||[],D=0,G=a.animateAxis,L,A,H;L={fontFamily:n.fontFamily,fontSize:n.fontSize,fontWeight:n.fontWeight,fontStyle:n.fontStyle,lineHeight:n.lineHeight};var O,wa,ca;n.lineHeight&&(H=n.lineHeight,-1!==H.indexOf("px")&&(H=H.replace("px",""),H=parseFloat(H)));m.useEllipsesOnOverflow(b.config.useEllipsesWhenOverflow);m.setStyle({fontSize:n.fontSize,
fontFamily:n.fontFamily,lineHeight:n.lineHeight,fontWeight:n.fontWeight});if(a.labels.isDraw){D=b.get("config","animationObj");O=D.animObj;wa=D.dummyObj;b=D.transposeAnimDuration;ca=D.animType;a.labels.step?p=e.tickInterval*a.labels.step:p=e.tickInterval;d.css(L);e=h;for(D=0;e<=X;e+=p)if(a.labels.drawNormalVal||a.labels.drawLimitVal&&(e===h||e===X))if(a.labels.drawNormalVal||e===h||e===X)if(a.labels.drawLimitVal||e!==h&&e!==X)if(0!==a.showZeroPlaneValue||0!==a.showZeroPlane||0!==e)L=k.numberFormatter.scale,
e===h&&a.lowerLimitDisplay?(L=m.getSmartText(a.lowerLimitDisplay,F,w),L=L.text):e===X&&a.upperLimitDisplay?(L=m.getSmartText(a.upperLimitDisplay,F,w),L=L.text):L=L.call(k.numberFormatter,J(e,10)),A=R?this.getPixel(e,u+r-a.polarPadding):this.getPixel(e,v+r+a.polarPadding),L={fill:n.color,"line-height":H,text:L,x:A.x,y:A.y},A.x>S-10&&A.x<S+10&&A.y<z?(L["text-anchor"]=q,L["text-valign"]=R?U:N):A.x>S-10&&A.x<S+10&&A.y<z?(L["text-anchor"]=q,L["text-valign"]=R?N:U):(L["text-anchor"]=A.x<S?R?M:E:R?E:M,L["text-valign"]=
"center"),c[D]?(A=c[D],b&&G?A.animateWith(wa,O,L,b,ca):A.attr(L)):c[D]=f.text(L,d),D+=1,!t&&e<X&&e+p>X&&(e=X-p,t=!0);if(c[D])for(e=D;e<c.length;e++)c[e].attr({text:""});this.graphics.labels=c}else if(c[D])for(e=D;e<c.length;e++)c[e].attr({text:""})},_drawTick:function(){var a=this.config,b=a.axisRange,k=b.tickInterval,e=a.drawTick,m=a.drawTickMinor,p=this.chart,n=p.components,q=b.max,t=b.min,u=a.radius,b=C(a.gaugeOuterRadius,u),u=C(a.gaugeInnerRadius,u),n=n.paper,v=this.graphics.tick||[],L=a.minorTMNumber,
z=0,R=a.animateAxis,w=!1,F,X,h,d,f,c,D,G,A,E;G=a.axisAxisLineContainer;d={stroke:a.majorTMColor,"stroke-width":a.majorTMThickness,"stroke-linecap":"round"};h={stroke:a.minorTMColor,"stroke-width":a.minorTMThickness,"stroke-linecap":"round"};if(a.lines.isDraw&&e){z=p.get("config","animationObj");p=z.animObj;A=z.dummyObj;e=z.transposeAnimDuration;E=z.animType;X=this._getVisibleConfig();z=t+k*r.floor((X.minValue-3*k-t)/k);X=t+k*r.floor((X.maxValue+3*k-t)/k);X=X>q?q:X;t=z<t?t:z;for(z=0;t<=X;t+=k){a.placeTicksInside?
(F=this.getPixel(t,u),f=this.getPixel(t,u+a.majorTMHeight)):(F=this.getPixel(t,b),f=this.getPixel(t,b-a.majorTMHeight));d.path="M"+F.x+" "+F.y+"L"+f.x+" "+f.y;v[z]?(F=v[z],e&&R?F.animateWith(A,p,d,e,E):F.attr(d)):(F=n.path(d,G),v[z]=F);z+=1;if(t<q&&m)for(f=k/(L+1),D=1;D<=L;D+=1)c=t+f*D,a.placeTicksInside?(F=this.getPixel(c,u),c=this.getPixel(c,u+a.minorTMHeight)):(F=this.getPixel(c,b),c=this.getPixel(c,b-a.minorTMHeight)),h.path="M"+F.x+" "+F.y+"L"+c.x+" "+c.y,v[z]?(F=v[z],e&&R?F.animateWith(A,p,
h,e,E):F.attr(h)):(F=n.path(h,G),v[z]=F),z+=1;!w&&t<q&&t+k>q&&(t=q-k,w=!0)}if(v[z])for(t=z;t<v.length;t++)v[t].attr({path:[]});this.graphics.tick=v}else if(v[z])for(t=z;t<v.length;t++)v[t].attr({path:[]})},_drawPlotBand:function(){},_drawPlotLine:function(){},_drawTrendLine:function(){var b,l,k,e,m,p,n,K,t,Z,P,L,z,R,w,F,X,h,d=this.config,f=d.axisRange,c=f.max,f=f.min,D=this.chart;L=D.config;var G=D.linkedItems.smartLabel,J=D.components,N=J.colorManager,Ia=d.scaleFactor,sa=d.centerX||0,wa=d.centerY||
0,ca=d.canvas.canvasWidth||L.canvasWidth,ma=d.trend.trendStyle,qa=d.axisTrendContainerTop,va=d.axisTrendContainerBottom,ha=d.axisTrendLabelContainer,ra=J.paper,ka=this.components.trendObj||[],na={fontFamily:ma.fontFamily,fontSize:ma.fontSize,lineHeight:ma.lineHeight,fontWeight:ma.fontWeight,fontStyle:ma.fontStyle},da=d.trendPoints,oa=r.PI/180,Y={},Q=d.animateAxis,fa,Aa,ua;fa=0;var ia;e={};K={};k={};m={};var xa={},ja,ya,W,Ma,ea,ga,la,Ca,Ha,pa,La,Ja;if(da){fa=D.get("config","animationObj");pa=fa.animObj;
La=fa.dummyObj;D=fa.transposeAnimDuration;Ja=fa.animType;G.useEllipsesOnOverflow(L.useEllipsesWhenOverflow);G.setStyle(na);fa=Aa=0;for(ua=da.point.length;Aa<ua;Aa+=1)ja=da.point[Aa],ya=C(ja.startvalue,ja.value),W=C(ja.endvalue,ya),ia=ya!==W,ya<=c&&ya>=f&&W<=c&&W>=f&&(b=ya,l=W,a(A(ja.markertooltext)),k=a(A(ja.displayvalue),ia?"":J.numberFormatter.scale(ya)),C(ja.showontop,d.ticksBelowGauge,d.ticksBelowGraph,1),e=v(ja.color,N.getColor("trendLightColor")),m=C(ja.alpha,99),p=C(ja.thickness,1),n=ja.dashed?
u(ja.dashlen||2,ja.dashgap||2,ja.thickness||1):"",K=C(ja.usemarker,0),t=H(v(ja.markercolor,ja.color,N.getColor("trendLightColor")),100),Z=H(v(ja.markerbordercolor,ja.bordercolor,N.getColor("trendDarkColor")),100),P=C(C(ja.markerradius)*Ia,5),L=O(ja.markertooltext),z=C(C(ja.trendvaluedistance,d.trendValueDistance)*Ia,d.polarPadding),R=C(ja.valueinside,d.placeValuesInside,0),w=C(ja.showborder,1),F=H(v(ja.bordercolor,ja.color,N.getColor("trendDarkColor")),C(ja.borderalpha,ja.alpha,100)),X=C(C(ja.radius)*
Ia),h=C(C(ja.innerradius)*Ia),Ma=Math.cos(89.99*oa),ea=-Ma,X=C(X,d.gaugeOuterRadius),h=C(h,ia?Math.max(d.gaugeInnerRadius-15,0):d.gaugeInnerRadius),ga=this.getPixel(ya,X),la=this.getPixel(ya,h),Ca=ga.x,ga=ga.y,Ha=la.x,la=la.y,W=this.getAngle(W),ya=this.getAngle(ya),ia?(ya>W&&(ya+=W,W=ya-W,ya-=W),e={fill:H(e,m),"stroke-width":w?p:0,stroke:F,"stroke-dasharray":n},m={ringpath:[sa,wa,X,h,ya,W]}):(e={"stroke-width":w?p:0,stroke:F,"stroke-linecap":"round","stroke-dasharray":n},m={path:["M",Ca,ga,"L",Ha,
la]}),K?(K={fill:t,"stroke-width":1,stroke:Z},xa={polypath:[3,Ca,ga,P,(-ya+Math.PI)/oa,0]}):K={},""!==k?(Y=(l+b)/2,W=this.getAngle(Y),b=Math.cos(W),l=Math.sin(W),P=G.getOriSize(k).width,R?(Y=h-2-z,z=b>Ma?E:b<ea?M:q):(Y=X+2+z,z=b>Ma?M:b<ea?E:q),Ca=sa+Y*b,ga=wa+Y*l,Y=G.getOriSize(k).height,Y=G.getSmartText(k,ca,Y),Ca=ca<Ca+P?ca-P/2:Ca<P?P/2:Ca,P>ca&&(Ca=ca/2),k={fill:ja.color||ma.color,text:Y.text,"text-anchor":z,"vertical-align":U,x:Ca,y:ga},ja=Y.height,ga=b>Ma||b<ea?ga+(-(ja/2)+.4*ja*l*(R?-1:1)):
R?ga+-(0>l?0:ja):ga+-(0<l?0:ja),k.y=ga):k={text:""},ka[fa]?(R=ka[fa].graphics.drawing,ia=ka[fa].graphics.label,Ma=ka[fa].graphics.marker,R.attr(e),Ma.attr(K),Ma.tooltip(L),ia.css(na).tooltip(Y.oriText),D&&Q?(R.animateWith(La,pa,m,D,Ja),Ma.animateWith(La,pa,xa,D,Ja),ia.animateWith(La,pa,k,D,Ja)):(R.attr(m),Ma.attr(xa),ia.attr(k)),d.showTooltip&&Y.oriText?ia.trackTooltip(!0):ia.trackTooltip(!1),Ma.trackTooltip(d.showTooltip&&""!==L)):(R=ia?ra.ringpath(sa,wa,X,h,ya,W,va):ra.path(qa),ia=ra.text(k,na,
ha),Ma=ra.polypath(qa),R.attr(e),R.attr(m),Ma.attr(K),Ma.attr(xa),Ma.tooltip(L),ia.tooltip(Y.oriText),d.showTooltip&&Y.oriText?ia.trackTooltip(!0):ia.trackTooltip(!1),Ma.trackTooltip(d.showTooltip&&""!==L),ka[fa]={},ka[fa].graphics={},ka[fa].graphics.drawing=R,ka[fa].graphics.label=ia,ka[fa].graphics.marker=Ma),fa+=1);this.components.trendObj=ka}if(ka[fa])for(Aa=fa;Aa<ka.length;Aa++)ka[Aa].graphics.drawing.attr({path:["M",0,0]}),ka[Aa].graphics.marker.attr({polypath:["M",0,0]}),ka[Aa].graphics.label.attr({text:"",
"text-bound":[]});for(Aa=0;Aa<fa;Aa++)ka[Aa].graphics.label.attr({"text-bound":[ma.backgroundColor,ma.borderColor,ma.borderThickness,ma.borderPadding,ma.borderRadius,ma.borderDash]})}},"gauge",{trendPoints:void 0,ticksBelowGauge:void 0,ticksBelowGraph:void 0,trendValueDistance:void 0}])}]);Q.register("module",["private","modules.renderer.js-axis-polar",function(){var b=this.hcLib,v=b.pluck,J=b.pluckNumber,C=b.setLineHeight,H=b.graphics.convertColor,A=b.getDashStyle,u=b.plotEventHandler,b=b.preDefStr,
a=b.POSITION_MIDDLE,O=b.POSITION_START,q=b.POSITION_TOP,M=b.POSITION_BOTTOM,U=b.POSITION_END,b=Math,N=b.sin,E=b.cos,r=b.min,k=b.PI,m=2*k;Q.register("component",["axis","polar",{configure:function(){var a=this.config,b=a.rawAttr,g=this.chart.components.colorManager;Q.register("component",["axis","cartesian"]).prototype.configure.call(this);a.gridLineColor=H(v(b.radarSpikeColor,g.getColor("divLineColor")),J(b.radarSpikeAlpha,b.radarInLineAlpha,g.getColor("divLineAlpha")));a.radarBorderColor=H(v(b.radarBorderColor,
g.getColor("divLineColor")),J(b.radarBorderAlpha,100));a.radarFillColor=H(v(b.radarFillColor,g.getColor("altHGridColor")),J(b.radarFillAlpha,g.getColor("altHGridAlpha")))},_drawComponents:function(){var a=this.config;a.drawLabels&&a.hasCategory&&this._drawCategory()},getAxisPosition:function(a,b){return this.getPixel(a,b)},getPixel:function(a,b){var g=this.config,l=g.axisRange,k=l.min,e=l.max-k+1,r=g.startAngle||-(m/4),p=g.totalAngle||-m,q=g.centerX||0,l=g.centerY||0;b=J(b,g.radius,0);g=r+p/e*(a-
k);k=q+b*E(g);l+=b*N(g);return{x:k,y:l}},getAngle:function(a,b){var g=this.config;return(180/k*Math.atan2(b-(g.centerY||0),(g.centerX||0)-a)+450)%360},_drawCategory:function(){var b=this.config,k=this.chart,g=b.isOpposit,l=b.labels,m=l.style,e=b.axisContainer,r=b.axisPlotLineContainer,p=k.components.paper,E=this.components.categoryLabel||[],K=this.graphics.radarBorder||[],t=k.jsonData.categories,Z=b.categories.category,P=b.labelPadding,S,z,R,w,F,X,h=b.gridLineColor,d=b.gridLineWidth,f=function(a){return function(c){u.call(this,
k,c,a)}},c=0,D=b.centerX,G=b.centerY,aa=b.animateAxis,N,Ia,sa,wa,ca,ma,qa,va,ha,ra,ka;va=J(b.radius,0);sa=Z?Z.length-1:0;N=k.get("config","animationObj");ha=N.animObj;ra=N.dummyObj;Ia=N.transposeAnimDuration;ka=N.animType;w={stroke:b.radarBorderColor,fill:b.radarFillColor,"stroke-width":b.radarBorderThickness,path:["M"]};if(0!==b.showRadarBorder){for(c=N=0;N<=sa;N++)ma=this.getPixel(N,va),w.path.push(ma.x,ma.y,"L");w.path.pop();w.path.push("Z")}K[0]?Ia&&aa?K[0].animate(w,Ia):K[0].attr(w):K[0]=p.path(w,
r);this.graphics.radarBorder=K;if(b.labels.isDraw){t&&(S=t[0].font,z=t[0].fontsize,R=t[0].fontcolor);for(c=N=0;N<=sa;N++)if(K=Z[N],ma=J(K.x,K.y,N),b.labels.drawNormalVal||b.labels.drawLimitVal&&(0===N||ma===sa))if(b.labels.drawNormalVal||0===ma||ma===sa)if(b.labels.drawLimitVal||0!==ma&&ma!==sa){t=v(K.font,K.labelfont);w=v(K.fontsize,K.labelfontsize);F=J(K.fontbold,K.labelfontbold,0)?"bold":void 0;X=J(K.fontitalic,K.labelfontitalic,0)?"italic":void 0;ca=H(v(K.fontcolor,K.labelfontcolor,R,m.color),
J(K.labelalpha,b.rawAttr.labelFontAlpha,100));t={fontFamily:v(t,S,m.fontFamily),fontSize:v(w,z,m.fontSize),fontWeight:v(F,m.fontWeight),fontStyle:v(X,m.fontStyle)};t.lineHeight=C(t);t.lineHeight&&(wa=t.lineHeight,-1!==wa.indexOf("px")&&(wa=wa.replace(/px/i,""),wa=parseFloat(wa)));w=this.getPixel(ma,va+P);X=w.x;qa=w.y;w=K.label||"";if(0===J(K.showlabel,1)||0===b.showLabels)w="";F=Number(K.labelPadding)||0;ca={fill:ca,"line-height":wa,"font-size":m.fontSize,text:w,cursor:K.link?"pointer":"",x:X,y:qa};
F&&(ca.y+=F);ca["vertical-align"]=g?M:q;0===N?(ca["text-anchor"]=a,ca["vertical-align"]=M):N===(sa+1)/2?(ca["text-anchor"]=a,ca["vertical-align"]=q):(ca["text-anchor"]=N<(sa+1)/2?U:O,ca["vertical-align"]="center");ma=this.getPixel(ma,va);F={stroke:h,"stroke-width":d,"stroke-dasharray":"none",path:["M",D,G,"L",ma.x,ma.y]};l.shiftX&&(ca.x+=l.shiftX);l.shiftY&&(ca.y+=l.shiftY);E[c]?(ma=E[c].graphics.line,Ia&&aa?ma.animateWith(ra,ha,F,Ia,ka):ma.attr(F),F=E[c].graphics.label,Ia&&aa?F.animateWith(ra,ha,
ca,Ia,ka):F.attr(ca),F.css(t),b.showTooltip&&K.tooltext?(F.tooltip(K.tooltext),F.trackTooltip(!0)):F.trackTooltip(!1)):(ma=p.path(F,r),F=p.text(ca,t,e),b.showTooltip&&K.tooltext?(F.tooltip(K.tooltext),F.trackTooltip(!0)):F.trackTooltip(!1),F.click(f("datalabelclick")).hover(f("dataLabelRollOver"),f("dataLabelRollOut")),E[c]={},E[c].graphics={},E[c].config={},E[c].graphics.line=ma,E[c].graphics.label=F);E[c].config.labelBox={label:w,lineHeight:t.lineHeight,border:J(K.borderthickness,K.labelborderthickness)?
J(K.borderthickness,K.labelborderthickness,1)+"px solid":"",borderColor:K.bordercolor||K.labelbordercolor?H(K.bordercolor||K.labelbordercolor,J(K.borderalpha,K.labelborderalpha,K.alpha,K.labelalpha,100)):"",borderThickness:J(K.borderthickness,K.labelborderthickness),borderPadding:J(K.borderpadding,K.labelborderpadding),borderRadius:J(K.borderradius,K.labelborderradius),backgroundColor:K.bgcolor||K.labelbgcolor?H(K.bgcolor||K.labelbgcolor,J(K.bgalpha,K.labelbgalpha,K.alpha,K.labelalpha,100)):"",borderDash:J(K.borderdashed,
K.labelborderdashed,0)?A(J(K.borderdashlen,K.labelborderdashlen,4),J(K.borderdashgap,K.labelborderdashgap,2),J(K.borderthickness,K.labelborderthickness,1)):0===J(K.borderdashed,K.labelborderdashed)?"none":m.borderDash};E[c].graphics.label.data("eventArgs",{link:K.link||K.labellink||m.labelLink,text:ca.text,index:c});c+=1}if(E[c])for(N=c;N<E.length;N++)E[N].graphics.line.attr({path:["M",0,0]}),E[N].graphics.label.attr({text:"","text-bound":[]});this.components.categoryLabel=E}else if(E[c])for(N=c;N<
E.length;N++)E[N].graphics.line.attr({path:["M",0,0]}),E[N].graphics.label.attr({text:"","text-bound":[]});for(N=0;N<c;N++)b=E[N].config.labelBox,b.label?E[N].graphics.label.attr({"text-bound":[v(b.backgroundColor,m.backgroundColor),v(b.borderColor,m.borderColor),v(b.borderThickness,m.borderThickness),v(b.borderPadding,m.borderPadding),v(b.borderRadius,m.borderRadius),v(b.borderDash,m.borderDash)]}):E[N].graphics.label.attr({"text-bound":[]})},placeAxis:function(a,b){var g,l,k,e,m,p,q=this.config,
u=this.chart,t=u.linkedItems.smartLabel,Z=q.labels.style,P=u.jsonData.categories,S=q.labelPadding=J(q.rawAttr.axisValuePadding,10),z=q.useEllipsesWhenOverflow,R=0,w=0,F=0,X=0,h=b/2,d=b/2,f=a/2,c=a/2,D,G;D=q.categories.category;q.labels.isDraw=1;q.labels.drawNormalVal=1;q.labels.drawLimitVal=1;if(q.showLabels)for(P&&(m=P[0].font,p=P[0].fontsize),q=0,P=D.length;q<P;q++)G=D[q],g=G.font,l=G.fontsize,k=G.fontbold?"bold":"normal",e=G.fontitalic?"italic":"normal",g={fontFamily:v(g,m,Z.fontFamily),fontSize:v(l,
p,Z.fontSize),fontWeight:v(k,Z.fontWeight),fontStyle:v(e,Z.fontStyle)},l=C(g),t.useEllipsesOnOverflow(u.config.useEllipsesWhenOverflow),t.setStyle(g),0===q?(g=t.getSmartText(G.label,a,r(l,h),z),G.oriLabel=G.label,G.label=g.text,g.width+=S,g.height+=S,g.height>R&&(X=R=g.height)):q===P/2?(g=t.getSmartText(G.label,a,r(l,d),z),G.oriLabel=G.label,G.label=g.text,g.width+=S,g.height+=S,g.height>X&&(X=g.height)):q<P/2?(g=t.getSmartText(G.label,c,l,z),G.oriLabel=G.label,G.label=g.text,g.width+=S,g.height+=
S,g.width>w&&(w=g.width)):(g=t.getSmartText(G.label,f,l,z),G.oriLabel=G.label,G.label=g.text,g.width+=S,g.height+=S,g.width>F&&(F=g.width));return{top:R,left:w,right:F,bottom:X}}},"cartesian",{axisValuePadding:10,gridLineWidth:1,showRadarBorder:1,radarBorderThickness:2}])}]);Q.register("module",["private","modules.renderer.js-dataset-column",function(){var b=this.window,v=this.hcLib,J=v.parseConfiguration,C="rgba(192,192,192,"+(/msie/i.test(b.navigator.userAgent)&&!b.opera?.002:1E-6)+")",b=v.TOUCH_THRESHOLD_PIXELS,
H=v.CLICK_THRESHOLD_PIXELS,A=v.extend2,u=v.pluck,a=v.pluckNumber,O=v.toRaphaelColor,q=v.graphics.convertColor,M=v.HUNDREDSTRING,U=v.plotEventHandler,N=v.hasTouch?b:H,E=v.getValidValue,r=v.getFirstValue,k=v.parseTooltext,m=v.regex.dropHypeash,n=v.HASHSTRING,b=v.preDefStr,L=b.DEFAULT,g=b.showHoverEffectStr,l=b.visibleStr,B=b.setRolloverAttrStr,e=b.setRolloutAttrStr,b=Math,V=b.min,p=b.max,T=b.abs,K=b.ceil,t=b.floor,Z=v.getFirstColor,P=v.graphics.getLightColor,S=v.schedular,z=v.toolTip;Q.register("component",
["dataset","Column",{type:"column",pIndex:2,customConfigFn:"_createDatasets",configure:function(){var b=this.chart,e=this.config,g=this.JSONData,l=b.singleseries,h=b.config.isdual,d=b.config,f=b.jsonData.chart,c=b.components,k=c.colorManager,t=e.plotColor=k.getPlotColor(this.index||this.positionIndex),m=a(g.dashed,f.plotborderdashed),z=a(f.useplotgradientcolor,1),r,n,q=v.getDashStyle;n=b.isBar;var B=b.is3D,K;this.__setDefaultConfig();J(g,e,d,{data:!0});e.showplotborder=a(f.showplotborder,B?0:1);r=
d.plotborderdashlen;d=d.plotborderdashgap;e.plotfillangle=a(360-f.plotfillangle,n?180:90);e.plotfillalpha=n=u(g.alpha,f.plotfillalpha,M);e.plotColor=u(g.color,t);e.legendSymbolColor=e.plotColor;e.plotgradientcolor=v.getDefinedColor(f.plotgradientcolor,k.getColor("plotGradientColor"));!z&&(e.plotgradientcolor="");e.plotborderalpha=u(f.plotborderalpha,n,M);e.plotbordercolor=u(f.plotbordercolor,B&&!l?"#ffffff":k.getColor("plotBorderColor"));e.plotborderdashstyle=m?q(r,d,void 0):"none";e.showShadow=B?
a(f.showshadow,1):a(f.showshadow,k.getColor("showShadow"));e.definedGroupPadding=p(a(f.plotspacepercent),0);e.parentYAxis=h?K="s"===u(g.parentyaxis&&g.parentyaxis.toLowerCase(),"p")?1:0:K=0;this.yAxis=c.yAxis[K];this.visible=1===a(g.visible,!Number(g.initiallyhidden),1);!0===this.visible?this._conatinerHidden=!1:this._containerHidden=!0;this._setConfigure();this._realTimeConfigure&&this._realTimeConfigure();!1!==b.hasLegend&&this._addLegend()},_setConfigure:function(b,e){var g=this.chart,l=g.config,
h=this.config,d=this.JSONData,f=b||d.data,c=g.singleseries,k=g.components,t=k.xAxis[0],m=t.getCategoryLen(),m=b?b.data.length:m,z=g.jsonData.chart,k=k.colorManager,n=h.showplotborder,B=h.plotColor,K=l.showtooltip,Z=v.parseUnsafeString,L=l.yaxisname,S=l.xaxisname,A=l.tooltipsepchar,C=l.seriesnameintooltip,T=v.parseTooltext,H,J,M,U,Y,Q,fa=l.plotborderdashlen,Aa=l.plotborderdashgap,ua=l.plotborderthickness,ia=l.useroundedges,xa=l.plothovereffect,ja=h.plotfillangle,ya,W,Ma,ea=h.plotborderdashstyle,ga,
la,Ca,Ha,pa,La,Ja,Fa,ta,Ka=v.getDashStyle,Ea=this.components.data,Da=g.isBar,Ga=g.is3D,Na,Ua=-Infinity,Pa=Infinity,Sa=this.yAxis,ab=l.use3dlighting,Xa=l.usedataplotcolorforlabels,Za;l.dragTolerance=l.isDrag?(n&&5<ua?ua/2+1:5)+N:0;Ea||(Ea=this.components.data=[]);this.visible=1===a(this.visible,this.JSONData.visible,!Number(this.JSONData.initiallyhidden),1);for(Na=0;Na<m;Na++){b?(Q=b&&b.data[Na]||{},Za=void 0!==e?e+Na:Ea.length-m+Na,J=Ea[Za]):(J=Ea[Na],Q=f&&f[Na]||{});g=J&&J.config;J||(J=Ea[Na]={});
J.config||(g=Ea[Na].config={});g.showValue=a(Q.showvalue,h.showvalues);g.setValue=J=Sa.getCleanValue(Q.value,l.stack100percent);g.setLink=u(Q.link);g.toolTipValue=B=Sa.dataLabels(J);g.setDisplayValue=U=Z(Q.displayvalue);g.displayValue=u(U,B);B=a(Q.dashed);U=a(Q.dashlen,fa);H=Aa=a(Q.dashgap,Aa);null!==J&&(Ua=p(Ua,J),Pa=V(Pa,J));g.plotBorderDashStyle=U=1===B?Ka(U,H,ua):0===B?"none":ea;c?(B=k.getPlotColor(a(Za-m,Na)),B=u(Q.color,B),Xa&&t.updateCategory(Na,{labelfontcolor:q(B)}),Ma=u(Q.alpha,Q.borderalpha,
h.plotborderalpha,ya).toString()):(B=u(Q.color,h.plotColor),Ma=u(Q.alpha,h.plotborderalpha,ya).toString());W=u(Q.ratio,h.ratio);ya=u(Q.alpha,h.plotfillalpha);g.shadow={opacity:h.showShadow?ya/100:0};0>J&&!ia&&(Y=h.plotfillangle,ja=Da?180-ja:360-ja);g.colorArr=H=v.graphics.getColumnColor(B+","+h.plotgradientcolor,ya,W,ja,ia,h.plotbordercolor,Ma,Da?1:0,Ga?!0:!1);g.originalPlotColor=B;ga=t.getLabel(a(Za-m,Na));g.origLabel=J=E(Z(ga.label));J=g.label=E(Z(ga.tooltext))||J;if(0!==xa){ga=u(Q.hovercolor,d.hovercolor,
z.plotfillhovercolor,z.columnhovercolor,B);la=u(Q.hoveralpha,d.hoveralpha,z.plotfillhoveralpha,z.columnhoveralpha,ya);Ca=u(Q.hovergradientcolor,d.hovergradientcolor,z.plothovergradientcolor,h.plotgradientcolor);!Ca&&(Ca="");W=u(Q.hoverratio,d.hoverratio,z.plothoverratio,W);Ha=a(360-Q.hoverangle,360-d.hoverangle,360-z.plothoverangle,ja);pa=u(Q.borderhovercolor,d.borderhovercolor,z.plotborderhovercolor,h.plotbordercolor);La=u(Q.borderhoveralpha,d.borderhoveralpha,z.plotborderhoveralpha,z.plotfillhoveralpha,
z.columnhoveralpha,Ma,ya);Ma=a(Q.borderhoverthickness,d.borderhoverthickness,z.plotborderhoverthickness,h.showplotborder&&ua);Ja=Q.borderhoverdashed||d.borderhoverdashed||z.plotborderhoverdashed;Fa=a(Q.borderhoverdashgap,d.borderhoverdashgap,z.plotborderhoverdashgap,fa);ta=a(Q.borderhoverdashlen,d.borderhoverdashlen,z.plotborderhoverdashlen,Aa);Ja=void 0!==Ja?Number(Ja)?Ka(ta,Fa,Ma):"":U;if(l.drawTrendRegion||1==xa&&ga===B)ga=P(ga,70);B=v.graphics.getColumnColor(ga+","+Ca,la,W,Ha,ia,pa,La.toString(),
Da?1:0,Ga?!0:!1);g.setRolloutAttr={fill:Ga?[O(H[0]),!ab]:O(H[0]),stroke:n&&O(H[1]),"stroke-width":ua,"stroke-dasharray":U};g.setRolloverAttr={fill:Ga?[O(B[0]),!ab]:O(B[0]),stroke:O(B[1]),"stroke-width":Ma,"stroke-dasharray":Ja}}H=g.toolTipValue;g.origToolText=B=E(Z(u(Q.tooltext,d.plottooltext,z.plottooltext)));K?null===H?Q=!1:void 0!==B?(U=[1,2,3,4,5,6,7],J={yaxisName:L,xaxisName:S,formattedValue:H,label:J},Q=T(B,U,J,Q,z,d)):(C&&(M=r(d&&d.seriesname)),Q=M?M+A:"",Q+=J?J+A:""):Q=!1;g.toolText=Q;g.setTooltext=
Q;Y&&(ja=Y);Za++}h.maxValue=Ua;h.minValue=Pa},init:function(a){var b=this.chart;if(!a)return!1;this.JSONData=a;this.chartGraphics=b.chartGraphics;this.components={};this.graphics={};this.configure()},_addLegend:function(){var b=this.chart,e=b.isBar,g=b.jsonData.chart,l,h;h=this.config;var d=Z(h.legendSymbolColor),b=b.components.legend;l=a(g.use3dlighting,g.useplotgradientcolor,1);g=P(d,60).replace(m,n);l?(l=P(d,40),e={FCcolor:{color:d+","+d+","+l+","+d+","+d,ratio:"0,30,30,30,10",angle:e?0:270,alpha:"100,100,100,100,100"}}):
e={FCcolor:{color:d,angle:e?0:270,ratio:"0",alpha:"100"}};h={enabled:h.includeinlegend,type:this.type,fillColor:O(e),strokeColor:O(g),rawFillColor:d,rawStrokeColor:d,label:r(this.JSONData.seriesname)};this.legendItemId=b.addItems(this,this.legendInteractivity,h)},legendInteractivity:function(a,b){var e=this.config,g=a.visible,h=b.config,d=b.graphics,f=e.itemHiddenStyle.color,e=e.itemStyle.color,c=h.fillColor,l,h=h.strokeColor;g?a.hide():a.show();g={legendItemSymbol:{fill:g?f:c,stroke:g?f:h},legendItemText:{fill:g?
f:e},legendItemLine:{stroke:g?f:h}};for(l in d)(f=d[l])&&g[l]&&f.attr(g[l])},_checkPointerOverColumn:function(a,b,e){var g=this.chart.config,h=g.plotborderthickness,d=g.showplotborder,f=this.components,f=f.dataRT||f.data,c,l,k,t,p,m=g.viewPortConfig,z=m.x,m=m.scaleX;c=this.config.plotsPerBin||1;var n=f&&f.length,r=0,q=0;a=(K(a/c)-1)*c+1;c=a+c-1;g=g.dragTolerance||0;for(n=c<n?c:n;n>=a;n--){c=f[n];if(!c)break;c._height<N&&(r=N);c._width<N&&(q=N);if(c._xPos||c._yPos)if(l=c.config.setValue,d&&void 0!==
h?p=h/2:h=p=0,null!==l&&(k=b-(c._xPos-z*m)+p,t=e-c._yPos+p+(0<=l?g:0),c=k>=-q/2&&k<=(q||c._width)+h&&t>=-r/2&&t<=(r||c._height)+h+(0>l?2*g:g)))return{pointIndex:n,hovered:c,pointObj:f[n]}}},_getHoveredPlot:function(a,b){var e=this.chart,g=e.config,h=e.components.canvas.config,h=Math.max(h.canvasPaddingLeft,h.canvasPadding),d=g.canvasLeft,g=g.canvasTop,e=e.components.xAxis[0].getValue(e.isBar?b-g-h:a-d-h),g=Math.round(e);return 0<g-e?this._checkPointerOverColumn(g,a,b)||this._checkPointerOverColumn(g-
1,a,b):this._checkPointerOverColumn(g+1,a,b)||this._checkPointerOverColumn(g,a,b)},_rolloverResponseSetter:function(a,b,e,g){var h=(b=(b=b.graphics)&&b.element)&&b.getData();!0!==h.draged&&(b&&0!==h.showHoverEffect&&b.attr(b.getData().setRolloverAttr),!g&&b&&U.call(b,a,e,"DataPlotRollOver"))},_rolloutResponseSetter:function(a,b,e,g){var h=(b=(b=b.graphics)&&b.element)&&b.getData();!0!==h.draged&&(b&&0!==h.showHoverEffect&&b.attr(b.getData().setRolloutAttr),!g&&b&&U.call(b,a,e,"DataPlotRollOut"))},
_decideTooltipType:function(a,b,e){var g=this.groupManager,h=this.chart,d=h.config.drawTrendRegion,f=h.components.paper,c=this.components,l=(c.dataRT||c.data)[a],c=l&&(l.config.finalTooltext||l.config.toolText),l=l&&(l.graphics.element||this.graphics.sharedAnchor.element);e=e.originalEvent;d&&l?g._drawTooltip(a,b,e):c&&!d&&z.customDraw(c,f,e,void 0,void 0,h.chartInstance.id)},_firePlotEvent:function(a,b,e,g){var h=this.chart,d=this.components,d=(d.dataRT||d.data)[b],f=d.graphics.element,c=v.toolTip,
l=e.originalEvent,k=h.components.paper.canvas.style,t;if(f)switch(t=d.config,t=t.setLink,a){case "mouseover":this._decideTooltipType(b,g,e);this._rolloverResponseSetter(h,d,l);t&&(k.cursor="pointer");break;case "mouseout":c.hide(h.chartInstance.id);this._rolloutResponseSetter(h,d,l);t&&(k.cursor=L);break;case "click":U.call(f,h,l);break;case "mousemove":this._decideTooltipType(b,g,e)}},draw:function(){var b=this,l=b.JSONData,k=b.chart.jsonData.chart,p=b.config,h=p.legendInteractivity,d=b.groupManager,
f=b.index,c,m,z=b.visible,n=b.chart,r=n.getJobList(),q=n.config,K=q.isDrag,P=q.plothovereffect,Z=n.components,L=Z.paper,E=Z.xAxis[0],A=E.getCategoryLen(),H=b.yAxis,J=n.graphics.columnGroup,M=q.isstacked,U,da,Q,Y=n.graphics.sumLabelsLayer,za=v.parseUnsafeString,fa=v.getValidValue,Aa=v.Raphael,ua=q.showtooltip,ia=n.get("config","animationObj"),xa=ia.animObj,ja=ia.dummyObj,ya=ia.duration,W=ia.animType,Ma=E.getAxisPosition(0),ea=E.getAxisPosition(1),ga=d.config,la=ga.groupMaxWidth=p.groupMaxWidth=ea-
Ma,Ca=q.definedgrouppadding,Ha=q.plotspacepercent/200,pa=d.getDataSetPosition(b),La=d.stackSumValue[b.positionIndex],Ja=q.maxcolwidth,Fa=(1-.01*Ca)*la||V(la*(1-2*Ha),1*Ja),ta=a(pa.columnWidth,Fa/1),Ka,Ea=pa.xPosOffset||0,Da=pa.height,Ga,Na,Ua=b.components,Pa=Ua.data,Sa,ab,Xa,Za,bb,eb,Va,Ya=b.drawn,$a=Ua.removeDataArr,Ta=$a&&$a.length,kb=Ua.addDataArr,hb=kb&&kb.length,ib,ob=H.getLimit(),ba=ob.min,Ba=0<ob.max&&0>ba,Oa,Qa=H.getAxisBase(),I=H.yBasePos=H.getAxisPosition(Qa),cb,vb,sb=q.plotborderthickness,
pb=q.useroundedges,gb=b.graphics,qb=gb.container,mb=gb.dataLabelContainer,nb=gb.shadowContainer,Fb=Ua.pool,Bb,Wb=1,Hb,wb,Nb=E.getAxisPosition(A-1)+Ea,xb=E.getAxisPosition(0)+Ea,yb,Cb=!0,Ib,Jb=b.startPosition,ub=n.isInverse,jb,tb=p.isSkippedData,Wa,Kb,zb,Gb=void 0!==q.scrollMinVal?q.scrollMinVal:0,Sb=void 0!==q.scrollMaxVal?q.scrollMaxVal:A,fb=function(){!1!==b.visible||!1!==b._conatinerHidden&&void 0!==b._conatinerHidden||(qb.hide(),nb.hide(),mb&&mb.hide(),b._conatinerHidden=!0);this.show()},Tb=function(){Y.show()},
Lb=function(){return Jb?function(a,c){a.x=xb-la*(hb-c);a.y=da;a.height=Ga}:!1===Jb?function(a){a.x=Nb+la*Wb++;a.y=da;a.height=Ga}:function(a){a.width=0}},Mb,Ob=n.config.viewPortConfig,Pb=Ob.x,rb=Ob.scaleX,db=q.showplotborder;Ya&&(Lb=Lb());qb||(qb=b.graphics.container=L.group("columns",J),z?qb.show():qb.hide());nb||(nb=b.graphics.shadowContainer=L.group("shadow",J).toBack(),z||nb.hide());z&&(qb.show(),nb.show());if(!(Gb>=Sb)){for(m=Gb;m<Sb;m++)if(Wa=(Va=(Sa=Pa[m])&&Sa.config)&&Va.isSkipped,bb=Va&&
Va.setValue,void 0===Sa||void 0===bb||null===bb||!0===Wa)(Hb=Sa&&Sa.graphics)&&Hb.element&&Hb.element.hide(),Va&&delete Va.isSkipped;else if(zb=Sa.graphics&&Sa.graphics.element,!1===tb||!Ya||M||K||!h||!(!z&&!zb||z&&zb&&0!==Sa._width&&0!==Sa._height)){Ib=Sa.trackerConfig={};Oa=0<=bb;Za=Va.setLink;Bb=Va.colorArr;Sa.graphics||(Pa[m].graphics={});eb=Va.displayValue;cb=Oa?Va.previousPositiveY:Va.previousNegativeY;ab=fa(za(u(Va.origToolText,l.plottooltext,k.plottooltext)));M&&(cb=b._parseValues(m,cb,La[m],
ab),bb=Va.value);vb=H.getAxisPosition(cb||Qa);U=E.getAxisPosition(m)+Ea+Pb*rb;0!==Da?(da=H.getAxisPosition(bb+(cb||0)),Ga=T(vb-da)):(Ga=0,da=vb);da=V(da,vb);!1===tb&&d.isCrisp?(Q=Aa.crispBound(U,da,ta,Ga,sb),U=Q.x,jb=t(Ga)===Q.height,wb=t(da)!==Q.y,da=Q.y,Ka=Q.width,Ga=Q.height):Ka=ta;z&&0<sb&&(0===sb%2&&(ub&&Ba?Oa?!wb&&(Ga+=1):!jb&&--da:Oa?wb&&--da:jb&&(Ga+=1)),ib=Math.floor(sb/2),ub&&Ba?Oa?Ga-=ib:da+=ib:Oa?da+=ib:Ga-=ib);Mb=Va.shadow;Na=Va.finalTooltext=!1!==Va.toolText?Va.toolText+(ab?"":Va.toolTipValue):
"";yb=Va.plotBorderDashStyle;Ib.eventArgs={index:m,link:Za,value:bb,displayValue:eb,categoryLabel:Va.origLabel,toolText:Na,id:"",datasetIndex:f,datasetName:l.seriesname,visible:z};Sa._xPos=U;Sa._yPos=da;Sa._height=Ga;Sa._width=Ka;Sa._index=m;if(!(Xa=Sa.graphics.element)){c={x:U,y:I,width:Ka,height:1,r:pb,ishot:!ua,fill:O(Bb[0]),stroke:O(Bb[1]),"stroke-width":db?sb:0,"stroke-dasharray":yb,"stroke-linejoin":"miter",visibility:z,cursor:Za?"pointer":""};Ya&&(Lb(c,m),Fb&&Fb.element[0]&&(Xa=Sa.graphics.element=
Fb.element[0],Xa.attr(c),Fb.element.splice(0,1)),Sa._newXPos=c.x);if(Xa)Va.elemCreated=!1;else{if(ga.skipZeroPlots&&0===bb)continue;Xa=Sa.graphics.element=L.rect(c,qb);Va.elemCreated=!0}Ya||(Xa.animateWith(ja,xa,{y:da,height:Ga||1},ya,W,Cb&&Tb),Cb=!1)}(Xa=Sa.graphics.element)&&Ya&&(Va.elemCreated=!1,c={x:U,y:da,width:Ka,height:Ga||1,r:pb},M||!1!==b.visible||0===Da||(delete c.y,delete c.height),h||Xa.attr({fill:O(Bb[0]),stroke:O(Bb[1]),"stroke-width":db?sb:0,"stroke-linejoin":"miter","stroke-dasharray":yb,
ishot:!ua,visibility:z,cursor:Za?"pointer":""}),Xa.animateWith(ja,xa,c,ya,W,Cb&&fb),Cb=!1);Xa.shadow(Mb,nb).data("BBox",Q);if(Za||ua)Ga<N&&(da-=(N-Ga)/2,Ga=N,Kb=!0),Ib.attr={x:U,y:da,width:Ka,height:Ga,r:pb,cursor:Za?"pointer":"",stroke:C,"stroke-width":db?sb:0,fill:C,ishot:!0,visibility:z};n.config.enablemousetracking&&Xa.data("eventArgs",Ib.eventArgs).data(g,P).data(B,Va.setRolloverAttr||{}).data(e,Va.setRolloutAttr||{})}Kb&&(q.toleranceBottom=N);Ya?b.drawLabel(Gb,Sb):r.labelDrawID.push(S.addJob(function(){b.drawLabel(Gb,
Sb)},v.priorityList.label));!Ya&&Y.hide();d.drawSumValueFlag&&d.drawSumValueFlag&&d.drawSumValue();b.drawn=!0;Ta&&b.remove()}},show:function(){var a=this.graphics&&this.graphics.container,b=this.graphics&&this.graphics.dataLabelContainer,e=this.graphics&&this.graphics.shadowContainer,g=this.chart.is3D,h=this.components.data,d=this.chart.config.categories,f=this.yAxis,c=this.chart,k=c.components.xAxis[0],d=V(this.JSONData.data&&this.JSONData.data.length,d&&d.length);this.config.legendInteractivity=
!0;c._chartAnimation();this.visible=!0;this._conatinerHidden=!1;if(g)for(a=0;a<d;a++)h[a]&&h[a].graphics&&h[a].graphics.element&&h[a].graphics.element.attr({visibility:l}),h[a]&&h[a].graphics&&h[a].graphics.hotElement&&h[a].graphics.hotElement.attr({visibility:l});else a.show();e.show();b&&b.show();c.config.transposeAxis&&(c._setAxisLimits(),f.draw());c.isRealTime&&k.draw();c._drawDataset();this.config.legendInteractivity=!1;c.chartInstance.__state._rtPaused&&c._setRTdata()},hide:function(){var a=
this.yAxis,b=this.chart,e=b.components.xAxis[0];b._chartAnimation();this.visible=!1;this.config.legendInteractivity=!0;b.config.transposeAxis&&(b._setAxisLimits(),a.draw());b.isRealTime&&e.draw();b._drawDataset();this.config.legendInteractivity=!1;b.chartInstance.__state._rtPaused&&b._setRTdata()},drawLabel:function(b,e){var g=this.chart,k=g.config,h=g.graphics,d=g.components,f=g.get("config","animationObj"),c=f.dummyObj,t=f.animObj,m=f.animType,f=f.duration,p=d.paper,z=g.linkedItems.smartLabel,n=
g.config.dataLabelStyle,r=this.config.legendInteractivity,q=d.xAxis[0].getCategoryLen(),B=this.components,d=B.data,B=B.pool,u=this.visible,K,v,k=k.rotatevalues?270:0,P,Z,L,S,E,C,V,T=this.graphics.dataLabelContainer,H=this.labelDrawn;K=a(b,0);q=a(e,q);h=h.datalabelsGroup;T||(T=this.graphics.dataLabelContainer=p.group("datalabel",h));u?T.show():T.hide();z.useEllipsesOnOverflow(g.config.useEllipsesWhenOverflow);z.setStyle(n);if(u){if(K>=q)return;for(h=K;h<q;h++)if(Z=(E=(K=d[h])&&K.config)&&E.setValue,
void 0===K||void 0===Z||null===Z||!0===E.labelSkip)E&&delete E.labelSkip,(V=K&&K.graphics)&&V.label&&V.label.hide();else if(u=K.graphics)L=K._yPos,S=K._xPos,v=E.displayValue,(P=E.showValue)&&null!==Z?(r&&E._state||(P=z.getOriSize(v),E._state=k?{labelWidth:P.height,labelHeight:P.width}:{labelWidth:P.width,labelHeight:P.height}),Z=this._getValuePosition({labelWidth:E._state.labelWidth,labelHeight:E._state.labelHeight,width:K._width,height:K._height,yPos:L,xPos:S,value:Z}),L=Z.textX,Z=Z.textY,v={x:L,
y:Z,text:v},r||(v=A(v,{visibility:l,"line-height":n.lineHeight,fill:n.color,"text-bound":[n.backgroundColor,n.borderColor,n.borderThickness,n.borderPadding,n.borderRadius,n.borderDash]})),!u.label&&H&&g.isRealTime&&(E=A({},v),E.x=v.x-S+(K._newXPos||0),E.transform=p.getSuggestiveRotation(k,E.x,Z),B&&B.label[0]?(u.label=B.label[0].attr(E),B.label.splice(0,1)):u.label=p.text(E,T)),v.transform=p.getSuggestiveRotation(k,L,Z),(K=u.label)||(B&&B.label[0]?(K=u.label=B.label[0].attr(v),B.label.splice(0,1)):
K=u.label=p.text(v,T),C=!0),K.show(),H&&!C&&K.animateWith(c,t,v,f,m)):u.label&&(u.label.attr({"text-bound":[]}),u.label.hide())}this.labelDrawn=!0},_getValuePosition:function(a){var b=this.chart,e=b.components,g=b.config,h=e.canvas.config,d=e.yAxis[0],e=h.xDepth,h=h.yDepth,f=g.canvasTop,c=g.canvasHeight+h,l,k,t,m=a.yPos,z=b.is3D,b=b.config.isstacked,n=g.valuepadding+2,r=a.height;l=a.width;g=g.placevaluesinside;t=a.labelHeight;var q=d.getAxisConfig("isReverse"),B=d.getAxisConfig("axisRange"),K=B.min,
d=a.value,B=0<B.max&&0>K;a=a.xPos;q&&B&&(k=0>d?!1:!0);k=u(k,0>d);t=q=t+n;n=.5*q+n;l=a+.5*l;a=k?f+c-(m+r+h):m-f;b?(c=V(f+c-.5*t,m+.5*r+(h||0)),c=p(f+.5*t,c),l-=e):g?r>=t?(c=m+(k?r-n:n),z&&(l-=e,c+=h)):a>=t?(c=m+(k?r+n:-n),z&&k&&(l-=e,c+=h)):(c=m+(k?r-n:n),z&&(l-=e,c+=h)):a>=t?(c=m+(k?r+n:-n),z&&(k?(l-=e,c+=h):l-=e/2)):(c=m+(k?r-n:n),z&&(l-=e,c+=h));return{textX:l,textY:c}},_parseValues:function(a,b,e,g){var h=this.chart.config;a=this.components.data[a].config;var d=h.showpercentvalues,f=h.showpercentintooltip,
c=a.setValue,h=h.stack100percent,l=this.chart.components.numberFormatter,t=this.yAxis,m=a.setDisplayValue,c=(this.visible?c||0:0)/e*100,l=l.percentValue(c);h&&(a.value=c,b=(b||0)/e*100);f&&(a.toolTipValue=l);d&&!m&&(a.displayValue=l);g&&(a.toolText=k(a.setTooltext,[14,24,25,112],{percentValue:l,sum:t.dataLabels(e),unformattedSum:e}));return b},getDataLimits:function(){return{max:this.config.maxValue,min:this.config.minValue}},addData:function(a,b,e){var g=this.components,h=this.chart.components.numberFormatter,
d=g.data,f=a.data,c=f.length,l=this.config,k=l.maxValue,l=l.minValue,t=this.maxminFlag,m;g.addDataArr=a.data;if(0===b)this.startPosition=!0;else if(b+c===d.length||void 0===b)this.startPosition=!1;for(m=0;m<c;m++)if(void 0!==b?d.splice(b+m,0,{config:{}}):d.push({config:{}}),!t&&(g=h.getCleanValue(f[m].value),g>k||g<l))t=this.maxminFlag=!0;this._setConfigure(a,b);t&&this.setMaxMin();e&&this.draw()},hideElements:function(a){a.hide()},removeData:function(a,b,e){var g=this.components,h=g.data,d=g.removeDataArr||
(g.removeDataArr=[]),f=this.config,c=this.groupManager,l=this.maxminFlag;void 0===b&&(b=1);a=a||0;if(a+b===h.length)this.endPosition=!0;else if(0===a||void 0===a)this.endPosition=!1;g.removeDataArr=d=d.concat(h.splice(a,b));c&&c.removeSumLabels&&c.removeSumLabels(a,b,this.positionIndex);g=d.length;for(a=0;a<g;a++)if(d[a]){b=d[a].config;if(b.setValue===f.maxValue||b.setValue===f.minValue)l=this.maxminFlag=!0;if(l)break}l&&this.setMaxMin();e&&this.draw()},updateData:function(a,b,e){var g=this.config,
h=g.maxValue,d=g.prevMin,f=this.chart,c=this.groupManager||this,l=f.components,k=l.xAxis||l.yAxis,t=k&&l.xAxis[0],l=k&&l.yAxis[0];this._setConfigure(a,b);this.setMaxMin();if(g.maxValue!==h||g.minValue!==d)this.maxminFlag=!0;e&&(f._setAxisLimits(),k&&t.draw(),k&&l.draw(),c.draw())},setMaxMin:function(){var a=this.components.data,b=this.config,e,g,h=a.length,d=-Infinity,f=Infinity;for(e=0;e<h;e++)a[e]&&(g=a[e].config,g=g.setValue,void 0!==g&&(d=p(d,g),f=V(f,g)));b.maxValue=d;b.minValue=f},hidingPosition:function(){var a=
this.components.removeDataArr.length,b=this.config.groupMaxWidth;return!1===this.endPosition?function(e){return{x:e._xPos-b*a,y:e._yPos}}:!0===this.endPosition?function(e){return{x:e._xPos+b*a||0,y:e._yPos}}:function(){return{width:0}}},remove:function(){var a=this.components,b=a.removeDataArr,e=a.pool||(a.pool={element:[],label:[]}),g=this.chart,h=g.get("config","animationObj"),d=h.duration,f=h.dummyObj,c=h.animObj,h=h.animType,l=this.maxminFlag,k,t,m,p,z=g.components.paper,n=g.config.rotatevalues,
r=this.chart.config.realTimeConfig&&this.chart.config.realTimeConfig.clear,q=this.hidingPosition(),B=function(){this.hide()};for(m=b.length-1;0<=m;m--)if(g=b[m],b.splice(m,1),g&&g.graphics){t=g.graphics;for(k in t)"label"===k&&void 0===this.startPosition&&void 0===this.endPosition&&t[k].hide(),p=q(g),"label"===k&&(p.transform=z.getSuggestiveRotation(n,p.x,p.y)),r&&t[k].hide(),t[k].animateWith(f,c,p,d,h,B);g.graphics.element&&(e.element=e.element.concat(g.graphics.element));g.graphics.label&&(e.label=
e.label.concat(g.graphics.label))}a.pool=e;l&&this.setMaxMin()},getAxisValuePadding:function(){return{left:.5,right:.5}},manageSpace:function(){var b=this.config||(this.config={}),e=this.chart,g=e.config.rotatevalues,l=e.components.xAxis[0],h=e.components.yAxis[0],d=e.config.dataLabelStyle,f=(this.components||{}).data||[],c=b.leftMostData||f[0],f=b.rightMostData||f[f.length-1],k,t,m={};k={};var z=0,n=0,r,q=l.getPixel(0),m=e.linkedItems.smartLabel,B={paddingLeft:0,paddingRight:0};k=0;var u=this.groupManager,
u="column"===this.type&&u.getDataSetPosition(this),K=this.getAxisValuePadding(),v=b.topMostData,b=b.bottomMostData;c&&(c=c.config,r=c.showValue,t=c&&c.anchorProps||{},r&&(k=c.displayValue,m.useEllipsesOnOverflow(e.config.useEllipsesWhenOverflow),m.setStyle(d),k=m.getOriSize(k),k=g?k.height:k.width),null!==c.setValue&&(z=a(t.radius,0)+a(t.borderThickness,0)/2,n=(k||0)/2-(l.getPixel(K.left)-q)-(u&&u.xPosOffset+u.columnWidth/2||0),0>n&&(n=0)),B.paddingLeft=p(z,n));f&&(c=f.config,r=c.showValue,t=c&&c.anchorProps||
{},r&&!g&&(k=c.displayValue,m.setStyle(d),m=m.getOriSize(k),k=g?m.height:m.width),null!==c.setValue&&(z=a(t.radius,0)+a(t.borderThickness,0)/2,n=(k||0)/2-(l.getPixel(K.right)-q)+(u&&u.xPosOffset+u.columnWidth/2||0),0>n&&(n=0)),B.paddingRight=p(z,n));v&&(t=(c=v.config)&&c.anchorProps||{},null!==c.setValue&&(z=a(t.radius,0)+a(t.borderThickness,0)/2,n=Math.max(z-(h.getPixel(c.setValue.y)-h.getPixel(h.getLimit().max)),0)),B.paddingTop=n);b&&(t=(c=b.config)&&c.anchorProps||{},null!==c.setValue&&(z=a(t.radius,
0)+a(t.borderThickness,0)/2,n=Math.max(z-(h.getPixel(h.getLimit().min)-h.getPixel(c.setValue.y)),0)),B.paddingBottom=n);return B},getPlotClickFn:function(a){return function(b){U.call(this,a,b)}},getEventArgs:function(){return{datasetName:(this.JSONData||{}).seriesname,datasetIndex:this.index,id:(this.config||{}).userID,visible:this.visible}},rolloverResponseSetter:function(a,b){var e=b.jsonData.chart;return function(g){var h=this.data("hoverEnabled"),d=this.data("draged"),f=this.data("dataset");!0!==
d&&(f._hoverFunc(a,"DataPlotRollOver",h,e),U.call(this,b,g,"DataPlotRollOver"))}},rolloutResponseSetter:function(a,b){var e=b.jsonData.chart;return function(g){var h=this.data("hoverEnabled"),d=this.data("draged"),f=this.data("dataset");!0!==d&&(f._hoverFunc(a,"DataPlotRollOut",h,e),U.call(this,b,g,"DataPlotRollOut"))}}},void 0,{showvalues:void 0,includeinlegend:1,plotfillalpha:void 0,plotfillangle:void 0,ratio:void 0}])}]);Q.register("module",["private","modules.renderer.js-dataset-realtimecolumn",
function(){Q.register("component",["dataset","realtimecolumn",{_realTimeConfigure:function(b){var v=this.chart,J=this.components.data,C=[],H=v.config.realTimeConfig.numDisplaySets;b=b?0:v.components.xAxis[0].getCategoryLen();b<H?(C.length=H-b,this.components.data=C.concat(J)):b>H&&this.components.data.splice(H,b-H)}},"Column"])}]);Q.register("module",["private","modules.renderer.js-dataset-scrollcolumn2d",function(){Q.register("component",["dataset","scrollcolumn2d",{},"Column"])}]);Q.register("module",
["private","modules.renderer.js-dataset-column3d",function(){var b=this.window,v=this.hcLib,b=/msie/i.test(b.navigator.userAgent)&&!b.opera,J=v.BLANKSTRING,C="rgba(192,192,192,"+(b?.002:1E-6)+")",b=v.TOUCH_THRESHOLD_PIXELS,H=v.CLICK_THRESHOLD_PIXELS,A=v.pluck,u=v.pluckNumber,a=v.toRaphaelColor,O=v.hasTouch?b:H,b=v.preDefStr,q=b.noneStr,M=b.configStr,U=b.animationObjStr,N=b.showHoverEffectStr,E=b.columnStr,r=b.shadowStr,k=b.visibleStr,m=b.hiddenStr,n=b.negativeValueStr,L=b.positiveValueStr,g=b.zeroPlaneStr,
l=b.categoryPlotsStr,B=b.setRolloverAttrStr,e=b.setRolloutAttrStr,V=b.strokeWidthStr,p=b.strokeDashStr,T=v.graphics.getCubePathOutline,b=Math,K=b.min,t=b.abs,Z=b.round,P=v.schedular;Q.register("component",["dataset","Column3D",{draw:function(){var b=this,z=b.JSONData,R=b.chart.jsonData.chart,w=b.config,F=b.groupManager,Z=b.index,h=b.chart.config.categories,d,f,c=b.chart,D=c.getJobList(),G=c.config,H=c.components.paper,Ra=c.components.xAxis[0],Ia=b.yAxis,sa=c.graphics.columnGroup,wa=c.config.isstacked,
ca,ma,qa=v.parseUnsafeString,va=v.getValidValue,Q=G.showtooltip,ra=c.get(M,U),ka=ra.animType,na=ra.animObj,da=ra.dummyObj,ra=ra.duration,oa=Ra.getAxisPosition(0),Y=Ra.getAxisPosition(1),Y=w.groupMaxWidth=Y-oa,za=w.definedGroupPadding,fa=G.plotspacepercent/200,Aa=F.getDataSetPosition(b),oa=F.stackSumValue[b.positionIndex],ua=G.maxcolwidth,Y=(1-.01*za)*Y||K(Y*(1-2*fa),1*ua),Y=u(Aa.columnWidth,Y/1),ia,za=Aa.xPosOffset||0,Aa=Aa.height,xa,fa=b.components.data,ja,ya,W,Ma,ea,ga,la;W={};ea={};ua=Ia.getLimit();
ya=ua.max;var Ca=ua.min,ua=Ia.getAxisBase(),Ha=Ia.yBasePos=Ia.getAxisPosition(ua),pa=0,La=G.plotborderthickness;ga=b.graphics.container;var Ja=b.graphics.dataLabelContainer,Fa=b.graphics.shadowContainer,ta,Ka,Ea,Da,Ga,Na=w.use3dlighting,Ua,Pa,Sa,ab,Xa=!0,Za=!1,bb=b.visible,eb=(b.components.removeDataArr||[]).length,Va=b.components.pool||[],Ya=G.showplotborder,$a=G.plothovereffect,Ta,kb,hb,ib=function(){var a,c;if(!1===b.visible&&(!1===b._conatinerHidden||void 0===b._conatinerHidden)){a=b.components.data;
for(c=0;c<d;c++)a[c]&&a[c].graphics&&a[c].graphics.element&&a[c].graphics.element.attr("visibility",m),a[c]&&a[c].graphics&&a[c].graphics.hotElement&&a[c].graphics.hotElement.attr("visibility",m);Fa.hide();Ja&&Ja.hide();b._conatinerHidden=!0}},ob=function(){F.drawSumValueFlag&&F.drawSumValue()};ga||(ga=b.graphics.container=c.datasetLayers=c.datasetLayers||H.group(E,sa));Fa||(Fa=b.graphics.shadowContainer=H.group(r,sa).toBack());c._cacheObj||(c._cacheObj={});!c._cacheObj.elemAttr&&(c._cacheObj.elemAttr=
{});Ta=c._cacheObj.elemAttr;!c._cacheObj.zeroplaneAttr&&(c._cacheObj.zeroplaneAttr={});la=c._cacheObj.zeroplaneAttr;!c._cacheObj.cubepathObj&&(c._cacheObj.cubepathObj={});kb=c._cacheObj.cubepathObj;d=Ra.getCategoryLen();if(bb)for(f=0;f<d;f++)fa[f].graphics&&fa[f].graphics.element&&fa[f].graphics.element.attr("visibility",k),fa[f].graphics&&fa[f].graphics.hotElement&&fa[f].graphics.hotElement.attr("visibility",k);sa=ga.negative=ga.negative||H.group(n,ga);Ka=ga.column=ga.column||H.group(L,ga);0>Ca&&
0<=ya?(f=ga.zeroPlane,la.fill=[G.zeroPlaneColor,!Na],la.stroke=G.zeroPlaneBorderColor||"none",la[V]=G.zeroPlaneShowBorder?1:0,f?(f=[c.config.canvasLeft-10,Ha+10,c.config.canvasWidth,1,10,10,f],F.graphics.zeroplane.show(),F.graphics.zeroplane._.cubetop.show(),F.graphics.zeroplane._.cubeside.show(),kb.cubepath=f,F.graphics.zeroplane.animateWith(da,na,kb,ra,ka),F.graphics.zeroplane.attr(la)):(f=ga.zeroPlane=H.group(g,ga).insertBefore(Ka),!F.graphics&&(F.graphics={}),F.graphics.zeroplane=H.cubepath(c.config.canvasLeft-
10,Ha+10,c.config.canvasWidth,1,10,10,f).attr(la))):F.graphics&&F.graphics.zeroplane&&F.graphics.zeroplane.hide()&&F.graphics.zeroplane._.cubetop.hide()&&F.graphics.zeroplane._.cubeside.hide();(Ea=sa.data(l))||(sa.data(l,Array(d)),Ea=sa.data(l));(Da=Ka.data(l))||(Ka.data(l,Array(d)),Da=Ka.data(l));for(f=0;f<d;f++)if(ga=f,W=(la=(G=fa[f])&&G.config)&&la.setValue,void 0!==G&&void 0!==W&&null!==W){hb=G.trackerConfig={};!G||void 0!==W&&null!==W||(G.graphics&&G.graphics.element&&(G.graphics.element.hide(),
G.graphics.element._.cubeside.hide(),G.graphics.element._.cubetop.hide()),G.graphics&&G.graphics.hotElement&&G.graphics.hotElement.hide());Ea[f]=Ea[f]||H.group(sa);Da[f]=Da[f]||H.group(Ka);G.graphics||(fa[f].graphics={});ya=la.setLink;Ca=la.colorArr;ea=la.displayValue;ca=0<=W?la.previousPositiveY:la.previousNegativeY;xa=va(qa(A(la.origToolText,z.plottooltext,R.plottooltext)));wa&&(ca=b._parseValues(f,ca,oa[f],xa),W=la.value);ia=Ia.getAxisPosition(ca||ua);c=Ra.getAxisPosition(f)+za;0!==Aa?(ma=Ia.getAxisPosition(W+
(ca||0)),ca=t(ia-ma)):(ca=0,ma=ia);ma=K(ma,ia);ia=Y;ta=(hb.isNegative=Ga=0>W)?Ea:Da;xa=la.finalTooltext=!1!==la.toolText&&la.toolText+(xa?"":la.toolTipValue);hb.eventArgs={index:f,link:ya,value:W,displayValue:ea,categoryLabel:h[f].label,toolText:xa?xa:"",id:J,datasetIndex:Z,datasetName:z.seriesname,visible:bb};Ma=hb.eventArgs;W=la.setRolloutAttr;ea=la.setRolloverAttr;ra||(Ha=ma,pa=ca);Ua=c;Pa=ma;Sa=ia;ab=ca;c-=10;ma+=10;G.graphics.element?(Za=!0,ja=G.graphics.element,ta[f].appendChild(ja._.cubetop),
ta[f].appendChild(ja._.cubeside),ta[f].appendChild(ja),kb.cubepath=[c,!0===b.visible||0===Aa||wa?ma:ja.attrs.cubepath[1],ia,!0===b.visible||0===Aa||wa?ca:ja.attrs.cubepath[3],10,10],ja.animateWith(da,na,kb,ra,ka,Xa&&ib),Ta.fill=[a(Ca[0]),!Na],Ta.ishot=!0,Ta.stroke=Ya&&a(Ca[1]),Ta[V]=Ya?La:0,Ta[p]=la.plotBorderDashStyle,Ta.cursor=ya?"pointer":J,Ta.visibility&&delete Ta.visibility,Ta.cubepath&&delete Ta.cubepath,ja.attr(Ta),la.elemCreated=!1):(Va.element&&Va.element.length?(ja=G.graphics.element=Va.element.shift(),
ta[f].appendChild(ja._.cubetop),ta[f].appendChild(ja._.cubeside),ta[f].appendChild(ja),ja.show()):ja=G.graphics.element=H.cubepath(ta[f]),Ta.cubepath=[c,ra?Ha+10:ma,ia,ra?0:pa,10,10],Ta.fill=[a(Ca[0]),!Na],Ta.ishot=!0,Ta.stroke=Ya&&a(Ca[1]),Ta[V]=Ya?La:0,Ta[p]=la.plotBorderDashStyle,Ta.cursor=ya?"pointer":J,Ta.visibility=bb?k:m,ja.attr(Ta),kb.cubepath=[c,ma,ia,ca,10,10],ja.animateWith(da,na,kb,ra,ka,Xa&&ob),Xa=!1,G._newXPos=c,la.elemCreated=!0);ja.shadow(la.shadow,Fa).data("BBox",{height:pa,width:ia,
x:c,y:ma});if(ya||Q)ca<O&&(ma-=(O-ca)/2,ca=O),hb.attr={path:T([c,ma,ia,ca,10,10]),cursor:ya?"pointer":J,stroke:La&&C||q,"stroke-width":Ya?w.plotBorderThickness:0,fill:C,ishot:!0};wa&&Ga&&ja.toBack();G._xPos=Ua;G._yPos=Pa;G._height=ab;G._width=Sa;ja.data("eventArgs",Ma).data("groupId",ga).data(N,$a).data(B,ea).data(e,W).tooltip(xa);ja._.cubetop.data("eventArgs",Ma).data("groupId",ga).data(N,$a).data(B,ea).data(e,W).tooltip(xa);ja._.cubeside.data("eventArgs",Ma).data("groupId",ga).data(N,$a).data(B,
ea).data(e,W).tooltip(xa)}b.drawn?b.drawLabel():D.labelDrawID.push(P.addJob(function(){b.drawLabel()},v.priorityList.label));b.drawn=!0;F.drawSumValueFlag&&Za&&F.drawSumValueFlag&&F.drawSumValue();eb&&b.remove();b.chart.config.canvasBottom+=10},_checkPointerOverColumn:function(a,b,e){var g=this.chart.config,l=g.plotborderthickness,k=g.showplotborder,h=this.components.data,d=h[a],f,c,t;if(d&&(f=d.config.setValue,!g.isstacked||!(0>f&&this.valueLook||0<f&&!this.valueLook))&&(l=k?l:0,t=l/2,t=0===t%2?
t+1:Z(t),null!==f&&(f=d._xPos-10,k=d._width+10,g=d._yPos,d=d._height+10,c=b-f+t,t=e-g+t,l=(l=0<=c&&c<=k+l&&0<=t&&t<=d+l?0<b+e-(f+g)-10:!1)?0>b+e-(f+g+k+d)+10:!1)))return{pointIndex:a,hovered:l,pointObj:h[a]}},_getHoveredPlot:function(a,b){var e=this.chart,g=e.config,l=e.components.canvas.config,l=Math.max(l.canvasPaddingLeft,l.canvasPadding),k=g.canvasLeft,g=g.canvasTop,e=e.components.xAxis[0].getValue(e.isBar?b-g-l:a-k-l),g=Math.round(e);return 0<g-e?this._checkPointerOverColumn(g,a,b)||this._checkPointerOverColumn(g-
1,a,b):this._checkPointerOverColumn(g+1,a,b)||this._checkPointerOverColumn(g,a,b)},remove:function(){var a=this,b=a.components,e=b.removeDataArr,g=b.pool||(b.pool={element:[],hotElement:[],label:[]}),l=e.length,k=a.config.groupMaxWidth,h,d=a.maxminFlag,f,c,t;(function(){return!1===a.endPosition?function(){return{x:h._xPos-k*l}}:!0===a.endPosition?function(){return{x:h._xPos+k*l||0}}:function(){return{width:0}}})();for(t=0;t<l;t++)if(h=e[0],e.splice(0,1),h&&h.graphics){c=h.graphics;for(f in c)c[f].hide();
h.graphics.element&&(g.element=g.element.concat(h.graphics.element));h.graphics.hotElement&&(g.hotElement=g.hotElement.concat(h.graphics.hotElement));h.graphics.label&&(g.label=g.label.concat(h.graphics.label))}b.pool=g;d&&a.setMaxMin()}},"Column",{use3dlighting:void 0}])}]);Q.register("module",["private","modules.renderer.js-dataset-waterfall2d",function(){var b=this.window,v=this.hcLib,b=/msie/i.test(b.navigator.userAgent)&&!b.opera,J=v.BLANKSTRING,C="rgba(192,192,192,"+(b?.002:1E-6)+")",b=v.TOUCH_THRESHOLD_PIXELS,
H=v.CLICK_THRESHOLD_PIXELS,A=v.pluck,u=v.pluckNumber,a=v.toRaphaelColor,O=v.graphics.convertColor,q=v.parseUnsafeString,M=v.getDefinedColor,U=v.HUNDREDSTRING,N=v.hasTouch?b:H,E=v.getCrispValues,r=v.getValidValue,k=v.getFirstValue,b=v.preDefStr,m=b.showHoverEffectStr,n=b.setRolloverAttrStr,L=b.setRolloutAttrStr,g=b.elementStr,l=b.hotElementStr,b=Math,B=b.round,e=b.min,V=b.max,p=b.abs,T=v.graphics.getLightColor;Q.register("component",["dataset","Waterfall2D",{configure:function(){var b,g,l=this.chart,
m=l.components;b=this.config;g=this.JSONData;var p=g.data,z=l.config.categories,z=e(z&&z.length,p&&p.length),n=l.jsonData.chart,w=m.colorManager,q,B=w.getPlotColor(this.index||this.positionIndex),h=u(g.dashed,n.plotborderdashed),d=u(n.useplotgradientcolor,1),f=u(n.showtooltip,1),c=v.parseUnsafeString,D=c(n.yaxisname),G=c(n.xaxisname),L=c(A(n.tooltipsepchar,", ")),E=v.parseTooltext,C,H,N,ca,ma,Q,va,ha,ra,ka,na,da,oa,Y,za,fa,Aa,ua,ia,xa,ja,ya,W,Ma,ea,ga,la,Ca=v.getDashStyle,Ha=this.components.data,
pa=m.numberFormatter,La;q={};q=q.dataObj||(q.dataObj={});La=q.chart||(q.chart={});Aa=A(n.connectorthickness,1);var Ja,Fa=-Infinity,ta=Infinity,Ka=0,Ea=0,Da=0,Ga,Na,Ua,Pa;this.visible=1===u(this.JSONData.visible,!Number(this.JSONData.initiallyhidden),1);q=b.showplotborder=u(n.showplotborder,1);b.plotBorderThickness=ma=q?u(n.plotborderthickness,1):0;b.isRoundEdges=Q=u(n.useroundedges,0);b.plotBorderAlpha=na=q?A(n.plotborderalpha,N,U):0;b.plotBorderColor=da=A(n.plotbordercolor,w.getColor("plotBorderColor").split(",")[0]);
b.plotgradientcolor=ka=d?M(n.plotgradientcolor,w.getColor("plotGradientColor")):J;b.plotDashLen=d=u(n.plotborderdashlen,6);b.plotDashGap=ca=u(n.plotborderdashgap,3);b.use3DLighting=u(n.use3dlighting,1);b.showSum=Ja=u(n.showsumatend,1);b.plotColor=A(g.color,B);b.plotfillAngle=ha=u(360-n.plotfillangle,90);b.showShadow=Q?u(n.showshadow,1):u(n.showshadow,w.getColor("showShadow"));b.showHoverEffect=va=u(n.plothovereffect,n.showhovereffect,void 0);b.plotFillAlpha=A(g.alpha,n.plotfillalpha,U);b.plotRadius=
u(n.useRoundEdges,b.isRoundEdges?1:0);b.plotFillRatio=ra=A(g.ratio,n.plotfillratio);b.plotBorderDashStyle=oa=h?Ca(d,ca,ma):"none";b.showValues=u(g.showvalues,n.showvalues,1);b.valuePadding=u(n.valuepadding,2);b.enableAnimation=B=u(n.animation,n.defaultanimation,1);b.animation=B?{duration:1E3*u(n.animationduration,1)}:!1;La.transposeAnimation=b.transposeAnimation=u(n.transposeanimation,La.transposeAnimation,B);b.transposeAnimDuration=1E3*u(n.transposeanimduration,.2);b.showTooltip=u(n.showtooltip,
1);b.stack100Percent=u(l.stack100percent,n.stack100percent,0);b.definedGroupPadding=V(u(n.plotspacepercent),0);b.plotSpacePercent=V(u(n.plotspacepercent,20)%100,0);b.maxColWidth=u(n.maxcolwidth,50);b.showPercentValues=u(n.showpercentvalues,0);b.showPercentInToolTip=u(n.showpercentintooltip,0);b.plotPaddingPercent=u(n.plotpaddingpercent);b.rotateValues=u(n.rotatevalues)?270:0;b.placeValuesInside=u(n.placevaluesinside,0);b.parentYAxis=La="s"===A(g.parentyaxis&&g.parentyaxis.toLowerCase(),"p")?1:0;Ha||
(Ha=this.components.data=[]);b.zLine=Na={step:!0,data:[],dashStyle:"1"===n.connectordashed?Ca(u(n.connectordashlen,2),u(n.connectordashgap,2),Aa):"none",useForwardSteps:!0,color:O(A(n.connectorcolor,"000000"),A(n.connectoralpha,100)),lineWidth:Aa};for(l=0;l<z;l+=1)Y=p[l],fa=pa.getCleanValue(Y.value),H=u(Y.issum,0),Y.vline||H?delete Y._value:(Ka+=fa,Y._value=fa);Ga=pa.dataLabels(Ka);Ja&&(Ja=!0,z+=1,Ua={label:k(n.sumlabel,"Total"),_value:Ka,value:Ka,issum:1,cumulative:1});for(Pa=l=0;l<z;l+=1)Y=p[l],
Aa=(fa=Ha[l])&&fa.config,fa||(fa=Ha[l]={graphics:{}}),fa.config||(Aa=Ha[l].config={}),!Y&&Ja&&(Y=p[l]=Ua),B=A(Y.color,w.getPlotColor(l)),fa.vline||(fa=Y._value,delete Y._value,Aa.issum=H=u(Y.issum,0),N=Aa.isCumulative=u(Y.cumulative,1),H?(fa=N?Ea:Ea===Da?Ea:Ea-Da,Aa.lastComTotal=Da,Da=Ea,Na.data.push({y:null,x:Pa-.5})):Ea+=fa,Fa=V(Fa,Ea),ta=e(ta,Ea),Aa.total=Ea,H=Aa.showLabel=u(Y.showlabel,n.showlabels,1),H=Aa.dataLabel=c(H?k(Y.label,Y.name):J),0<fa?(ua=A(Y.color,n.positivecolor,B),0!==va&&(ia=A(Y.positivehovercolor,
n.positivehovercolor,n.plotfillhovercolor,n.columnhovercolor,ua))):(ua=A(Y.color,n.negativecolor,B),0!==va&&(ia=A(Y.negativehovercolor,n.negativehovercolor,n.plotfillhovercolor,n.columnhovercolor,ua))),N=A(Y.alpha,b.plotFillAlpha),C=u(Y.dashed,h),xa=u(Y.dashlen,d),ja=ca=u(Y.dashgap,ca),Aa.showValue=u(Y.showvalue,b.showValues),Aa.setValue=za=fa,Aa.setLink=A(Y.link),Aa.toolTipValue=za=pa.dataLabels(za,La),Aa.setDisplayValue=ya=r(c(Y.displayvalue)),Aa.displayValue=A(ya,za),Aa.plotBorderDashStyle=C=1===
C?Ca(xa,ja,ma):0===C?"none":oa,Aa.colorArr=ua=v.graphics.getColumnColor(ua+","+ka.replace(/,+?$/,""),N,ra,ha,Q,da,na.toString(),0,!1),0!==va&&(xa=A(Y.alpha,Y.hoveralpha,g.hoveralpha,n.plotfillhoveralpha,n.columnhoveralpha,N),ja=A(Y.hovergradientcolor,g.hovergradientcolor,n.plothovergradientcolor,ka),!ja&&(ja=""),za=A(Y.hoverratio,g.hoverratio,Y.ratio,n.plothoverratio,ra),ya=u(360-Y.hoverangle,360-g.hoverangle,360-n.plothoverangle,ha),W=A(Y.borderhovercolor,g.borderhovercolor,n.plotborderhovercolor,
da),Ma=A(Y.borderhoveralpha,g.borderhoveralpha,n.plotborderhoveralpha,na,N),N=u(Y.borderhoverthickness,g.borderhoverthickness,n.plotborderhoverthickness,ma),ea=u(Y.borderhoverdashed,g.borderhoverdashed,n.plotborderhoverdashed),ga=u(Y.borderhoverdashgap,g.borderhoverdashgap,n.plotborderhoverdashgap,d),la=u(Y.borderhoverdashlen,g.borderhoverdashlen,n.plotborderhoverdashlen,ca),ea=ea?Ca(la,ga,N):C,1===va&&ia===B&&(ia=T(ia,70)),B=v.graphics.getColumnColor(ia+","+ja,xa,za,ya,Q,W,Ma.toString(),0,!1),Aa.setRolloutAttr=
{fill:a(ua[0]),stroke:q&&a(ua[1]),"stroke-width":ma,"stroke-dasharray":C},Aa.setRolloverAttr={fill:a(B[0]),stroke:q&&a(B[1]),"stroke-width":N,"stroke-dasharray":ea}),C=Aa.toolTipValue,B=r(c(A(Y.tooltext,g.plottooltext,n.plottooltext))),f?void 0!==B?(N=[1,2,3,5,6,7,20,21,24,25],H={formattedValue:C,label:H,yaxisName:D,xaxisName:G,cumulativeValue:Ea,cumulativeDataValue:pa.dataLabels(Ea),sum:Ga,unformattedSum:Ka},B=E(B,N,H,Y,n,g)):B=null===C?!1:H!==J?H+L+C:C:B=!1,Na.data.push({y:null===fa?null:Ea,x:Pa}),
Pa+=1,Aa.toolText=B,Aa.setTooltext=B);b.maxValue=Fa;b.minValue=ta;b.connectNullData=u(n.connectnulldata,0);b.showConnectors=u(n.showconnectors,1);b=g.catData;for(l=0;l<b.length;l+=1)g=b[l],p.splice(g.index,0,g.data);m.xAxis[0].setCategory(p);this.maxminFlag=!1},draw:function(){var b,g,l,k=this,E=k.chart,z=k.chart.jsonData.chart,R=E.config.canvasBottom;l=E.graphics.datasetGroup;var w=k.JSONData,F=k.config,V=k.groupManager,h=k.positionIndex,d=k.chart.config.categories,f=w.data,c=d&&d.length,D=f&&f.length,
G,f=k.visible,T=E.components,H=T.paper,J=T.xAxis[0],M=T.yAxis[0],O=k.components,ca,U,Q,va=E.graphics,ha=v.Raphael,ra=F.showTooltip,ka=J.getAxisPosition(0),ka=J.getAxisPosition(1)-ka,na=F.definedGroupPadding,da=F.plotSpacePercent/200,oa=V.getDataSetPosition(k),Y=F.maxColWidth,ka=(1-.01*na)*ka||e(ka*(1-2*da),1*Y),ka=u(oa.columnWidth,ka/1),za,na=oa.xPosOffset||0,oa=oa.height,fa,Aa,O=O.data,ua,ia,da=M.getAxisBase(),Y=M.yBasePos=M.getAxisPosition(da),xa=0,ja=F.showShadow,ya=F.plotBorderThickness,W=F.plotRadius,
Ma=k.graphics.container,ea=k.graphics.trackerContainer,ga=k.graphics.dataLabelContainer,la=k.graphics.shadowContainer;ua=va.trackerGroup;var Ca,va=!0,Ha=!1,pa=k.pool||(k.pool={}),La=function(){!1!==k.visible||!1!==k._conatinerHidden&&void 0!==k._conatinerHidden||(Ma.hide(),ea.hide(),la.hide(),ga&&ga.hide(),k._conatinerHidden=!0)},Ja=function(){k.drawLabel()},Fa=E.get("config","animationObj"),ta=Fa.duration||0,Ka=Fa.dummyObj,Ea=Fa.animObj,Fa=Fa.animType,Da,T=T.canvas.config.clip["clip-canvas"].slice(0);
Ma||(Ma=k.graphics.container=H.group("columns",l),f||Ma.hide());Ma.attr("clip-rect",T);ea||(ea=k.graphics.trackerContainer=H.group("col-hot",ua),f||ea.hide());la||(la=k.graphics.shadowContainer=H.group("shadow",l).toBack(),f||la.hide());F.showConnectors&&k.drawLine();F=e(c,D);for(c=0;c<F;c++)if(Da=(D=O[c])&&(D.trackerConfig={}),ia=D&&D.config,T=(l=D&&D.graphics)&&l.element,ia)(G=ia.setValue,ca=0<=G,null===G)?T&&T.hide():(ua=ia.setLink,g=ia.colorArr,D.graphics||(O[c].graphics={}),b=ia.displayValue,
r(q(A(ia.origToolText,w.plottooltext,z.plottooltext))),U=ca?ia.previousPositiveY:ia.previousNegativeY,ia.issum?ia.isCumulative||(U=ia.lastComTotal):U=O[c-1]&&O[c-1].config.total,za=M.getAxisPosition(U||da),ca=J.getAxisPosition(c)+na,0!==oa?(U=M.getAxisPosition(G+(U||0)),fa=p(za-U)):(fa=0,U=za),U=e(U,za),B(U+fa)>=R&&(fa+=ya/2),V.isCrisp?(Q=ha.crispBound(ca,U,ka,fa,ya),ca=Q.x,U=Q.y,za=Q.width,fa=Q.height):za=ka,Aa=ia.finalTooltext=ia.toolText,Ca=ia.plotBorderDashStyle,Da.eventArgs={index:c,link:ua,
value:G,displayValue:b,categoryLabel:d[c].label,toolText:Aa,id:"",datasetIndex:h,datasetName:w.seriesname,visible:f,setRolloutAttr:ia.setRolloutAttr,setRolloverAttr:ia.setRolloverAttr},ta||(Y=U,xa=fa),G={ishot:!ra,fill:a(g[0]),stroke:a(g[1]),"stroke-width":ya,"stroke-linejoin":"miter",visibility:f},g={x:ca,y:Y,width:za,height:xa||1,r:W,"stroke-dasharray":Ca},D._xPos=ca,D._yPos=U,D._height=fa,D._width=za,b=!1,T?(Ha=!0,g.y=U,g.height=fa||1,T.attr(G).animateWith(Ka,Ea,g,ta,Fa,va&&La)):(pa.element&&pa.element.length?
T=l.element=pa.element.shift():(T=l.element=H.rect(Ma),b=!0),T.show().attr(G).attr(g),ta?(T.animateWith(Ka,Ea,{y:U,height:fa||1},ta,Fa,va&&Ja),va=!1):Ha=!0),T.shadow({opacity:ja},la).data("BBox",Q),ua||ra?(fa<N&&(U-=(N-fa)/2,fa=N),Da.attr={x:ca,y:U,width:za,height:fa,r:W,cursor:ua?"pointer":"",stroke:C,"stroke-width":ya,fill:C,ishot:!0,visibility:f}):b&&k.attachCallBack.call(T,k,E,D),E.config.enablemousetracking&&T.data("eventArgs",Da.eventArgs).data(m,!0).data(n,ia.setRolloverAttr||{}).data(L,ia.setRolloutAttr||
{}));Ha&&k.drawLabel()},attachCallBack:function(a,b,e){this.click(a.getPlotClickFn(b)).hover(a.rolloverResponseSetter(e,b),a.rolloutResponseSetter(e,b))},drawLine:function(){var a=this.chart,b=a.components,g=a.graphics,l=this.config,k=b.paper,m,p,n=b.xAxis[0],b=b.yAxis[0],r=b.getAxisBase();m=b.getAxisPosition(r);var r=this.graphics.lineContainer,q=l.definedGroupPadding,h=l.plotSpacePercent/200,d=n.getAxisPosition(0),d=n.getAxisPosition(1)-d,f=l.maxColWidth,q=((1-.01*q)*d||e(d*(1-2*h),1*f))/2,c=l.zLine,
l=l.connectNullData,h=c.data,d=h.length,f=this.graphics,B=c.dashStyle,v=c.color,c=c.lineWidth,L,A=f.zLine,C=null,V=[],T=[],H=a.get("config","animationObj"),a=H.duration||0,J=H.dummyObj,N=H.animObj,H=H.animType,g=g.datalabelsGroup;p=f.dataLabelContainer;p||(p=this.graphics.dataLabelContainer=k.group("datalabel",g));r||(r=f.lineContainer=k.group("line-connector",p));b.yBasePos=m;for(g=0;g<d;g+=1)p=h[g],m=p.y,null===m?(T.length=0,0===l&&(C=null)):(p=u(p.x,g),m=b.getAxisPosition(m),p=n.getAxisPosition(p),
p=E(p,c,c).position,m=E(m,c,c).position,null!==C?(T.length&&(V=V.concat(T),T.length=0),V.push("M",L,C,"m",-q,0,"H",p,"h",q,"m",0,m-C)):T.push("M",p,m),L=p,C=m);A||(A=f.zLine=k.path(r).attr({path:V,"stroke-linecap":"round","stroke-opacity":0}));A.animateWith(J,N,{path:V,"stroke-opacity":1,"stroke-dasharray":B,stroke:v,"stroke-linejoin":2<=c?"round":"miter","stroke-width":c},a,H)},hidingPosition:function(){return function(){return{width:0}}},_hoverFunc:function(a,b,e){var k=a.graphics[l]||a.graphics[g];
b="DataPlotRollOver"===b?k.data(n):k.data(L);e&&a.graphics[g].attr(b)}},"Column"])}]);Q.register("module",["private","modules.renderer.js-dataset-bar2d",function(){var b=this.window,v=this.hcLib,b=/msie/i.test(b.navigator.userAgent)&&!b.opera,J=v.BLANKSTRING,C="rgba(192,192,192,"+(b?.002:1E-6)+")",b=v.TOUCH_THRESHOLD_PIXELS,H=v.CLICK_THRESHOLD_PIXELS,A=v.pluck,u=v.pluckNumber,a=v.toRaphaelColor,O=v.hasTouch?b:H,b=v.preDefStr,q=b.configStr,M=b.animationObjStr,U=b.showHoverEffectStr,N=b.barStr,E=b.shadowStr,
r=b.visibleStr,k=b.setRolloverAttrStr,m=b.setRolloutAttrStr,n=b.dataLabelStr,L=b.miterStr,g=b.POSITION_MIDDLE,l=b.POSITION_START,B=b.POSITION_END,b=Math,e=b.min,V=b.max,p=v.schedular;Q.register("component",["dataset","Bar2D",{type:"bar2d",draw:function(){var b=this,g=b.JSONData,l=b.chart.jsonData.chart,n=b.config,B=n.legendInteractivity,V=b.groupManager,z=b.index,R=g.data,w=b.chart.config.categories,F,H,h,d,f=b.chart,c=f.getJobList(),D=f.config,G=f.components.paper,aa=f.components.xAxis[0],Q=f.components.yAxis[0];
F=f.graphics.columnGroup;var Ia=f.config.isstacked,sa,wa,ca,ma=v.parseUnsafeString,qa=v.getValidValue,va=v.Raphael,ha=D.showtooltip,ra=aa.getAxisPosition(0),ka=aa.getAxisPosition(1),na=V.config.groupMaxWidth=n.groupMaxWidth=ka-ra,da=n.definedGroupPadding,oa=D.plotspacepercent/200,Y=V.getDataSetPosition(b),ra=V.stackSumValue[b.positionIndex],za=D.maxcolwidth,fa=f.get(q,M),ka=fa.animType,Aa=fa.animObj,ua=fa.dummyObj,fa=fa.duration,na=(1-.01*da)*na||e(na*(1-2*oa),1*za),na=u(Y.columnWidth,na/1),ia,da=
Y.xPosOffset||0,Y=Y.height,xa,oa=b.components.data,ja,ya,W,Ma,ea,za=Q.getLimit(),ga=za.min,za=0<za.max&&0>ga,ga=Q.getAxisBase(),la=Q.yBasePos=Q.getAxisPosition(ga),Ca,Ha=0,pa=D.plotborderthickness,La=pa/2,Ja=D.useroundedges,Fa=b.graphics.container,ta=b.graphics.dataLabelContainer,Ka=b.graphics.shadowContainer,Ea,Da=b.visible,Ga=!0,Na=!1,Ua=(b.components.removeDataArr||[]).length,Pa=b.components.pool||[],Sa=D.showplotborder,ab=D.plothovereffect,Xa,n=n.isSkippedData,Za,bb,eb=b.drawn,Va=function(){!1!==
b.visible||!1!==b._conatinerHidden&&void 0!==b._conatinerHidden||(Fa.hide(),Ka.hide(),ta&&ta.hide(),b._conatinerHidden=!0)},Ya=function(){V.drawSumValueFlag&&V.drawSumValue()};Fa||(Fa=b.graphics.container=G.group(N,F),Da||Fa.hide());Ka||(Ka=b.graphics.shadowContainer=G.group(E,F).toBack(),Da||Ka.hide());Da&&(Fa.show(),Ka.show());F=aa.getCategoryLen();for(d=0;d<F;d++)if(H=R&&R[d],h=(ea=(ja=oa[d])&&ja.config)&&ea.setValue,W=ea&&ea.isSkipped,void 0===ja||void 0===h||null===h||!0===W)(bb=ja&&ja.graphics)&&
bb.element&&bb.element.hide(),ea&&delete ea.isSkipped;else if(W=ja.graphics&&ja.graphics.element,!(eb&&!1!==n&&B&&(!Da&&!W||Da&&W&&0!==ja._width&&0!==ja._height))){Xa=ja.trackerConfig={};!ja||void 0!==h&&null!==h||ja.graphics&&ja.graphics.hotElement&&ja.graphics.hotElement.hide();W=ea.setLink;Ea=ea.colorArr;xa=0<=h;ja.graphics||(oa[d].graphics={});Ma=ea.displayValue;ia=xa?ea.previousPositiveY:ea.previousNegativeY;ya=qa(ma(A(H.tooltext,g.plottooltext,l.plottooltext)));Ia&&(ia=b._parseValues(d,ia,ra[d],
ya),h=ea.value);Ca=Q.getAxisPosition(ia||ga);H=aa.getAxisPosition(d)+da;0!==Y?(wa=Q.getAxisPosition(h+(ia||0)),sa=Math.abs(Ca-wa)):(sa=0,wa=Ca);wa=Math.min(wa,Ca);0<sa-pa&&0<pa&&(za?Ia?(wa+=La,xa||ia)?xa&&(sa=sa-pa+1,ia&&(wa=wa-pa+1)&&(sa=sa+pa-1)):sa-=pa:(wa+=La,sa-=pa):xa&&(wa-=La));V.isCrisp?(ca=va.crispBound(H,wa,na,sa,pa),H=ca.x,wa=ca.y,ia=ca.width,sa=ca.height):ia=na;xa=ea.finalTooltext=!1!==ea.toolText?ea.toolText+(ya?"":ea.toolTipValue):"";ya=ea.plotBorderDashStyle;Xa.eventArgs={index:d,link:W,
value:h,displayValue:Ma,categoryLabel:w[d].label,toolText:xa?xa:"",id:J,datasetIndex:z,datasetName:g.seriesname,visible:Da};fa||(la=wa,Ha=sa);h={x:la,y:H,width:Ha||1,height:ia,r:Ja,ishot:!ha,fill:a(Ea[0]),stroke:a(Ea[1]),"stroke-width":Sa?pa:0,"stroke-dasharray":ya,"stroke-linejoin":L,visibility:r};ja._xPos=wa;ja._yPos=H;ja._height=ia;ja._width=sa;if(ja.graphics.element){Na=!0;ja=ja.graphics.element;h={x:wa,y:H,height:ia};if(!0===b.visible||0===Y||Ia)h.width=sa;ja.animateWith(ua,Aa,h,fa,ka,Ga&&Va);
ja.attr({ishot:!ha,fill:a(Ea[0]),stroke:a(Ea[1]),"stroke-width":Sa?pa:0,"stroke-dasharray":ya,"stroke-linejoin":L,visibility:r});ea.elemCreated=!1}else Pa.element&&Pa.element.length?(ja=ja.graphics.element=Pa.element.shift(),ja.show()):ja=ja.graphics.element=G.rect(Fa),ja.attr(h),ja.animateWith(ua,Aa,{x:wa,width:sa||1},fa,ka,Ga&&Ya),ea.elemCreated=!0,Ga=!1;ja.shadow(ea.shadow,Ka).data("BBox",ca);if(W||ha)sa<O&&(wa-=(O-sa)/2,sa=O,Za=!0),Xa.attr={x:wa,y:H,width:sa,height:ia,r:Ja,cursor:W?"pointer":
J,stroke:C,"stroke-width":Sa?pa:0,fill:C,ishot:!0,visibility:Da},f.config.enablemousetracking&&ja.data("eventArgs",Xa.eventArgs).data(U,ab).data(k,ea.setRolloverAttr||{}).data(m,ea.setRolloutAttr||{})}Za&&(D.toleranceLeft=5);b.drawn?b.drawLabel():c.labelDrawID.push(p.addJob(function(){b.drawLabel()},v.priorityList.label));b.drawn=!0;V.drawSumValueFlag&&Na&&V.drawSumValueFlag&&V.drawSumValue();Ua&&b.remove()},drawLabel:function(){var a=this.chart,b=a.graphics,k=a.config,m=a.components.canvas.config,
p=a.config.dataLabelStyle,v=this.JSONData.data,z=a.config.categories,L=a.is3D,w=a.config.isstacked,F=z&&z.length,E=v.length,z=this.components.data,h=a.components.paper,d=a.linkedItems.smartLabel,f,c,D=m.yDepth,m=m.xDepth,G=a.components.numberFormatter,A=J,C,H=k.placevaluesinside,N=k.canvasWidth,O=k.canvasLeft,ca,k=k.valuepadding+2,U,Q,va,ha=a.get(q,M),a=ha.duration,ra=ha.animType,ka=ha.dummyObj,ha=ha.animObj,na=this.graphics.dataLabelContainer,da,oa,Y,za=this.components.pool||{};va=this.visible;b=
b.datalabelsGroup;na||(na=this.graphics.dataLabelContainer=h.group(n,b),va||na.hide());va&&na.show();d.setStyle(p);b=F<E?F:E;if(va)for(F=0;F<b;F++)if(Q=(c=(f=z[F])&&f.config)&&c.setValue,void 0===f||void 0===Q||null===Q||!0===c.labelSkip)(Y=f&&f.graphics)&&Y.label&&Y.label.hide(),c&&delete c.labelSkip;else if(E=f.graphics)if(C=v[F],U=f._yPos,va=f._xPos,Q=G.getCleanValue(C.value),C=0>u(Q),ca=f._height,f=f._width,da=w?g:C?H?l:B:H?B:l,A=c.displayValue,oa=E.label,c.showValue&&void 0!==A&&null!==A&&A!==
J&&null!==Q){c={text:A,fill:p.color,"text-bound":[p.backgroundColor,p.borderColor,p.borderThickness,p.borderPadding,p.borderRadius,p.borderDash],"line-height":p.lineHeight,visibility:r};A=d.getOriSize(A);A=A.width;A+=k;oa=k;U+=.5*ca;ca=va+(C?0:f);Q=C?va-O:O+N-(va+f);w?(ca+=.5*(C?f:-f),ca=V(O+.5*A,ca),ca=e(O+N-.5*A,ca),ca-=L?m:0,U+=L?D:0):H?f>=A?(ca+=C?oa:-oa,L&&(U+=D,ca-=m)):A<Q?(ca+=C?-oa:oa,da=C?B:l,L&&C&&(ca-=m)):(C?(ca=va+f+V(A-va-f+O,0)-oa,da=B):(ca=va-V(A-(O+N-va),0)+oa,da=l),L&&(ca-=m,U+=D)):
Q>=A?(ca+=C?-oa:oa,L&&C&&(ca-=m,U+=m)):(ca+=C?oa+A:-(oa+A),L&&(ca-=m,U+=D));if(ca>O+N||ca<O)ca=O+4,da=l;c["text-anchor"]=da;(oa=E.label||za.label&&za.label.shift())?oa.show().animateWith(ka,ha,{x:ca,y:U},a,ra).attr(c):(c.x=ca,c.y=U,E.label=h.text(c,na))}else oa&&oa.hide()},remove:function(){var a=this.components,b=a.removeDataArr,e=a.pool||(a.pool={element:[],hotElement:[],label:[]}),g=b.length,l,k=this.maxminFlag,m,p,n;for(n=0;n<g;n++)if(l=b[0],b.splice(0,1),l&&l.graphics){p=l.graphics;for(m in p)p[m].hide();
l.graphics.element&&(e.element=e.element.concat(l.graphics.element));l.graphics.hotElement&&(e.hotElement=e.hotElement.concat(l.graphics.hotElement));l.graphics.label&&(e.label=e.label.concat(l.graphics.label))}a.pool=e;k&&this.setMaxMin()}},"Column"])}]);Q.register("module",["private","modules.renderer.js-dataset-bar3d",function(){var b=this.window,v=this.hcLib,b=/msie/i.test(b.navigator.userAgent)&&!b.opera,J=v.BLANKSTRING,C="rgba(192,192,192,"+(b?.002:1E-6)+")",b=v.TOUCH_THRESHOLD_PIXELS,H=v.CLICK_THRESHOLD_PIXELS,
A=v.pluck,u=v.pluckNumber,a=v.toRaphaelColor,O=v.hasTouch?b:H,b=v.preDefStr,q=b.noneStr,M=b.configStr,U=b.animationObjStr,N=b.showHoverEffectStr,E=b.shadowStr,r=b.visibleStr,k=b.barStr,m=b.hiddenStr,n=b.negativeValueStr,L=b.positiveValueStr,g=b.zeroPlaneStr,l=b.categoryPlotsStr,B=b.setRolloverAttrStr,e=b.setRolloutAttrStr,V=v.graphics.getCubePathOutline,b=Math,p=b.min,T=b.abs,K=v.schedular;Q.register("component",["dataset","Bar3D",{draw:function(){var b=this,Z=b.JSONData,P=b.chart.jsonData.chart,
S=b.config,z=b.groupManager,R=b.index,w=Z.data,F=b.chart.config.categories,H,h,d,f,c=b.chart,D=c.getJobList(),G=c.config,aa=G.plothovereffect,Q=c.components.paper,Ia=c.components.xAxis[0],sa=c.components.yAxis[0];f=c.graphics.columnGroup;var wa=G.isstacked,ca,ma,qa=v.parseUnsafeString,va=v.getValidValue,ha=G.showtooltip,ra=Ia.getAxisPosition(0),ka=Ia.getAxisPosition(1),na=S.groupMaxWidth=T(ka-ra),da=S.definedGroupPadding,oa=G.plotspacepercent/200,Y=z.getDataSetPosition(b),S=z.stackSumValue[b.positionIndex],
za=G.maxcolwidth,fa=c.get(M,U),ra=fa.animType,ka=fa.animObj,Aa=fa.dummyObj,fa=fa.duration,na=(1-.01*da)*na||p(na*(1-2*oa),1*za),na=u(Y.columnWidth,na/1),ua,da=Y.xPosOffset||0,Y=Y.height,ia,oa=b.components.data,xa,ja,ya,W,Ma,ea,ga,la;W={};ea={};var za=sa.getLimit(),Ca=za.max;la=za.min;var za=sa.getAxisBase(),Ha=sa.yBasePos=sa.getAxisPosition(za),pa=0,La=G.plotborderthickness;ga=b.graphics.container;var Ja=b.graphics.dataLabelContainer,Fa=b.graphics.shadowContainer,ta,Ka,Ea,Da,Ga,Na,Ua,Pa=G.use3dlighting,
Sa=!0,ab=!1,Xa=b.visible,Za=(b.components.removeDataArr||[]).length,bb=b.components.pool||[],eb=G.showplotborder,Va,Ya=function(){var a,c;if(!1===b.visible&&(!1===b._conatinerHidden||void 0===b._conatinerHidden)){Ja&&Ja.hide();a=b.components.data;for(c=0;c<H;c++)a[c]&&a[c].graphics&&a[c].graphics.element&&a[c].graphics.element.attr("visibility",m),a[c]&&a[c].graphics&&a[c].graphics.hotElement&&a[c].graphics.hotElement.attr("visibility",m);Fa.hide();b._conatinerHidden=!0}},$a=function(){var c=b.components.data,
d;for(d=0;d<H;d++)c[d]&&c[d].graphics&&c[d].graphics.element&&c[d].graphics.element.attr("fill",[a(c[d].config.colorArr[0]),!Pa]);z.drawSumValueFlag&&z.drawSumValue()};ga||(ga=b.graphics.container=c.datasetLayers=c.datasetLayers||Q.group(k,f));Fa||(Fa=b.graphics.shadowContainer=Q.group(E,f).toBack());H=Ia.getCategoryLen();if(Xa)for(f=0;f<H;f++)oa[f].graphics&&oa[f].graphics.element&&oa[f].graphics.element.attr("visibility",r),oa[f].graphics&&oa[f].graphics.hotElement&&oa[f].graphics.hotElement.attr("visibility",
r);xa=ga.negative=ga.negative||Q.group(n,ga);ya=ga.column=ga.column||Q.group(L,ga);0>la&&0<=Ca?(f=ga.zeroPlane)?(f=[Ha-5,c.config.canvasTop+5,1,c.config.canvasHeight,5,5,f],z.graphics.zeroplane.show(),z.graphics.zeroplane._.cubetop.show(),z.graphics.zeroplane._.cubeside.show(),z.graphics.zeroplane.animateWith(Aa,ka,{cubepath:f},fa,ra),z.graphics.zeroplane.attr({fill:[G.zeroPlaneColor,!Pa],stroke:G.zeroPlaneBorderColor||"none","stroke-width":G.zeroPlaneShowBorder?1:0})):(f=ga.zeroPlane=Q.group(g,ga).insertBefore(ya),
!z.graphics&&(z.graphics={}),z.graphics.zeroplane=Q.cubepath(Ha-5,c.config.canvasTop+5,1,c.config.canvasHeight,5,5,f).attr({fill:[G.zeroPlaneColor,!Pa],stroke:G.zeroPlaneBorderColor||"none","stroke-width":G.zeroPlaneShowBorder?1:0})):z.graphics&&z.graphics.zeroplane&&z.graphics.zeroplane.hide()&&z.graphics.zeroplane._.cubetop.hide()&&z.graphics.zeroplane._.cubeside.hide();(c=xa.data(l))||(xa.data(l,Array(H)),c=xa.data(l));(Ca=ya.data(l))||(ya.data(l,Array(H)),Ca=ya.data(l));for(f=0;f<H;f+=1)c[f]=
c[f]||Q.group(xa),Ca[f]=Ca[f]||Q.group(ya);f=0;for(Ka=H-1;f<H;f++,Ka--)if(ga=f,h=w&&w[f],W=(la=(xa=oa[f])&&xa.config)&&la.setValue,void 0!==xa&&void 0!==W&&null!==W){Va=xa.trackerConfig={};!xa||void 0!==W&&null!==W||(xa.graphics&&xa.graphics.element&&(xa.graphics.element.hide(),xa.graphics.element._.cubeside.hide(),xa.graphics.element._.cubetop.hide()),xa.graphics&&xa.graphics.hotElement&&xa.graphics.hotElement.hide());ya=la.setLink;ta=la.colorArr;xa.graphics||(oa[f].graphics={});ea=la.displayValue;
ca=0<=W?la.previousPositiveY:la.previousNegativeY;ia=va(qa(A(h.tooltext,Z.plottooltext,P.plottooltext)));wa&&(ca=b._parseValues(f,ca,S[f],ia),W=la.value);ua=sa.getAxisPosition(ca||za);h=Ia.getAxisPosition(f)+da;0!==Y?(ma=sa.getAxisPosition(W+(ca||0)),ca=Math.abs(ua-ma)):(ca=0,ma=ua);ma=Math.min(ma,ua);ua=na;d=(Va.isNegative=Ea=0>W)?c:Ca;Va.targetGroupTracker=void 0;ia=la.finalTooltext=!1!==la.toolText&&la.toolText+(ia?"":la.toolTipValue);Va.eventArgs={index:f,link:ya,value:W,displayValue:ea,categoryLabel:F[f].label,
toolText:ia?ia:"",id:J,datasetIndex:R,datasetName:Z.seriesname,visible:Xa};Ma=Va.eventArgs;W=la.setRolloutAttr;ea=la.setRolloverAttr;fa||(Ha=ma,pa=ca);Da=h;Ga=ma;Na=ua;Ua=ca;h+=5;ma-=5;xa.graphics.element?(ab=!0,ja=xa.graphics.element,d[Ka].appendChild(ja._.cubetop),d[Ka].appendChild(ja._.cubeside),d[Ka].appendChild(ja),d={cubepath:[ma,h,!0===b.visible||0===Y||wa?ca:ja.attrs.cubepath[2],ua,5,5]},ja.animateWith(Aa,ka,d,fa,ra,Sa&&Ya),ja.attr({fill:[a(ta[0]),!Pa],ishot:!0,stroke:eb&&a(ta[1]),"stroke-width":eb?
G.plotborderthickness:0,"stroke-dasharray":la.plotBorderDashStyle,cursor:ya?"pointer":J}),la.elemCreated=!1):(bb.element&&bb.element.length?(ja=xa.graphics.element=bb.element.shift(),d[Ka].appendChild(ja._.cubetop),d[Ka].appendChild(ja._.cubeside),d[Ka].appendChild(ja),ja.show()):ja=xa.graphics.element=Q.cubepath(d[Ka]),ja.attr({cubepath:[fa?Ha-5:ma,h,fa?0:pa,ua,5,5],fill:[a(ta[0]),!Pa],ishot:!0,stroke:eb&&a(ta[1]),"stroke-width":eb?G.plotborderthickness:0,"stroke-dasharray":la.plotBorderDashStyle,
cursor:ya?"pointer":J,visibility:Xa?r:m}),ja.animateWith(Aa,ka,{cubepath:[ma,h,ca,ua,5,5]},fa,ra,Sa&&$a),Sa=!1,xa._newXPos=h,la.elemCreated=!0);ja.shadow(la.shadow,Fa).data("BBox",{height:ua,width:pa,x:ma,y:h});if(ya||ha)ca<O&&(ma-=(O-ca)/2,ca=O),Va.attr={path:V([ma,h,ca,ua,5,5]),cursor:ya?"pointer":J,stroke:La&&C||q,"stroke-width":eb?G.plotborderthickness:0,fill:C,ishot:!0};wa&&!Ea||ja.toBack();xa._xPos=Ga;xa._yPos=Da;xa._height=Na;xa._width=Ua;ja.data("eventArgs",Ma).data("groupId",ga).data(N,!0).data(B,
ea).data(e,W).tooltip(ia);ja._.cubetop.data("eventArgs",Ma).data("groupId",ga).data(N,aa).data(B,ea).data(e,W).tooltip(ia);ja._.cubeside.data("eventArgs",Ma).data("groupId",ga).data(N,aa).data(B,ea).data(e,W).tooltip(ia)}b.drawn?b.drawLabel():D.labelDrawID.push(K.addJob(function(){b.drawLabel()},v.priorityList.label));b.drawn=!0;z.drawSumValueFlag&&ab&&z.drawSumValueFlag&&z.drawSumValue();Za&&b.remove();G.toleranceLeft=7;G.toleranceBottom=7},_checkPointerOverColumn:function(a,b,e){var g=this.chart.config,
l=g.plotborderthickness,k=g.showplotborder,m=this.components.data,p=m[a],n,h,d;if(p&&(n=p.config.setValue,!g.isstacked||!(0>n&&this.valueLook||0<n&&!this.valueLook))&&(l=k?l:0,null!==n&&(k=p._yPos,n=p._height+5,g=p._xPos-5,p=p._width+5,h=b-g,d=e-k,l=(l=0<=h&&h<=p+l&&0<=d&&d<=n+l?0<b+e-(g+k)-5:!1)?0>b+e-(g+k+p+n)+5:!1)))return{pointIndex:a,hovered:l,pointObj:m[a]}},_getHoveredPlot:function(a,b){var e=this.chart,g=e.config,l=e.components.canvas.config,l=Math.max(l.canvasPaddingLeft,l.canvasPadding),
k=g.canvasLeft,g=g.canvasTop,e=e.components.xAxis[0].getValue(e.isBar?b-g-l:a-k-l),e=Math.round(e);return this._checkPointerOverColumn(e-1,a,b)||this._checkPointerOverColumn(e,a,b)},remove:function(){var a=this,b=a.components,e=b.removeDataArr,g=b.pool||(b.pool={element:[],hotElement:[],label:[]}),l=e.length,k=a.config.groupMaxWidth,m,p=a.maxminFlag,n,h,d;(function(){return!1===a.endPosition?function(){return{x:m._xPos-k*l}}:!0===a.endPosition?function(){return{x:m._xPos+k*l||0}}:function(){return{width:0}}})();
for(d=0;d<l;d++)if(m=e[0],e.splice(0,1),m&&m.graphics){h=m.graphics;for(n in h)h[n].hide();m.graphics.element&&(g.element=g.element.concat(m.graphics.element));m.graphics.hotElement&&(g.hotElement=g.hotElement.concat(m.graphics.hotElement));m.graphics.label&&(g.label=g.label.concat(m.graphics.label))}b.pool=g;p&&a.setMaxMin()}},"Bar2D"])}]);Q.register("module",["private","modules.renderer.js-dataset-area",function(){var b=this.hcLib,v=b.parseConfiguration,J=this.window.Image,C="VML"===b.Raphael.type,
H=b.BLANKSTRING,A=b.TOUCH_THRESHOLD_PIXELS,u=b.CLICK_THRESHOLD_PIXELS,a=b.extend2,O=b.pluck,q=b.pluckNumber,M=b.toRaphaelColor,U=b.getFirstAlpha,N=b.HUNDREDSTRING,E=b.plotEventHandler,r=b.hasTouch?A:u,k=b.getCrispValues,m=b.getValidValue,A=b.preDefStr,n=A.DEFAULT,L=A.visibleStr,g=A.hiddenStr,l=A.setRolloverAttrStr,B=A.setRolloutAttrStr,A=Math,e=A.min,V=A.max,p=A.ceil,T=b.getFirstColor,K=b.schedular;Q.register("component",["dataset","area",{type:"area",_getHoveredPlot:function(a,b){var e=this.chart,
g=e.components.canvas.config,l=e.components.xAxis[0],k=this.components,k=k.dataRT||k.data,m,n=k.length,r;m=this.config.plotsPerBin||1;var h=this.config,g=a-e.config.canvasLeft-Math.max(g.canvasPaddingLeft,g.canvasPadding||0),h=h&&h.radius||0,e=Math.floor(Math.max(l.getValue(g-h),0)),l=Math.ceil(Math.min(l.getValue(g+h),n-1));1<m&&(e=p(e/m),l=p(l/m),e=(e-1)*m+1,l*=m);for(;l>=e;l--)if(m=k[l])if(r=this.isWithinShape(m,l,a,b))break;return r},isWithinShape:function(a,b,e,g,l){if(a&&((l=a.config.setValue)||
0===l)){var k=a.config.anchorProps,m=k&&k.borderThickness,p=this.chart.config.viewPortConfig;l=this.components;l=l.dataRT||l.data;var n=q(a.config.dragTolerance,0),h,p=a._xPos-(p?p.x*p.scaleX:0);h=a._yPos;if(null!==h)return a=a.config.hoverEffects,(a=Math.max(k&&k.radius,a&&a.anchorRadius||0,r)+m/2)||(a=0),e=Math.sqrt(Math.pow(e-p,2)+Math.pow(g-h,2)),e<=a||e<=n?{pointIndex:b,hovered:!0,pointObj:l[b]}:!1}},_parseShadowOptions:function(){var a=this.chart,b=this.config,e=a.jsonData.chart,a=q(a.defaultPlotShadow,
a.components.colorManager.getColor("showShadow"));return{opacity:q(e.showshadow,a)?b.alpha/100:0}},_firePlotEvent:function(a,e,g,l){var k=this.chart,m=this.components,m=(m.dataRT||m.data)[e],p=this.graphics.sharedAnchor,p=m.graphics.element||void 0!==m.config.setValue&&p&&p.element,r=b.toolTip,q=g.originalEvent,h=k.components.paper.canvas.style,d,f;if(p)switch(d=m.config,f=d.setLink,d=d.eventArgs,a){case "mouseover":this._decideTooltipType(e,l,g);this._rolloverResponseSetter(k,m,q);f&&(h.cursor="pointer");
break;case "mouseout":r.hide(k.chartInstance.id);this._rolloutResponseSetter(k,m,q);f&&(h.cursor=n);break;case "click":E.call(p,k,q,"dataplotclick",d);break;case "mousemove":this._decideTooltipType(e,l,g)}},_rolloverResponseSetter:function(a,b,e,g){var l=b.graphics,k=(l=l&&(l.element||this.getAnchor(a,b)))&&l.getData(),m=k.hoverEnabled;!0!==k.draged&&(this._hoverFunc(b,"DataPlotRollOver",m,a.jsonData.chart),!g&&l&&E.call(l,a,e,"DataPlotRollOver"))},_rolloutResponseSetter:function(a,b,e,g){var l=b.graphics,
k=(l=l&&(l.element||this.getAnchor(a,b,!0)))&&l.getData(),m=k.hoverEnabled,p=this.type,n=b.config,h=n.anchorProps,h=h.radius&&h.anchorAlpha;!0!==k.draged&&(this._hoverFunc(b,"DataPlotRollOut",m,a.jsonData.chart),!g&&l&&E.call(l,a,e,"DataPlotRollOut"));n.isAnchorsDrawn&&!h&&"area"===p&&l&&l.hide()},getAnchor:function(a,b,e){var g=this.graphics,g=g.sharedAnchor||(g.sharedAnchor={}),k=g.element,m=this.graphics.container,p=a.components.paper,n=b&&b.config,r=n&&n.anchorProps,h,d,f,c,q,u;if(r)return h=
n&&n.eventArgs,d=n&&n.setRolloutAttr,f=n&&n.setRolloverAttr,c=n&&n.hoverEffects,q=r&&r.radius,u=r&&r.shadow,a=a.config.prevAnchorHovered,r=r&&r.anchorAlpha,c.anchorAnimation=0,k||(k=g.element=p.polypath(m.anchorGroup)),b._index!==a&&(k.shadow(u,m.anchorShadowGroup).data("anchorRadius",q).data("anchorHoverRadius",c.anchorRadius).data("hoverEnabled",c.enabled).data("eventArgs",h),c.enabled&&k&&k.data(l,f).data(B,d)),e?k.hide():r&&k.show(),n.prevAnchorHovered=b._index,k},configure:function(){var a=this.chart,
e=a.components,g=a.config,l=this.config,k=this.JSONData,p=a.jsonData.chart,n=a.singleseries,r=e.colorManager,B=q(this.index,this.stackIndex),h=q(k.showplotborder,p.showplotborder||1),B=!n||m(p.palettecolors)?r.getPlotColor(B):r.getColor("plotFillColor").split(/\s*\,\s*/)[0],d,f=g.isdual,c=g.haslineset;this.__setDefaultConfig();v(k,l,a.config,{data:!0});l.plotColor=B;l.parentYAxis=f?c?d=1:d="s"===O(k.parentyaxis&&k.parentyaxis.toLowerCase(),"p")?1:0:d=0;this.yAxis=e.yAxis[d];l.valueposition=l.valueposition.toLowerCase();
l.plotfillcolor=O(k.color,p.plotfillcolor,B);l.plotgradientcolor=0!==g.useplotgradientcolor?b.getDefinedColor(p.plotgradientcolor,r.getColor("plotGradientColor")):"";l.plotfillalpha=O(k.alpha,g.plotfillalpha);l.fillColor={color:l.plotfillcolor+(l.plotgradientcolor?","+l.plotgradientcolor:""),alpha:l.plotfillalpha,angle:l.plotfillangle};l.plotborderalpha=h?O(k.plotborderalpha,p.plotborderalpha,k.alpha,p.plotfillalpha,"95"):0;l.plotbordercolor=O(k.plotbordercolor,p.plotbordercolor,p.areabordercolor,
n?m(p.palettecolors)?r.getPlotColor(0):r.getColor("plotBorderColor").split(/\s*\,\s*/)[0]:"666666");l.plotborderdashstyle=l.dashed?b.getDashStyle(l.plotborderdashlen,l.plotborderdashgap,l.plotborderthickness):"none";l.linecolor=O(k.color,p.linecolor,l.plotColor);l.legendSymbolColor="line"===this.type?l.linecolor:l.plotfillcolor;e=b.getDashStyle(l.linedashlen,l.linedashgap,l.linethickness);l.lineDashStyle=l.dashed?e:"none";l.shadow=this._parseShadowOptions();l.drawanchors=q(k.drawanchors,k.showanchors,
p.showanchors,p.drawanchors);l.anchorbgcolor=O(k.anchorbgcolor,g.anchorbgcolor,r.getColor("anchorBgColor"));l.anchorbordercolor=O(k.anchorbordercolor,g.anchorbordercolor,l.linecolor,l.plotColor);this.components.data=this.components.data||(this.components.data=[]);this.visible=1===q(k.visible,!Number(k.initiallyhidden),1);this._setConfigure();this._realTimeConfigure&&this._realTimeConfigure();!1!==a.hasLegend&&this._addLegend()},_setConfigure:function(a,g){var l=this.chart,k=b.parseUnsafeString,p=
this.config,n=l.config,w=this.JSONData,B=l.jsonData.chart,u=a||w.data||[],h,d=l.components.xAxis[0],f=a?a.data.length:d.getCategoryLen(),c,K=n.isDrag,v,L,E,A,C,H=-Infinity,T=Infinity,J=k(n.yaxisname),N=k(n.xaxisname),M=this.yAxis,U=n.tooltipsepchar,Q=p.dashed,ka,na,da;p.imageCount=0;c=this.components.data;c||(c=this.components.data=[]);p.maxRadius=-Infinity;n.dragTolerance=n.dragTolerance||-Infinity;for(L=0;L<f;L++)a?(l=a&&a.data[L]||{},ka=void 0!==g?g+L:c.length-f+L,h=c[ka]):(h=c[L],l=u&&u[L]||{}),
v=h&&h.config,h||(h=c[L]={}),h.config||(v=c[L].config={}),h.graphics||(h.graphics={}),A=q(ka-f,L),v.setValue=E=M.getCleanValue(l.value,p.stack100percent),v.setLink=O(l.link),v.anchorProps=this._parseAnchorProperties(A),p.maxRadius=V(v.anchorProps.radius+v.anchorProps.borderThickness/2,p.maxRadius),da=v.anchorProps.radius+v.anchorProps.borderThickness/2,v.dragTolerance=K?(6>da?5.5:da+.5)+r:0,A=d.getLabel(A),v.label=m(k(A.tooltext||A.label)),v.showValue=q(l.showvalue,p.showvalues),v.dashed=q(l.dashed,
Q),v.dashStyle=v.dashed?b.getDashStyle(p.linedashlen,p.linedashgap,p.linethickness):"none",v.color=O(l.color,p.linecolor),v.setColor=l.color,v.setAlpha=l.alpha,v.setDashed=l.dashed,v.alpha=O(l.alpha,l.linealpha,p.linealpha),v.setColor&&(na=!0),null!==E&&(H=V(H,E),T=e(T,E)),v.setTooltext=k(l.toolText),v.toolTipValue=E=M.dataLabels(E),v.setDisplayValue=A=k(l.displayvalue),v.displayValue=O(A,E),v.formatedVal=A=v.toolTipValue,v.setTooltext=b.getValidValue(k(O(l.tooltext,w.plottooltext,B.plottooltext))),
v.valuePosition=O(l.valueposition,p.valueposition),v.valuePosition&&(v.valuePosition=v.valuePosition.toLowerCase()),n.showtooltip?null===A?E=!1:void 0!==v.setTooltext?(E=[1,2,3,4,5,6,7],A={yaxisName:J,xaxisName:N,formattedValue:A,label:v.label},E=b.parseTooltext(v.setTooltext,E,A,l,B,w)):(n.seriesnameintooltip&&(C=b.getFirstValue(w&&w.seriesname)),E=C?C+U:"",E+=v.label?v.label+U:""):E=!1,v.toolText=E,v.setLevelTooltext=v.setTooltext,v.setTooltext=E,v.hoverEffects=this._parseHoverEffectOptions(h,l),
v.anchorProps.isAnchorHoverRadius=v.hoverEffects.anchorRadius,n.dragTolerance=V(n.dragTolerance,p.maxRadius,v.hoverEffects.anchorRadius);n.dragTolerance=K?(5<n.dragTolerance?n.dragTolerance:5.5)+r:0;p.maxValue=H;p.minValue=T;this.ErrorValueConfigure&&this.ErrorValueConfigure();p.hasSetColor=na},init:function(a){this.JSONData=a;this.components={};this.graphics={};this.configure()},draw:function(){var e=this,p=e.chart,n=p.jsonData,r=e.graphics,z=p.graphics,q=p.config,w=p.getJobList(),u=p.components,
v=e.JSONData,h=n.chart,d=e.config,f=d.legendInteractivity,c=p.config.isstacked,D=e.groupManager.stackSumValue[0],G=e.stackIndex,E,L=u.paper,A=u.xAxis[0],C=e.yAxis,H,T,N,U=q.showtooltip,Q,ha=e.components.data,ra=e.components.removeDataArr||[],ka=ra.length,na,da,oa,Y,za,fa,Aa,ua,ia=z.areaGroup,xa=C.getAxisBase(),ja,ya,W=d.plotbordercolor,Ma=d.plotborderalpha,ea=d.plotborderdashstyle,ga=d.plotborderthickness,la=r.container,Ca,Ha=b.parseUnsafeString,pa=d.fillColor,La=p.is3D,Ja=r.shadowContainer,Fa=r.dataLabelContainer,
ta=function(){!1!==e.visible||!1!==e._conatinerHidden&&void 0!==e._conatinerHidden||(la.areaGroup.hide(),Ja.hide(),la.anchorShadowGroup.hide(),la.anchorGroup.hide(),Fa&&Fa.hide(),e._conatinerHidden=!0)},Ka=function(){!1!==e.visible&&(la.anchorShadowGroup.show(),la.anchorGroup.show(),Fa.show(),Ja.show());ia.area.attr({"clip-rect":null});ia.area.node&&ia.area.node.removeAttribute("clip-path");p._animCallBack()},Ea=d.shadow,Da,Ga=e.visible,Na,Ua,Pa={},Sa=z.datalabelsGroup,ab=A.getPVR(),Xa,Za=La?10:0,
bb,eb=La?10:0,Va=p.components.scrollBar,Ya=p.components.canvas.config.clip,$a=a([],Ya["clip-canvas"]),Ta=a([],Ya["clip-canvas-init"]),kb=q.height,hb=!q.drawfullareaborder,ib=r.connector,ob=e.components.pool||{},ba=0,Ba=e.drawn,Oa=!0!==Ba,Qa,I,cb,vb=e.startPosition,sb={},pb={},gb=p.get("config","animationObj")||{},qb=gb.duration,mb=gb.dummyObj,nb=gb.animObj,Fb=gb.animType,Bb=d.lastPath||{},Wb,Hb=!0,wb,Nb,xb,yb,Cb,Ib=p.config.viewPortConfig,Jb=Ib.x,ub=Ib.scaleX,jb,tb,Wa,Kb,zb,Gb,Sb=e.chart.config.realTimeConfig&&
e.chart.config.realTimeConfig.clear,fb=0,Tb=!Oa&&qb,Lb=0,Mb,Ob,Pb,rb,db=d.isSkippedData,Ab=p.config.canvasTop,Vb=p.config.canvasBottom,Db=r.sharedAnchor,Qb=Db&&Db.element,Eb=p.isRealTime,lb=0,Ub=A.getCategoryLen(),Zb=void 0!==q.scrollMinVal?q.scrollMinVal:0,Rb=void 0!==q.scrollMaxVal?q.scrollMaxVal:Ub,Xb=q.startPathIndex,Yb=q.endPathIndex,$b;if(Xb||Yb)$b={begin:Xb-1,end:Yb+1};d.imagesLoaded=0;e.noOfNewDataAtEnd=0;la||(la=r.container={anchorShadowGroup:L.group("anchor-shadow",ia.areaConnector),areaGroup:L.group("area",
ia.area),anchorGroup:L.group("anchors",ia.areaConnector)},Ga||(la.anchorShadowGroup.hide(),la.areaGroup.hide(),la.anchorGroup.hide()));Ja||(Ja=r.shadowContainer=L.group("shadows",ia.shadows),Ga||Ja.hide());Fa||(Fa=r.dataLabelContainer=r.dataLabelContainer||L.group("datalabel",Sa),Ga||Fa.hide());Ga&&(la.anchorShadowGroup.show(),la.areaGroup.show(),la.anchorGroup.show(),Ja.show(),Fa.show(),e._conatinerHidden=!1);d.groupMaxWidth=A.getAxisPosition(1)-A.getAxisPosition(0);Xa=ab*Ub;if(Sb)for(E=0,Ub=ra.length;E<
Ub;E++)e._removeDataVisuals(ra.shift());else e._shiftOffRemovedPoints();sb=d.removePath;Eb&&($a[1]=0,$a[3]=kb,la.areaGroup.attr({"clip-rect":$a}),Fa.attr({"clip-rect":$a}),la.anchorGroup.attr({"clip-rect":$a}),la.anchorShadowGroup.attr({"clip-rect":$a}),Ja.attr({"clip-rect":$a}));if(!(Zb>=Rb)){for(E=Zb;E<Rb;E++)Q=(na=ha[E])&&na.config,na&&void 0!==Q.setValue&&(na.graphics||(na.graphics={}),oa=na.graphics.element,jb=na.graphics.image,Qa=A.getLabel(E).label,za=Q.setValue,Pb=Q&&Q.isSkipped,void 0===
za||!0===Pb||!1!==db&&!Oa&&f&&(!Ga&&!oa||Ga&&oa&&!na._xPos&&!na._yPos)?(oa&&oa.hide(),jb&&jb.hide(),Q&&(Q.isSkipped=!0)):(Y=Q.setLink,Pa=Q.anchorProps||{},Ua=Pa.shadow,H=m(Ha(O(Q.setLevelTooltext,v.plottooltext,h.plottooltext))),Q&&(ja=0<=za?Q.previousPositiveY:Q.previousNegativeY),c&&za&&(ja=e._parseValues(E,ja,D[E],H),za=Q.value),null!==za&&(ya=C.getAxisPosition(ja||xa)+eb,N=e.visible?C.getAxisPosition(za+(ja||0))+eb:ya,T=A.getAxisPosition(E)-Za+Jb*ub,T=k(T,ga,ga).position,N=k(N,ga,ga).position,
tb=Pa.symbol,Wa=Pa.radius,Kb=Pa.startAngle,wb=Pa.bgColor,Cb=Pa.bgAlpha,Nb=Pa.borderColor,yb=Pa.borderAlpha,xb=Pa.borderThickness,Da=Q.hoverEffects,Mb=N-Wa-xb/2,Ob=N+Wa+xb/2,Mb<Ab&&(q.toleranceTop=V(q.toleranceTop||0,Ab-Mb)),Ob>Vb&&(q.toleranceBottom=V(q.toleranceBottom||0,Ob-Vb)),da=U?Q.toolText+(H?"":Q.toolTipValue):"",Q.finalTooltext=da,fa=Q.eventArgs=Q.eventArgs||{},fa.index=E,fa.link=Y,fa.value=za,fa.displayValue=Q.displayValue,fa.categoryLabel=Qa,fa.toolText=da,fa.id=e.userID,fa.datasetIndex=
G||0,fa.datasetName=v.seriesname,fa.visible=Ga,Da.enabled&&(Q.setRolloverAttr={polypath:[Da.anchorSides||2,T,N,Da.anchorRadius,Da.startAngle,Da.dip],fill:M({color:Da.anchorColor,alpha:Da.anchorBgAlpha}),stroke:M({color:Da.anchorBorderColor,alpha:Da.anchorBorderAlpha}),"stroke-width":Da.anchorBorderThickness},Q.setRolloutAttr={polypath:[Pa.symbol[1]||2,T,N,Pa.radius,Pa.startAngle,0],fill:M({color:Pa.bgColor,alpha:Pa.bgAlpha}),stroke:M({color:Pa.borderColor,alpha:Pa.borderAlpha}),"stroke-width":Pa.borderThickness},
ua=Q.setRolloverAttr,Aa=Q.setRolloutAttr),Gb={polypath:[tb[1]||2,T,N,Wa,Kb,0]},zb=!1,!oa&&Tb&&!0!==vb&&(cb=Ub+ba,I=A.getPixel(cb),na._baseXPos=na._xPos=I,na._yPos=N,na._baseYPos=ya,Bb=this.getLinePath([na],Bb),ba++),rb=Wa&&Pa.anchorAlpha,Q.isAnchorsDrawn||d.drawanchors||rb?Pa.imageUrl?(Q.anchorImageLoaded=!1,Na=new J,Na.onload=e._onAnchorImageLoad(e,E,fa,T,N,na),Na.onerror=e._onErrorSetter(e,E),Na.src=Pa.imageUrl,fb++):(jb&&jb.hide(),oa||(ob.element&&ob.element.length?(oa=na.graphics.element=ob.element.shift(),
oa.show().attr({transform:""})):(oa=na.graphics.element=L.polypath(la.anchorGroup),oa.attr(Gb),zb=!0,Q.isAnchorsDrawn=!0,lb++),Tb&&Eb&&oa.attr({polypath:[Pa.symbol[1]||2,I,N,Pa.radius,Pa.startAngle,0]})),!Ba||zb&&!Eb||oa.show().animateWith(mb,nb,Gb,qb,Fb,Hb&&ta),oa.attr({fill:M({color:wb,alpha:Cb}),stroke:M({color:Nb,alpha:yb}),"stroke-width":xb,visibility:Wa?Ga:g}).shadow(Ua,la.anchorShadowGroup).data("anchorRadius",Wa).data("anchorHoverRadius",Da.anchorRadius).data("hoverEnabled",Da.enabled).data("eventArgs",
fa),Hb=!1,jb&&jb.hide(),Da.enabled&&oa&&oa.data("anchorRadius",Pa.radius).data("anchorHoverRadius",Da.anchorRadius).data("hoverEnabled",Da.enabled).data("eventArgs",fa).data(l,ua).data(B,Aa)):oa&&!rb&&oa.hide()),na._xPos=T,na._yPos=N,na._baseXPos=T,na._baseYPos=ya,na._polyPath=Gb,na._index=E,Lb++));E===lb||d.drawanchors?Qb&&Qb.hide():Db&&Qb?Qb.hide():e.getAnchor(p,na,!0);d.noOfImages=fb;d.totalImages=fb;0===fb&&(!0===Ba?e.drawLabel():w.labelDrawID.push(K.addJob(function(){e.drawLabel()},b.priorityList.label)));
pb=this.getLinePath(ha,{},$b);ka&&Eb?(sb=this.getLinePath(ha,sb),Wb=sb.getPathArr()):Wb=pb.getPathArr();d.lastPath=pb;Va&&(bb=Va.conf.startPercent,$a[2]=Xa+Ta[0],1===bb&&(Ta[0]=$a[2],$a[0]=0));$a[3]+=eb;(Ca=e.graphics.lineElement)?qb&&Eb&&Ca.attr({path:Bb.getPathArr()}):(Ca=e.graphics.lineElement=L.path(la.areaGroup),Ca.attr({path:pb.getPathArr()}),qb&&Ga&&(la.anchorGroup.hide(),la.anchorShadowGroup.hide(),Ja.hide(),Fa.hide(),ia.area.attr({"clip-rect":Ta}).animate({"clip-rect":$a},qb,Fb,Ka)));Sb?
Ca.hide():Ba&&Ca.show().animateWith(mb,nb,{path:Wb},qb,Fb,Hb&&ta);Hb=!1;Ca.attr({stroke:M({color:W,alpha:Ma}),"stroke-width":hb?0:ga,fill:M(pa),"stroke-linecap":"round","stroke-linejoin":2<ga?"round":"miter","stroke-dasharray":ea}).shadow(Ea,Ja);hb?(ib=e.graphics.connector,ib||(ib=e.graphics.connector=L.path({path:pb.pathArr,stroke:M({color:W,alpha:Ma}),"stroke-width":ga,"stroke-linecap":"round","stroke-linejoin":2<ga?"round":"miter","stroke-dasharray":ea},la.areaGroup)),ib.show().animateWith(mb,
nb,{path:pb.pathArr},qb,Fb)):ib&&ib.hide();e.drawn=!0}},getPathArr:function(){var a=this.pathArr,b=this.path2Arr;return a.length||b.length?a.concat(b):[]},_getPathString:function(a){var b=a.length,e="",g;for(g=0;g<b;g+=1)e+=" "+a[g];return e},getLinePath:function(a,b,e){var g=this.chart,l=g.config,k=l.connectnulldata,p=b||{};b=p.lastValidValue||!1;var m=p.temp||[],n=p.temp2||[],h=p.pathArr||[],d=p.path2Arr||[],g=g.components.xAxis[0],f=this.yAxis,c,r,q,B,u,K=a.length,p=p.pointsJoined||0,v,E;c=e&&
e.begin||0;e=e&&e.end||K;for(var K=f.getPixel(0),L=l.viewPortConfig,l=L.x,L=L.scaleX,A="area"===this.type;c<e;c++)if(v=a[c])r=v.config,E=r.setValue,q=v._xPos||g.getPixel(c)+l*L,B=v._yPos||f.getPixel(E),void 0===E||r&&!0===r.isSkipped?r&&delete r.isSkipped:(r=v._baseXPos||(A?q:void 0),u=v._baseYPos||(A?K:void 0),null===E?k||(0<p&&("Z"!==d[d.length-1]&&void 0!==u&&d.push("Z"),h=h.concat(d),d=[]),m=[],n=[],b=!1):b?(m.length&&(h=h.concat(m),void 0!==r&&(d=n,n=[]),m=[],p++),h.push(q,",",B),void 0!==u&&
d.unshift(q,",",u)):(m.push("M",q,",",B,"L"),void 0!==u&&n.push(r,",",u),p=0,b=!0));"Z"!==d[d.length-1]&&0<p&&void 0!==u&&d.push("Z");return{pathArr:h,path2Arr:d,lastValidValue:b,pointsJoined:p,temp:m,temp2:n,getPathArr:this.getPathArr}},_shiftOffRemovedPoints:function(){var a=this,b=a.chart,e=a.config,g=a.components.removeDataArr,l,k=b.components.xAxis[0].getPVR();l=b.get("config","animationObj");var b=l.duration,p=a.drawn&&b,m=l.dummyObj,n=l.animObj,h=l.animType,d,f,c,r,q,B={},u,K,v=a.components.removeElementsArr=
a.components.removeElementsArr||(a.components.removeElementsArr=[]),E=e.hideAnimFlag=!1,L=function(){var c=a.components.removeElementsArr,b=c.length,d;for(d=0;d<b;d++)a._removeDataVisuals(c.shift())},A,C;if(g){l=g.length;for(u=0;u<l;u++){if(C=g[0])if(v.push(C),p){d=C.config.setValue;f=C._xPos;if(void 0==f){g.splice(0,1);continue}c=C.graphics.element;r=C.graphics.label;q=C.graphics.image;K=C.graphics.connector;null!==d&&(d=l*k,A="T,"+-d+",0",C._xPos=f-d,f=C._xPos,C._baseXPos=f,c&&c.animateWith(m,n,
{transform:A},b,h,!E&&L),e.hideAnimFlag=!0,r&&r.animateWith(m,n,{transform:A},b,h),q&&q.animateWith(m,n,{transform:A},b,h),K&&K.hide());B=a.getLinePath([C],B)}else L();g.splice(0,1)}e.removePath=B}},_removeDataVisuals:function(a){var b=this.components.pool||(this.components.pool={}),e,g,l;if(a)for(e in g=a.graphics,g)a=b[e]||(b[e]=[]),l=g[e],l.hide&&"function"===typeof l.hide&&(l.attr({"text-bound":[]}),l.hide(),l.shadow&&l.shadow(!1)),a.push(g[e])},_parseAnchorProperties:function(a,e){var g=this.config,
l=this.type,k=this.chart,p=k.config.anchoralpha,p="area"===(!k.config.anchoralpha&&l)?0:1,m=this.JSONData,n=this.chart.jsonData.chart,k=(e||m.data||[])[a]||{},l={},r=b.graphics.mapSymbolName,h,d;h=void 0!==O(k.anchorstartangle,m.anchorstartangle,n.anchorstartangle,k.anchorimagealpha,m.anchorimagealpha,n.anchorimagealpha,k.anchorimagescale,m.anchorimagescale,n.anchorimagescale,k.anchorimagepadding,m.anchorimagepadding,n.anchorimagepadding,k.anchorimageurl,m.anchorimageurl,n.anchorimageurl,k.anchorradius,
m.anchorradius,n.anchorradius,k.anchorbgcolor,m.anchorbgcolor,n.anchorbgcolor,k.anchorbordercolor,m.anchorbordercolor,n.anchorbordercolor,k.anchoralpha,m.anchoralpha,n.anchoralpha,k.anchorsides,m.anchorsides,n.anchorsides,k.anchorborderthickness,m.anchorborderthickness,n.anchorborderthickness,void 0);d=q(k.drawanchors,g.drawanchors);l.enabled=h?q(d,h):q(d,p);l.startAngle=q(k.anchorstartangle,g.anchorstartangle);l.imageAlpha=q(k.anchorimagealpha,g.anchorimagealpha);l.imageScale=q(k.anchorimagescale,
g.anchorimagescale);l.imagePadding=q(k.anchorimagepadding,g.anchorimagepadding);0>l.imagePadding&&(l.imagePadding=0);l.imageUrl=O(k.anchorimageurl,g.anchorimageurl);l.imageUrl&&g.imageCount++;l.radius=q(k.anchorradius,g.anchorradius);l.isAnchorRadius=O(k.anchorradius,m.anchorradius,n.anchorradius);l.bgColor=O(k.anchorbgcolor,g.anchorbgcolor);p=l.enabled?U(O(k.anchoralpha,g.anchoralpha,l.enabled?N:"0")):0;l.anchorAlpha=p;l.bgAlpha=U(O(k.anchorbgalpha,g.anchorbgalpha,p))*p/100;l.imageAlpha=l.imageAlpha*
p/100;l.borderColor=O(k.anchorbordercolor,g.anchorbordercolor);l.borderAlpha=p;l.sides=O(k.anchorsides,g.anchorsides);l.borderThickness=O(k.anchorborderthickness,g.anchorborderthickness);l.symbol=r(l.sides).split("_");g=q(k.anchorshadow,g.anchorshadow)&&1<=l.radius;l.shadow={opacity:g?p/100:0};return l},_onErrorSetter:function(a){return function(){var e=a.config,g=a.chart.getJobList();e.imagesLoaded++;e.imagesLoaded===e.imageCount&&(!0===a.drawn?a.drawLabel():g.labelDrawID.push(K.addJob(function(){a.drawLabel()},
b.priorityList.label)))}},_onAnchorImageLoad:function(k,p,m,n,r,q){return function(){var w=k.chart,u=w.getJobList(),v=k.config,h=w.config,d=w.components.paper,f=k.components.data,c=void 0!==q?q:f[p],D=c.config,G=c.graphics,E=D.anchorProps,A=k.graphics.container,H=A.anchorGroup,T=A.anchorShadowGroup,J=w.get("config","animationObj"),A=J.dummyObj,N=J.animObj,O=J.animType,J=J.duration,U=E.imageUrl,Q=w.components.xAxis[0],ha=f.length,f=D.hoverEffects,ra=E.imageScale,ka=E.imageAlpha,na=f.imageHoverAlpha,
da=f.imageHoverScale,oa=this.height*ra*.01,Y=this.width*ra*.01,za=this.width*da*.01,fa=this.height*da*.01,Aa=h.showtooltip,ua=k.startPosition,ia=k.noOfNewDataAtEnd,xa=k.allImagesDrawn&&J,ja=D.setLink,ya,W,Ma,ea,ga,la,Ca,Ha,pa,La,Ja,Fa,w=w.isRealTime,ta=k.config.animFlag,Ka=v.noOfImages;W=v.noOfImagesDrawn=v.noOfImagesDrawn||(v.noOfImagesDrawn=0);var Ea=k.components.pool||{};D.isRemoving||(C?(Ca={x:n-this.width*ra*.005,y:r-this.height*ra*.005,width:Y,height:oa,alpha:ka},pa={x:n-this.width*da*.005,
y:r-this.height*da*.005,width:za,height:this.height*da*.01,alpha:na},(na=G.element)&&"image"!==na.type&&(na.remove(),na=G.element=null),na||(G.element=na=d.image(U,H),D.isAnchorsDrawn=!0),h.dragTolerance=h.dragTolerance<oa?oa+.5:h.dragTolerance,na.css({opacity:.01*ka}).data("alwaysInvisible",!ra).data("setRolloverProperties",f).data(l,pa).data(B,Ca).data("imgRef",this).data("anchorRadius",ra).data("anchorHoverRadius",da),na.animateWith(A,N,Ca,J,O)):(ya=E.symbol[1],la=f.isAnchorHoverRadius,W=E.isAnchorRadius,
W=E.radius=W?E.radius:e(Y,oa)/2,Ma=E.shadow,Ca=E.imagePadding,f.radius=la?f.anchorRadius:W+1,ga=f.radius-Ca-.5*f.anchorBorderThickness,la=W-Ca-.5*E.borderThickness,pa=Ca={},Ha=[ya||2,n,r,W,E.startAngle,void 0],E.markerRadius=W,h.dragTolerance=h.dragTolerance<W?W+.5:h.dragTolerance,h={fill:M({color:E.bgColor,alpha:E.bgAlpha}),"stroke-width":E.borderThickness,stroke:M({color:E.borderColor,alpha:E.borderAlpha})},Ca=a({polypath:Ha},h),f&&(pa={polypath:[f.anchorSides||2,n,r,f.radius,f.startAngle,f.dip],
fill:M({color:f.anchorColor,alpha:f.anchorBgAlpha}),"stroke-width":f.anchorBorderThickness,stroke:M({color:f.anchorBorderColor,alpha:f.anchorBorderAlpha})},Ha=V(f.anchorAlpha,f.anchorBorderAlpha),na>Ha&&(na=Ha)),E.bgAlpha&&E.borderAlpha&&(Ha=V(E.bgAlpha,E.borderAlpha),ka>Ha&&(ka=Ha)),La=G.element,Ha={polypath:Ca.polypath},La||(Ea.element&&Ea.element.length?(La=G.element=Ea.element.shift())&&La.attr({transform:""}):(La=G.element=d.polypath(H),La.attr(Ha),ea=D.isAnchorsDrawn=!0),xa&&w&&!0!==ua&&(Ja=
Q.getPixel(ha+ia),k.noOfNewDataAtEnd+=1,Q=[ya||2,Ja,r,W,E.startAngle,void 0],La.attr({transform:"",polypath:Q}))),!k.allImagesDrawn||ea&&!w||La.show().animateWith(A,N,Ha,J,O,ta&&void 0).attr(h),ta=k.config.animFlag=!1,La.attr({fill:M({color:E.bgColor,alpha:E.bgAlpha}),ishot:!Aa,"stroke-width":E.borderThickness,stroke:M({color:E.borderColor,alpha:E.borderAlpha}),cursor:ja?"pointer":"",visibility:W?L:g}).data("alwaysInvisible",!W).data("setRolloverProperties",f).data("hoverEnabled",f.enabled).data(l,
pa).data(B,Ca).data("anchorRadius",W).data("anchorHoverRadius",f&&f.radius).data("eventArgs",m).shadow(Ma,T),ea=d.polypath(ya||2,n,r,0<la?la:0,E.startAngle,void 0,H).attr({visibility:g}),Q=k._getPathString(ea.attrs.path),ea.remove(),ea=d.polypath(ya||2,n,r,0<ga?ga:0,f.startAngle,f.dip,H).attr({visibility:g}),T=k._getPathString(ea.attrs.path),ea.remove(),E.imgRefWidth=this.width,E.imgRefHeight=this.height,E.imgRefScale=ra,E.rolloutClipRadius=la,Ca={x:n-this.width*ra*.005,y:r-this.height*ra*.005,width:Y,
height:oa,alpha:ka,"clip-path":Q},pa={x:n-this.width*da*.005,y:r-this.height*da*.005,width:za,height:fa,alpha:na,"clip-path":T},na=G.image,na||(Ea.image&&Ea.image.length?(na=G.image=Ea.image.shift(),na.show().attr({transform:""})):(G.image=na=d.image(U,H),na.attr({x:Ca.x,y:Ca.y,width:Ca.width,height:Ca.height,"clip-path":Ca["clip-path"]}),Fa=D.isAnchorsDrawn=!0),xa&&w&&(ea=d.polypath(ya||2,Ja,r,0<la?la:0,E.startAngle,void 0).attr({visibility:g}),d=k._getPathString(ea.attrs.path),ea.remove(),Ja={x:Ja-
this.width*ra*.005,y:r-this.height*ra*.005,width:Y,height:oa,alpha:ka,"clip-path":d},na.attr(Ja))),na.attr({src:U}).toFront(),na.attr({visibility:W?L:g}).css({opacity:.01*ka}).data("alwaysInvisible",!ra).data("setRolloverProperties",f).data(l,pa).data(B,Ca).data("anchorRadius",ra).data("imgRef",this).data("anchorHoverRadius",da),!k.allImagesDrawn||Fa&&!w||na.animateWith(A,N,{x:Ca.x,y:Ca.y,width:Ca.width,height:Ca.height,"clip-path":Ca["clip-path"]},J,O,ta&&void 0),na.attr({alpha:Ca.alpha}),W=V(W,
f&&f.anchorRadius||0,2)),c._xPos=n,c._yPos=r,v.imagesLoaded++,D.anchorImageLoaded=!0,v.imagesLoaded===v.totalImages&&(!0===k.drawn?k.drawLabel():u.labelDrawID.push(K.addJob(function(){k.drawLabel()},b.priorityList.label))),W=v.noOfImagesDrawn+=1,W===Ka&&(k.allImagesDrawn=!0))}},_hideGraphics:function(a){var b,e;for(e in a)a.hasOwnProperty(e)&&(b=a[e])&&(b.hide?b.hide():this._hideGraphics(b))},getPlotClickFn:function(a){return function(b){E.call(this,a,b)}},show:function(){var a=this.chart,b=a.components.xAxis[0],
e=this.yAxis;this.config.legendInteractivity=!0;a._chartAnimation();this.visible=!0;this._conatinerHidden=!1;a.config.transposeAxis&&(a._setAxisLimits(),e.draw());a.isRealTime&&b.draw();a._drawDataset();a.chartInstance.__state._rtPaused&&a._setRTdata()},hide:function(){var a=this.chart,b=this.yAxis,e=a.components.xAxis[0];a._chartAnimation();this.config.legendInteractivity=!0;this.visible=!1;a.config.transposeAxis&&(a._setAxisLimits(),b.draw());a.isRealTime&&e.draw();a._drawDataset();a.chartInstance.__state._rtPaused&&
a._setRTdata()},_parseHoverEffectOptions:function(a,b){var e=this.JSONData,g=this.chart,l=g.jsonData.chart,g=g.config,k=a.config.anchorProps||{},p=g.plothovereffect,m=this.config.drawanchors,n={enabled:!1};b=b||{};0!==p&&0!==m&&(n.enabled=void 0!==O(b.hovercolor,b.anchorhovercolor,b.hovercolor,e.hovercolor,b.anchorbghovercolor,e.anchorbghovercolor,l.anchorbghovercolor,e.anchorhovercolor,l.anchorhovercolor,b.hoveralpha,b.anchorhoveralpha,e.anchorhoveralpha,l.anchorhoveralpha,b.bghoveralpha,b.anchorbghoveralpha,
e.anchorbghoveralpha,l.anchorbghoveralpha,b.anchorborderhovercolor,b.borderhovercolor,e.anchorborderhovercolor,l.anchorborderhovercolor,b.anchorborderhoverthickness,b.borderhoverthickness,e.anchorborderhoverthickness,l.anchorborderhoverthickness,b.anchorborderhoveralpha,b.borderhoveralpha,e.anchorborderhoveralpha,l.anchorborderhoveralpha,b.hoverdip,b.anchorhoverdip,e.anchorhoverdip,l.anchorhoverdip,b.anchorhoverstartangle,e.anchorhoverstartangle,l.anchorhoverstartangle,b.hoversides,b.anchorhoversides,
e.anchorhoversides,l.anchorhoversides,b.hoverradius,b.anchorhoverradius,e.anchorhoverradius,l.anchorhoverradius,e.plotfillhovercolor,l.plotfillhovercolor,g.plothovereffect,void 0),n.startAngle=q(b.anchorhoverstartangle,e.anchorhoverstartangle,l.anchorhoverstartangle,k.startAngle),n.anchorSides=q(b.hoversides,b.anchorhoversides,e.anchorhoversides,l.anchorhoversides,k.sides),n.anchorRadius=q(b.anchorhoverradius,e.anchorhoverradius,l.anchorhoverradius),n.isAnchorHoverRadius=n.anchorRadius,n.anchorRadius=
q(n.anchorRadius,k.radius+(p?2:0)),n.anchorScale=O(b.hoverscale,e.anchorscale,l.anchorscale),n.imageHoverScale=q(b.anchorimagehoverScale,e.anchorimagehoverscale,l.anchorimagehoverscale,110),n.imageHoverAlpha=q(b.anchorimagehoveralpha,e.anchorimaghoverealpha,l.anchorimagehoveralpha),n.anchorAlpha=O(b.anchorhoveralpha,b.hoveralpha,e.anchorhoveralpha,l.anchorhoveralpha,k.anchorAlpha),n.anchorColor=T(O(b.hovercolor,b.anchorhovercolor,b.hoverColor,b.anchorbghovercolor,e.anchorbghovercolor,e.anchorhovercolor,
e.hovercolor,l.anchorbghovercolor,l.anchorhovercolor,l.plotfillhovercolor,k.bgColor)),n.anchorBgAlpha=O(b.bghoveralpha,b.anchorbghoveralpha,e.anchorbghoveralpha,l.anchorbghoveralpha,l.plotfillhoveralpha,k.bgAlpha),n.anchorBgAlpha=n.anchorBgAlpha*n.anchorAlpha/100,n.anchorBorderColor=O(b.borderhovercolor,b.anchorborderhovercolor,e.anchorborderhovercolor,l.anchorborderhovercolor,k.borderColor),n.anchorBorderAlpha=O(b.borderhoveralpha,b.anchorborderhoveralpha,e.anchorborderhoveralpha,l.anchorborderhoveralpha,
n.anchorAlpha,k.borderAlpha),n.anchorBorderThickness=q(b.borderhoverthickness,b.anchorborderhoverthickness,e.anchorborderhoverthickness,l.anchorborderhoverthickness,l.anchorBorderThickness,k.borderThickness),n.dip=O(b.hoverdip,b.anchorhoverdip,e.anchorhoverdip,l.anchorhoverdip,k.dip),n.anchorAnimation=q(b.anchorhoveranimation,e.anchorhoveranimation,l.anchorhoveranimation,1));return n},_hoverPlotAnchor:function(a,b){var e=this.graphics.sharedAnchor,k=a.graphics.element||e&&e.element,p=a.graphics.label,
m=a.config||{},n=m.anchorProps.anchorAlpha,m=m&&m.anchorProps.imageUrl,r=C&&m?a.graphics.element:a.graphics.image,q=k.data(l),h=k.data(B),d="DataPlotRollOver"===b?k.data(l):k.data(B),m="image"===k.type,f=k.data("anchorRadius"),c=k.data("anchorHoverRadius"),u=p&&(p.data("isBelow")?1:-1)*(m?.5*(q.height-h.height):c-f),K=a.config.hoverEffects,v,E={polypath:d.polypath},d={fill:d.fill,"stroke-width":d["stroke-width"],stroke:d.stroke},A=p&&p.data("rotation")||"",u={transform:"T0,"+("DataPlotRollOver"===
b?u:0)+A},q=!(/,0\)$/.test(q.fill)&&/,0\)$/.test(h.fill))&&k.data("anchorHoverRadius")-k.data("anchorRadius")&&K.anchorAnimation&&50;r&&(v=r.data(l),h=r.data(B),v="DataPlotRollOver"==b?v:h);if("DataPlotRollOver"==b&&0!==c||"DataPlotRollOut"==b&&0!==f)k.attr({visibility:L}),r&&r.attr({visibility:L});r&&r.css({opacity:.01*v.alpha});m?k.css({opacity:.01*E.alpha}):k.attr(d);k.stop();k.animate(E,q,"easeOut",function(){("DataPlotRollOver"==b&&!c||"DataPlotRollOut"==b&&!f)&&k.attr({visibility:g})});r&&r.animate(v,
q,"easeOut",function(){("DataPlotRollOver"==b&&!c||"DataPlotRollOut"==b&&!f)&&r.attr({visibility:g})});p&&p.stop();(q||e&&e.element&&n)&&p&&p.animate(u,50,"easeOut")},drawLabel:function(a){var b=this.chart,e=b.config,g=b.linkedItems.smartLabel,l=b.config.dataLabelStyle,k=this.components.data,p=b.components.paper,m=b.get("config","animationObj"),n=m.duration,h=!0===this.drawn&&n,d=e.stack100percent,f=m.dummyObj,c=m.animObj,r="",m=m.animType,q=e.rotatevalues?270:0,B=e.canvasTop,u=e.canvasHeight,K=b.config.isstacked,
v,E=this.graphics.dataLabelContainer,L=b.components.xAxis[0],A=0,C=L.getCategoryLen(),V=this.startPosition,T=this.components.pool||{},J,N,M,O,U,Y,Q,fa,Aa,ua,ia,xa;fa=this.visible;void 0!==a?(ia=a,a=ia+1):(ia=0,a=k.length);void 0!==e.scrollMinVal&&(ia=e.scrollMinVal);void 0!==e.scrollMaxVal&&(a=e.scrollMaxVal);if(!(ia>=a)&&(J={"font-weight":l.fontWeight,"font-style":l.fontStyle,"font-family":l.fontFamily,"font-size":l.fontSize,"line-height":l.lineHeight},g.setStyle(J),fa))for(;ia<a;ia++)if(J=(fa=(O=
k[ia])&&O.config)&&fa.setValue,void 0===O||void 0===J||null===J||!0===fa.labelSkip)fa&&delete fa.labelSkip,(xa=O&&O.graphics)&&xa.label&&xa.label.hide();else{U=fa.anchorProps;J=O.graphics;M=O._yPos;O=O._xPos;U=J.element?J.image&&.5*J.element.attr("height")||U.radius-3:0;v=e.valuepadding+2+U;U=fa.valuePosition;switch(U){case "above":Y=0;break;case "below":Y=1;break;default:U=k[ia-1]&&k[ia-1].config||{},Aa=k[ia+1]&&k[ia+1].config||{},K&&d?(U=U.value,ua=Aa.value,Aa=fa.value):(U=U.setValue,ua=Aa.setValue,
Aa=fa.setValue),Y=ia?U>Aa?1:(null==ua&&ua)>Aa?1:0:0}r=fa.displayValue;ua=fa.showValue;U=J.label;void 0!==r&&null!==r&&r!==H&&null!==Aa&&ua?(ua={text:r,fill:l.color,"text-bound":[l.backgroundColor,l.borderColor,l.borderThickness,l.borderPadding,l.borderRadius,l.borderDash]},r=g.getOriSize(r),q?(fa._state={labelWidth:r.height,labelHeight:r.width},fa._rotated=!0):(fa._state={labelWidth:r.width,labelHeight:r.height},fa._rotated=!1),r=N=fa._state.labelHeight,r+=v,v=.5*N+v,N=M-B,Q=B+u-M,r+=4,Y?Q>r?(M+=
v,fa._valueBelowPoint=1):N>r&&(M-=v,fa._valueBelowPoint=0):N>r?(M-=v,fa._valueBelowPoint=0):Q>r&&(M+=v,fa._valueBelowPoint=1),v=Y=!1,U||(T.label&&T.label.length?(J.label=U=T.label.shift(),J.label.show()):(ua.x=O,ua.y=M,ua.transform=p.getSuggestiveRotation(q,O,M),J.label=U=p.text(ua,E),v=!0),h&&b.isRealTime&&!0!==V&&(J=C+A,J=L.getPixel(J),J instanceof Object&&(J=J.x),U.attr({x:J,y:M,transform:p.getSuggestiveRotation(q,J,M)}),A++,Y=!0)),v||U.attr(ua),v&&!Y||U.show().animateWith(f,c,{x:O,y:M,transform:p.getSuggestiveRotation(q,
O,M)},n,m),U.data("isBelow",fa._valueBelowPoint),U.data("rotation",p.getSuggestiveRotation(q,O,M))):U&&U.hide()}},getAxisValuePadding:function(){var a=(this.chart||{}).hasScroll;return{left:a?.5:0,right:a?.5:0}},hidingPosition:function(){return function(){return{polypath:[[2,0,0,0,0,0]],text:""}}},_hoverFunc:function(a,b,e,g){if(e)return this._hoverPlotAnchor(a,b,g)}},"column",{valueposition:void 0,plotborderdashlen:void 0,plotborderdashgap:void 0,plotborderdashstyle:void 0,plotborderthickness:void 0,
linethickness:void 0,linedashlen:void 0,linedashgap:void 0,dashed:void 0,linedashstyle:void 0,linecolor:void 0,linealpha:void 0,anchorbgcolor:void 0,anchorbordercolor:void 0,anchorradius:void 0,anchoralpha:void 0,anchorimageurl:void 0,anchorsides:void 0,anchorbgalpha:void 0,anchorborderthickness:void 0,anchorshadow:void 0,anchorstartangle:void 0,anchorimagealpha:void 0,anchorimagescale:void 0,anchorimagepadding:void 0,alpha:void 0,parentyaxis:void 0}])}]);Q.register("module",["private","modules.renderer.js-dataset-scrollarea2d",
function(){Q.register("component",["dataset","scrollarea2d",{},"area"])}]);Q.register("module",["private","modules.renderer.js-dataset-realtimearea",function(){Q.register("component",["dataset","realtimearea",{_realTimeConfigure:Q.get("component",["dataset","realtimecolumn"]).prototype._realTimeConfigure},"area"])}]);Q.register("module",["private","modules.renderer.js-dataset-radar",function(){var b=this.hcLib,v=this.window.Image,J=b.TOUCH_THRESHOLD_PIXELS,C=b.CLICK_THRESHOLD_PIXELS,H=b.pluck,A=b.pluckNumber,
u=b.toRaphaelColor,a=b.hasTouch?J:C,O=b.getValidValue,q=b.getFirstValue,M=b.regex.dropHypeash,U=b.HASHSTRING,J=b.preDefStr,N=J.hiddenStr,E=J.setRolloverAttrStr,r=J.setRolloutAttrStr,k=Math.max,m=b.graphics.getLightColor,n=b.schedular;Q.register("component",["dataset","radar",{type:"radar",configure:function(){var a=this.config,b=this.chart,l=b.jsonData.chart,k=this.JSONData,b=b.components.colorManager.getPlotColor(this.index);this.__base__.configure.call(this);a.plotfillcolor=H(k.color,l.plotfillcolor,
b);a.plotbordercolor=H(k.plotbordercolor,l.plotbordercolor,l.areabordercolor,b).split(",")[0];a.fillColor.color=a.plotfillcolor;a.legendSymbolColor=a.plotfillcolor},_addLegend:function(){var a=this.chart,b=a.jsonData.chart,l,k;k=this.config;var a=a.components.legend,e=k.legendSymbolColor;l=A(b.use3dlighting,b.useplotgradientcolor,1);b=m(e,60).replace(M,U);l?(l=m(e,40),l={FCcolor:{color:e+","+e+","+l+","+e+","+e,ratio:"0,70,30",angle:270,alpha:"100,100,100,100,100"}}):l={FCcolor:{color:e,angle:0,ratio:"0",
alpha:"100"}};k={enabled:k.includeInLegend,type:this.type,fillColor:u(l),strokeColor:u(b),rawFillColor:e,label:q(this.JSONData.seriesname)};this.legendItemId=a.addItems(this,this.legendInteractivity,k)},_getHoveredPlot:function(a,b){var l=this.chart.components.xAxis[0],k=this.components.data,e,m=k.length,p,n=this.config,r=360/m;e=Math.floor(Math.max(l.getAngle(a-n.maxRadius,b)/r-1,0));for(m=Math.ceil(Math.min(l.getAngle(a+n.maxRadius,b)/r,m-1));m>=e;m--)if(l=k[m])if(p=this.isWithinShape(l,m,a,b))break;
return p},draw:function(){var m=this,g=m.chart,l=g.getJobList(),q=g.graphics,e=g.config,A=g.components,p=m.JSONData,C=g.jsonData.chart,K=m.config,t=m.index,J=p.data||[],P,S,z,R=A.paper,w=A.xAxis[0],F=m.yAxis,X,h,d,f=e.showtooltip,c,D=m.components.data,G,M,U,Q,sa,wa,ca=F.getAxisBase(),ma,A=K.plotbordercolor,qa=K.plotborderalpha,va=K.plotBorderDashStyle,ha=K.plotborderthickness,ra=m.graphics.container,ka=[],na,da,oa=b.parseUnsafeString,Y=!1,za=K.fillColor,fa=g.is3D,Aa=q.areaGroup,ua=g.get("config",
"animationObj"),ia=ua.duration,xa=ua.dummyObj,ja=ua.animObj,ua=ua.animType,ya=ra&&ra.shadowContainer,W=m.graphics.dataLabelContainer,Ma=function(){!1===m.visible&&(ra.areaGroup.hide(),ya.hide(),ra.lineShadowGroup.hide(),ra.anchorShadowGroup.hide(),ra.anchorGroup.hide(),W&&W.hide(),m._conatinerHidden=!0)},ea=function(){ra.areaGroup.attr({"clip-rect":null});!1!==m.visible&&(ra.lineShadowGroup.show(),ra.anchorShadowGroup.show(),ra.anchorGroup.show(),W.show());g._animCallBack()},ga=K.shadow,la,Ca=m.visible,
Ha,pa={};na=q.datalabelsGroup;var La=fa?10:0,q=m.components.removeDataArr||[],fa=q.length,Ja=m.components.pool||{},Fa=!0,ta=0,Ka,Ea,Da=0;K.imagesLoaded=0;ra||(ra=m.graphics.container={lineShadowGroup:R.group("connector-shadow",Aa.areaConnector),anchorShadowGroup:R.group("anchor-shadow",Aa.areaConnector),areaGroup:R.group("area",Aa.area),anchorGroup:R.group("anchors",Aa.areaConnector)},Ca||(ra.lineShadowGroup.hide(),ra.anchorShadowGroup.hide(),ra.areaGroup.hide(),ra.anchorGroup.hide()));ya||(ya=m.graphics.shadowContainer=
Aa.shadows||(Aa.shadows=R.group("shadows",ra.areaGroup).toBack()),Ca||ya.hide());D||(D=m.components.data);W||(W=m.graphics.dataLabelContainer=m.graphics.dataLabelContainer||R.group("datalabel",na),Ca||W.hide());Ca&&(ra.lineShadowGroup.show(),ra.anchorShadowGroup.show(),ra.areaGroup.show(),ra.anchorGroup.show(),W.show());P=w.getCategoryLen();na=w.config.centerX;da=w.config.centerY;for(z=0;z<P;z++)S=J[z]||{},c=(G=D[z])&&G.config,Ka=w.getLabel(z).label,Q=c.setValue,U=c.setLink,pa=c.anchorProps,Ha=pa.shadow,
X=O(oa(H(S.tooltext,p.plottooltext,C.plottooltext))),G.graphics||(G.graphics={}),c&&(ma=0<=Q?c.previousPositiveY:c.previousNegativeY),h=G.graphics,S=h.element,Ea=h.image,null===Q?(!1!==Y?ka.push("L",na,",",da):ka.push("M",na,",",da),Y=!1,S&&S.hide()):(h=F.getAxisPosition(ma||ca)+La,d=m.visible?F.getAxisPosition(Q+(ma||0))+La:h,h=w.getAxisPosition(z,e.canvasTop+e.canvasHeight/2-d),d=h.y,h=h.x,la=c.hoverEffects,M=f?c.toolText+(X?"":c.toolTipValue):"",c.finalTooltext=M,X=c.eventArgs||(c.eventArgs={}),
X.index=z,X.link=U,X.value=Q,X.displayValue=c.displayValue,X.categoryLabel=Ka,X.toolText=M,X.id=m.userID,X.datasetIndex=t||0,X.datasetName=p.seriesname,X.visible=Ca,la.enabled&&(c.setRolloverAttr={polypath:[la.anchorSides||2,h,d,la.anchorRadius,la.startAngle,la.dip],fill:u({color:la.anchorColor,alpha:la.anchorBgAlpha}),stroke:u({color:la.anchorBorderColor,alpha:la.anchorBorderAlpha}),"stroke-width":la.anchorBorderThickness},c.setRolloutAttr={polypath:[pa.symbol[1]||2,h,d,pa.radius,pa.startAngle,0],
fill:u({color:pa.bgColor,alpha:pa.bgAlpha}),stroke:u({color:pa.borderColor,alpha:pa.borderAlpha}),"stroke-width":pa.borderThickness},wa=c.setRolloverAttr,sa=c.setRolloutAttr),pa.imageUrl?(c.anchorImageLoaded=!1,c=new v,c.onload=m._onAnchorImageLoad(m,z,X,h,d),c.onerror=m._onErrorSetter(m,z),c.src=pa.imageUrl,Da++):(Ea&&Ea.hide(),S||(Ja.element&&Ja.element.length?S=G.graphics.element=Ja.element.shift():(S=G.graphics.element=R.polypath(ra.anchorGroup),S.attr({polypath:[pa.symbol[1]||2,h,d,pa.radius,
pa.startAngle,0]}))),S.show().animateWith(xa,ja,{polypath:[pa.symbol[1]||2,h,d,pa.radius,pa.startAngle,0]},ia,ua,Fa&&Ma),Fa=!1,S.attr({fill:u({color:pa.bgColor,alpha:pa.bgAlpha}),stroke:u({color:pa.borderColor,alpha:pa.borderAlpha}),"stroke-width":pa.borderThickness,visibility:pa.radius?Ca:N}).shadow(Ha,ra.anchorShadowGroup).data("anchorRadius",pa.radius).data("anchorHoverRadius",la.anchorRadius).data("hoverEnabled",la.enabled).data("eventArgs",X),la.enabled&&S&&S.data("anchorRadius",pa.radius).data("anchorHoverRadius",
la.anchorRadius).data("hoverEnabled",la.enabled).data(E,wa).data(r,sa).data("eventArgs",X),c.trackerConfig||(c.trackerConfig={}),c.trackerConfig.trackerRadius=k(pa.radius,la&&!0&&la.anchorRadius||0,a)+(pa.borderThickness||0)/2),G._xPos=h,G._yPos=d,G._index=z,Y?(ka.push("L",h,",",d),ta++):(0===z?ka.push("M",h,",",d):ka.push("L",h,",",d),Y=!0));ka.push("Z");K.noOfImages=K.totalImages=Da;0===Da&&l.labelDrawID.push(n.addJob(function(){m.drawLabel()},b.priorityList.label));e=ka.concat([]);l=m.graphics.lineElement;
l||(l=m.graphics.lineElement=R.path(ra.areaGroup),l.attr({path:ka}),ia&&Ca&&(ra.anchorGroup.hide(),ra.anchorShadowGroup.hide(),W.hide(),Aa.scale(.01,.01,na,da).animateWith(xa,ja,{transform:"s1,1"},ia,ua,ea)));l.show().animateWith(xa,ja,{path:e},ia,ua,Fa&&Ma).attr({stroke:u({color:A,alpha:qa}),"stroke-width":ha,fill:u(za),"stroke-linecap":"round","stroke-linejoin":2<ha?"round":"miter","stroke-dasharray":va}).shadow(ga,ya);m.drawn=!0;for(z=0;z<fa;z++)m._removeDataVisuals(q.shift())}},"area"])}]);Q.register("module",
["private","modules.renderer.js-dataset-line",function(){var b=this.hcLib,v=b.Raphael,J=this.window.Image,C=b.pluck,H=b.pluckNumber,A=b.toRaphaelColor,u=b.getCrispValues,a=b.getFirstValue,O=b.preDefStr,q=O.hiddenStr,M=O.setRolloverAttrStr,U=O.setRolloutAttrStr,O=Math,N=O.max,E=O.pow,r=b.schedular;Q.register("component",["dataset","Line",{type:"line",_addLegend:function(){var b=this.config,m=this.chart.components.legend,n=H(b.drawanchors,1),b={enabled:b.includeinlegend,type:this.type,drawLine:C(b.drawLine,
!0),fillColor:A({color:b.anchorbgcolor,alpha:b.anchorbgalpha}),strokeColor:A({color:b.anchorbordercolor,alpha:"100"}),rawFillColor:b.anchorbgcolor,rawStrokeColor:b.anchorbordercolor,anchorSide:n?b.anchorsides:0,strokeWidth:b.anchorborderthickness,label:a(this.JSONData.seriesname),lineWidth:b.linethickness};this.legendItemId=m.addItems(this,this.legendInteractivity,b)},draw:function(){var a,m,n=this,E=n.JSONData,g=n.chart,l=g.getJobList(),B=g.components,e=B.canvas.config.clip,V=n.config,p=V.legendInteractivity,
H=n.index,K=g.config,t=n.components,Z=n.graphics,P=t.data,S=P.length,z=B.paper,R=B.xAxis[0],w=n.yAxis,F=t.removeDataArr||[],X=g.graphics,h=X.datalabelsGroup,d,f,c,D=V.linethickness,G=Z.container,O=K.showtooltip,Q=X.lineGroup,Ia,sa=V.shadow,wa,ca=Z.dataLabelContainer,ma={},qa,va,ha,ra=g.is3D,ka=K.use3dlineshift,na=n.graphics.errorGroupContainer,da=n.graphics.errorShadowContainer,oa=function(){!1!==n.visible||!1!==n._conatinerHidden&&void 0!==n._conatinerHidden||(G.lineGroup.hide(),G.lineShadowGroup.hide(),
G.anchorShadowGroup.hide(),G.anchorGroup.hide(),ca&&ca.hide(),na&&na.hide(),da&&da.hide(),n._conatinerHidden=!0)},Y=function(){Q.lineConnector.attr({"clip-rect":null});Q.lineConnector.node&&Q.lineConnector.node.removeAttribute("clip-path");!1!==n.visible&&(G.lineShadowGroup.show(),G.anchorShadowGroup.show(),G.anchorGroup.show(),ca&&ca.show())},za=!0,fa,Aa,ua,ia=w.getAxisBase(),xa=w.yBasePos=w.getAxisPosition(ia),ja=R.getPVR(),ya,W=ra?10:0,Ma=ra&&ka?10:0,ea=e["clip-canvas"].slice(0),ga=e["clip-canvas-init"].slice(0),
la=B.scrollBar,Ca=g.hasScroll||!1,Ha,pa=V.lineDashStyle,La={color:V.linecolor,alpha:V.alpha},Ja=[A(La),pa].join(":"),Fa,ta,Ka,Ea,Da,Ga=Z.lineElement,Na=n.visible,Ua,Pa,Sa=0,ab=n.drawn,Xa=!0!==ab,Za=n.components.pool||{},bb,eb,Va=n.startPosition,Ya={},$a=S,Ta,kb={},hb=V.lastPath||{},ib,ob,ba=0,Ba=g.config.viewPortConfig,Oa=Ba.x,Qa=Ba.scaleX,I,cb,vb,sb,pb,gb,qb,mb,nb,Fb,Bb,Ab,Hb,wb,Nb,xb,yb,Cb,Ib=V.noOfImages=0,Jb,ub=g.get("config","animationObj"),jb=ub.duration,tb=ub.dummyObj,Wa=ub.animObj,Kb=ub.animType,
zb=!Xa&&jb,Gb,Sb=K.height,fb=K.realTimeConfig&&K.realTimeConfig.clear,Tb=$a,Lb,Mb,Ob,Pb,rb=V.isSkippedData,db=K.canvasTop,Rb=K.canvasBottom,Vb=b.plotEventHandler,Db=Z.sharedAnchor,Qb=Db&&Db.element,Eb=0,lb=g.isRealTime,Ub=function(a){Vb.call(this,g,a)},Zb=function(a){Vb.call(this,g,a,"DataPlotRollOver")},cc=function(a){Vb.call(this,g,a,"DataPlotRollOut")},Xb=void 0!==K.scrollMinVal?K.scrollMinVal:0,Yb=void 0!==K.scrollMaxVal?Math.min(K.scrollMaxVal,Tb):Tb,$b=K.startPathIndex,bc=K.endPathIndex;if($b||
bc)ba=$b-1,xb=bc+1,V.hasSetColor&&(Xb=ba,Yb=xb);if(!(Xb>=Yb)){n.noOfNewDataAtEnd=0;V.hideAnimFlag=!1;V.imagesLoaded=0;Q.lineConnector=Q.lineConnector||z.group("line-connector",Q);G||(G=n.graphics.container={lineShadowGroup:z.group("connector-shadow",Q.lineConnector),anchorShadowGroup:z.group("anchor-shadow",Q.lineConnector),lineGroup:z.group("line",Q.lineConnector),anchorGroup:z.group("anchors",Q.lineConnector)},Na||(G.lineShadowGroup.hide(),G.anchorShadowGroup.hide(),G.lineGroup.hide(),G.anchorGroup.hide()));
P||(P=n.components.data=[]);ca||(ca=n.graphics.dataLabelContainer=n.graphics.dataLabelContainer||z.group("datalabel",h),Na||ca.hide());Na&&(G.lineShadowGroup&&G.lineShadowGroup.show(),G.lineGroup&&G.lineGroup.show(),G.anchorGroup&&G.anchorGroup.show(),n._conatinerHidden=!1,ca.show(),V.attachEvents&&G.anchorGroup.trackTooltip(!0));ya=ja*$a;lb&&(ea[1]=0,ea[3]=Sb,ca.attr({"clip-rect":ea}),G.anchorGroup.attr({"clip-rect":ea}),G.anchorShadowGroup.attr({"clip-rect":ea}),G.lineGroup.attr({"clip-rect":ea}),
G.lineShadowGroup.attr({"clip-rect":ea}));if(fb)for(Ta=0,$a=F.length;Ta<$a;Ta++)n._removeDataVisuals(F.shift());else n._shiftOffRemovedPoints();Ya=V.removePath||{};Nb=G.anchorShadowGroup;for(Ta=Xb;Ta<Yb;Ta++)if(d=P[Ta])ha=d.config||{},pb=ha.setValue,d.graphics&&(cb=d.graphics.element,yb=d.graphics.image),Ob=ha&&ha.isSkipped,void 0===pb||!0===Ob||!1!==rb&&!Xa&&p&&(!Na&&!cb||Na&&cb&&!d._xPos&&!d._yPos)?(cb&&cb.hide(),yb&&yb.hide(),ha&&(ha.isSkipped=!0)):(vb=d.graphics,sb=ha.setLink,Ua=ha.x||Ta,fa=ha.setLevelTooltext,
ma=ha.anchorProps,va=ma.symbol,mb=ma.radius,wa=ma.shadow,nb=ma.startAngle,Fb=ma.bgColor,Bb=ma.bgAlpha,Ab=ma.borderColor,Hb=ma.borderAlpha,wb=ma.borderThickness,qb=ha.displayValue,Pa=ha.dip||0,d||(d=P[Ta]={graphics:{}}),a=ha.setColor,m=ha.setAlpha,ua=ha.dashStyle,Ea=ha.xPos||R.getAxisPosition(Ua)-W+Oa*Qa,Da=!n.visible&&jb?xa:w.getAxisPosition(pb)+Ma,Ea=u(Ea,V.linethickness,V.linethickness).position,Da=u(Da,V.linethickness,V.linethickness).position,Ia=ha.hoverEffects,ma.isAnchorHoverRadius=Ia.anchorRadius,
Lb=Da-mb-wb/2,Mb=Da+mb+wb/2,Lb<db&&(K.toleranceTop=N(K.toleranceTop||0,db-Lb)),Mb>Rb&&(K.toleranceBottom=N(K.toleranceBottom||0,Mb-Rb)),ib=R.getLabel(Ta)||{},I=O?ha.toolText+(fa?"":ha.toolTipValue):"",ha.finalTooltext=I,gb=ha.eventArgs=ha.eventArgs||{},gb.index=Ta,gb.link=sb,gb.value=pb,gb.displayValue=qb,gb.categoryLabel=ib.label,gb.toolText=I,gb.id=V.userID,gb.datasetIndex=H||0,gb.datasetName=E.seriesname,gb.visible=Na,Cb=!1,cb=d.graphics.element,yb=d.graphics.image,Ia.enabled&&(c=ha.setRolloverAttr=
{polypath:[Ia.anchorSides||2,Ea,Da,Ia.anchorRadius,Ia.startAngle,Ia.dip],fill:A({color:Ia.anchorColor,alpha:Ia.anchorBgAlpha}),stroke:A({color:Ia.anchorBorderColor,alpha:Ia.anchorBorderAlpha}),"stroke-width":Ia.anchorBorderThickness},f=ha.setRolloutAttr={polypath:[ma.sides,Ea,Da,ma.radius,ma.startAngle,Pa],fill:A({color:ma.bgColor,alpha:ma.bgAlpha}),stroke:A({color:ma.borderColor,alpha:ma.borderAlpha}),"stroke-width":ma.borderThickness}),null!==pb?(Jb={polypath:[va[1]||2,Ea,Da,mb,nb,ha.dip||0]},!cb&&
zb&&!0!==Va&&(eb=$a+Sa,bb=R.getPixel(eb),d._xPos=bb,d._yPos=Da,hb=n.getLinePath([d],hb),Sa++),Pb=mb&&ma.anchorAlpha,ha.isAnchorsDrawn||V.drawanchors||Pb?ma.imageUrl?(qa=new J,ha.anchorImageLoaded=!1,qa.onload=n._onAnchorImageLoad(n,Ta,gb,Ea,Da,d),qa.onerror=n._onErrorSetter(n,Ta),qa.src=ma.imageUrl,Ib++):(yb&&yb.hide(),cb||(Za.element&&Za.element.length?(cb=vb.element=Za.element.shift(),cb.show().attr({transform:""})):(cb=vb.element=z.polypath(G.anchorGroup),cb.attr(Jb),Cb=!0,ha.isAnchorsDrawn=!0,
Eb++),zb&&lb&&cb.attr({polypath:[va[1]||2,bb,Da,mb,nb,0]})),!ab||Cb&&!lb||cb.show().animateWith(tb,Wa,Jb,jb,Kb,za&&oa),jb||za&&oa(),za=!1,cb.attr({fill:A({color:Fb,alpha:Bb}),stroke:A({color:Ab,alpha:Hb}),"stroke-width":wb,visibility:mb?Na:q}).shadow(wa,Nb).data("anchorRadius",mb).data("anchorHoverRadius",Ia.anchorRadius).data("hoverEnabled",Ia.enabled).data("eventArgs",gb),Ia.enabled&&cb&&cb.data("anchorRadius",ma.radius).data("anchorHoverRadius",Ia.anchorRadius).data(M,c).data(U,f).data("hoverEnabled",
Ia.enabled).data("eventArgs",gb)):cb&&!Pb&&cb.hide(),V.attachEvents&&(Cb&&(cb.tooltip(ha.finalTooltext),cb.click(Ub).hover(Zb,cc)),Cb=!1)):(cb&&cb.hide(),yb&&yb.hide()),d._xPos=Ea,d._yPos=Da,d._polyPath=Jb,d._index=Ta,Ta===Eb||V.drawanchors?Qb&&Qb.hide():Db&&Qb?Qb.hide():n.getAnchor(g,d,!0),Ka=Ja!==[A({color:C(a,La.color),alpha:C(m,La.alpha)}),ua||pa].join(":"),Aa=d.graphics.connector,ob=[],Ka&&(xb=Ta,kb=n.getLinePath(P,{},{begin:ba,end:xb+1}),ha.connStartIndex=ba,ha.connEndIndex=xb,ob=kb.getPathArr(),
ob.length&&(Gb=v.animation({path:ob},jb,Kb,za&&oa),Aa||(Za.connector&&Za.connector.length?Aa=d.graphics.connector=Za.connector.shift():(Aa=d.graphics.connector=z.path(G.lineGroup),Aa.attr({path:ob}))),ab&&Aa.show().animateWith(tb,Wa,Gb),Aa.attr({"stroke-dasharray":ta,"stroke-width":D,stroke:Fa,"stroke-linecap":"round","stroke-linejoin":2<D?"round":"miter"}).shadow(sa,G.lineShadowGroup),ba=Ta,kb={}),xb=null),Ka||ob.length||Aa&&Aa.hide(),null!==pb&&(Fa=A({color:C(a,La.color),alpha:C(m,La.alpha)}),ta=
ua||pa),Ja=[Fa,ta].join(":"));0===Ib&&(!0===ab?n.drawLabel():l.labelDrawID.push(r.addJob(function(){n.drawLabel()},b.priorityList.label)));V.pathStartIndex=ba;V.pathEndIndex=xb;V.noOfImages=V.totalImages=Ib;kb=n.getLinePath(P,{},{begin:ba,end:xb});F&&lb&&(Ya=n.getLinePath(P,Ya));lb&&(V.lastPath=kb);Ga?jb&&lb&&Ga.attr({path:hb.getPathArr()}):Ga=Z.lineElement=z.path({path:kb.getPathArr()},G.lineGroup);fb?Ga.hide():ab&&Ga.show().animateWith(tb,Wa,{path:Ya.getPathArr&&lb?Ya.getPathArr():kb.getPathArr()},
jb,Kb,za&&oa);Ga.attr({"stroke-width":D,"stroke-dasharray":ta,stroke:Fa,"stroke-linecap":"round","stroke-linejoin":2<=D?"round":"miter"}).shadow(sa,G.lineShadowGroup);Ca&&(Ha=la.conf.startPercent,ea[2]=ya+ga[0],1===Ha&&(ga[0]=ea[2],ea[0]=0));ea[3]+=Ma;n._drawTracker&&n._drawTracker();jb&&Na&&!ab&&(G.anchorGroup.hide(),G.anchorShadowGroup.hide(),ca.hide(),Q.lineConnector.attr({"clip-rect":ga}).animateWith(tb,Wa,{"clip-rect":ea},jb,Kb,Y));n.drawn=!0;n.drawErrorValue&&n.drawErrorValue()}},getDataLimits:function(){var a=
this.config,b=a.maxValue,a=a.minValue,n=this.chart.config.transposeAxis;!1===this.visible&&n&&(b=-Infinity,a=Infinity);return{max:b,min:a}},pointValueWatcher:function(a,b,n){var r=n.obj||(n.obj={}),g=n.objX||(n.objX={});null!==b&&(r.max=r.max>b?r.max:b,r.min=r.min<b?r.min:b);null!==a&&(g.max=g.max>a?g.max:a,g.min=g.min<a?g.min:a);n.isRegression&&(a=a||0,b=b||0,n.sumX+=a,n.sumY+=b,n.sumXY+=a*b,n.sumXsqure+=E(a,2),n.xValues.push(a),n.sumYsqure+=E(b,2),n.yValues.push(b))}},"area"])}]);Q.register("module",
["private","modules.renderer.js-dataset-realtimeline",function(){Q.register("component",["dataset","Realtimeline",{_realTimeConfigure:Q.get("component",["dataset","realtimecolumn"]).prototype._realTimeConfigure},"line"])}]);Q.register("module",["private","modules.renderer.js-quadrant",function(){var b=this.hcLib,v=b.pluck,J=b.pluckNumber,C=b.setLineHeight,H=b.graphics.convertColor,A=b.HUNDREDSTRING,u=b.getDashStyle,a=b.getValidValue,O=b.getFirstValue,b=b.preDefStr,q=b.POSITION_START,M=b.POSITION_TOP,
U=b.POSITION_BOTTOM,N=b.POSITION_END;Q.register("component",["quadrant","cartesian",{pIndex:1,init:function(){var a=this.chart.components,b=a.xAxis[0];this.yAxis=a.yAxis[0];this.xAxis=b;this.components={};this.conf={};this.graphics={};this.configure()},configure:function(){var b,r,k,m,n,q,g,l,B,e,V=this.conf;B=this.chart;q=B.config;var p=B.jsonData.chart;r=B.components.canvas.config;var T=q.dataLabelStyle;b=B.linkedItems.smartLabel;if(V.enabled=J(p.drawquadrant,0))B=J(p.quadrantxval),e=J(p.quadrantyval),
l=H(v(p.quadrantlinecolor,r.canvasBorderColor),v(p.quadrantlinealpha,p.quadrantlinealpha,A)),r=J(p.quadrantlinethickness,r.canvasBorderThickness),m=J(p.quadrantlinedashed,p.quadrantlineisdashed,0),k=J(p.quadrantlinedashlen,4),n=J(p.quadrantlinedashgap,2),k=m?u(k,n,r):"none",V.xVal=B,V.yVal=e,V.quadrantLineColor=l,V.quadrantLineThickness=r,V.dashStyle=k,r=a(p.quadrantlabeltl,""),l=a(p.quadrantlabeltr,""),B=a(p.quadrantlabelbl,""),e=a(p.quadrantlabelbr,""),V.quadrantLabelPadding=J(p.quadrantlabelpadding,
3),b.useEllipsesOnOverflow(q.useEllipsesWhenOverflow),b.setStyle(T),""!==r&&(b=O(p.quadrantlabeltlbordercolor,p.quadrantlabelbordercolor,""),m=v(p.quadrantlabeltlbgcolor,p.quadrantlabelbgcolor),q=J(p.quadrantlabeltlborderthickness,p.quadrantlabelborderthickness,1),b=b?H(b,J(p.quadrantlabeltlborderalpha,p.quadrantlabelborderalpha,p.quadrantlabeltlalpha,p.quadrantlabelalpha,100)):"",g=V.tlConfig,g||(g=V.tlConfig={enabled:!0,styleObj:{}}),g.label=r,g.styleObj.fontSize=v(J(p.quadrantlabeltlfontsize,p.quadrantlabelfontsize),
parseInt(T.fontSize,10))+"px",g.styleObj.lineHeight=T.lineHeight,g.styleObj.fontFamily=v(p.quadrantlabeltlfont,p.quadrantlabelfont,T.fontFamily),g.styleObj.color=H(v(p.quadrantlabeltlfontcolor,p.quadrantlabelfontcolor,T.color),J(p.quadrantlabeltlfontalpha,p.quadrantlabelfontalpha,100)),g.styleObj.fontWeight=J(p.quadrantlabeltlfontbold,p.quadrantlabelfontbold)?"bold":"normal",g.styleObj.fontStyle=J(p.quadrantlabeltlfontitalic,p.quadrantlabelfontitalic)?"italic":"normal",C(g.styleObj),r=J(p.quadrantlabeltlborderpadding,
p.quadrantlabelborderpadding,2),k=J(p.quadrantlabeltlborderradius,p.quadrantlabelborderradius,0),m=m?H(m,J(p.quadrantlabeltlbgalpha,p.quadrantlabelbgalpha,p.quadrantlabeltlalpha,p.quadrantlabelalpha,100)):"",n=J(p.quadrantlabeltlborderdashed,p.quadrantlabelborderdashed,0)?u(J(p.quadrantlabeltlborderdashlen,p.quadrantlabelborderdashlen,4),J(p.quadrantlabeltlborderdashgap,p.quadrantlabelborderdashgap,2),q):"none",g["text-bound"]=[m,b,q,r,k,n]),""!==l&&(b=O(p.quadrantlabeltrbordercolor,p.quadrantlabelbordercolor,
""),m=v(p.quadrantlabeltrbgcolor,p.quadrantlabelbgcolor),q=J(p.quadrantlabeltrborderthickness,p.quadrantlabelborderthickness,1),b=b?H(b,J(p.quadrantlabeltrborderalpha,p.quadrantlabelborderalpha,p.quadrantlabeltralpha,p.quadrantlabelalpha,100)):"",l=V.trConfig,l||(l=V.trConfig={enabled:!0,styleObj:{}}),l.label=a(p.quadrantlabeltr,""),l.styleObj.fontSize=v(J(p.quadrantlabeltrfontsize,p.quadrantlabelfontsize),parseInt(T.fontSize,10))+"px",l.styleObj.lineHeight=T.lineHeight,l.styleObj.fontFamily=v(p.quadrantlabeltrfont,
p.quadrantlabelfont,T.fontFamily),l.styleObj.color=H(v(p.quadrantlabeltrfontcolor,p.quadrantlabelfontcolor,T.color),J(p.quadrantlabeltrfontalpha,p.quadrantrabelfontalpha,100)),l.styleObj.fontWeight=J(p.quadrantlabeltrfontbold,p.quadrantlabelfontbold)?"bold":"normal",l.styleObj.fontStyle=J(p.quadrantlabeltrfontitalic,p.quadrantlabelfontitalic)?"italic":"normal",C(l.styleObj),r=J(p.quadrantlabeltrborderpadding,p.quadrantlabelborderpadding,2),k=J(p.quadrantlabeltrborderradius,p.quadrantlabelborderradius,
0),m=m?H(m,J(p.quadrantlabeltrbgalpha,p.quadrantlabelbgalpha,p.quadrantlabeltralpha,p.quadrantlabelalpha,100)):"",n=J(p.quadrantlabeltrborderdashed,p.quadrantlabelborderdashed,0)?u(J(p.quadrantlabeltrborderdashlen,p.quadrantlabelborderdashlen,4),J(p.quadrantlabeltrborderdashgap,p.quadrantlabelborderdashgap,2),q):"none",l["text-bound"]=[m,b,q,r,k,n]),""!==B&&(b=O(p.quadrantlabelblbordercolor,p.quadrantlabelbordercolor,""),m=v(p.quadrantlabelblbgcolor,p.quadrantlabelbgcolor),q=J(p.quadrantlabelblborderthickness,
p.quadrantlabelborderthickness,1),b=b?H(b,J(p.quadrantlabelblborderalpha,p.quadrantlabelborderalpha,p.quadrantlabelblalpha,p.quadrantlabelalpha,100)):"",l=V.blConfig,l||(l=V.blConfig={enabled:!0,styleObj:{}}),l.label=B,l.styleObj.fontSize=v(J(p.quadrantlabelblfontsize,p.quadrantlabelfontsize),parseInt(T.fontSize,10))+"px",l.styleObj.lineHeight=T.lineHeight,l.styleObj.fontFamily=v(p.quadrantlabelblfont,p.quadrantlabelfont,T.fontFamily),l.styleObj.color=H(v(p.quadrantlabelblfontcolor,p.quadrantlabelfontcolor,
T.color),J(p.quadrantlabelblfontalpha,p.quadrantlabelfontalpha,100)),l.styleObj.fontWeight=J(p.quadrantlabelblfontbold,p.quadrantlabelfontbold)?"bold":"normal",l.styleObj.fontStyle=J(p.quadrantlabelblfontitalic,p.quadrantlabelfontitalic)?"italic":"normal",C(l.styleObj),r=J(p.quadrantlabelblborderpadding,p.quadrantlabelborderpadding,2),k=J(p.quadrantlabelblborderradius,p.quadrantlabelborderradius,0),m=m?H(m,J(p.quadrantlabelblbgalpha,p.quadrantlabelbgalpha,p.quadrantlabelblalpha,p.quadrantlabelalpha,
100)):"",n=J(p.quadrantlabelblborderdashed,p.quadrantlabelborderdashed,0)?u(J(p.quadrantlabelblborderdashlen,p.quadrantlabelborderdashlen,4),J(p.quadrantlabelblborderdashgap,p.quadrantlabelborderdashgap,2),q):"none",l["text-bound"]=[m,b,q,r,k,n]),""!==e&&(b=O(p.quadrantlabelbrbordercolor,p.quadrantlabelbordercolor,""),m=v(p.quadrantlabelbrbgcolor,p.quadrantlabelbgcolor),q=J(p.quadrantlabelbrborderthickness,p.quadrantlabelborderthickness,1),b=b?H(b,J(p.quadrantlabelbrborderalpha,p.quadrantlabelborderalpha,
p.quadrantlabelbralpha,p.quadrantlabelalpha,100)):"",B=V.brConfig,B||(B=V.brConfig={enabled:!0,styleObj:{}}),B.label=a(p.quadrantlabelbr,""),B.styleObj.fontSize=v(J(p.quadrantlabelbrfontsize,p.quadrantlabelfontsize),parseInt(T.fontSize,10))+"px",B.styleObj.lineHeight=T.lineHeight,B.styleObj.fontFamily=v(p.quadrantlabelbrfont,p.quadrantlabelfont,T.fontFamily),B.styleObj.color=H(v(p.quadrantlabelbrfontcolor,p.quadrantlabelfontcolor,T.color),J(p.quadrantlabelbrfontalpha,p.quadrantrabelfontalpha,100)),
B.styleObj.fontWeight=J(p.quadrantlabelbrfontbold,p.quadrantlabelfontbold)?"bold":"normal",B.styleObj.fontStyle=J(p.quadrantlabelbrfontitalic,p.quadrantlabelfontitalic)?"italic":"normal",C(B.styleObj),m=m?H(m,J(p.quadrantlabelbrbgalpha,p.quadrantlabelbgalpha,p.quadrantlabelbralpha,p.quadrantlabelalpha,100)):"",r=J(p.quadrantlabelbrborderpadding,p.quadrantlabelborderpadding,2),k=J(p.quadrantlabelbrborderradius,p.quadrantlabelborderradius,0),n=J(p.quadrantlabelbrborderdashed,p.quadrantlabelborderdashed,
0)?u(J(p.quadrantlabelbrborderdashlen,p.quadrantlabelborderdashlen,4),J(p.quadrantlabelbrborderdashgap,p.quadrantlabelborderdashgap,2),q):"none",B["text-bound"]=[m,b,q,r,k,n])},_preDraw:function(){var a,b,k,m,n,q;k=this.conf;var g=this.chart;m=g.components;q=m.yAxis[0];n=m.xAxis[0].getLimit();var l=q.getLimit();m=n.max;q=l.max;var B=n.min;n=l.min;var g=g.config,e=g.canvasWidth,u=g.canvasHeight,g=k.quadrantLabelPadding,l=k.tlConfig,p=k.trConfig,v=k.blConfig,K=k.brConfig;a=k.xVal||(k.xVal=(B+m)/2);
b=k.yVal||(k.yVal=(n+q)/2);if(b>=n&&b<=q&&a>=B&&a<=m){k=e/(m-B)*(a-B);m=e-k;q=u/(q-n)*(b-n);k-=g;n=u-q-g;q-=g;if(0>n||0>k)l.enabled=!1;if(0>n||0>m-g)p.enabled=!1;if(0>q||0>k)v.enabled=!1;if(0>q||0>k)K.enabled=!1}else k.enabled=!1;return this},draw:function(){var a=this._preDraw(),b=a.conf,k=a.chart,m=k.graphics,n=k.config,u=n.reverseXAxis,g=k.components,l=k.linkedItems.smartLabel,a=a.graphics,B=a.tlLabel,e=a.trLabel,v=a.blLabel,p=a.brLabel,A=n.textDirection,K=g.xAxis[0],t=g.yAxis[0],g=g.paper,C=a.container,
P=b.tlConfig||{},H=b.trConfig||{},z=b.blConfig||{},R=b.brConfig||{},P=P.enabled&&P.label,H=H.enabled&&H.label,z=z.enabled&&z.label,R=R.enabled&&R.label,w=n.canvasLeft,F=n.canvasTop,J=b.quadrantLabelPadding,h=K.getLimit(),d=t.getLimit(),f=u?h.min:h.max,c=d.max,d=d.min,u=K.getPixel(u?h.max:h.min)+J,f=K.getPixel(f)-J,d=t.getPixel(d)-J,J=t.getPixel(c)+J,K=K.getPixel(b.xVal),D=t.getPixel(b.yVal),t=K-u,c=f-K,h=D-J,G=d-D,O=a.horizontalQuadLine,Q=a.verticalQuadLine,Ia=k.get("config","animationObj"),k=Ia.duration||
0,sa=Ia.dummyObj,Ia=Ia.animObj,wa=!1;b.enabled?(C||(wa=!0,C=a.container=g.group("quadrant").insertBefore(m.datasetGroup)),C.animateWith(sa,Ia,{"clip-rect":n.canvasLeft+","+n.canvasTop+","+n.canvasWidth+","+n.canvasHeight},wa?0:k),O||(O=a.horizontalQuadLine=g.path(C)),O.animateWith(sa,Ia,{path:"M"+w+" "+D+"h"+n.canvasWidth},k).attr({stroke:b.quadrantLineColor,"stroke-dasharray":b.dashStyle,"stroke-width":b.quadrantLineThickness,"stroke-linecap":"butt"}),Q||(Q=a.verticalQuadLine=g.path(C)),Q.animateWith(sa,
Ia,{path:"M"+K+" "+F+"v"+n.canvasHeight},k).attr({stroke:b.quadrantLineColor,"stroke-width":b.quadrantLineThickness,"stroke-dasharray":b.dashStyle,"stroke-linecap":"butt"}),P?(B||(B=a.tlLabel=g.text(C).attr({"text-anchor":q,"vertical-align":M}).css(b.tlConfig.styleObj)),l.useEllipsesOnOverflow(n.useEllipsesWhenOverflow),l.setStyle(b.tlConfig.styleObj),m=l.getSmartText(P,t,h),P&&B.animateWith(sa,Ia,{x:u,y:J},wa?0:k).attr({text:m.text,direction:A,"text-bound":b.tlConfig["text-bound"]}).show()):B&&B.hide(),
H?(e||(e=a.trLabel=g.text(C).attr({"text-anchor":N,"vertical-align":M,direction:A}).css(b.trConfig.styleObj)),l.setStyle(b.trConfig.styleObj),m=l.getSmartText(H,c,h),H&&e.animateWith(sa,Ia,{x:f,y:J},wa?0:k).attr({text:m.text,"text-bound":b.trConfig["text-bound"]}).show()):e&&e.hide(),z?(v||(v=a.blLabel=g.text(C).attr({"text-anchor":q,"vertical-align":U,direction:A}).css(b.blConfig.styleObj)),l.setStyle(b.blConfig.styleObj),m=l.getSmartText(z,t,G),z&&v.animateWith(sa,Ia,{x:u,y:d},wa?0:k).attr({text:m.text,
"text-bound":b.blConfig["text-bound"]}).show()):v&&v.hide(),R?(p||(p=a.brLabel=g.text(C).attr({"text-anchor":N,"vertical-align":U,direction:A}).css(b.brConfig.styleObj)),l.setStyle(b.brConfig.styleObj),m=l.getSmartText(R,c,G),R&&p.animateWith(sa,Ia,{x:f,y:d},wa?0:k).attr({text:m.text,"text-bound":b.brConfig["text-bound"]}).show()):p&&p.hide()):C&&C.hide()}}])}]);Q.register("module",["private","modules.renderer.js-dataset-scatter",function(){var b=this.hcLib,v=this.window.Image,J=b.BLANKSTRING,C=b.BGRATIOSTRING,
H=b.extend2,A=b.pluck,u=b.pluckNumber,a=b.toRaphaelColor,O=b.graphics.getDarkColor,q=b.getFirstAlpha,M=b.HUNDREDSTRING,U=b.getFirstValue,N=b.parseTooltext,E=b.preDefStr,r=E.hiddenStr,k=E.setRolloverAttrStr,m=E.setRolloutAttrStr,E=Math,n=E.max,L=E.pow,g=b.getFirstColor,l=b.graphics.getLightColor,B=b.schedular;Q.register("component",["dataset","Scatter",{type:"scatter",configure:function(){var e,l,k,m=this.chart,n=m.components,t=b.parseUnsafeString,r=this.config,B=this.JSONData,v=m.areaAlpha,z=m.jsonData.chart,
E=n.colorManager;e=u(B.showplotborder,z.showplotborder||1);var w=E.getPlotColor(this.index),F=r.lineDashed=u(B.linedashed,B.dashed,z.linedashed,0),C=this.isLineSet;r.plotColor=w;k=u(m.defaultPlotShadow,E.getColor("showShadow"));r.xAxisLabelMode=A(z.xaxislabelmode,"categories");r.toolTipSepChar=A(z.tooltipsepchar,", ");r.parentYAxis=C?l=1:l="s"===A(B.parentyaxis&&B.parentyaxis.toLowerCase(),"p")?1:0;this.yAxis=n.yAxis[l];r.connectNullData=u(z.connectnulldata,0);r.includeInLegend=u(B.includeinlegend,
1);r.enableAnimation=l=u(z.animation,z.defaultanimation,1);r.animation=l?{duration:1E3*u(z.animationduration,1)}:!1;r.transposeanimation=u(z.transposeanimation,l);r.transposeanimduration=1E3*u(z.transposeanimduration,.2);r.showValues=u(B.showvalues,z.showvalues);r.valuePadding=u(z.valuepadding,2);r.valuePosition=A(B.valueposition,z.valueposition,"auto");r.showTooltip=u(z.showtooltip,1);r.seriesNameInTooltip=u(z.seriesnameintooltip,1);r.showRegressionLine=u(B.showregressionline,z.showregressionline,
0);r.plotFillColor=A(B.color,z.plotfillcolor,w);r.plotFillAngle=A(z.plotfillangle,270);r.plotFillAlpha=A(B.alpha,z.plotfillalpha,v,"70");v=u(z.useplotgradientcolor,1);r.plotGradientColor=0!==v?b.getDefinedColor(z.plotgradientcolor,E.getColor("plotGradientColor")):"";r.fillColor={color:r.plotFillColor+(r.plotGradientColor?","+r.plotGradientColor:J),alpha:r.plotFillAlpha,angle:r.plotFillAngle};r.plotBorderAlpha=e?A(B.plotborderalpha,z.plotborderalpha,B.alpha,"95"):0;r.plotBorderColor=A(B.plotbordercolor,
z.plotbordercolor,z.areabordercolor,"666666");r.dashed=e=u(B.dashed,z.plotborderdashed);r.plotBorderDashLen=A(B.plotborderdashlen,z.plotborderdashlen,5);r.plotBorderDashGap=A(B.plotborderdashgap,z.plotborderdashgap,4);r.plotBorderThickness=u(B.plotborderthickness,z.plotborderthickness,1);r.plotBorderDashStyle=e?b.getDashStyle(r.plotBorderDashLen,r.plotBorderDashGap,r.plotBorderThickness):"none";r.showHoverEffect=u(z.plothovereffect,z.anchorhovereffect,z.showhovereffect,void 0);r.rotateValues=u(z.rotatevalues)?
270:0;r.drawLine=u(B.drawline,z.drawlines,0);r.lineThickness=u(B.linethickness,z.linethickness,2);r.lineDashLen=u(B.linedashlen,z.linedashlen,5);r.lineDashGap=u(B.linedashgap,z.linedashgap,4);r.lineAlpha=u(B.linealpha,z.linealpha,B.alpha,M);r.lineColor=A(B.linecolor,z.linecolor,B.color,r.plotColor);r.lineDashStyle=b.getDashStyle(r.lineDashLen,r.lineDashGap,r.lineThickness);r.lineDashStyle=F?r.lineDashStyle:"none";r.shadow={opacity:u(z.showshadow,k)?r.lineAlpha/100:0};r.drawanchors=u(B.drawanchors,
B.showanchors,z.drawanchors,z.showanchors);r.anchorbgcolor=g(A(B.anchorbgcolor,z.anchorbgcolor,E.getColor("anchorBgColor")));r.anchorbordercolor=g(A(B.anchorbordercolor,B.color,z.anchorbordercolor,r.lineColor));r.anchorradius=u(B.anchorradius,z.anchorradius,3);r.anchoralpha=A(B.anchoralpha,B.alpha,z.anchoralpha,M);r.anchorbgalpha=A(B.anchorbgalpha,B.alpha,z.anchorbgalpha,M);r.anchorborderthickness=A(B.anchorborderthickness,z.anchorborderthickness,1);r.anchorsides=u(B.anchorsides,z.anchorsides,this.index+
3);r.anchorimageurl=A(B.anchorimageurl,z.anchorimageurl);r.anchorimagealpha=u(B.anchorimagealpha,z.anchorimagealpha,100);r.anchorimagescale=u(B.anchorimagescale,z.anchorimagescale,100);r.anchorimagepadding=u(B.anchorimagepadding,z.anchorimagepadding,1);r.anchorstartangle=u(B.anchorstartangle,z.anchorstartangle,90);r.anchorshadow=u(B.anchorshadow,z.anchorshadow,0);r.plotToolText=b.getValidValue(t(A(B.plottooltext,z.plottooltext)));r.showRegressionLine&&(r.regressionObj={isRegression:!0,sumX:0,sumY:0,
sumXY:0,sumXsqure:0,sumYsqure:0,xValues:[],yValues:[]},r.showYOnX=u(B.showyonx,z.showyonx,1),r.regressionLineColor=g(A(B.regressionlinecolor,z.regressionlinecolor,r.anchorbordercolor)),r.regressionLineThickness=u(B.regressionlinethickness,z.regressionlinethickness,r.anchorborderthickness),r.regressionLineAlpha=q(u(B.regressionlinealpha,z.regressionlinealpha,r.anchoralpha)),r.regLineColor=a({color:r.regressionLineColor,alpha:r.regressionLineAlpha}));r.seriesNameInTooltip&&(r.seriesname=b.getFirstValue(B&&
B.seriesname));this.visible=1===u(B.visible,!Number(B.initiallyhidden),1);this._setConfigure();!1!==m.hasLegend&&this._addLegend()},_setConfigure:function(){var a,g,l,k,m,t,n,r,q,B=-Infinity,v=Infinity,w=Infinity,F=-Infinity,E=this.components.data||(this.components.data=[]);a=this.chart;var h=b.parseUnsafeString,d=this.config,f=this.JSONData,c=a.jsonData.chart,D=f.data||[],G=D.length,C=a.components.numberFormatter,L=h(c.yaxisname),H=h(c.xaxisname),M=d.lineDashed,O=d.lineDashStyle,U=d.parentYAxis,
Q=d.toolTipSepChar,qa=d.seriesname;for(a=d.imageCount=0;a<G;a+=1)k=D[a],l=E[a]||(E[a]={}),g=l.config||(l.config={}),g.setValue=m={x:C.getCleanValue(k.x),y:C.getCleanValue(k.y)},null!==m.x&&null!==m.y&&(m.x>F&&(F=m.x,d.rightMostData=l),m.x<w&&(w=m.x,d.leftMostData=l),m.y>B&&(B=m.y,d.topMostData=l),m.y<v&&(v=m.y,d.bottomMostData=l)),d.showRegressionLine&&this.pointValueWatcher(m.x,m.y,d.regressionObj),g.setLink=A(k.link),g.anchorProps=this._parseAnchorProperties(a),g.showValue=u(k.showvalue,d.showValues),
g.dashed=u(k.dashed,M),g.color=A(k.color,d.lineColor),g.alpha=A(k.alpha,d.lineAlpha),g.dashStyle=g.dashed?O:"none",g.toolTipValue=t=C.dataLabels(m.y,U),g.setDisplayValue=q=h(k.displayvalue),r=g.formatedVal=A(k.toolTipValue,C.dataLabels(m.y,U)),n=C.xAxis(m.x),g.displayValue=A(q,t),g.setTooltext=b.getValidValue(h(A(k.tooltext,d.plotToolText))),d.showTooltip?void 0!==g.setTooltext?(m=[4,5,6,7,8,9,10,11],n={yaxisName:L,xaxisName:H,yDataValue:r,xDataValue:n},k=N(g.setTooltext,m,n,k,c,f)):null===r?k=!1:
(k=qa?qa+Q:J,k+=m.x?n+Q:J,k+=t):k=!1,g.toolText=k,l?l.graphics||(E[a].graphics={}):l=E[a]={graphics:{}},g.hoverEffects=this._parseHoverEffectOptions(l),g.anchorProps.isAnchorHoverRadius=g.hoverEffects.anchorRadius;d.xMax=F;d.xMin=w;d.yMin=v;d.yMax=B;d.showRegressionLine&&(d.regressionData=this.getRegressionLineSeries(d.regressionObj,d.showYOnX,G));this.ErrorValueConfigure&&this.ErrorValueConfigure()},sortFN:function(a,b){return a-b},_getHoveredPlot:function(a,b){var g=this.dataTree.getNeighbour({x:a,
y:b},!0);if(g)return{pointIndex:g.index||g.i,hovered:!0,pointObj:g.data}},manageSpace:function(){var a=this.config||(this.config={}),b=this.chart,g=b.config.rotatevalues,l=b.components.xAxis[0],k=b.components.yAxis[0],m=l.config.isReverse,r=b.config.dataLabelStyle,q=(this.components||{}).data||[],B=a.leftMostData||q[0],z=a.rightMostData||q[q.length-1],q=a.topMostData,a=a.bottomMostData,v,w,F,E=l.config.axisRange,h=E.max,d=k.config.axisRange,f=d.min,d=d.max,E=l.getPixel(E.min),c=l.getPixel(h),D={};
F={};var G=0,A=0,C,D=b.linkedItems.smartLabel,h={paddingLeft:0,paddingRight:0};F=0;m&&(B=z=B);if(B){v=B.config;B=v.anchorProps.radius;if(C=v.showValue)F=v.displayValue,D.useEllipsesOnOverflow(b.config.useEllipsesWhenOverflow),D.setStyle(r),F=D.getOriSize(F),F=g?F.height:F.width;null!==v.setValue&&(b=l.getPixel(v.setValue.x),A=m?c-(b-.5*F):E-(b-.5*F),G=!m&&b-B<=E||m&&b-B<=c?m?c-(b-B):E-(b-B):0);h.paddingLeft=n(A,G)}z&&(v=z.config,C=v.showValue,B=v.anchorProps.radius,C&&(F=v.displayValue,D.setStyle(r),
D=D.getOriSize(F),F=g?D.height:D.width),null!==v.setValue&&(b=l.getPixel(v.setValue.x),g=b-E+.5*F,A=g-c+E,m&&(A=g),G=!m&&b+B>=c||m&&b+B>=E?m?b+B-E:b+B-c:0),h.paddingRight=n(A,G));q&&(m=(v=q.config)&&v.anchorProps||{},B=v.anchorProps.radius||0,d=k.getPixel(d),null!==v.setValue&&(w=k.getPixel(v.setValue.y),G=u(B,0)+u(m.borderThickness,0)/2),h.paddingTop=0<d-(w-G)?d-(w-G):0);a&&(m=(v=a.config)&&v.anchorProps||{},B=v.anchorProps.radius||0,f=k.getPixel(f),null!==v.setValue&&(w=k.getPixel(v.setValue.y),
G=u(B,0)+u(m.borderThickness,0)/2),h.paddingBottom=0<w+G-f?w+G-f:0);return h},getRegressionLineSeries:function(a,b,g){var l,k,m,n;n=a.sumXY;var r=a.sumX,q=a.sumY;k=a.xValues;m=a.sumXsqure;l=a.yValues;a=a.sumYsqure;b?(k.sort(this.sortFN),l=k[0],k=k[k.length-1],n=(g*n-r*q)/(g*m-L(r,2)),m=!isNaN(n)&&isFinite(n)?n*(l-r/g)+q/g:q/g,g=!isNaN(n)&&isFinite(n)?n*(k-r/g)+q/g:q/g,g=[{x:l,y:m},{x:k,y:g}]):(l.sort(this.sortFN),m=l[0],l=l[l.length-1],n=(g*n-r*q)/(g*a-L(q,2)),k=isNaN(n)?r/g:n*(m-q/g)+r/g,g=isNaN(n)?
r/g:n*(l-q/g)+r/g,g=[{x:k,y:m},{x:g,y:l}]);return g},draw:function(){var e,g,l,q,u,t,E,C,L,z,H,w,F,J,h,d,f,c,D,G=this,N=G.JSONData,M=G.chart,O=M.getJobList(),U=M.components,Q=G.components.removeDataArr,Q=Q&&Q.length,ca=M.jsonData.chart,ma=G.config,qa=G.index,va=N.data||[],ha=M.config,ra=U.paper,ka=U.xAxis[0],U=U.yAxis[0],na=b.parseUnsafeString,da=b.getValidValue,oa=G.components.data,Y=oa.length;f={};g={};var za=ma.lineThickness;g=M.graphics;t=g.datalabelsGroup;var fa=G.graphics.container,Aa=G.graphics.trackerContainer;
J=g.trackerGroup;var ua=G.pool||(G.pool={}),ia=ma.connectNullData,xa=ma.showTooltip;g=g.datasetGroup;var ja=ma.shadow,ya=G.graphics.dataLabelContainer,W=G.visible;u={};var Ma=this.searchDataArr=[],ea=[n(0,ha.canvasLeft),n(0,ha.canvasTop),n(1,ha.canvasWidth),n(1,ha.canvasHeight)],ha=[n(0,ha.canvasLeft),n(0,ha.canvasTop),1,n(1,ha.canvasHeight)],ga=ma.lineDashStyle,la={color:ma.lineColor,alpha:ma.lineAlpha},Ca=[],Ha=[],pa=null,La=[],Ja=!1,Fa=G.graphics.lineElement;u=G.graphics.regressionLineElement;
var ta=M.get("config","animationObj"),M=ta.duration||0,Ka=ta.dummyObj,Ea=ta.animObj,ta=ta.animType,Da=0;ma.imagesLoaded=0;g.line=g.line||ra.group("line",g);g.lineConnector=g.lineConnector||ra.group("line-connector",g);fa||(fa=G.graphics.container={lineShadowGroup:ra.group("connector-shadow",g.lineConnector),anchorShadowGroup:ra.group("anchor-shadow",g.lineConnector),lineGroup:ra.group("connector",g.lineConnector),anchorGroup:ra.group("anchors",g.lineConnector)});Aa||(Aa=G.graphics.trackerContainer=
ra.group("line-hot"));oa||(oa=G.components.data=[]);J&&J.appendChild(Aa);ya||(ya=G.graphics.dataLabelContainer=ra.group("datalabel",t).attr("class","fusioncharts-datalabels"));ma.showRegressionLine&&W?(t=ma.regressionData[0],J=ma.regressionData[1],(g=ma._regressionAttr)||(ma._regressionAttr=g={}),g.stroke=ma.regLineColor,g["stroke-width"]=ma.regressionLineThickness,g["stroke-linecap"]="round",g["stroke-linejoin"]=2<ma.regressionLineThickness?"round":"miter",g.path="M "+ka.getAxisPosition(t.x)+","+
U.getAxisPosition(t.y)+" L "+ka.getAxisPosition(J.x)+","+U.getAxisPosition(J.y),u?u.animateWith(Ka,Ea,g,M,ta):u=G.graphics.regressionLineElement=ra.path(g,fa.regLineGroup),u.show()):u&&u.hide();for(t=0;t<Y;t+=1)if(u=va[t],J=oa[t],c=J.config,l=c.trackerConfig={},g=J.graphics,w=c.setValue,H=c.setLink,da(na(A(u.tooltext,N.plottooltext,ca.plottooltext))),u=c.anchorProps,f=u.symbol,h=u.shadow,F=c.displayValue,J||(J=oa[t]={graphics:{}}),q=w.y,e=w.x,L=c.finalTooltext=c.toolText,null!==q&&null!==e){d=c.hoverEffects;
E=ka.getAxisPosition(e);C=U.getAxisPosition(q);c.eventArgs={index:t,link:H,x:e,y:q,value:w,displayValue:F,toolText:L,id:ma.userID,datasetIndex:qa||0,datasetName:N.seriesname,visible:W};if(u.imageUrl)c.anchorImageLoaded=!1,l=new v,c.anchorImageLoaded=!1,W||g.image&&g.image.animateWith(Ka,Ea,{opacity:0},M,ta),l.onload=this._onAnchorImageLoad(G,t,void 0,E,C),l.onerror=this._onErrorSetter(G,t),l.src=u.imageUrl,Da++;else if(z=g.element,(w=g.image)&&w.hide(),z||(z=ua.element&&ua.element.length?g.element=
ua.element.shift():g.element=ra.polypath(fa.anchorGroup),Ja=!0,M&&Ja&&z.attr({polypath:[f[1]||2,E,C,u.radius,u.startAngle,0],opacity:0,"fill-opacity":0,"stroke-opacity":0})),z.attr({fill:a({color:u.bgColor,alpha:u.bgAlpha}),stroke:a({color:u.borderColor,alpha:u.borderAlpha}),"stroke-width":u.borderThickness,cursor:H?"pointer":"",visibility:u.radius?W:r}).shadow(h,fa.anchorShadowGroup).animateWith(Ka,Ea,{polypath:[f[1]||2,E,C,u.radius,u.startAngle,0],opacity:W?u.bgAlpha/100:0,"fill-opacity":W?u.bgAlpha/
100:0,"stroke-opacity":W?u.borderAlpha/100:0},M,ta),H||xa||d)g=n(u.radius,d.anchorRadius||0),l.trackerRadius=g;d.enabled&&(g={polypath:[d.anchorSides||2,E,C,d.anchorRadius,d.startAngle,d.dip],fill:a({color:d.anchorColor,alpha:d.anchorBgAlpha}),stroke:a({color:d.anchorBorderColor,alpha:d.anchorBorderAlpha}),"stroke-width":d.anchorBorderThickness},f={polypath:[f[1]||2,E,C,u.radius,u.startAngle,0],fill:a({color:u.bgColor,alpha:u.bgAlpha}),stroke:a({color:u.borderColor,alpha:u.borderAlpha}),"stroke-width":u.borderThickness},
z&&z.data("hoverEnabled",d.enabled).data("anchorRadius",u.radius).data("anchorHoverRadius",d.anchorRadius).data(k,g).data(m,f));u.isAnchorHoverRadius=d.anchorRadius;null!==pa?(La.length&&(Ca=Ca.concat(La),La.length=0),Ca.join("")||Ca.push("M",D,pa),Ca.push("L",E,C)):La.push("M",E,C);D=E;pa=C;J._xPos=E;J._yPos=C;z&&z.data("eventArgs",c&&c.eventArgs);Ma.push({x:E,y:C,index:t,data:J,r:u.radius||0})}else La.length=0,ia||(pa=null);this.dataTree=(new b.KdTree).buildKdTree(Ma);Ca.length&&(Ha=Ha.concat(Ca));
ma.drawLine&&Ha.join("")?(Fa||(Fa=G.graphics.lineElement=ra.path({path:Ha},fa.lineGroup),Ja=!0),W&&Fa.attr({"stroke-dasharray":ga,"stroke-width":za,stroke:a(la),"stroke-linecap":"round","stroke-linejoin":2<=za?"round":"miter"}),W?Fa.animateWith(Ka,Ea,{path:Ha,"stroke-opacity":1},M,ta,function(){this.shadow(ja,fa.lineShadowGroup)}):Fa.animateWith(Ka,Ea,{path:Ha,"stroke-opacity":0},Ja?0:M,ta).shadow(!1)):Fa&&Fa.animateWith(Ka,Ea,{"stroke-opacity":0},M,ta).shadow(!1);ma.totalImages=ma.noOfImages=Da;
0===Da&&(G.drawn?G.drawLabel():O.labelDrawID.push(B.addJob(function(){G.drawLabel()},b.priorityList.label)));fa.lineShadowGroup.hide();fa.anchorShadowGroup.hide();ya.hide();Ja&&fa.lineGroup.attr({"clip-rect":ha});fa.lineGroup.animateWith(Ka,Ea,{"clip-rect":ea},M,ta,function(){fa.lineGroup.attr({"clip-rect":null});W?(fa.lineShadowGroup.show(),fa.anchorShadowGroup.show(),fa.anchorGroup.show(),Aa.show(),ya&&ya.show()):(fa.lineShadowGroup.hide(),fa.anchorShadowGroup.hide(),fa.anchorGroup.hide(),Aa.hide(),
ya&&ya.hide())});Q&&G.remove();G.drawErrorValue&&G.drawErrorValue();G.drawn=!0},getDataLimits:function(){var a=this.config,b=a.yMax,g=a.yMin,l=a.xMax,a=a.xMin,k=this.chart.config.transposeAxis;!1===this.visible&&k&&(b=-Infinity,g=Infinity,l=-Infinity,a=Infinity);return{max:b,min:g,xMax:l,xMin:a}},getAxisValuePadding:function(){return{left:0,right:0}},_addLegend:function(){var b,g=this.config,l=this.chart.components.legend,k=u(g.drawanchors,1);b=this.getPointColor(g.anchorbgcolor,M);var m={FCcolor:{color:g.anchorbordercolor,
alpha:g.anchoralpha}};l.config.symbol3DLighting?b&&b.FCcolor?(b=H({},b),b.FCcolor.alpha="100"):b=A(b):b={FCcolor:{color:A(b&&(b.FCcolor&&b.FCcolor.color.split(",")[0]||b)),angle:0,ratio:"0",alpha:"100"}};this.legendItemId=l.addItems(this,this.legendInteractivity,{enabled:g.includeInLegend,type:this.type,drawLine:A(g.drawLine,!0),fillColor:a(b),strokeColor:a(A(m&&(m.FCcolor&&m.FCcolor.color.split(",")[0]||m))),rawFillColor:g.anchorbgcolor,rawStrokeColor:g.anchorbordercolor,anchorSide:k?g.anchorsides:
0,strokeWidth:g.anchorborderthickness,label:U(this.JSONData.seriesname)})},getPointColor:function(a,b){var k,m;a=g(a);b=q(b);k=l(a,70);m=O(a,50);return{FCcolor:{gradientUnits:"objectBoundingBox",cx:.4,cy:.4,r:"100%",color:k+","+m,alpha:b+","+b,ratio:C,radialGradient:!0}}}},"Line"])}]);Q.register("module",["private","modules.renderer.js-dataset-pareto",function(){var b=this.hcLib,v=b.extend2,J=b.pluck,C=b.pluckNumber,H=b.toRaphaelColor,A=b.graphics.convertColor,u=b.HUNDREDSTRING,a=b.getValidValue,
O=Math,q=O.min,M=O.max,U=O.abs,N=b.getFirstColor,E=b.graphics.getLightColor;Q.register("component",["dataset","Pareto",{configure:function(){var r=this.chart,k=this.config,m=r.components,n=m.xAxis[0],L=this.JSONData,g=L.data,l=g&&g.length,B=r.jsonData.chart,e=m.colorManager,V,p=e.getPlotColor(this.index||this.positionIndex),T=C(L.dashed,B.plotborderdashed),K=C(B.useplotgradientcolor,1),t=C(B.showtooltip,1),Z=b.parseUnsafeString,P=Z(B.yaxisname),S=Z(B.xaxisname),z=b.parseTooltext,R,w,F,X,h,d,f,c,D,
G,O,Q,Ia,sa,wa,ca=b.getDashStyle,ma=this.components.data,m=m.numberFormatter,qa,va=r.is3D,ha,ra,ka,na,da,oa,Y,za,fa=-Infinity,Aa=Infinity,ua=this.type.toLowerCase(),ia,xa,ja=0,ya=[],W=0,Ma,ea=k.tootipSepChar=J(B.tooltipsepchar,", ");k.enableAnimation=f=C(B.animation,B.defaultanimation,1);k.animation=f?{duration:1E3*C(B.animationduration,1)}:!1;k.showTooltip=C(B.showtooltip,1);k.valuePadding=C(B.valuepadding,2);k.rotateValues=C(B.rotatevalues)?270:0;k.showHoverEffect=f=C(B.plothovereffect,B.showhovereffect,
void 0);k.showShadow=d||va?C(B.showshadow,1):C(B.showshadow,e.getColor("showShadow"));k.useDataPlotColorForLabels=Ma=C(B.usedataplotcolorforlabels,0);k.use3dlineshift=C(B.use3dlineshift,r.use3dlineshift);/column/.test(ua)&&(V=k.showplotborder=C(B.showplotborder,va?0:1),k.plotDashLen=F=C(B.plotborderdashlen,5),k.plotDashGap=X=C(B.plotborderdashgap,4),k.plotfillangle=c=C(360-B.plotfillangle,90),k.plotfillalpha=D=J(B.plotfillalpha,u),k.plotColor=p,k.isRoundEdges=d=C(B.useroundedges,0),k.plotRadius=C(B.useRoundEdges,
k.isRoundEdges?1:0),k.plotfillratio=G=J(B.plotfillratio),k.plotgradientcolor=O=b.getDefinedColor(B.plotgradientcolor,e.getColor("plotGradientColor")),!K&&(O=""),k.plotborderalpha=Q=V&&!va?J(B.plotborderalpha,D,u):0,k.plotbordercolor=Ia=J(B.plotbordercolor,va?"#ffffff":e.getColor("plotBorderColor")),k.plotborderthickness=h=C(B.plotborderthickness,1),k.plotBorderDashStyle=sa=T?ca(F,X,h):"none",k.showValues=C(B.showvalues,1),k.definedGroupPadding=M(C(B.plotspacepercent),0),k.plotSpacePercent=M(C(B.plotspacepercent,
20)%100,0),k.maxcolwidth=C(B.maxcolwidth,50),k.plotpaddingpercent=C(B.plotpaddingpercent),k.placevaluesinside=C(B.placevaluesinside,0),k.use3dlighting=C(B.use3dlighting,1),k.parentYAxis=0);"line"===ua&&(k.linecolor=N(J(B.linecolor,e.getColor("plotBorderColor"))),k.linethickness=C(B.linethickness,2),k.linealpha=J(B.linealpha,u),k.linedashed=C(B.linedashed,0),k.linedashlen=C(L.linedashlen,B.linedashlen,5),k.linedashgap=C(L.linedashgap,B.linedashgap,4),T=b.getDashStyle(k.linedashlen,k.linedashgap,k.linethickness),
k.lineDashStyle=k.linedashed?T:"none",k.drawanchors=C(B.drawanchors,B.showanchors),k.anchorbgcolor=J(B.anchorbgcolor,e.getColor("anchorBgColor")),k.anchorbordercolor=J(B.anchorbordercolor,k.linecolor),k.anchorradius=C(B.anchorradius,3),k.anchoralpha=J(B.anchoralpha),k.anchorbgalpha=J(B.anchorbgalpha,100),k.anchorborderthickness=J(B.anchorborderthickness,1),k.anchorsides=J(B.anchorsides,0),k.anchorimageurl=J(B.anchorimageurl),k.anchorimagealpha=C(B.anchorimagealpha,100),k.anchorimagescale=C(B.anchorimagescale,
100),k.anchorimagepadding=C(B.anchorimagepadding,1),k.anchorstartangle=C(B.anchorstartangle,90),k.parentYAxis=1,k.valuePosition=J(B.valueposition,"auto"),k.showValues=C(B.showlinevalues,B.showvalues,1),k.showShadow&&(k.shadow={opacity:k.lineAlpha/100}),k.showCumulativeLine=C(B.showcumulativeline,1),k.maxRadius=-Infinity);ma||(ma=this.components.data=[]);for(T=0;T<l;T++)K=U(m.getCleanValue(g[T].value)),ja+=K,ya[T]=v({},g[T]),ya[T].value=K;ya.sort(function(a,c){return c.value-a.value});for(T=k.imageCount=
0;T<l;T++)K=ya[T],(p=ma[T])||(p=ma[T]={graphics:{}}),p.config||(g=ma[T].config={}),r=U(m.getCleanValue(K.value)),null!==r&&(g=p&&p.config,qa=n.getLabel(T),g.label=a(Z(J(qa.label))),g.showValue=C(K.showvalue,k.showValues),g.setValue=r,g.setLink=J(K.link),g.setDisplayValue=qa=Z(K.displayvalue),W+=g.setValue,ia=m.dataLabels(r),/column/.test(ua)?(p=C(K.dashed),R=C(K.dashlen,F),wa=X=C(K.dashgap,X),g.plotBorderDashStyle=R=1===p?ca(R,wa,h):0===p?"none":sa,p=e.getPlotColor(T),p=J(K.color,p),G=J(K.ratio,k.plotfillratio),
D=J(K.alpha,k.plotfillalpha),Q=J(K.alpha,k.plotborderalpha),0>r&&!d&&(w=c,c=360-c),g.colorArr=wa=b.graphics.getColumnColor(p+","+O,D,G,c,d,Ia,Q.toString(),0,va?!0:!1),0!==f&&(ha=J(K.hovercolor,B.plotfillhovercolor,B.columnhovercolor,p),ra=J(K.hoveralpha,B.plotfillhoveralpha,B.columnhoveralpha,D),ka=J(K.hovergradientcolor,B.plothovergradientcolor,O),!ka&&(ka=""),G=J(K.hoverratio,B.plothoverratio,G),na=C(360-K.hoverangle,360-L.hoverangle,360-B.plothoverangle,c),da=J(K.borderhovercolor,B.plotborderhovercolor,
Ia),Q=J(K.borderhoveralpha,L.borderhoveralpha,B.plotborderhoveralpha,B.plotfillhoveralpha,Q,D),D=C(K.borderhoverthickness,L.borderhoverthickness,B.plotborderhoverthickness,h),oa=C(K.borderhoverdashed,B.plotborderhoverdashed),Y=C(K.borderhoverdashgap,B.plotborderhoverdashgap,F),za=C(K.borderhoverdashlen,B.plotborderhoverdashlen,X),oa=oa?ca(za,Y,D):R,1==f&&ha===p&&(ha=E(ha,70)),ha=b.graphics.getColumnColor(ha+","+ka,ra,G,na,d,da,Q.toString(),0,va?!0:!1),g.setRolloutAttr={fill:va?[H(wa[0]),!k.use3dlighting]:
H(wa[0]),stroke:V&&H(wa[1]),"stroke-width":h,"stroke-dasharray":R},g.setRolloverAttr={fill:va?[H(ha[0]),!k.use3dlighting]:H(ha[0]),stroke:V&&H(ha[1]),"stroke-width":D,"stroke-dasharray":oa}),Ma&&n.updateCategory(T,{labelfontcolor:A(p)}),g.displayValue=J(qa,ia),R=g.setTooltext=g.origToolText=a(Z(J(K.tooltext,B.plottooltext))),g.toolTipValue=m.dataLabels(r,k.parentYAxis)):(r=g.setValue=W/ja*100,xa=m.percentValue(r),g.toolTipValue=xa,g.displayValue=xa,g.valuePosition=J(K.valueposition,k.valuePosition),
g.anchorProps=this._parseAnchorProperties(T,ya),g.hoverEffects=this._parseHoverEffectOptions(p),p=g.anchorProps,k.maxRadius=Math.max(k.maxRadius,p.radius+p.borderThickness/2)),p=g.toolTipValue,fa=M(fa,r),Aa=q(Aa,r),t?(k.showTooltip?void 0!==R?(r={formattedValue:p,label:g.label,yaxisName:P,xaxisName:S,cumulativeValue:W,cumulativeDataValue:m.dataLabels(W),cumulativePercentValue:xa,sum:m.dataLabels(ja),unformattedSum:ja},p=[1,2,3,5,6,7,20,21,22,23,24,25],K=z(R,p,r,K,B)):K=g.label?g.label+ea:"":K=!1,
g.toolText=K):K=!1,g.toolText=K,g.tooltext=R,g.setTooltext=K,w&&(c=w));k.maxValue=fa;k.minValue=Aa},init:function(a,b,m){var n=a.chart.components;a.JSONData={data:b};a.type=m;a.yAxis="line"===m?n.yAxis[1]:n.yAxis[0];a.components={};a.graphics={};a.visible=!0;this.configure.call(a)}}])}]);Q.register("module",["private","modules.renderer.js-dataset-mssplinearea",function(){var b=this.hcLib,v=this.window.Image,J=b.TOUCH_THRESHOLD_PIXELS,C=b.CLICK_THRESHOLD_PIXELS,H=b.toRaphaelColor,A=b.hasTouch?J:C,
J=b.preDefStr,u=J.hiddenStr,a=J.setRolloverAttrStr,O=J.setRolloutAttrStr,J=Math,q=J.sqrt,M=J.min,U=J.max,N=J.abs,E=b.schedular;Q.register("component",["dataset","MSSplineArea",{configure:function(){Q.get("component",["dataset","area"]).prototype.configure.call(this);this._calculateMaxMin()},_calculateMaxMin:function(){var a=this.config,b=this.chart,m=b.config,n=b.origRenderWidth,q=m.connectnulldata,g=this.components.data,l=Number.MIN_VALUE,B=Number.MAX_VALUE;0===m.minimizetendency&&(b=b.getSplineExtremities(g,
n,q),a.maxValue=U(a.maxValue,b.max),a.minValue=M(a.minValue,b.min),a.maxValue===l&&(a.maxValue=0),a.minValue===B&&(a.minValue=0))},getSplinePath:function(a,b,m,n){var u=function(a,c,b,d){c=(d-c)/q((b-a)*(b-a)+(d-c)*(d-c));c=N(.5*c);return a*c+b*(1-c)},g=function(a,c,b,d){var e=a.length,f=a[e-1],g=f.length,h=f[0],f=f[g-2];3>g||("R"!==h&&"C"!==h||3!==g||(a[e-1][0]="L"),c&&a.push(["L",f,d,b,d,"Z"]))},l=/area/ig.test(this.defaultDatasetType),B=[null],e=[],v=[],p=b.getAxisBase();b=b.getAxisPosition(p);
var E,K,t,A,C,H,z,J,w,F,M,h,d,f,c,D;c=0;for(D=a.length;c<D;c+=1)if(w=a[c],t=a[c-1]||{},A=a[c+1]||{},C=w.x,p=w.y,E=t.x,t=t.y,H=A.x,A=A.y,z=w.lastYPos,J=w.lastXPos,M=e.length,w=v.length,n)if(null!==z)if(K=d,c===a.length-1){z=B[c-h-1];w=H=(C+E)/2;M=(w-E)*z+t;if(t>p&&M<p||t<p&&M>p)M=p,w=(M-t)/z+E;d.push(w,M,H,(p+t)/2,C,p);e.push(d);v.push(d);l&&g(e,!0,f,b);l&&g(v,!1)}else{z=B[c-h-1];if(t>p&&A>=p||t<p&&A<=p)if(F=0,H=u(E,t,C,p),A=p,1!==c-h){w=H;M=(w-E)*z+t;if(t>p&&M<p||t<p&&M>p)M=p,w=(M-t)/z+E;d.push(w,
M,H,A,C,p)}else d.push((C+E)/2,(p+t)/2,H,A,C,p);else if(t===p)F=0,d.push(E,t,C,p,C,p);else if(t>p&&p>A||t<p&&p<A){F=(A-t)/(H-E);H=u(E,t,C,p);A=(H-C)*F+p;if(t>p&&A>t||t<p&&A<t)A=t,H=(A-p)/F+C;if(1!==c-h){w=H;M=(w-E)*z+t;if(t>p&&M<p||t<p&&M>p)M=p,w=(M-t)/z+E;d.push(w,M,H,A,C,p)}else d.push((C+E)/2,(p+t)/2,H,A,C,p)}B.push(F)}else null===z&&0!==c?(K||(K=[]),"C"===K[0]&&(e.push(d),v.push(d),l&&g(e,!0,f,b),l&&g(v,!1)),e.push(["M",C,p]),v.push(["M",C,p]),f=C,d=["C"],h=c,B=[null]):(e.push(["M",C,p]),v.push(["M",
C,p]),f=C,d=["C"],h=c);else null!==z?2<=M?("M"===e[M-1][0]&&e.push(["R"]),"M"===v[w-1][0]&&v.push(["R"]),M=e.length,w=v.length,K=e[M-1],E=K.length,e[M-1].push(C),e[M-1].push(p),v[w-1].push(C),v[w-1].push(p),c===m-1&&"R"===K[0]&&(g(e,!0,f,b),g(v,!1))):(e.push(["M",J,z]),e.push(["R",C,p]),v.push(["M",J,z]),v.push(["R",C,p]),f=J):null===z&&2<=M&&(K=e[M-1],"R"===K[0]&&(g(e,!0,f,b),g(v,!1)),e.push(["M",C,p]),v.push(["M",C,p]),f=C);K=e[e.length-1];l&&K&&(E=K.length,"Z"===K[E-1]||"R"!==K[0]&&"C"!==K[0]||
(g(e,!0,f,b),g(v,!1)));l||(e=n?e:v,2<=e.length&&g(e,!1));return{closedPath:e,openPath:v}},draw:function(){var r=this,k=r.config,m=r.chart,n=m.getJobList(),q=r.JSONData,g=m.config,l=m.components,B=l.canvas.config,e=r.index,C,p,J=l.paper,l=l.xAxis[0],K=r.yAxis,t,N,P,M,z=null,R=[],w=[],F=m.graphics,X=g.showtooltip,h,d=r.components.data,f,c,D,G,aa,Q=g.connectnulldata,Ia,sa,wa=g.minimizetendency,ca=K.getAxisBase(),ma,qa=k.plotbordercolor,va=k.plotborderalpha,ha=k.plotBorderDashStyle,ra=k.plotborderthickness,
ka=r.graphics.container,na=[],da,oa=k.fillColor,Y=F.areaGroup,za=m.get("config","animationObj"),fa=za.duration,Aa=za.animType,ua=r.components.removeDataArr||[],ia=ua.length,xa=ka&&ka.shadowContainer,ja=r.graphics.dataLabelContainer,ya=function(){!1!==r.visible||!1!==r._conatinerHidden&&void 0!==r._conatinerHidden||(ka.areaGroup.hide(),xa.hide(),ka.lineShadowGroup.hide(),ka.anchorShadowGroup.hide(),ka.anchorGroup.hide(),ja&&ja.hide(),r._conatinerHidden=!0)},W=function(){Y.area.attr({"clip-rect":null});
Y.area.node&&Y.area.node.removeAttribute("clip-path");!1!==r.visible&&(ka.lineShadowGroup.show(),ka.anchorShadowGroup.show(),ka.anchorGroup.show(),ja.show(),xa.show())},Ma=k.shadow,ea,ga=r.visible,la,na={},na=F.datalabelsGroup,F=B.clip["clip-canvas"].slice(0),B=B.clip["clip-canvas-init"].slice(0),g=!g.drawfullareaborder,Ca=!0,Ha=r.components.pool||[],pa=za.dummyObj,za=za.animObj,La=r.graphics.connector,Ja=0,Fa;k.imagesLoaded=0;ka||(ka=r.graphics.container={lineShadowGroup:J.group("connector-shadow",
Y.areaConnector),anchorShadowGroup:J.group("anchor-shadow",Y.areaConnector),areaGroup:J.group("area",Y.area),anchorGroup:J.group("anchors",Y.areaConnector)},ga||(ka.lineShadowGroup.hide(),ka.anchorShadowGroup.hide(),ka.areaGroup.hide(),ka.anchorGroup.hide()));xa||(xa=r.graphics.shadowContainer=J.group("shadows",Y.shadows),ga||xa.hide());d||(d=r.components.data);ja||(ja=r.graphics.dataLabelContainer=r.graphics.dataLabelContainer||J.group("datalabel",na),ga||ja.hide());ga&&(ka.lineShadowGroup.show(),
ka.anchorShadowGroup.show(),ka.areaGroup.show(),ka.anchorGroup.show(),ja.show(),xa.show());C=l.getCategoryLen();da=r.graphics.splineElement;for(p=0;p<C;p++)if(f=d[p])h=f&&f.config,aa=h.setValue,G=h.setLink,na=h.anchorProps,la=na.shadow,t=h.setLevelTooltext,h&&(ma=0<=aa?h.previousPositiveY:h.previousNegativeY),D=f.graphics.element,N=f.graphics.hotElement,Fa=f.graphics.image,null===aa?(D&&D.hide(),N&&N.hide(),Fa&&Fa.hide(),Q||(z=null)):(K.getAxisPosition(ma||ca),P=K.getAxisPosition(aa+(ma||0)),N=l.getAxisPosition(p),
!1===ga&&fa&&(P=K.getPixel(K.getAxisBase())),ea=h.hoverEffects,c=X?h.toolText+(t?"":h.toolTipValue):"",h.finalTooltext=c,t=h.eventArgs=h.eventArgs||{},t.index=p,t.link=G,t.value=aa,t.displayValue=h.displayValue,t.categoryLabel=l.getLabel(p).label,t.toolText=c,t.id=r.userID,t.datasetIndex=e||0,t.datasetName=q.seriesname,t.visible=ga,ea.enabled&&(h.setRolloverAttr={polypath:[ea.anchorSides||2,N,P,ea.anchorRadius,ea.startAngle,ea.dip],fill:H({color:ea.anchorColor,alpha:ea.anchorBgAlpha}),stroke:H({color:ea.anchorBorderColor,
alpha:ea.anchorBorderAlpha}),"stroke-width":ea.anchorBorderThickness},h.setRolloutAttr={polypath:[na.symbol[1]||2,N,P,na.radius,na.startAngle,0],fill:H({color:na.bgColor,alpha:na.bgAlpha}),stroke:H({color:na.borderColor,alpha:na.borderAlpha}),"stroke-width":na.borderThickness},sa=h.setRolloverAttr,Ia=h.setRolloutAttr),G=[na.symbol[1]||2,N,P,na.radius,na.startAngle,0],na.imageUrl?(h.anchorImageLoaded=!1,Ja++,h=new v,h.onload=r._onAnchorImageLoad(r,p,t,N,P),h.onerror=r._onErrorSetter(r,p),h.src=na.imageUrl):
(Fa&&Fa.hide(),D||(Ha.element&&Ha.element.length?D=f.graphics.element=Ha.element.shift():(D=f.graphics.element=J.polypath(ka.anchorGroup),D.attr({polypath:G}))),Fa&&Fa.hide(),D.show().animateWith(pa,za,{polypath:G},fa,Aa,Ca&&void 0).attr({fill:H({color:na.bgColor,alpha:na.bgAlpha}),stroke:H({color:na.borderColor,alpha:na.borderAlpha}),"stroke-width":na.borderThickness,visibility:na.radius?ga:u}).shadow(la,ka.anchorShadowGroup).data("anchorRadius",na.radius).data("anchorHoverRadius",ea.anchorRadius).data("eventArgs",
t),ea.enabled&&D&&D.data("anchorRadius",na.radius).data("anchorHoverRadius",ea.anchorRadius).data("hoverEnabled",ea.enabled).data(a,sa).data(O,Ia),h.trackerConfig||(h.trackerConfig={}),h.trackerConfig.trackerRadius=U(na.radius,ea&&ea.anchorRadius||0,A)+(na.borderThickness||0)/2),f._xPos=N,f._yPos=P,w.push({x:N,y:P,lastXPos:M,lastYPos:z}),M=N,z=P);k.noOfImages=k.totalImages=Ja;0===Ja&&n.labelDrawID.push(E.addJob(function(){r.drawLabel()},b.priorityList.label));na=this.getSplinePath.call(m,w,K,C,wa).closedPath;
na=na.join();da||(da=r.graphics.splineElement=J.path(ka.areaGroup),da.attr({path:na}),fa&&ga&&(ka.anchorGroup.hide(),ka.anchorShadowGroup.hide(),ja.hide(),xa.hide(),Y.area.attr({"clip-rect":B}).animateWith(pa,za,{"clip-rect":F},fa,Aa,W)));""===na?da.hide():da.show().animateWith(pa,za,{path:na},fa,Aa,Ca&&ya);Ca=!1;da.attr({stroke:H({color:qa,alpha:va}),"stroke-width":g?0:ra,fill:H(oa),"stroke-linecap":"round","stroke-linejoin":2<ra?"round":"miter","stroke-dasharray":ha}).shadow(Ma,xa);g&&(La||(La=
r.graphics.connector=J.path(ka.areaGroup)),La.animateWith(pa,za,{path:R},fa,Aa),La.attr({stroke:H({color:qa,alpha:va}),"stroke-width":ra,"stroke-linecap":"round","stroke-linejoin":2<ra?"round":"miter","stroke-dasharray":ha}));for(p=0;p<ia;p++)r._removeDataVisuals(ua.shift())}},"area"])}]);Q.register("module",["private","modules.renderer.js-dataset-msspline",function(){var b=this.hcLib,v=this.window.Image,J=b.TOUCH_THRESHOLD_PIXELS,C=b.CLICK_THRESHOLD_PIXELS,H=b.pluck,A=b.toRaphaelColor,u=b.hasTouch?
J:C,J=b.preDefStr,a=J.hiddenStr,O=J.setRolloverAttrStr,q=J.setRolloutAttrStr,J=Math,M=J.sqrt,U=J.max,N=J.abs,E=b.schedular;Q.register("component",["dataset","MSSpline",{type:"spline",configure:function(){var a=Q.get("component",["dataset","line"]),b=Q.get("component",["dataset","MSSplineArea"]);a.prototype.configure.call(this);b.prototype._calculateMaxMin.call(this)},getSplinePath:function(a,b,m){var n=function(a,c,b,d){c=(d-c)/M((b-a)*(b-a)+(d-c)*(d-c));c=N(.5*c);return a*c+b*(1-c)},q=function(a,
c,b,d){var e=a.length,f=a[e-1],g=f.length,h=f[0],f=f[g-2];3>g||("R"!==h&&"C"!==h||3!==g||(a[e-1][0]="L"),c&&a.push(["L",f,d,b,d,"Z"]))},g=this.chart,l=/area/ig.test(g.defaultDatasetType);b=b.getAxisPosition(b.getAxisBase());var g=g.config.minimizetendency,B=[null],e=[],u=[],p,v,K,t,E,A,C,z,H,w,F,J,h,d,f,c,D;c=0;for(D=a.length;c<D;c+=1)if(w=a[c],t=a[c-1]||{},E=a[c+1]||{},A=w.x,K=w.y,p=t.x,t=t.y,C=E.x,E=E.y,z=w.lastYPos,H=w.lastXPos,J=e.length,w=u.length,g)if(null!==z)if(v=d,c===a.length-1){z=B[c-h-
1];w=C=(A+p)/2;J=(w-p)*z+t;if(t>K&&J<K||t<K&&J>K)J=K,w=(J-t)/z+p;d.push(w,J,C,(K+t)/2,A,K);e.push(d);u.push(d);l&&q(e,!0,f,b);l&&q(u,!1)}else{z=B[c-h-1];if(t>K&&E>=K||t<K&&E<=K)if(F=0,C=n(p,t,A,K),E=K,1!==c-h){w=C;J=(w-p)*z+t;if(t>K&&J<K||t<K&&J>K)J=K,w=(J-t)/z+p;d.push(w,J,C,E,A,K)}else d.push((A+p)/2,(K+t)/2,C,E,A,K);else if(t===K)F=0,d.push(p,t,A,K,A,K);else if(t>K&&K>E||t<K&&K<E){F=(E-t)/(C-p);C=n(p,t,A,K);E=(C-A)*F+K;if(t>K&&E>t||t<K&&E<t)E=t,C=(E-K)/F+A;if(1!==c-h){w=C;J=(w-p)*z+t;if(t>K&&J<
K||t<K&&J>K)J=K,w=(J-t)/z+p;d.push(w,J,C,E,A,K)}else d.push((A+p)/2,(K+t)/2,C,E,A,K)}B.push(F)}else null===z&&0!==c?(v||(v=[]),"C"===v[0]&&(e.push(d),u.push(d),l&&q(e,!0,f,b),l&&q(u,!1)),e.push(["M",A,K]),u.push(["M",A,K]),f=A,d=["C"],h=c,B=[null]):(e.push(["M",A,K]),u.push(["M",A,K]),f=A,d=["C"],h=c);else null!==z?2<=J?("M"===e[J-1][0]&&e.push(["R"]),"M"===u[w-1][0]&&u.push(["R"]),J=e.length,w=u.length,v=e[J-1],p=v.length,e[J-1].push(A),e[J-1].push(K),u[w-1].push(A),u[w-1].push(K),c===m-1&&"R"===
v[0]&&(q(e,!0,f,b),q(u,!1))):(e.push(["M",H,z]),e.push(["R",A,K]),u.push(["M",H,z]),u.push(["R",A,K]),f=H):null===z&&2<=J&&(v=e[J-1],"R"===v[0]&&(q(e,!0,f,b),q(u,!1)),e.push(["M",A,K]),u.push(["M",A,K]),f=A);v=e[e.length-1];l&&v&&(p=v.length,"Z"===v[p-1]||"R"!==v[0]&&"C"!==v[0]||(q(e,!0,f,b),q(u,!1)));l||(e=g?e:u,2<=e.length&&q(e,!1));return{closedPath:e,openPath:u}},draw:function(){var r=this,k=r.JSONData,m=[],n=[],C=r.chart,n=C.getJobList(),g=C.components,l=g.canvas.config,B=r.config,e=C.config,
J=r.index||r.positionIndex,p=e.categories,N=g.paper,K=g.xAxis[0],t=r.yAxis,M,P,S=C.graphics,z=S.datalabelsGroup,R=b.parseUnsafeString,w=b.getValidValue,F,X,h,d,f,c,D=r.components.data,G,g=B.linethickness,aa=r.graphics.container,Q=e.connectnulldata,e=e.showtooltip,Ia=S.datasetGroup,sa,S=B.shadow,wa=r.graphics.dataLabelContainer,ca={},ma,qa,ca=C.get("config","animationObj"),C=ca.duration,va=ca.animType,ha=r.components.removeDataArr||[],ra=ha.length,ka=r.components.pool||[],na=function(){!1!==r.visible||
!1!==r._conatinerHidden&&void 0!==r._conatinerHidden||(aa.lineGroup.hide(),aa.lineShadowGroup.hide(),aa.anchorShadowGroup.hide(),aa.anchorGroup.hide(),wa&&wa.hide())},da=function(){Ia.lineConnector.attr({"clip-rect":null});Ia.lineConnector.node&&Ia.lineConnector.node.removeAttribute("clip-path");!1!==r.visible&&(aa.lineShadowGroup.show(),aa.anchorShadowGroup.show(),aa.anchorGroup.show(),wa&&wa.show())},oa=r.config.animFlag=r.config.animFlag||(r.config.animFlag=!0),Y=l.clip["clip-canvas"].slice(0),
l=l.clip["clip-canvas-init"].slice(0),za=null,fa,Aa=!1,ua=B.lineDashStyle,ia={color:B.linecolor,alpha:B.alpha},xa,ja,ya,W=ca.dummyObj,Ma=ca.animObj,ea=0,ca=r.graphics.SplineElement,ga=r.visible;B.imagesLoaded=0;Ia.lineConnector=Ia.lineConnector||N.group("line-connector",Ia);aa||(aa=r.graphics.container={lineShadowGroup:N.group("connector-shadow",Ia.lineConnector),anchorShadowGroup:N.group("anchor-shadow",Ia.lineConnector),lineGroup:N.group("spline",Ia.lineConnector),anchorGroup:N.group("anchors",
Ia.lineConnector)},ga||(aa.lineShadowGroup.hide(),aa.anchorShadowGroup.hide(),aa.lineGroup.hide(),aa.anchorGroup.hide()));D||(D=r.components.data=[]);wa||(wa=r.graphics.dataLabelContainer=r.graphics.dataLabelContainer||N.group("datalabel",z),ga||wa.hide());ga&&(aa.lineShadowGroup.show(),aa.anchorShadowGroup.show(),aa.lineGroup.show(),aa.anchorGroup.show(),wa.show());ja=K.getCategoryLen();for(xa=0;xa<ja;xa++)if(z=D[xa])qa=z.config,d=qa.setValue,h=qa.setLink,f=qa.setLevelTooltext,ca=qa.anchorProps,
ma=ca.symbol,G=ca.shadow,c=qa.displayValue,z||(z=D[xa]={graphics:{}}),X=z.graphics.element,ya=z.graphics.image,P=z.graphics.label,M=z.graphics.hotElement,null===d?(X&&X.hide(),P&&P.hide(),M&&M.hide(),ya&&ya.hide(),Q||(za=null)):(M=K.getAxisPosition(xa),P=t.getAxisPosition(d),sa=qa.hoverEffects,ca.isAnchorHoverRadius=sa.anchorRadius,!1===ga&&C&&(P=t.getPixel(t.getAxisBase())),w(R(H(p[xa].tooltext,p[xa].label))),F=e?qa.toolText+(f?"":qa.toolTipValue):"",qa.finalTooltext=F,f=qa.eventArgs||(qa.eventArgs=
{}),f.index=xa,f.link=h,f.value=d,f.displayValue=c,f.categoryLabel=K.getLabel(xa).label,f.toolText=F,f.id=B.userID,f.datasetIndex=J||0,f.datasetName=k.seriesname,f.visible=ga,ca.imageUrl?(qa.anchorImageLoaded=!1,X=new v,X.onload=r._onAnchorImageLoad(r,xa,f,M,P),X.onerror=r._onErrorSetter(r,xa),X.src=ca.imageUrl,ea++):(ya&&ya.hide(),h=[ma[1]||2,M,P,ca.radius,ca.startAngle,0],X||(ka.element&&ka.element.length?X=z.graphics.element=ka.element.shift():(X=z.graphics.element=N.polypath(aa.anchorGroup),X.attr({polypath:h}))),
X.show().animateWith(W,Ma,{polypath:h},C,va,oa&&na),X.attr({fill:A({color:ca.bgColor,alpha:ca.bgAlpha}),stroke:A({color:ca.borderColor,alpha:ca.borderAlpha}),"stroke-width":ca.borderThickness,visibility:ca.radius?ga:a}).shadow(G,aa.anchorShadowGroup).data("eventArgs",f),oa=!1,sa.enabled&&(h={polypath:[sa.anchorSides||2,M,P,sa.anchorRadius,sa.startAngle,sa.dip],fill:A({color:sa.anchorColor,alpha:sa.anchorBgAlpha}),stroke:A({color:sa.anchorBorderColor,alpha:sa.anchorBorderAlpha}),"stroke-width":sa.anchorBorderThickness},
G={polypath:[ca.sides,M,P,ca.radius,ca.startAngle,0],fill:A({color:ca.bgColor,alpha:ca.bgAlpha}),stroke:A({color:ca.borderColor,alpha:ca.borderAlpha}),"stroke-width":ca.borderThickness},X&&X.data("anchorRadius",ca.radius).data("anchorHoverRadius",sa.anchorRadius).data("hoverEnabled",sa.enabled).data(O,h).data(q,G)),qa.trackerConfig||(qa.trackerConfig={}),qa.trackerConfig.trackerRadius=U(ca.radius,sa&&sa.anchorRadius||0,u)+(ca.borderThickness||0)/2),m.push({x:M,y:P,lastXPos:fa,lastYPos:za}),fa=M,za=
P,z._xPos=M,z._yPos=P,!ca.imageUrl&&this.drawLabel(xa));B.noOfImages=B.totalImages=ea;0===ea&&n.labelDrawID.push(E.addJob(function(){r.drawLabel()},b.priorityList.label));n=r.getSplinePath(m,t).closedPath;ca=r.graphics.SplineElement;2<=n.length?(ca||(ca=r.graphics.SplineElement=N.path(n,aa.lineGroup),Aa=!0),ca.show().animateWith(W,Ma,{path:n},C,va,oa&&na),ca.attr({"stroke-dasharray":ua,"stroke-width":g,stroke:A(ia),"stroke-linecap":"round"}).shadow(S,aa.lineShadowGroup),oa=!1):ca&&ca.hide();C&&ga&&
Aa&&(aa.anchorGroup.hide(),aa.lineShadowGroup.hide(),aa.anchorShadowGroup.hide(),wa.hide(),Ia.lineConnector.attr({"clip-rect":l}).animateWith(W,Ma,{"clip-rect":Y},C,va,da));r.drawn=!0;for(xa=0;xa<ra;xa++)r._removeDataVisuals(ha.shift())}},"Line"])}]);Q.register("module",["private","modules.renderer.js-dataset-bubble",function(){var b=this.hcLib,v=b.BLANKSTRING,J=b.TOUCH_THRESHOLD_PIXELS,C=b.CLICK_THRESHOLD_PIXELS,H=b.pluck,A=b.pluckNumber,u=b.toRaphaelColor,a=b.graphics.convertColor,O=b.getFirstAlpha,
q=b.hasTouch?J:C,M=b.getValidValue,J=b.preDefStr,U=J.visibleStr,N=J.setRolloverAttrStr,E=J.setRolloutAttrStr,r=Math,k=r.round,m=r.min,n=r.max,L=r.sqrt,g=b.getFirstColor,l=b.graphics.getLightColor,B=b.schedular;Q.register("component",["dataset","Bubble",{type:"bubble",configure:function(){var e=this.chart,k=e.config,p=e.components,e=e.jsonData.chart,r=this.JSONData,q=this.config,t=r.data||[],B,v=k.zMax||-Infinity,E,z,C,w;B=p.colorManager;E=this.index;var p=p.numberFormatter,F,L=b.parseUnsafeString,
h=H(L(e.tooltipsepchar),", "),d,f,c,D,G,J,N=-Infinity,U=Infinity,Q=-Infinity,wa=Infinity,ca=-Infinity,ma=Infinity,qa,va=b.graphics.getPointColor;q.includeInLegend=A(r.includeinlegend,1);q.seriesname=L(r.seriesname);q.anchorBgColor=H(r.color,r.plotfillcolor,e.plotfillcolor,B.getPlotColor(E));q.showPlotBorder=A(r.showplotborder,e.showplotborder,1);q.anchorBorderThickness=q.showPlotBorder?A(r.plotborderthickness,e.plotborderthickness,1):0;q.anchorBorderColor=g(H(r.plotbordercolor,e.plotbordercolor,"666666"));
q.plotFillAlpha=H(r.plotfillalpha,r.bubblefillalpha,e.plotfillalpha,"100");q.plotBorderAlpha=H(r.plotborderalpha,e.plotborderalpha,"95");q.negativeColor=H(e.negativecolor,"FF0000");q.is3d=0!==A(e.use3dlighting,r.is3d,e.is3d);q.bubbleScale=A(e.bubblescale,1);q.minBubbleRadius=A(e.minbubbleradius);q.clipBubbles=A(e.clipbubbles,1);q.showRegressionLine=A(r.showregressionline,e.showregressionline,0);q.enableAnimation=B=A(e.animation,e.defaultanimation,1);q.animation=B?{duration:1E3*A(e.animationduration,
1)}:!1;q.showTooltip=A(e.showtooltip,1);q.transposeAnimation=A(e.transposeanimation,B);q.transposeAnimDuration=1E3*A(e.transposeanimduration,.2);q.seriesNameInTooltip=A(e.seriesnameintooltip,1);q.rotateValues=A(e.rotatevalues)?270:0;q.showHoverEffect=A(e.plothovereffect,e.showhovereffect,void 0);q.showValues=A(r.showvalues,e.showvalues,0);C=this.components.data=this.components.data||(this.components.data=[]);B=t.length;q.showRegressionLine&&(this.events={hide:this.hideRLine,show:this.showRLine},F=
{sumX:0,sumY:0,sumXY:0,sumXsqure:0,sumYsqure:0,xValues:[],yValues:[],isRegression:!0},q.showYOnX=A(r.showyonx,e.showyonx,1),q.regressionLineColor=g(H(r.regressionlinecolor,e.regressionlinecolor,q.anchorBgColor)),q.regressionLineThickness=A(r.regressionlinethickness,e.regressionlinethickness,1),q.regressionLineAlpha=O(A(r.regressionlinealpha,e.regressionlinealpha,100)),q.regLineColor=a(q.regressionLineColor,q.regressionLineAlpha));q.fillColor=q.is3d?u(va(q.anchorBgColor,q.plotFillAlpha)):u({color:q.anchorBgColor,
alpha:q.plotFillAlpha});q.strokeColor=u({color:q.anchorBorderColor,alpha:q.plotFillAlpha});for(E=0;E<B;E++)if(f=t[E],z=C[E]=C[E]||(C[E]={}),!z.graphics&&(z.graphics={}),c=z.config={},c.x=p.getCleanValue(f.x),c.y=p.getCleanValue(f.y),c.z=p.getCleanValue(f.z,!0),c.showValue=A(f.showvalue,q.showValues),c.anchorProps={},J=c.label=c.x,c.setLink=M(f.link),q.max=ca=n(ca,c.z||0),q.min=ma=m(ma,c.z||0),c.is3d=0!==A(f.is3d,q.is3d),N=n(N,c.x),U=m(U,c.x),Q=n(Q,c.y),wa=m(wa,c.y),z=c.color=g(H(f.color,0>f.z?q.negativeColor:
q.anchorBgColor)),w=c.alpha=H(f.alpha,q.plotFillAlpha),c.colorObj=qa=c.is3d?va(z,w):{color:z,alpha:w},c.setDisplayValue=D=L(H(f.displayvalue,f.name,f.label)),d=c.formatedVal=null===c.y?c.y:p.dataLabels(c.y),c.displayValue=H(D,c.formatedVal),c.setTooltext=b.getValidValue(L(H(f.tooltext,r.plottooltext,e.plottooltext))),v<c.z&&(v=c.z),q.showTooltip?null===d?D=!1:void 0!==c.setTooltext?(D=[4,5,6,7,8,9,10,11,12,13,118],d={yDataValue:d,xDataValue:p.xAxis(J),yaxisName:L(e.yaxisname),xaxisName:L(e.xaxisname),
zDataValue:p.dataLabels(c.z)},D=b.parseTooltext(c.setTooltext,D,d,f,e,r)):(q.seriesNameInTooltip&&(G=b.getFirstValue(r&&r.seriesname)),D=G?G+h:"",D+=J?p.xAxis(J)+h:"",D+=d,D+=f.z?h+p.dataLabels(f.z):""):D=!1,c.toolText=D,this.pointValueWatcher(c.x,c.y,q.showRegressionLine&&F),d=c.hoverEffects={},0!==q.showHoverEffect){J=d.enabled=void 0!==H(f.hoveralpha,r.hoveralpha,e.bubblehoveralpha,f.hovercolor,r.hovercolor,r.bubblehovercolor,e.bubblehovercolor,f.borderhovercolor,r.borderhovercolor,e.plotborderhovercolor,
f.borderhoveralpha,r.borderhoveralpha,e.plotborderhoveralpha,f.hoverscale,r.bubblehoverscale,e.bubblehoverscale,f.borderhovercolor,r.borderhovercolor,e.plotborderhovercolor,f.borderhoverthickness,r.borderhoverthickness,e.plotborderhoverthickness,f.negativehovercolor,r.negativeColor,e.negativecolor,f.is3donhover,e.plotfillhovercolor,r.is3donhover,e.is3donhover,void 0);d.negativeColor=H(f.negativehovercolor,r.negativehovercolor,e.negativehovercolor,q.negativeColor);d.is3d=A(f.is3donhover,r.is3donhover,
e.is3donhover,c.is3d);d.color=H(f.hovercolor,r.hovercolor,r.bubblehovercolor,e.plotfillhovercolor,e.bubblehovercolor,c.is3d?qa.FCcolor.color:z);d.color=d.negativeColor&&0>f.z?d.negativeColor:d.color;d.scale=H(f.hoverscale,r.hoverscale,r.bubblehoverscale,e.bubblehoverscale,1);d.color=g(d.color);d.alpha=H(f.hoveralpha,r.hoveralpha,e.plotfillhoveralpha,e.bubblehoveralpha,w);d.borderColor=H(f.borderhovercolor,r.borderhovercolor,e.plotborderhovercolor,q.anchorBorderColor);d.borderAlpha=H(f.borderhoveralpha,
r.borderhoveralpha,e.plotborderhoveralpha,d.alpha,q.plotBorderAlpha);d.borderThickness=A(f.borderhoverthickness,r.borderhoverthickness,e.plotborderhoverthickness,q.anchorBorderThickness);d.color=d.is3d?va(d.color,d.alpha):{FCcolor:{color:d.color,alpha:d.alpha}};f=J&&q.showHoverEffect?0:q.showHoverEffect;if(1===f){c=(f="string"==typeof d.color)?d.color.split(/\s{0,},\s{0,}/):d.color.FCcolor.color.split(/\s{0,},\s{0,}/);w=c.length;for(z=0;z<w;z++)c[z]=l(c[z],70);f?d.color=c.join(","):d.color.FCcolor.color=
c.join(",")}!1===J&&(d.enabled=!!q.showHoverEffect)}else d.enabled=!1;q.xMax=N;q.xMin=U;q.yMin=wa;q.yMax=Q;k.zMax=v;q.regressionData=q.showRegressionLine&&this.getRegressionLineSeries(F,q.showYOnX,B);this.visible=1===A(r.visible,!Number(r.initiallyhidden),1);this._addLegend()},init:function(a){this.yAxis=this.chart.components.yAxis[0];this.components={};this.graphics={};this.JSONData=a;this.configure()},_getHoveredPlot:function(a,b){var g=this.dataTree.getNeighbour({x:a,y:b},!0,"circle");if(g)return{pointIndex:g.index||
g.i,hovered:!0,pointObj:g.data}},_addLegend:function(){var a=this.config;this.legendItemId=this.chart.components.legend.addItems(this,this.legendInteractivity,{enabled:a.includeInLegend,fillColor:a.fillColor,strokeColor:a.strokeColor,rawFillColor:a.anchorBgColor,rawStrokeColor:a.anchorBorderColor,anchorSide:1,type:this.type,label:a.seriesname})},draw:function(){var a=this,g=a.JSONData,l=r.sqrt,v=a.chart,K=v.getJobList(),t=v.components,C=t.canvas.config,L=t.paper,H=v.config,z=v.graphics,H=m(H.canvasHeight,
H.canvasWidth)/8,J=z.datasetGroup,w,F,M=a.yAxis,t=t.xAxis[0],h=a.config;w=h._regressionAttr;var d,f,c,D;d=C.clip["clip-canvas"].slice(0);var G=C.clip["clip-canvas-init"].slice(0),O,C=a.components.data,U=a.components.removeDataArr||[],Q=U.length,sa=a.graphics.container,wa=a.graphics.dataLabelContainer,ca=function(){!1===a.visible&&(sa.bubbleGroup.hide(),sa.regLineGroup.hide(),wa.hide(),a._containerHidden=!0)};O=function(){a.visible&&(wa.attr({"clip-rect":null}),sa.regLineGroup.attr({"clip-rect":null}))};
var ma=h.minBubbleRadius,qa=h.bubbleScale,va=v.getDataLimits().zMax||0,va=l(va);D=h.clipBubbles;var ha=v.get("config","animationObj"),v=ha.duration;f=a.graphics.regressionLineElement;c=h.showRegressionLine;var ra=a.visible,ka=h.showTooltip,na=z.datalabelsGroup,da,oa,Y;da={};var za,fa,z=!0,Aa=ha.dummyObj,ua=ha.animObj,ha=ha.animType,ia=a.components.pool||{},xa=h.anchorBorderThickness;da=a.drawn;var ja=[];sa||(sa=a.graphics.container={bubbleGroup:L.group("bubble",J),regLineGroup:L.group("regLine",J)},
ra||(sa.bubbleGroup.hide(),sa.regLineGroup.hide()));wa||(wa=a.graphics.dataLabelContainer=L.group("datalabel",na),wa.attr({"clip-rect":G}).animateWith(Aa,ua,{"clip-rect":d},v,ha,O),ra||wa.hide());D?da?sa.bubbleGroup.animateWith(Aa,ua,{"clip-rect":d},v,ha):sa.bubbleGroup.attr({"clip-rect":d}):(sa.bubbleGroup.attr({"clip-rect":null}),sa.bubbleGroup.node&&sa.bubbleGroup.node.removeAttribute&&sa.bubbleGroup.node.removeAttribute("clip-path"));ra&&(sa.bubbleGroup.show(),sa.regLineGroup.show(),wa.show());
c?(da=h.regressionData[0],J=h.regressionData[1],w||(h._regressionAttr=w={}),w.stroke=u({color:h.regressionLineColor,alpha:h.regressionLineAlpha}),w["stroke-width"]=h.regressionLineThickness,w["stroke-linecap"]="round",w["stroke-linejoin"]=2<h.regressionLineThickness?"round":"miter",w.path="M "+t.getAxisPosition(da.x)+","+M.getAxisPosition(da.y)+" L "+t.getAxisPosition(J.x)+","+M.getAxisPosition(J.y),f?f.animateWith(Aa,ua,w,v,ha):(f=a.graphics.regressionLineElement=L.path(w,sa.regLineGroup),sa.regLineGroup.attr({"clip-rect":G}),
sa.regLineGroup.animateWith(Aa,ua,{"clip-rect":d},v,ha,O))):f&&f.hide();J=0;for(G=C.length;J<G;J+=1)d=C[J],O=d.config,D=A(O.x,J),na=O.y,f=O.z,w=d.graphics.element,oa=O.setLink,Y=O.displayValue,c=O.toolText,O.finalTooltext=O.toolText,da=O.hoverEffects,w=d.graphics.element,F=d.graphics.hotElement,fa=d.graphics.label,null!==na?(F=O.eventArgs||(O.eventArgs={}),F.index=J,F.link=oa,F.value=na,F.y=na,F.x=D,F.z=f,F.displayValue=Y,F.toolText=c,F.id=a.userID,F.datasetIndex=a.index||0,F.datasetName=g.seriesname,
F.visible=ra,c=M.getAxisPosition(na),D=t.getAxisPosition(D),f=l(f),f=k(f*H/va)*qa||0,ja.push({x:D,y:c,r:f}),ma&&(f=n(f,ma)),na=O.setRolloutAttr={fill:u(O.colorObj),"stroke-width":h.anchorBorderThickness,stroke:u({color:h.anchorBorderColor,alpha:h.plotBorderAlpha}),r:f},!1!==da.enabled&&(za=O.setRolloverAttr={fill:u(da.color),"stroke-width":da.borderThickness,stroke:u({color:da.borderColor,alpha:da.borderAlpha}),r:f*da.scale}),a.visible||(f=0),w||(ia.element&&ia.element.length?w=d.graphics.element=
ia.element.shift():(w=d.graphics.element=L.circle(sa.bubbleGroup),w.attr({cx:D,cy:c,r:v?0:f}))),w.show().animateWith(Aa,ua,{cx:D,cy:c,r:f||0},v,ha,z&&ca).attr({fill:u(O.colorObj),ishot:!ka,"stroke-width":h.anchorBorderThickness,stroke:na.stroke,visibility:ra}),z=!1,O.trackerConfig||(O.trackerConfig={}),O.trackerConfig.trackerRadius=n(f+(xa||0),q),w.data("hoverEnabled",da.enabled).data(N,za).data(E,na),d._xPos=D,d._yPos=c,w&&w.data("eventArgs",O&&O.eventArgs)):(w&&w.hide(),F&&F.hide(),fa&&fa.hide());
this.dataTree=(new b.KdTree).buildKdTree(ja);a.drawn?a.drawLabel():K.labelDrawID.push(B.addJob(function(){a.drawLabel()},b.priorityList.label));a.drawn=!0;for(J=0;J<Q;J++)a._removeDataVisuals(U.shift())},manageSpace:function(){var a=this.config||(this.config={}),b=this.chart,g=b.config,l=b.config.rotatevalues,n=b.components.xAxis[0],t=n.config.isReverse,r=b.config.dataLabelStyle,q=(this.components||{}).data||[],B=q.length,u=a.leftMostData||q[0],v=a.rightMostData||q[q.length-1],w=m(g.canvasHeight,
g.canvasWidth)/8,F,E=1,h=1,d,f;F=g.zMax;var c,D=a.bubbleScale,G,A,C,a=n.config.axisRange,g=a.max,a=n.getPixel(a.min),g=n.getPixel(g),H=n.getValue(0),J={};f={};var J=b.linkedItems.smartLabel,N={paddingLeft:0,paddingRight:0};f=0;F=L(F);w/=F;for(G=0;G<B;G++)d=q[G].config,F=u.config,f=v.config,c=L(d.z),c=k(c*w)*D||0,c=n.getValue(c)-H,d=d.x-c/2,1===E&&(c=L(F.z),c=k(c*w)*D||0,c=n.getValue(c)-H,A=F.x-c/2),1===h&&(c=L(f.z),c=k(c*w)*D||0,c=n.getValue(c)-H,C=f.x-c/2),h=E=0,A>d&&(u=q[G],E=1),C<d&&(v=q[G],h=
1);t&&(u=v=u,a=g=a);J.useEllipsesOnOverflow(b.config.useEllipsesWhenOverflow);J.setStyle(r);u&&u.config.showValue&&(b=u.config,t=b.displayValue,f=J.getOriSize(t),f=l?f.height:f.width,b=n.getPixel(b.x)-.5*f,a>b&&(N.paddingLeft=a-b));v&&v.config.showValue&&(b=v.config,t=b.displayValue,J=J.getOriSize(t),f=l?J.height:J.width,l=n.getPixel(b.x)+.5*f,g<l&&(N.paddingRight=l-g));return N},show:function(){var a=this.chart,b=this.graphics.container,g=this.graphics.dataLabelContainer;this.visible=!0;b.bubbleGroup.show();
b.regLineGroup&&b.regLineGroup.show();g.show();a._setAxisLimits();a._drawAxis();a._drawDataset()},hide:function(){var a=this.chart;this.visible=!1;a._setAxisLimits();a._drawAxis();a._drawDataset()},getDataLimits:function(){var a=this.config,b=a.yMax,g=a.yMin,l=this.chart.config.transposeAxis,k=a.xMin,m=a.xMax,n=a.max,a=a.min;!1===this.visible&&l&&(b=-Infinity,k=g=Infinity,m=-Infinity);return{max:b,min:g,xMin:k,xMax:m,zMax:n,zMin:a}},drawLabel:function(){var a=this.chart,b=a.config.dataLabelStyle,
g=this.components.data,l=a.components.paper,k;k="";var m=this.config,n=a.get("config","animationObj"),a=n.duration,r=n.animType,q=n.animObj,n=n.dummyObj,m=m.rotateValues,B,u=this.graphics.dataLabelContainer,w,F,E,h,d,f,c,D,G=this.components.pool||{};f=0;for(c=g.length;f<c;f++)if(k=g[f])w=k.config,B=k.graphics,E=k._yPos,F=k._xPos,k=w.displayValue,d=B.label,D=w.showValue,void 0!==k&&null!==k&&k!==v&&null!==w.z&&D?(k={text:k,fill:b.color,"text-bound":[b.backgroundColor,b.borderColor,b.borderThickness,
b.borderPadding,b.borderRadius,b.borderDash],"line-height":b.lineHeight,visibility:U},d||(G.label&&G.label.length?d=B.label=G.label.shift():(k.x=F,k.y=E,k.transform=l.getSuggestiveRotation(m,F,E),d=B.label=l.text(k,u),h=!0)),h||(d.show().animateWith(n,q,{x:F,y:E,transform:l.getSuggestiveRotation(m,F,E)},a,r),d.attr(k))):d&&d.hide()},_hoverFunc:function(a,b,g){a=a.graphics.element;b="DataPlotRollOut"===b?a.data(E):a.data(N);g&&a.attr(b)}},"scatter"])}]);Q.register("module",["private","modules.renderer.js-dataset-pie2d",
function(){var b=this.hcLib,v=b.parseConfiguration,J="VML"===b.Raphael.type,C=b.getPosition,H=b.COMMASPACE,A=b.ZEROSTRING,u=b.hasSVG,a=b.pluck,O=b.parsexAxisStyles,q=b.pluckNumber,M=b.toRaphaelColor,U=b.graphics.convertColor,N=b.parseUnsafeString,E=b.graphics.getDarkColor,r=b.ONESTRING,k=b.getFirstAlpha,m=b.HUNDREDSTRING,n=b.getDashStyle,L=b.getValidValue,g=b.parseTooltext,l=b.preDefStr.visibleStr,B=8===this.window.document.documentMode?l:"",l=Math,e=l.sin,V=l.cos,p=l.max,T=l.abs,K=l.PI,t=2*K,Z=b.getFirstColor,
P=b.graphics.getLightColor,S=b.schedular;Q.register("component",["dataset","Pie2D",{type:"pie2d",configure:function(){var e=this.chart,g=e.config,l=g.dataLabelStyle,k=this.config,m=this.JSONData,h=e.jsonData.chart,d=b.parseUnsafeString,f=e.is3D,c,p;this.__setDefaultConfig();v({},this.config,e&&e.config);p=k.enableAnimation=q(h.animation,h.defaultanimation,1);k.animation=p?{duration:1E3*q(h.animationduration,h.moveduration,1)}:!1;k.transposeAnim=p||q(k.transposeanimation,1)?{duration:1E3*q(h.transposeanimduration,
.2)}:!1;k.showPlotBorder=q(h.showplotborder,1);k.showHoverEffect=q(h.plothovereffect,h.showhovereffect,void 0);k.showTooltip=q(h.showtooltip,1);k.toolText=L(d(a(m.plottooltext,h.plottooltext)));p=k.enableMultiSlicing=q(h.enablemultislicing,1);c=k.use3DLighting=q(h.use3dlighting,1);k.radius3D=c?q(h.radius3d,90):100;k.showZeroPies=q(h.showzeropies,1);k.showPercentInToolTip=q(h.showpercentintooltip,1);k.showLabels=q(h.showlabels,1);k.showValues=q(m.showvalues,h.showvalues,1);k.showPercentValues=q(h.showpercentvalues,
h.showpercentagevalues,0);c=k.toolTipSepChar=a(h.tooltipsepchar,h.hovercapsepchar,H);k.labelSepChar=a(h.labelsepchar,c);k.pieBorderColor=a(h.plotbordercolor,h.piebordercolor);k.pieBorderAlpha=q(h.plotborderalpha,h.pieborderalpha);k.pieBorderThickness=k.showPlotBorder?q(h.plotborderthickness,h.pieborderthickness,g.plotborderthickness,1):0;k.plotDashLen=q(h.plotborderdashlen,5);k.plotDashGap=q(h.plotborderdashgap,4);k.showValueInLegend=q(h.showvalueinlegend,0);k.showLabelInLegend=q(h.showlabelinlegend,
1);k.valueBeforeLabelInLegend=q(h.valuebeforelabelinlegend,0);k.showValueAsPercentInLegend=q(h.showvalueaspercentinlegend,1);k.legendSepChar=a(h.legendsepchar,", ");k.showvalues=q(h.showvalues,1);k.chartPosition=C(e.linkedItems.container,void 0,e);k.timerThreshold=30;k.centerLabelConfig={label:d(a(h.defaultcenterlabel,"")),font:a(h.centerlabelfont,l.fontFamily),fontSize:q(h.centerlabelfontsize,parseInt(l.fontSize,10)),color:Z(a(h.centerlabelcolor,h.valuefontcolor,g.style.inCanvasStyle.color,"555555")),
alpha:q(h.centerlabelalpha,100),bold:q(h.centerlabelbold,l.fontWeight),italic:q(h.centerlabelitalic,l.style),bgColor:a(h.centerlabelbgcolor,""),bgAlpha:q(h.centerlabelbgalpha,100),borderColor:a(h.centerlabelbordercolor,l.borderColor),borderAlpha:q(h.centerlabelborderalpha,100),borderThickness:q(h.centerlabelborderthickness,l.borderThickness),borderRadius:q(h.centerlabelborderradius,l.borderRadius),textPadding:q(h.centerlabeltextpadding,l.borderPadding),padding:q(h.centerlabelpadding,2),bgOval:q(h.centerlabelbgoval,
0),shadow:q(h.showcenterlabelshadow,0),hoverColor:h.centerlabelhovercolor&&Z(a(h.centerlabelhovercolor)),hoverAlpha:q(h.centerlabelhoveralpha),toolText:d(a(h.centerlabeltooltext,""))};k.showLegend=q(h.showlegend,0);k.reverselegend=!q(h.reverselegend,0);e.is3D=f;k.pieYScale=q(h.pieyscale,40);1>k.pieYScale&&(k.pieYScale=1);100<=k.pieYScale&&(k.pieYScale=80);k.pieYScale/=100;k.pieSliceDepth=q(h.pieslicedepth,15);1>k.pieSliceDepth&&(k.pieSliceDepth=1);k.managedPieSliceDepth=k.pieSliceDepth;k.enableMultiSlicing=
!!p;k.startAngle=q(h.startingangle,0)*-(K/180);k.usePerPointLabelColor=h.colorlabelsfromplot==r;k.reversePlotOrder=q(h.reverseplotorder,0);k.animateClockWise=q(h.animateclockwise,k.reversePlotOrder);k.showShadow=q(h.showshadow,1);k.singletonCase=1===m.data.length;k.valueTotal=0;this._setConfigure();this._addLegend()},_parseDisplayProperties:function(b,e){var l,k,m="",h,d,f,c,p,n,t;l=this.chart;var r=l.components.numberFormatter,B=l.jsonData.chart;c=this.config;d=q(e.y,r.getCleanValue(b.value,!0));
var u=c.valueTotal;f=c.showLabels;var v=N(a(e.seriesName,b.label,b.name,""));n=c.showPercentValues;h=c.showPercentInToolTip;var E=c.labelSepChar,K=c.toolTipSepChar,A=c.showTooltip;l=L(N(a(b.tooltext,c.toolText)));k=e.pValue=r.percentValue(d/u*100);d=e.value=r.dataLabels(d)||"";f=1===q(b.showlabel,f)?v:"";c=1===(t=q(b.showvalue,c.showValues))?1===n?k:d:"";h=h?k:d;p=L(N(b.displayvalue));n=a(p,v+E+(n?k:d),"");c=void 0!==p&&t?p:""!==c&&""!==f?f+E+c:a(f,c);A&&(void 0!==l?m=g(l,[1,2,3,5,6,7,14,24,25],{formattedValue:d,
label:v,yaxisName:N(B.yaxisname),xaxisName:N(B.xaxisname),percentValue:k,sum:r.dataLabels(u),unformattedSum:u},b,B):(m=v,m=""!=m?m+K+h:h));e.displayValue=c;e.displayValueArgs=n;e.toolText=m;e.seriesName=v;e.categoryLabel=f},foldingFn:function(a){a=a.data("plotItem");return{ringpath:[a.center[0],a.center[1],a.radius,a.innerDiameter/2,a.angle,a.angle]}},_isStyled:function(a){if(this.chart.config.usedataplotcolorforlabels||a.labelbordercolor||a.labelbgcolor||a.labelborderthickness||a.labelborderalpha||
a.labelalpha||a.labelfont||a.labelfontsize||a.labelfontcolor||a.labelfontalpha||a.labelalpha||a.labelfontbold||a.labelfontitalic||a.labelborderpadding||a.labelborderradius||a.labelbgalpha||a.labelborderdashed||a.labelborderdashlen||a.labelborderdashgap)return!0},_setConfigure:function(b,e){var g,l,k,h,d,f,c,t,B,u,v,E,K,C,H,J,P,M;d=this.chart;var V=d.jsonData.chart,T=d.components;h=T.legend;var S=d.config,Q=this.config,da=this.JSONData;l=(u=(b||da).data)&&u.length;E=Q.showZeroPies;var da=Q.valueTotal||
0,oa=[],Y=q(V.plotborderdashed,0),za=this.components.data||(this.components.data=[]),fa=T.numberFormatter,T=T.colorManager,Aa=Q.labelInLeg,ua=Q.valInLeg,ia=Q.centerLabelConfig,xa=Q.pieBorderThickness,ja=Q.reversePlotOrder,ya=Q.radius3D,W=Q.enableMultiSlicing,Ma=Q.lastSlicedid||0,ea=q(V.plotBorderDashed,5),ga=q(V.plotborderdashgap,4),la=q(V.valuebeforelabelinlegend,0),Ca=q(V.showvalueaspercentinlegend,1);M=0;var Ha=a(V.legendsepchar,", ");d=d.get("config","animationObj");B=d.duration||0;f=d.dummyObj;
t=d.animObj;v=d.animType;S.dataLabelStyle=O({},{},V,S.dataLabelStyle,c);for(d=0;d<l;d+=1)c=u[d],k=fa.getCleanValue(c.value,!0),null===k||!E&&0===k?M+=1:(oa.push(c),da+=k);if(M&&za.length>l-M)for(h&&h.emptyItems(za.length-M),d=za.length-1;0<M;--d,--M)if(za[d]){c=za[d];l=c.config;k=c.graphics;for(g in k)h=k[g],h.animateWith(f,t,this.foldingFn.call(this,h),B,v,this.hideFn.call(this,k,g,this));l.y=null;c.legendItemId=void 0}0===da&&(oa=[]);Q.valueTotal=da;Q.dataLabelCounter=0;S.allPlotSliceEnabled=S.enableslicing;
for(d=(l=oa.length)-1;0<=d;--d){k=d;b?(M=oa[d],k=void 0!==e?e+d:za.length-l+d,c=za[k]):(c=za[d]||(za[d]={graphics:{},config:{}}),M=oa[d]);g=c&&c.config;g||(g=za[k].config={});c.graphics||(za[k].graphics={});g.y=k=fa.getCleanValue(M.value,!0);g.seriesName=f=N(a(M.label,M.name,""));c=a(M.color,T.getPlotColor(d));h=a(M.alpha,V.plotfillalpha,m);t=g.borderConfig=this._parseBorderConfig(c,h,M);B=t.setPlotBorderColor;t=t.setPlotBorderAlpha;u={opacity:p(h,t)/100};if(E=!!q(M.issliced,V.issliced,0))W||(-1!==
Ma&&(za[za.length-Ma-1].sliced=!1),Q.lastSlicedid=d),Q.preSliced=E;C=(v=q(M.dashed,Y))?n(a(M.dashlen,ea),a(M.dashgap,ga),xa):"none";this._parseDisplayProperties(M,g);v=Aa?f:"";ua&&(k=Ca?fa.legendPercentValue(k/da*100):fa.legendValue(k),v=la?k+(v&&Ha+v):(v&&v+Ha)+k);(k=g.displayValue)&&(Q.dataLabelCounter+=1);J=g.value;H=g.pValue;k={label:a((K=M.centerlabel||V.centerlabel)&&this.replaceMacros(K,["\\$value","\\$percentValue","\\$displayValue","\\$label"],[J,H,void 0===k?"":k,f]),""),font:ia.font,fontSize:q(M.centerlabelfontsize,
ia.fontSize),color:Z(a(M.centerlabelcolor,ia.color)),alpha:q(M.centerlabelalpha,ia.alpha),bold:q(M.centerlabelbold,ia.bold),italic:q(M.centerlabelitalic,ia.italic),bgColor:a(M.centerlabelbgcolor,ia.bgColor),bgAlpha:q(M.centerlabelbgalpha,ia.bgAlpha),borderColor:a(M.centerlabelbordercolor,ia.borderColor),borderAlpha:q(M.centerlabelborderalpha,ia.borderAlpha),borderThickness:ia.borderThickness,borderRadius:ia.borderRadius,textPadding:ia.textPadding,padding:ia.padding,bgOval:ia.bgOval,shadow:ia.shadow,
hoverColor:(P=a(M.centerlabelhovercolor,ia.hoverColor))&&Z(P),hoverAlpha:q(M.centerlabelhoveralpha,ia.hoverAlpha),toolText:a(M.centerlabeltooltext,"")};this._isStyled(M)?g.style=O(M,{},V,S.dataLabelStyle,c):g.style&&delete g.style;g.showInLegend=""!==v;g.isVisible=!0;g.name=v;g.shadow=u;g.setColor=c;g.color=this._getPointColor(c,h,ya);g._3dAlpha=h;g.borderColor=U(B,t);g.borderWidth=xa;g.link=L(M.link);g.sliced=E;g.dashStyle=C;(g.doNotSlice=a(M.enableslicing,S.enableslicing)!=r)||S.allPlotSliceEnabled!==
A||(S.allPlotSliceEnabled=r);this._parseHoverEffectOptions(d);g.centerLabelConfig=k;g.radius3D=ya}ja&&za&&za.reverse();Q.dataArr=oa;Q.enableRotation=1<za.length?q(V.enablerotation,1):0},_parseHoverEffectOptions:function(b){var e,g,l,k,h,d,f,c,m;d=this.chart.jsonData.chart;g=this.config;var p=this.components.data[b].config;f=this.JSONData;c=f.data[b];l=p.setColor;k=p._3dAlpha;b=g.radius3D;m=p.borderConfig;h=m.setPlotBorderAlpha;var n=m.setPlotBorderColor;m=g.setBorderWidth;g=q(p.hovereffect,g.showHoverEffect);
p=p.hoverEffects={enabled:g};void 0===g&&(g=p.enabled=void 0!==a(c.hovercolor,f.hovercolor,d.plotfillhovercolor,c.hoveralpha,f.hoveralpha,d.plotfillhoveralpha,c.borderhovercolor,f.borderhovercolor,d.plotborderhovercolor,c.borderhoveralpha,f.borderhoveralpha,d.plotborderhoveralpha,d.plotfillhoveralpha,c.borderhoverthickness,f.borderhoverthickness,d.plotborderhoverthickness,void 0));if(g){e=q(c.highlightonhover,f.highlight,d.highlight,1);(g=a(c.hovercolor,f.hovercolor,d.plotfillhovercolor))&&e&&(e=
0);g=a(g,l);l=a(c.hoveralpha,f.hoveralpha,d.plotfillhoveralpha,k);k=a(c.borderhovercolor,f.borderhovercolor,d.plotborderhovercolor,n);h=a(c.borderhoveralpha,f.borderhoveralpha,d.plotborderhoveralpha,d.plotfillhoveralpha,h);d=q(c.borderhoverthickness,f.borderhoverthickness,d.plotborderhoverthickness,m);g.replace(/,+?$/,"");if(1===e){c=(f="string"==typeof g)?g.split(/\s{0,},\s{0,}/):g.color.split(/\s{0,},\s{0,}/);m=c.length;for(e=0;e<m;e++)c[e]=P(c[e],70);f?g=c.join(","):g.color=c.join(",")}this._setHoverColor(p,
g,l,b);p.borderColor=U(k,h);p.borderWidth=d}else p.enabled=!1},_setHoverColor:function(a,b,e,g){a.color=this._getPointColor(b,e,g)},replaceMacros:function(a,b,e){for(var g=b.length||0,l;g--;)l=new RegExp(b[g],"gi"),a=a.replace(l,e[g]);return a},containsMacro:function(a,b){for(var e=b.length||0,g;e--;)if(g=new RegExp(b[e],"gi"),g=a.match(g))return!0;return!1},updateData:function(a,b){this.config.valueTotal-=this.components.data[b].config.y;this.__base__.updateData.apply(this,arguments)},_parsePiePlotOptions:function(){var a=
this.config;return{size:a.pieMinRadius,slicedOffset:a.slicingDistance}},_parseDataLabelOptions:function(){return{style:this.chart.config.dataLabelStyle}},_addLegend:function(){var a,b,e,g=this.chart.components.legend,l=this.components.data;for(a=0;a<l.length;a+=1)e=l[a],b=e.config,null!==b.y&&(e.legendItemId=g.addItems(this,this.legendInteractivity,{index:a,fillColor:M(b.setColor),strokeColor:M(b.borderColor),type:this.type,label:b.seriesName,enabled:q(b.includeInLegend,1),legendItemId:e.legendItemId}))},
_parseBorderConfig:function(b,e,g){var l=this.chart.jsonData.chart,k=a(g.bordercolor,this.config.pieBorderColor);g=a(g.borderalpha,l.plotborderalpha,l.pieborderalpha);k=a(k,P(b,25)).split(",")[0];g=l.showplotborder==A?A:a(g,e,"80");return{setPlotBorderColor:k,setPlotBorderAlpha:g}},_getPointColor:function(a,b,e){var g,l;a=Z(a);b=k(b);100>e&&u?(g=Math.floor(85*(100-.35*e))/100,g=E(a,g),l=Math.floor(50*(100+e))/100,a=P(a,l),b={color:a+","+g,alpha:b+","+b,ratio:e+","+(100-e),radialGradient:!0,gradientUnits:"userSpaceOnUse"}):
b={color:a+","+a,alpha:b+","+b,ratio:"0,100"};return b},hideElements:function(){var a=this.data&&this.data("plotItem").chart,b=0,e=this._&&this._.shadows||[];if(a&&a.components.dataset[0])for(this.hide();b<e.length;b+=1)e[b].hide()},hideFn:function(a,b){return function(){a[b].hide()}},singleFillColor:function(a){return M({color:Z(a.color),alpha:k(a.alpha)})},draw:function(){var a,g,l=this.chart,k=l.getJobList(),m=l.graphics,h=l.config,d=h.dataLabelStyle,f=l.graphics,c=this.config,p=c.showShadow,n=
l.components.paper,r=this.components,q=r.data,u=r.removeDataArr||[],v,E,K,A,C;v=h.style;var L=m.datasetGroup.trackTooltip(!0),H=this.graphics,N=this.pool;v=H.container;var P=this.visible,O=H.shadowContainer;E=m.datalabelsGroup;var Z=H.dataLabelContainer,U,Q,za,fa,Aa,ua,ia,xa,ja,ya=r.data||[],W=ya.length,r=h.canvasLeft+.5*h.canvasWidth,m=h.canvasTop+.5*h.canvasHeight,Ma=f.datasetGroup;A=h.alphaanimation;var ea=!1,f=l.get("config","animationObj"),ga=f.duration||0,la=f.dummyObj,Ca=f.animObj,Ha=f.animType,
f=function(){ea||(ea=!0,Z.show(),Ma.animateWith(la,Ca,{opacity:1},ga,Ha))},pa=function(){var a,c;if(g)for(a=0;a<W;a+=1)c=ya[a],c.graphics.element&&c.graphics.element.attr({fill:M(c.config.color)})};U=function(){var a=c.pieCenter||[],b={cx:a[0],cy:a[1],r:(c.piePlotOptions||[]).size,r2:.5*(c.innerSize||0)};return function(a){var c,d=!1;for(c in a)if(5<T(a[c]-b[c])){d=!0;break}return d}}();Q=function(){ea||pa()};var La=l._plotDragMove,Ja=l._plotDragStart,Fa=l._plotDragEnd,ta=l._plotRollOver,Ka=l._plotRollOut,
Ea=!!c.enableRotation,Da=c.piePlotOptions=this._parsePiePlotOptions(),h=h.textDirection,Ga=c.dataLabelOptions,Na=Da.slicedOffset,Ua,Da=Da.size,Pa=.5*(c.innerSize||0),Sa=(c.startAngle||0)%t,ab,Xa,Za,bb=Sa-t,eb=c.animateClockWise,Va,Ya;v?(Za=!0,ga&&(ab=Q),g=U({cx:r,cy:m,r:Da,r2:Pa})):(L.pie=n.group("pie",L),L.pieLabels=n.group("pie",L),v=H.container={lineShadowGroup:n.group("connector-shadow",L.pieLabels),anchorShadowGroup:n.group("anchor-shadow",L.pieLabels),pieGroup:H.pieContainer=n.group("pie",L.pie),
dataLabel:n.group("dataLabel",L.pie)},O=H.shadowContainer=L.shadows||(L.shadows=n.group("shadows",v.pieGroup).toBack()),Z=H.dataLabelContainer=this.graphics.dataLabelContainer||n.group("datalabel",E).trackTooltip(!0),ga&&(ab=f,Z.hide()));Z.css(d);L=c.valueTotal;P&&0!==L?0!==L&&(v.lineShadowGroup.show(),v.anchorShadowGroup.show(),v.pieGroup.show(),v.dataLabel.show(),O.show(),Z.show()):(v.lineShadowGroup.hide(),v.anchorShadowGroup.hide(),v.pieGroup.hide(),v.dataLabel.hide(),O.hide(),Z.hide());A&&Ma.attr({opacity:0});
u.length&&this.remove();P=0!==L?t/L:0;c.pieCenter=[r,m];U=u=Sa;0!==L&&k.labelDrawID.push(c.labelDrawID=S.addJob(function(){l.placeDataLabels(!1,q,c)},b.priorityList.label));for(k=0;k<W;k+=1)if(v=ya[k],C=v.graphics,Q=v.config,(Va=Q._textAttrs)||(Va=Q._textAttrs={}),za=Q.y,fa=Q.displayValue,Aa=Q.sliced,E=Q.toolText,A=!!Q.link,v=Q.style,ua=A||Ea||!Q.doNotSlice,null!==za&&void 0!==za&&!1!==Q.isVisible){U=Q.color;U.r=Da;U.cx=r;U.cy=m;U=u;u-=c.singletonCase?t:za*P;ia=.5*(u+U);K=C.element;xa=C.label;Ua=
C.connector;if(!K){K=N&&N.element.length?C.element=N.element.splice(0,1)[0].show():C.element=n.ringpath(H.pieContainer).attr({"stroke-linejoin":"round",ishot:ua}).drag(La,Ja,Fa).hover(ta,Ka);if(Za){if(k<W)for(Xa=void 0,a=k+1;a<W&&void 0===Xa;a+=1)Xa=ya[a].config.endAngle;void 0===Xa&&(Xa=bb)}else Xa=eb?bb:Sa;K.attr({ringpath:[r,m,Da,Pa,Xa,Xa]})}void 0!==fa?(v?((Ya=Q._textCss)||(Ya=Q._textCss={}),Ya.fontFamily=v.fontFamily,Ya.fontSize=v.fontSize,Ya.lineHeight=v.lineHeight,Ya.fontWeight=v.fontWeight,
Ya.fontStyle=v.fontStyle):Q._textCss&&(xa&&xa.removeCSS(),delete Q._textCss,Ya=void 0),Q.style=v||(v=d),Va.text=fa,Va.fill=v.color||"#000000",Va["text-bound"]=[v.backgroundColor,v.borderColor,v.borderThickness,v.borderPadding,v.borderRadius,v.borderDash],Va.direction=h,Va.lineHeight=v.lineHeight,xa?(Ya&&(xa.css(Ya),delete Ya.fontFamily,delete Ya.fontSize,delete Ya.lineHeight,delete Ya.fontWeight,delete Ya.fontStyle,Ya=void 0),delete Va.ishot):N&&N.label.length?xa=C.label=N.label.splice(0,1)[0]:Va.ishot=
ua,0<Ga.distance&&(ja=Ga.connectorWidth)&&Ga.enableSmartLabels?(Ua||(Ua=N&&N.connector.length?C.connector=N.connector.splice(0,1)[0]:C.connector=n.path("M 0 0 l 0 0",Z).attr({visibility:B,ishot:!0}).drag(La,Ja,Fa).hover(ta,Ka)),Ua.attr({"stroke-width":ja,stroke:Ga.connectorColor||"#606060"}).show()):Ua&&Ua.hide()):(Va.visibility="hidden",xa&&xa.hide(),Ua&&Ua.hide());0===L?(xa&&xa.hide(),Ua&&Ua.hide()):(xa&&xa.show(),Ua&&Ua.show());v=Q.plotItem={chart:l,index:k,seriesData:c,value:za,angle:Q.angle=
ia,angle1:Q.startAngle=u,angle2:Q.endAngle=U,slicedX:V(ia)*Na,slicedY:e(ia)*Na,sliced:Aa,labelText:fa,toolText:E,name:Q.name,link:Q.link,percentage:L?za*L/100:0,originalIndex:W-k-1,style:Q.style,color:M(Q.color),borderColor:Q.borderColor,borderWidth:Q.borderWidth,rolloverProperties:Q.hoverEffects,radius:Da,center:[r,m],innerDiameter:2*Pa,centerLabelConfig:Q.centerLabelConfig,graphic:K,isVisible:Q.isVisible,label:xa,connector:Ua,transX:Q.transX=V(ia)*Na,transY:Q.transY=e(ia)*Na,slicedTranslation:Q.slicedTranslation=
"t"+V(ia)*Na+","+e(ia)*Na};C={index:c.reversePlotOrder?W-1-k:k,link:Q.link,value:Q.y,displayValue:Q.displayValueArgs,categoryLabel:Q.categoryLabel,isSliced:Aa,toolText:E};K.animateWith(la,Ca,{ringpath:[r,m,Da,Pa,u,U]},ga,Ha,ab);K.attr({"stroke-width":Q.borderWidth,stroke:Q.borderColor,fill:J||Za&&g?this.singleFillColor(Q.color):M(Q.color),"stroke-dasharray":Q.dashStyle,redrawDataLabels:Sa,cursor:A?"pointer":"",transform:v.sliced?v.slicedTranslation:""}).show().shadow(p&&Q.shadow,O).tooltip(E).data("plotItem",
v).data("eventArgs",C);Va.plotItem=v;Va.eventArgs=C;Ua&&Ua.data("plotItem",v).data("eventArgs",C)}ga?Za&&l.placeDataLabels(!1,q,c):(pa(),f())},remove:function(){var a=this.components.removeDataArr||[],b=this.pool=this.pool={},e=a.length,g=this.config,l,h=g.pieCenter,d,f=h[0],h=h[1],c=this.hideElements,k=g.pieMinRadius,m=.5*(g.innerSize||0),p,g=g.startAngle-t;p=this.chart.get("config","animationObj");var n=p.duration||0,r=p.dummyObj,q=p.animObj,B=p.animType;for(p=0;p<e;p++){l=a[0];l=l.graphics;for(d in l)l[d].data("plotItem"),
l[d].animateWith(r,q,{ringpath:[f,h,k,m,g,g+.01]},n,B,c),b[d]||(b[d]=[]),b[d].push(l[d].hide());a.splice(0,1)}},legendInteractivity:function(a,b){a.chart._plotGraphicClick.call(a.components.data[b.configuration.index].graphics.element)},init:function(a){var b=this.chart;if(!a)return!1;this.JSONData=a;this.chartGraphics=b.chartGraphics;this.components={};this.graphics={};this.visible=1===q(this.JSONData.visible,!Number(this.JSONData.initiallyhidden),1);this.configure()},_getInnerSize:function(){var a,
b=this.config,e=this.chart.jsonData.chart;a=q(e.doughnutradius,0);var e=q(e.use3dlighting,1)?q(e.radius3d,e["3dradius"],50):100,g,l,h;g=b.pieMinRadius;100<e&&(e=100);0>e&&(e=0);a=0>=a||a>=g?g/2:a;b.innerRadius=a;if(0<e&&u&&(b=parseInt(a/g*100,10),g=(100-b)/2,e=parseInt(g*e/100,10),e=b+","+e+","+2*(g-e)+","+e,this&&(h=this.components.data)))for(b=0,g=h.length;b<g;b+=1)l=h[b],l=l.config,l.color&&(l.color.ratio=e,l.hoverEffects&&l.hoverEffects.color&&(l.hoverEffects.color.ratio=e));return 2*a},getEventArgs:function(a){a=
a.configuration.index;var b=this.components.data[a].config||{};return{datasetName:b.seriesName,datasetIndex:a,id:b.userID,visible:b.isVisible,label:b.seriesName,value:b.value,percentValue:b.pValue,tooltext:b.toolText,link:b.link,sliced:b.sliced}}},"area"])}]);Q.register("module",["private","modules.renderer.js-dataset-pie3d",function(){var b=this.hcLib,v=b.BLANKSTRING,J=b.ZEROSTRING,C=b.pluck,H=b.toRaphaelColor,A=b.getFirstAlpha,u=b.preDefStr.elementStr,a=Math,O=a.sin,q=a.cos,M=2*a.PI,U=b.getFirstColor,
N=b.graphics.getLightColor;Q.register("component",["dataset","Pie3D",{type:"pie3d",_parsePie3DOptions:function(){var a=this.config;return{size:2*a.pieMinRadius,slicedOffset:a.slicingDistance,allowPointSelect:!0,cursor:"pointer",innerSize:"pie3d"===this.type?0:this._getInnerSize()}},_parseBorderConfig:function(a,b,k){var m=this.chart.jsonData.chart,n=C(k.bordercolor,this.config.pieBorderColor);k=C(k.borderalpha,m.plotborderalpha,m.pieborderalpha);n=C(n,N(a,90)).split(",")[0];k=m.showplotborder==J?
J:C(k,b,"80");return{setPlotBorderColor:n,setPlotBorderAlpha:k}},_setHoverColor:function(a,b,k){a.color=b;a.alpha=k},draw:function(){var a,b,k=this.pool||(this.pool={}),m=this.components,n=this.config,u=this.chart,g=u.get("config","animationObj"),l=g.duration||0,B=g.dummyObj,e=g.animObj,A=g.animType,p=u.config;a=u.graphics;var C=m.data,g=n.dataLabelOptions,K=g.style,t=u.components.paper,J=p.tooltip||{},J=J&&!1!==J.enabled,N=n.slicingDistance,S=n.slicedOffsetY||(n.slicedOffsetY=N*n.pieYScale),z=u._plotDragMove,
R=u._plotDragStart,w=u._plotDragEnd,F=u._plotRollOver,Q=u._plotRollOut,h=!!n.enableRotation,d=n.showBorderEffect,f=C.length,c=n.usePerPointLabelColor,D=p.textDirection,G,U,Ra,Ia,sa,wa,ca,ma,qa,va,ha,ra,ka;b=m.removeDataArr||[];var na;ha=this.visible;var da,oa,Y=!1,za=this.graphics.dataLabelContainer,fa=(n.startAngle||0)%M,Aa,ua,ia,xa=fa-M,ja=n.animateClockWise,ya,W,Ma,ea=a.datasetGroup;da=p.alphaanimation;var ga=function(){0!==n.valueTotal&&(za.show(),u.placeDataLabels(!1))},la=function(){Y||(Y=p.fireInitialAnimation=
!0,ea.animateWith(B,e,{opacity:1},l,A,ga))};W=function(){var a,c;if(!Y)for(la(),a=0;a<f;a+=1)c=C[a],c.graphics.element&&c.graphics.element.attr({fill:H(c.config.color)})};var Ca=p.dataLabelStyle;if(za){if(ia=!0,l||!p.fireInitialAnimation)ma=l,Aa=W,p.fireInitialAnimation=!1}else za=this.graphics.dataLabelContainer=t.group("datalabel",a.datalabelsGroup).trackTooltip(!0),l&&(Aa=la,ma=l,za.hide(),da&&ea.attr({opacity:0}));za.css(Ca);ha||za.hide();b.length&&this.remove();u._preDrawCalculate();a=n.center;
b=n.pieYScale;m=m.Pie3DManager;C&&f||(C=[]);for(da=-1;++da<f;)if(K=C[da],ha=K.config,(W=ha._textAttrs)||(W=ha._textAttrs={}),ra=K.graphics,G=ha.y,U=ha.displayValue,Ia=ha.sliced,qa=ha.shapeArgs,wa=ha.centerAngle,va=ha.toolText,Ra=!!ha.link,K=ha.style,sa=Ra||h||!ha.doNotSlice,null!==G&&void 0!==G){ya=ra.element;ka=ra.label;na=ra.connector;if(!ya){ya=ra.element=m.useSliceFromPool();if(ia){if(da<f)for(ua=void 0,oa=da+1;oa<f&&void 0===ua;oa+=1)ua=C[oa].config.shapeArgs.end;void 0===ua&&(ua=fa)}else ua=
ja?fa:xa;ya||(ya=ra.element=m.createSlice().drag(z,R,w).mouseover(F).mouseout(Q).attr({ishot:sa}));ya.attr({start:-ua,end:-ua,cx:a[0],cy:a[1],r:a[2],innerR:a[3],radiusYFactor:b})}void 0!==U?(K?((Ma=ha._textCss)||(Ma=ha._textCss={}),Ma.fontFamily=K.fontFamily,Ma.fontSize=K.fontSize,Ma.lineHeight=K.lineHeight,Ma.fontWeight=K.fontWeight,Ma.fontStyle=K.fontStyle):ha._textCss&&(ka&&ka.removeCSS(),delete ha._textCss,Ma=void 0),ha.style=K||(K=Ca),W.text=U,W.fill=(c?H(ha.color):K.color)||"#000000",W["text-bound"]=
[K.backgroundColor,K.borderColor,K.borderThickness,K.borderPadding,K.borderRadius,K.borderDash],W.direction=D,W.lineHeight=K.lineHeight,ka?(Ma&&(ka.css(Ma),delete Ma.fontFamily,delete Ma.fontSize,delete Ma.lineHeight,delete Ma.fontWeight,delete Ma.fontStyle,Ma=void 0),delete W.ishot):k&&k.graphics&&k.graphics.label&&k.graphics.label.length?ka=ra.label=k.graphics.label.splice(0,1):W.ishot=sa,0<g.distance&&(ca=g.connectorWidth)&&g.enableSmartLabels?(na||(na=k&&k.graphics&&k.graphics.connector&&k.graphics.connector.length?
ra.connector=k.graphics.connector.splice(0,1):ra.connector=t.path("M 0 0 l 0 0",za).attr({visibility:"hidden",ishot:sa}).drag(z,R,w).hover(F,Q)),na.attr({"stroke-width":ca,stroke:g.connectorColor||"#606060",cursor:Ra?"pointer":""}).show()):na&&na.hide()):(ka&&ka.hide(),na&&na.hide());G={chart:u,index:da,seriesData:n,value:G,angle:ha.angle=wa,link:ha.link,shapeArgs:qa,slicedX:Ia&&!n.singletonCase?q(wa)*N:0,slicedY:Ia&&!n.singletonCase?O(wa)*S:0,sliced:Ia,labelText:U,name:ha.name,percentage:ha.percentage,
toolText:va,originalIndex:f-da-1,style:ha.style,graphic:ya,transX:ha.transX=q(wa)*N,transY:ha.transY=O(wa)*S,slicedTranslation:ha.slicedTranslation="t"+ha.transX+","+ha.transY,label:ka,connector:na};K={index:n.reversePlotOrder?da:f-1-da,link:ha.link,value:ha.y,displayValue:ha.displayValueArgs,categoryLabel:ha.categoryLabel,isSliced:ha.sliced,toolText:ha.toolText};ya.attr({transform:"t"+G.slicedX+","+G.slicedY,cursor:Ra?"pointer":"",color:ha.color.color.split(",")[0],alpha:ha._3dAlpha,borderWidth:ha.borderWidth,
borderColor:ha.borderColor,showBorderEffect:d}).animateWith(B,e,{start:qa.start,end:qa.end,r:a[2],innerR:a[3],cx:a[0],cy:a[1],radiusYFactor:b},ma,A,Aa).tooltip(J?va:v).data("groupId",da).data("plotItem",G).data("eventArgs",K);W.plotItem=G;W.eventArgs=K;na&&na.data("plotItem",G).data("eventArgs",K)}!l&&ga();0===n.valueTotal?(za.hide(),m.slicingWallsBackGroup.hide(),m.slicingWallsFrontGroup.hide(),m.topGroup.hide(),m.bottomBorderGroup.hide()):(za.show(),m.slicingWallsBackGroup.show(),m.slicingWallsFrontGroup.show(),
m.topGroup.show(),m.bottomBorderGroup.show())},hideFn:function(a,b,k){var m=k&&k.components||{};return function(){b===u?(m.Pie3DManager.removeSlice(a.element),delete a.element):a[b].hide()}},remove:function(){var a=this.chart,b=this.config,k=this.components.removeDataArr||[],m=this.pool=this.pool=[],n=k.length,q,g,l,B,e=this.hideFn,b=b.startAngle;l=a.get("config","animationObj");var a=l.duration||0,v=l.dummyObj,p=l.animObj,A=l.animType;for(l=0;l<n;l++){q=k[0];q=q.graphics;for(g in q)B=q[g],m[g]||
(m[g]=[]),g===u?B.animateWith(v,p,{start:-b,end:-b+.01},a,A,e(q,g,this)):m[g].push(B.hide());k.splice(0,1)}},foldingFn:function(){var a=this.config.startAngle;return{start:-a,end:-a+.01}},_getPointColor:function(a,b){a=U(a);b=A(b);return{color:a+","+a,alpha:b+","+b,ratio:"0,100"}}},"pie2D",{setBorderWidth:void 0,showBorderEffect:void 0}])}]);Q.register("module",["private","modules.renderer.js-dataset-doughnut2d",function(){var b=this.hcLib,v=b.hasSVG,J=b.toRaphaelColor,C=b.graphics.getDarkColor,H=
b.getFirstAlpha,A=Math.floor,u=b.getFirstColor,a=b.graphics.getLightColor;Q.register("component",["dataset","Doughnut2D",{type:"doughnut2d",_getPointColor:function(b,q,J){var Q;b=u(b);q=H(q);100>J&&v?(Q=C(b,A(100*(85-.2*(100-J)))/100),b=a(b,A(100*(100-.5*J))/100),q={color:Q+","+b+","+b+","+Q,alpha:q+","+q+","+q+","+q,radialGradient:!0,gradientUnits:"userSpaceOnUse",r:J}):q={color:b+","+b,alpha:q+","+q,ratio:"0,100"};return q},_parsePiePlotOptions:function(){var a=this.__base__._parsePiePlotOptions.call(this);
a.innerSize=this._getInnerSize();return a},draw:function(){var a=this.chart,b=a.config,u=this.config,v=b.canvasLeft+.5*b.canvasWidth,b=b.canvasTop+.5*b.canvasHeight,A,E=u.centerLabelConfig,r=E.label;A=.5*((u.innerSize=this._getInnerSize())||0);this.__base__.draw.call(this);r&&A&&a.drawDoughnutCenterLabel(r,v,b,2*A,2*A,E,!0);u.lastCenterLabelConfig=E},singleFillColor:function(a){return J({color:u(a.color,1),alpha:H(a.alpha,1)})}},"Pie2D"])}]);Q.register("module",["private","modules.renderer.js-dataset-doughnut3D",
function(){Q.register("component",["dataset","Doughnut3D",{type:"doughnut3d"},"Pie3D"])}]);Q.register("module",["private","modules.renderer.js-dataset-marimekko",function(){var b=this.hcLib,v="VML"===b.Raphael.type,J=b.pluck,C=b.pluckNumber,H=b.toRaphaelColor,A=b.getFirstValue,u=b.regex.dropHypeash,a=b.HASHSTRING,O=b.preDefStr,q=O.showHoverEffectStr,M=O.setRolloverAttrStr,U=O.setRolloutAttrStr,O=Math,N=O.round,E=O.min,r=O.abs,k=b.graphics.getLightColor,m=b.schedular;Q.register("component",["dataset",
"marimekko",{type:"marimekko",configure:function(){b.each(this.JSONData.data,function(a){a&&(a.value=r(a.value))});this.__base__.configure.call(this)},_addLegend:function(){var b=this.chart,m=b.jsonData.chart,g,l;l=this.config;var b=b.components.legend,r=l.legendSymbolColor;g=C(m.us3dlighting,m.useplotgradientcolor,1);m=k(r,60).replace(u,a);g?(g=k(r,40),g={FCcolor:{color:r+","+r+","+g+","+r+","+r,ratio:"0,70,30",angle:270,alpha:"100,100,100,100,100"}}):g={FCcolor:{color:r,angle:0,ratio:"0",alpha:"100"}};
l={enabled:l.includeInLegend,type:this.type,fillColor:H(g),strokeColor:H(m),rawFillColor:r,label:A(this.JSONData.seriesname)};this.legendItemId=b.addItems(this,this.legendInteractivity,l)},searchIndex:function(a,b){for(var g=this.chart.components.xAxis[0],l=0,k=b.length-1,e,m;l<=k;)if(e=Math.round((l+k)/2)||0,m=g.getAxisPosition(b[e].x)+b[e].columnWidth/2,m<a)l=e+1;else if(m>a)k=e-1;else return e;return l},_getHoveredPlot:function(a,b){var g=this.groupManager,l=g.stackConf,k=this.chart.config,g=g.config,
e=k.plotborderthickness,m=l.length-1,p,e=k.showplotborder?e:0,k=e/2,k=0===k%2?k+1:Math.round(k),l=p&&g.datasetIndex||this.searchIndex(a+k,l);g.datasetIndex||(g.datasetIndex=l);(p=this._checkPointerOverColumn(l,a,b))?delete g.datasetIndex:this.index===m&&delete g.datasetIndex;return p},draw:function(){var a=this,k=a.JSONData,g=a.chart,l=g.jsonData.chart,u=g.config,e=g.getJobList(),A=a.config,p=a.groupManager,T=a.index,K,t,Z=a.visible,P=g.components;t=P.canvas.config.clip;var S=P.paper,P=P.xAxis[0],
z=P.getCategoryLen(),R=a.yAxis,w=g.graphics.datasetGroup,F=g.config.isstacked,O,h,d,f=b.parseUnsafeString,c=b.getValidValue,D=b.Raphael,G=u.showtooltip,Q=g.get("config","animationObj"),Ra=Q.duration,Ia=Q.dummyObj,sa=Q.animObj,Q=Q.animType,wa=P.getAxisPosition(0),ca=P.getAxisPosition(1),ma=A.groupMaxWidth=ca-wa,wa=p.stackSumValue[a.positionIndex],ca=u.maxcolwidth,ca=(1-.01*A.definedgrouppadding)*ma||E(1*ma,1*ca),qa,va,ha,ra=a.components,ka=ra.data,na,da,oa,Y,za,fa=a.drawn,Aa=ra.removeDataArr,Aa=Aa&&
Aa.length,ua=(ra=ra.addDataArr)&&ra.length,ia,ra=R.getAxisBase(),xa=R.yBasePos=R.getAxisPosition(ra),ja,ya=0,A=A.showshadow,W=u.plotborderthickness,Ma=u.useroundedges,ea=a.graphics,ga=ea.container,la=ea.dataLabelContainer,Ca=ea.shadowContainer,ea=ea.pool,Ha=1,pa=P.getAxisPosition(z-1)+0,La=P.getAxisPosition(0)+0,Ja=!0,Fa=a.startPosition,ta=p.stackConf,Ka=u.showplotborder,Ea=function(){!1!==a.visible||!1!==a._conatinerHidden&&void 0!==a._conatinerHidden||(ga.hide(),Ca.hide(),la&&la.hide(),a._conatinerHidden=
!0)},Da=function(){Ja&&Ea();this.show()},Ga=function(){return Fa?function(a,b){a.x=La-ma*(ua-b);a.y=h;a.height=va}:!1===Fa?function(a){a.x=pa+ma*Ha++;a.y=h;a.height=va}:function(a){a.width=0}},Na=g.components.canvas.config;za=Na.oriCanvasBorderThickness;var Na=0<Na.canvasBorderWidth,Ua=u.canvasRight,Pa=u.canvasTop,u=u.canvasLeft;fa&&(Ga=Ga());ga||(ga=a.graphics.container=S.group("columns",w),Z||ga.hide());Ca||(Ca=a.graphics.shadowContainer=S.group("shadow",w).toBack(),Z||Ca.hide());t=t["clip-canvas"];
Na||(t[3]+=za/2,v&&(t[2]+=2*za));fa?(ga.animateWith(Ia,sa,{"clip-rect":t},Ra,Q),Ca.animateWith(Ia,sa,{"clip-rect":t},Ra,Q)):(ga.attr({"clip-rect":t}),Ca.attr({"clip-rect":t}));for(t=0;t<z;t++)K=(za=(w=ka[t])&&w.config)&&za.setValue,void 0!==w&&null!==K&&(ia=p.getDataSetPosition(a,t),qa=C(ia.columnWidth,ca/1),oa=ia.height,da=za.setLink,ia=za.colorArr,w.graphics||(ka[t].graphics={}),Y=za.displayValue,ja=za.previousPositiveY,na=c(f(J(za.origToolText,k.plottooltext,l.plottooltext))),F&&(ja=a._parseValues(t,
ja,wa[t],na),K=za.value),O=ta[t].x,ha=R.getAxisPosition(ja||ra),O=P.getAxisPosition(O)-qa/2,0!==oa?(h=R.getAxisPosition(K+(ja||0)),va=r(ha-h)):(va=0,h=ha),h=E(h,ha),parseInt(h)<=Pa&&(va-=Pa-h-+Na,h=Pa-+Na),1>=W&&(N(O)<=u&&(qa+=O,O=u-W/2+ +!!W-+Na,qa-=O),N(O+qa)>=Ua&&(qa=Ua-O+W/2-+!!W+ +Na)),p.isCrisp&&(d=D.crispBound(O,h,qa,va,W),O=d.x,h=d.y,qa=d.width,va=d.height),ja=w.trackerConfig||(w.trackerConfig={}),(ha=!1!==za.toolText&&za.toolText+(na?"":za.toolTipValue))&&(za.finalTooltext=ha),na=za.plotBorderDashStyle,
oa=ja.eventArgs||(ja.eventArgs={}),oa.index=t,oa.link=da,oa.value=K,oa.displayValue=Y,oa.categoryLabel=za.label,oa.toolText=ha,oa.id="",oa.datasetIndex=T||0,oa.datasetName=k.seriesname,oa.visible=Z,Ra||(xa=h,ya=va),K={x:O,y:xa,width:qa,height:ya||1,r:Ma,ishot:!G,fill:H(ia[0]),stroke:H(ia[1]),"stroke-width":Ka?W:0,"stroke-dasharray":na,"stroke-linejoin":"miter",visibility:Z},w._xPos=O,w._yPos=h,w._height=va,w._width=qa,w._index=t,!w.graphics.element&&fa&&(Ga(K,t),ea&&ea[0].graphics.element?(da=ea[0].graphics.element,
da.attr(K)):da=w.graphics.element=S.rect(K,ga),ea&&ea[0].graphics.hotElement&&(w.graphics.hotElement=ea[0].graphics.hotElement),ea&&ea.splice(0,1)),w.graphics.element?(K={x:O,y:h,width:qa,height:va||1},Ra?da=w.graphics.element.animateWith(Ia,sa,K,Ra,Q,Da):(da=w.graphics.element.attr(K),Ja&&Ea())):(da=w.graphics.element=S.rect(K,ga),Ra&&(da.animateWith(Ia,sa,{y:h,height:va||1},Ra,Q),Ja=!1)),da.attr({r:Ma,ishot:!G,fill:H(ia[0]),stroke:H(ia[1]),"stroke-width":Ka?W:0,"stroke-dasharray":na,"stroke-linejoin":"miter"}).shadow({opacity:A},
Ca).data("BBox",d),g.config.enablemousetracking&&da.data("eventArgs",ja.eventArgs).data(q,!0).data(M,za.setRolloverAttr||{}).data(U,za.setRolloutAttr||{}));a.drawn?a.drawLabel():e.labelDrawID.push(m.addJob(function(){a.drawLabel()},b.priorityList.label));a.drawn=!0;Aa&&a.remove()},getDataLimits:function(){var a=this.conf;return{max:a.yMax,min:a.yMin,xMax:100,xMin:0}}},"column"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-column",function(){var b=this.window,v=this.hcLib,
J=v.pluck,C=v.pluckNumber,H=v.plotEventHandler,A=v.hashify,u=v.preDefStr,a=u.visibleStr,O=u.customTooltipStr1='<span style="color :',q=u.customTooltipStr2='; font-size : 12px">&#9632 </span>',M=u.customTooltipStr3=' <span style="color :',U=u.closeSpan="</span> ",N=u.closeTag='">',E=u.breakLineStr="</br>",u=Math,r=u.min,k=u.max,m=u.abs,n=u.ceil,L=v.toolTip;Q.register("component",["datasetGroup","Column",{init:function(){this.positionStackArr=[];this.stackSumValue=[];this.stackConfig=[];this.drawSumValueFlag=
!0},addDataSet:function(a,b,k){var e=this.positionStackArr[b];a.groupManager=this;a.positionIndex=b;a.stackIndex=k;e||(e=this.positionStackArr[b]=[]);e[k]={dataSet:a}},removeDataSet:function(a,b,k){var e=this.positionStackArr[a];e&&e[b]&&e.splice(b,k);0===e.length&&this.positionStackArr.splice(a,1)},_decideSkipping:function(a,b,k){a=a&&a.length;b=n(k/b);b=a/b;return 1<b?n(b):!1},_decidePlotableData:function(a,b,k,e){var m=this.stackSumValue&&this.stackSumValue[0],p,r,q,t,u=this.chart.config,v,A,z=
(a&&a.length)-b,E,w,C=n(1/u.binSize*u.labelBinSize),H,h;this.lastPlot||(this.lastPlot={positvePlot:[],negativePlot:[]});for(E=r=p=q=0;q<z&&k;q+=b,p++,r++){w=E%C;E++;for(t=q+b;t>=q+1;t--)A=a[t].config,v=m&&m[t]||A.setValue,u.labelBinSize&&(A.labelSkip=!0),A.isSkipped=!0,0<=v?(this.lastPlot.positvePlot[p]||(this.lastPlot.positvePlot[p]=v,0===w&&delete A.labelSkip,H=t,delete A.isSkipped),this.lastPlot.positvePlot[p]<v&&(this.lastPlot.positvePlot[p]=v,H=t,delete A.isSkipped)):(this.lastPlot.negativePlot[r]||
(this.lastPlot.negativePlot[r]=v,0===w&&delete A.labelSkip,h=t,delete A.isSkipped),this.lastPlot.negativePlot[r]>v&&(this.lastPlot.negativePlot[r]=v,h=t,delete A.isSkipped));0===w&&(a[H]&&delete a[H].config.labelSkip,a[h]&&delete a[h].config.labelSkip)}e&&delete this.lastPlot},skipOverlapPlot:function(){var a=this.positionStackArr,b,k,e,m,p,n;b=this.chart;var r=this.config,t=b.config,q=t.canvasWidth,u=t.canvasHeight,v=t.binSize,z,A,w=b.isBar;for(b=a.length-1;0<=b;b--)for(e=a[b],m=e.length,k=0;k<m;k++)p=
e[k].dataSet,z=p.visible,n=p.components,n=n.data,(A=this._decideSkipping(n,v,w?u:q))||(p.config.isSkippedData=!1),(p.config.plotsPerBin=A)&&this._decidePlotableData(n,A,z,!b);r.skipZeroPlots=t.skipZeroPlots&&3>r.groupNetWidth},draw:function(){var a=this.positionStackArr,b=a.length,k,e,m,p,n=this.chart,r=n.config;k=r.viewPortConfig.scaleX||1;e=n.graphics.columnGroup;p=n.graphics;m=n.components.canvas.config.clip["clip-canvas"].slice(0);p=p.datalabelsGroup;var t=n.get("config","animationObj"),n=t.animType,
q=t.animObj,u=t.dummyObj,v=m[2],t=t.duration;m[2]*=k;e.attrs["clip-rect"]||e.attr({"clip-rect":m});p.attrs["clip-rect"]||p.attr({"clip-rect":[m[0],0,v,m[3]+m[1]]});e.animateWith(u,q,{"clip-rect":m},t,n);p.animateWith(u,q,{"clip-rect":[m[0],0,v,m[3]+m[1]]},t,n);this.preDrawCalculate();this.drawSumValueFlag=!0;for(k=0;k<b;k++)for(e=a[k],m=e.length,this.manageClip=!0,e=0;e<m;e++)p=a[k][e].dataSet,p.draw();r.drawTrendRegion&&this.drawTrendRegion()},_moveTrendRegion:function(a,b,k){var e=this.chart,m=
e.isBar,p=e.graphics.trendRegion.columnTrendRegion,n=e.config.plotcolorintooltip,r=e.config.rolloverbandanimationduration,t=e.config.rolloverbandanimation?r:0,r=this.config,u=e.components.xAxis[0].getAxisPosition(a),C=e.components.dataset,L=C.length,z=C[0].components.data.length,N=r.prevIndexHovered;k=void 0===k?!0:k;var w,F,M,h,d,f=r.toolText||(r.toolText=""),c=v.toolTip;b=b&&b.originalEvent;var D,G;if(!(0>a||a>=z)){if(r.customHighlightFlag&&!r.groupHighlightFlag||N!==a){f="";for(w=0;w<L;w++)M=C[w],
F=M.components.data,z=F[a],h=F[N],d=z&&z.config,F=M.graphics.sharedAnchor,D=h&&h.config.setValue,G=z&&z.config.setValue,k&&h&&(h.graphics&&h.graphics.element||F&&F.element)&&(D||0===D)&&M._rolloutResponseSetter(e,h,b,!0),z&&(G||0===G)&&(z.graphics&&z.graphics.element||F&&F.element)&&M.visible&&(void 0!==a&&(k&&M._rolloverResponseSetter(e,z,b,!0),n?(h=d&&J(d.originalPlotColor,d.color),r.toolText=f+=O+A(h)+q+z.config.finalTooltext+E):r.toolText=f+=z.config.finalTooltext+E),M.config.hidSharedAnchor||
void 0!==a||F&&F.element.hide());r.groupHighlightFlag=!0}f&&r.customHighlightFlag&&this._drawTooltip(a,void 0,b);N!==a&&(void 0===N&&(t=0),z=C[0].components.data,void 0!==a?(t?m?p.animate({transform:"t0,"+u},t):p.animate({transform:"t"+u+",0"},t):m?p.transform("t0,"+u):p.transform("t"+u+",0"),p.show(),k&&(m=void 0!==N&&z[N].config,void 0!==N&&H.call(p,e,b,"trendRegionRollOut",{index:N,categoryLabel:m.origLabel||m.label}),H.call(p,e,b,"trendRegionRollOver",{index:a,categoryLabel:z[a].config.origLabel||
z[a].config.label}))):(p.hide(),m=z[N].config,k&&H.call(p,e,b,"trendRegionRollOut",{index:N,categoryLabel:m.origLabel||m.label})),void 0!==a&&f||(r.toolText="",c.hide(e.chartInstance.id)),this.config.prevIndexHovered=a)}},_drawTooltip:function(a,l,k){var e=this.config,m=e.toolText,p=this.chart,n=p.config,r=p.isBar||0,t=p.components,u=n.datasetOrder||t.dataset,v,C=t.paper,z=u.length,H,t=t.yAxis[0],w=p.linkedItems.container,F=this.sumValues[0],Q=n.plotcolorintooltip,n=n.tooltipgrayoutcolor,h,d,f,c,
D,G;if(void 0!==l)for(m="",G=0;G<z;G++)v=u[G],H=v.components.data,d=(H=H[a])&&H.config,f=H.config.displayValue||0,h=d.color,h=d&&J(d.originalPlotColor,h),(f=void 0!==a&&f)&&v.visible&&(v=l===G?void 0:n,Q?(f=l===G?h:n,e.toolText=m+=O+A(f)+q+M+A(v)+N+H.config.finalTooltext+U+E):e.toolText=m+=M+A(v)+N+H.config.finalTooltext+U+E);k||(H=u[0].components.data[a],l=w.getBoundingClientRect(),e=b.document.documentElement,c=H._xPos+(r&&H._width)+l.left+(b.pageXOffset||e.scrollLeft)-e.clientLeft-L.pointeroffset,
D=l.top+(b.pageYOffset||e.scrollTop)-e.clientTop+(F?t.getPixel(F[a].positive):H._yPos)-L.pointeroffset);L.customDraw(m,C,k,c,D,p.chartInstance.id)},_notifyGroup:function(a,b){var k=this.chart,e=k.components.dataset,m=e.length,p,n,r,t,q=this.config;p=q.customHighlightFlag;var u=this.config.prevIndexHovered,v=b.originalEvent;!a&&(q.customHighlightFlag=!0);if(a&&p){for(p=0;p<m;p++)t=e[p],n=(r=t.components.data[u])&&r.config.setValue,r&&(n||0===n)&&(r.graphics||t.graphics.sharedAnchor)&&t._rolloutResponseSetter(k,
r,v,!0);q.customHighlightFlag=!1;q.groupHighlightFlag=!1}},_getHoveredRegion:function(a,b,k){var e=this.chart,m=e.config,p=e.components.xAxis[0],n=e.components.canvas.config,r=Math.max(n.canvasPaddingLeft,n.canvasPadding),n=m.canvasLeft,t=m.canvasRight,q=m.canvasTop,m=m.canvasBottom,e=p.getValue(e.isBar?b-q-r:a-n-r),e=Math.round(e);0>e||e>=p.getCategoryLen()||a<=n||a>=t||b<=q||b>=m?this._moveTrendRegion(void 0,k):this._moveTrendRegion(e,k)},drawTrendRegion:function(){var a=this.chart,b=a.isBar,k=
a.config,e=a.graphics,m=e.trendRegion||(e.trendRegion={}),p=m.columnTrendRegion,n=e.columnTrendGroup,r=k.trendRegionColor,t=k.trendRegionStroke,a=a.components.paper,q=this.stackConfig[0].xPosOffset,u=this.config.groupNetWidth,v=this.config.groupMaxWidth||(this.config.groupMaxWidth=1),z=k.prevTrendRegionOverPlot,A=k.drawCrossLineOnTop,b="M"+(b?k.canvasLeft:0)+", "+(b?0:k.canvasTop)+", "+(b?"H"+(k.canvasWidth+k.canvasLeft):"V"+(k.canvasHeight+k.canvasTop));this.config.trendRegionOffset=q-(v-u)/2;r=
{path:b,fill:r,stroke:t,"stroke-width":v,"stroke-linecap":"butt"};z!==A&&(A?n.insertAfter(e.datasetGroup):n.insertBefore(e.datasetGroup),p&&p.remove(),delete m.columnTrendRegion,p=void 0);k.prevTrendRegionOverPlot=A;p?p.attr(r):(p=m.columnTrendRegion=a.path(r,n),p.hide())},getDataSetPosition:function(a){var b=this.numVisiblePositions,k=this.stackConfig[a.positionIndex||0];a=a.visible;var e;if(k){if(!a&&k.visible||0===b)e=0;return{xPosOffset:k.xPosOffset,columnWidth:k.columnWidth,height:e}}},preDrawCalculate:function(){var a=
this.chart,b=a.config.transposeAxis,n=this.stackConfig,e=this.stackSumValue,q=this.positionStackArr,p=this.sumValues=[],u=this.dataLimits=[],v=this.config,t=!1,A=a.config,E=A.isstacked,H=q.length,z,J,w,F,L,h,d,f,c,D,G,N,M,O,Q,U,ca,ma=a.isBar,qa=a.jsonData.chart,va=a.components.xAxis[0],ha=C(ma?qa.overlapbars:qa.overlapcolumns,a.is3D?0:1),ra=va.getAxisPosition(0),ka=va.getAxisPosition(1),na=m(ka-ra),da=k(C(qa.plotspacepercent),0),oa=C(qa.plotpaddingpercent),ra=k(C(qa.plotspacepercent,20)%100,0),Y=
v.groupPadding=ra/200,za,ka=!0,fa,Aa,ua;for(d=this.numVisiblePositions=0;d<H;d++){f=q[d].length;U=n[d]||(n[d]={});U.visible=!1;U.previousVisibleCount=this.numVisiblePositions;Aa=[];for(ca=0;ca<f;ca++)if(ua=Infinity,F=q[d][ca],fa=F.dataSet.yAxis,F&&!1!==F.dataSet.visible&&(U.visible=!0),E){h=q[d][ca+1];c=ca;for(t=!1;0<=c&&!t;)t=(z=q[d][--c])&&z.dataSet.visible;L=F&&F.dataSet.components.data;Q=h&&h.dataSet.components.data;D=F.dataSet.components.data;G=z&&z.dataSet.components.data;D||(D=F.dataSet.components.data=
[]);N=L&&L.length;for(h=0;h<N;h++){(M=D[h])||(M=D[h]={config:{}});O=G&&G[h];if(!O)for(;0<=c&&!O;)if(t=(z=q[d][--c])&&z.dataSet.visible)O=(G=z&&z.dataSet.components.data)&&G[h];M=M.config;M.value=t=fa.getCleanValue(L[h].config.setValue);w=(O=O&&O.config)&&O.value;!Aa[h]&&(Aa[h]=(w||0===w)&&!0);J=(O&&O.previousPositiveY||0)+(O&&(0<w?w:0)||0);w=(O&&O.previousNegativeY||0)+(O&&(0>w?w:0)||0);M.previousPositiveY=J;M.previousNegativeY=w;ua=r(ua,(w||J)+M.setValue);Q&&Q[h]&&Q[h].config.setValue||(e[d]||(e[d]=
[],e[d].parentYAxis=F.dataSet.config.parentYAxis),e[d][h]=J+(F.dataSet.visible&&m(t))+m(w),!e[d][h]&&(e[d][h]=1),p&&(p[d]||(p[d]=[]),p[d][h]=p[d][h]||{},null!==t&&(M=F.dataSet.visible,p[d][h].visible=Aa[h]||M&&!0,p[d][h].positive=J+(0<=t?M&&t:0),p[d][h].negative=w+(0>t?M&&t:0))))}h=q[d][ca+1];c=ca;if(!b)for(z=q[d][ca-1],L=F&&F.dataSet.components.data,Q=h&&h.dataSet.components.data,D=F.dataSet.components.data,G=z&&z.dataSet.components.data,N=L&&L.length,h=0;h<N;h++){M=D[h];O=G&&G[h];if(!O)for(;0<=
c&&!O;)O=(G=(z=q[d][--c])&&z.dataSet.components.data)&&G[h];M=M.config;M.value=t=fa.getCleanValue(L[h].config.setValue);O=O&&O.config;ua=r(ua,(w||J)+M.setValue);za=(O&&O.previousPositiveDataLimit||0)+(O&&(0<O.value?O.value:0)||0);O=(O&&O.previousNegativeDataLimit||0)+(O&&(0>O.value?O.value:0)||0);M.previousPositiveDataLimit=za;M.previousNegativeDataLimit=O;Q&&Q[h]&&Q[h].config.setValue||!u||(u[d]||(u[d]=[],u[d].parentYAxis=F.dataSet.config.parentYAxis),u[d][h]=u[d][h]||{},null!==t&&(u[d][h].positive=
za+(0<=t?t:0),u[d][h].negative=O+(0>t?t:0)))}ua&&(F.dataSet.config.minValue=ua)}U.visible&&(this.numVisiblePositions+=1)}b&&(this.dataLimits=this.sumValues);b=this.numVisiblePositions;d=m(C(ma?qa.maxbarheight:qa.maxcolwidth,a.maxColWidth||50));a=v.groupNetWidth=(1-.01*da)*na||r(na*(1-2*Y),d*(b||1));void 0===qa.plotspacepercent&&a>=A.canvasWidth/2&&(v.groupNetWidth=a=na-d/2);v=a/2;A=0===b?a:a/b;ha=r(A-1,1<b?ha||void 0!==oa?0<oa?A*oa/100:0:4:0);for(d=0;d<H;d++)oa=this.stackConfig[d],qa=oa.previousVisibleCount,
oa.xPosOffset=qa*A-v+ha/2,A-=ha,oa.columnWidth=oa.visible||0===b?A:0,A+=ha;H=va.getAxisPosition(0)-v;4>va.getAxisPosition(1)-v-(H+a)&&(ka=!1);"0"==ra&&(ka=!0);this.isCrisp=ka},getMaxSumValueSpace:function(){var a=this.stackSumValue,b=this.chart,m={},e=a.length,n=b.components.numberFormatter,p,r=0,q=0,t,u,v,A=b.linkedItems.smartLabel;t=b.config.dataLabelStyle;A.useEllipsesOnOverflow(b.config.useEllipsesWhenOverflow);A.setStyle(t);for(b=0;b<e;b++)for(t=a[b],v=t.length,u=0;u<v;u++)m=t[u],m=n.dataLabels(m),
m=A.getOriSize(m),p=m.width,m=m.height,q=k(q,p),r=k(r,m);return{maxWidth:q,maxHeight:r}},drawSumValue:function(){var b=this.chart,l=b.components,k=l.paper,e=this.positionStackArr,n=this.stackConfig,p=b.linkedItems.smartLabel,r=b.config,q,t=b.config.rotatevalues?270:0,l=l.xAxis[0],u,v=b.config.isstacked,A,z=r.dataLabelStyle,E,w,F,H,h,d,f,c,D,G,J=this.sumValuesDrawn,L,N,M,O,Q=l.getPVR(),U,qa=this.pool,va=!1,ha=!1,ra=b.get("config","animationObj"),ka=ra.duration,na=ra.dummyObj,da=ra.animObj,ra=ra.animType,
oa=b.config.stack100percent,Y;F=r.showsum;var za=1,fa=!1,Aa=this.sumValues,ua=b.config.canvasTop,ia=b.components.canvas.config.clip["clip-canvas"].slice(0),xa,ja=b.graphics.sumLabelsLayer;ia[1]=0;ia[3]+=ua;this.drawSumValueFlag=!1;if(v)if(F){ja.css(z);p.setStyle(z);ja.show();!this.graphics&&(this.graphics={});q=this.graphics.sumLabels;v=this.graphics.sumLabelContainer;q||(q=this.graphics.sumLabels=[]);v||(v=this.graphics.sumLabelContainer=[]);fa=q.length;F=Aa.length;if(fa>F)for(;F<fa;F++){ua=q[F].length;
for(H=0;H<ua;H++)u=q[F][H]||{},(G=u.element)&&G.hide();(ua=v[F])&&ua.hide();q.pop();v.pop()}ua=e.length;for(F=0;F<ua;F++){(q=v[F])||(q=v[F]=this.graphics.sumLabelContainer[F]||k.group("sumlabels",ja));b.isRealTime&&q.attr({"clip-rect":ia});H=e[F][0].dataSet;u=H.yAxis;A=Aa[F];d=C(r.scrollMaxVal,l.getCategoryLen());h=this.graphics.sumLabels[F]=this.graphics.sumLabels[F]||[];D=r.scrollMinVal||0;n[F].visible||(ha=!0);Y=n[F].xPosOffset;U=n[F].columnWidth;M=l.getPixel(d-1)+Y;L=H.addDataArr&&H.addDataArr.length;
va=H.startPosition;N=this.removedSumLabels&&this.removedSumLabels[F]&&this.removedSumLabels[F].length;for(H=r.scrollMinVal||0;H<d;H++,D++)if(fa=!1,q.show(),f=A[H]||{},G=f.positive,c=f.negative,!h[D]&&(h[D]={}),void 0!==G||void 0!==c)if(w=G+c,w=u.dataLabels(w),O=m(c)>G?c:G,G=h[D].element,!f.visible)G&&G.hide();else if(w||""===w)f=z.backgroundColor,c=z.borderColor,xa=p.getOriSize(w),E=this.getSumValueConfig({xValue:H,columnWidth:U,sumValue:O,xPosOffset:Y,stack100percent:oa,yAxis:u}),O=this.getSumValuePosition(xa,
{stack100percent:oa,rotateValues:t,xPos:E.xPos,yPos:E.yPos,sumValue:O}),E=O.x,w={text:w,fill:z.color,"text-bound":[f,c,z.borderThickness,z.borderPadding,z.borderRadius,z.borderDash],"line-height":z.lineHeight,visibility:a},O.transform=k.getSuggestiveRotation(t,E,O.y),G||(qa&&qa.sumLabels[F]&&qa.sumLabels[F][0]?(h[D].element=G=qa.sumLabels[F][0],qa.sumLabels[F].shift()):(w.x=E,w.y=O.y,w.transform=O.transform,O["text-anchor"]&&(w["text-anchor"]=O["text-anchor"]),h[D].element=G=k.text(w,q),fa=!0),J&&
ka&&(f=va,f=!0===f?NaN-Q*(L-F):!1===f?M+Q*za++:E,G.attr({x:f,y:O.y,transform:k.getSuggestiveRotation(t,f,O.y)}))),fa||(G.show().animateWith(na,da,O,ka,ra),G.attr(w));N&&this.removeGraphics(F);ha&&(q.hide(),ha=!1)}}else ja.hide();this.sumValuesDrawn=!0},getSumValueConfig:function(a){var b=this.chart,k=a.columnWidth,e=a.yAxis,m=b.config.viewPortConfig,p=m.x,n=m.scaleX,m=a.stack100percent,r=a.sumValue,t=a.xPosOffset;a=b.components.xAxis[0].getAxisPosition(a.xValue)+t+p*n;e=e.getAxisPosition(m?100:r);
return{xPos:a+.5*k,yPos:e}},getSumValuePosition:function(a,b){var k=this.chart,e=k.config,m=e.canvasBottom,p=e.canvasTop,n=k.is3D,r=b.stack100percent,t=e.yDepth,e=e.xDepth,q=b.yPos,u,v=b.xPos,z=k.components.canvas.config.canvasBorderWidth,A=b.sumValue;u=k=b.rotateValues?a.width:a.height;u=u/2+2;r?q=p<=k?u:p-u-z:(0<=A&&(p=q-p,q=p<k?q+u-p:q-u),0>A&&(q=m-q<k?q-u:q+u,n&&(v-=e,q+=t)));return{x:v,y:q}},removeGraphics:function(a){var b=this.removedSumLabels||[],k=this.positionStackArr[a][0].dataSet,e=k.endPosition,
m=k.config.rotateValues,p=this.chart,k=(p.config.realTimeConfig||{}).clear,n=p.components.paper,r=b[a]&&b[a].length||0,t=p.components.xAxis[0],q=this.pool||(this.pool={sumLabels:[]}),u=t.getPVR(),v=p.get("config","animationObj"),z,p=function(){this.hide()},t=v.dummyObj,A=v.animObj,w=v.transposeAnimDuration,E=v.animType,C;C=function(){return!1===e?function(a){var b=a.attr("x")-u*r;a=a.attr("y");return{x:b,transform:n.getSuggestiveRotation(m,b,a)}}:function(a){var b=a.attr("x")+u*r||0;a=a.attr("y");
return{x:b,transform:n.getSuggestiveRotation(m,b,a)}}}();q.sumLabels||(q.sumLabels=[]);for(v=0;v<r;v++)z=b[a][0]&&b[a][0].element,b[a].splice(0,1),z&&(void 0===e||k?z&&z.hide().attr({"text-bound":[]}):w?z.animateWith(t,A,C(z),w,E,p):(z.stop(),z.hide()),q.sumLabels[a]||(q.sumLabels[a]=[]),q.sumLabels[a]=q.sumLabels[a].concat(z))},removeSumLabels:function(a,b,k){var e=this.chart,m=(this.graphics||{}).sumLabels||[],p;if(m.length){this.removedSumLabels||(this.removedSumLabels=[]);this.removedSumLabels[k]||
(this.removedSumLabels[k]=[]);if(!this.removedSumLabels[k].length||!e.config._sumValuesUpdated||e.config._dataUpdated){for(p=a;p<a+b;p++)m[k].push({});this.removedSumLabels[k]=this.removedSumLabels[k].concat(m[k].splice(a,b))}e.config._sumValuesUpdated=!0}},getDataLimits:function(){var a=this.chart,b=this.positionStackArr,m,e,n,p,q,u=-Infinity,t=Infinity,v,A,E;m=a.config.isstacked;var a=a.config.transposeAxis,z=-Infinity,C=Infinity;n=q=Infinity;var w;this.preDrawCalculate();p=this.dataLimits;if(m){m=
0;for(A=p.length;m<A;m++)for(v=p[m].length,w=p[m].parentYAxis,e=0;e<v;e++)E=p[m][e],void 0!==E.positive&&void 0!==E.negative&&(1===w?(u=k(u,E.positive),t=r(t,E.negative),n=r(n,u)):(z=k(z,E.positive),C=r(C,E.negative),q=r(q,z)));0===C&&(C=q);0===t&&(t=n)}p=b.length;for(m=0;m<p;m++)for(e=b[m],q=e.length,e=0;e<q;e++)n=b[m][e].dataSet,!1===n.visible&&a||(n=n.config,1===n.parentYAxis?(u=k(u,n.maxValue),t=r(t,n.minValue)):(z=k(z,n.maxValue),C=r(C,n.minValue)));this.maxValue=z;this.minValue=C;return{max:z,
min:C,sYMax:u,sYMin:t}},manageSpace:function(){var a=this.positionStackArr,b,m,e,n,p=a.length,r={paddingLeft:-Infinity,paddingRight:-Infinity};for(b=0;b<p;b++)for(e=a[b].length,n=0;n<e;n++)m=a[b][n].dataSet,m=m.manageSpace&&m.manageSpace()||{},r.paddingLeft=k(m.paddingLeft,r.paddingLeft),r.paddingRight=k(m.paddingRight,r.paddingRight);return r}}])}]);Q.register("module",["private","modules.renderer.js-dataset-group-realtimecolumn",function(){Q.register("component",["datasetGroup","realtimecolumn",
{},"Column"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-waterfall2d",function(){Q.register("component",["datasetGroup","Waterfall2D",{},"column"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-column3d",function(){Q.register("component",["datasetGroup","Column3d",{},"column"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-bar2d",function(){var b=this.hcLib.preDefStr,v=b.POSITION_MIDDLE,J=b.POSITION_START;Q.register("component",
["datasetGroup","bar2d",{getSumValueConfig:function(b){var v=this.chart,A=b.columnWidth,u=b.yAxis,a=v.config.viewPortConfig,J=a.x,q=a.scaleX,a=b.stack100percent,M=b.sumValue,Q=b.xPosOffset;b=v.components.xAxis[0].getAxisPosition(b.xValue)+Q+J*q;u=u.getAxisPosition(a?100:M);return{xPos:u,yPos:b+.5*A}},getSumValuePosition:function(b,H){var A=this.chart,u=A.config,a=u.canvasLeft,O=u.canvasWidth,q=A.is3D,M=H.stack100percent,Q=u.yDepth,u=u.xDepth,N,E={},r=H.sumValue,k=H.xPos,m=H.yPos,n=A.components.canvas.config.canvasBorderWidth,
A=N=H.rotateValues?b.height:b.width,A=A/2+2;M?(k+=n,E["text-anchor"]=J):(0<=r?(a=a+O-k,a<N?(k=k-A+a,q&&(k-=u,m+=Q)):k+=A):(a=k-a,a<N?(k=k+A-a-(q?u:0),m+=q?Q:0):(k-=A,q&&(k-=u,m+=Q))),E["text-anchor"]=v);E.x=k;E.y=m;return E}},"column"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-bar3d",function(){Q.register("component",["datasetGroup","bar3d",{},"bar2d"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-scrollcolumn2d",function(){Q.register("component",
["datasetGroup","scrollcolumn2d",{},"column"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-area",function(){var b=this.hcLib.pluckNumber,v=Math.ceil;Q.register("component",["datasetGroup","Area",{_decidePlotableData:function(b,C,H){var A=this.chart.config,u,a,O,q,M,Q,N,E,r,k,m=(b&&b.length)-C,n,L,g=v(1/A.binSize*A.labelBinSize);for(n=a=u=O=0;O<m&&H;O+=C,u++,a++){L=n%g;n++;N=E=r=k=void 0;for(q=O+C;q>=O+1;q--)Q=b[q].config,M=Q.setValue,Q.isSkipped=!0,A.labelBinSize&&(Q.labelSkip=
!0),r?r<M&&(N=q,r=M):(N=q,r=M),k?k>M&&(E=q,k=M):(E=q,k=M);delete b[E].config.isSkipped;delete b[N].config.isSkipped;0===L&&(delete b[E].config.labelSkip,delete b[N].config.labelSkip)}},draw:function(){var v=this.chart,C=v.config,H=v.graphics,A=this.positionStackArr,u,a=A.length;u=H.areaGroup;var H=H.columnGroup,O=v.components.paper,v=b(v.jsonData.chart.areaovercolumns,1);u.area=u.area||O.group("area",u);u.areaConnector=u.areaConnector||O.group("area-connector",u);u.shadows||(u.shadows=O.group("shadow",
u).toBack());v?H&&u.insertAfter(H):u.toBack();this.preDrawCalculate();for(u=0;u<a;u++)for(v=A[u],v=v.length,H=0;H<v;H++)O=A[u][H].dataSet,O.draw();C.drawTrendRegion&&this.drawTrendRegion()}},"column"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-line",function(){Q.register("component",["datasetGroup","line",{},"area"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-scrollarea2d",function(){Q.register("component",["datasetGroup","scrollarea2d",{},"Area"])}]);
Q.register("module",["private","modules.renderer.js-dataset-group-realtimearea",function(){Q.register("component",["datasetGroup","realtimearea",{},"area"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-radar",function(){Q.register("component",["datasetGroup","radar",{},"area"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-mssplinearea",function(){Q.register("component",["datasetGroup","MSSplineArea",{},"area"])}]);Q.register("module",["private","modules.renderer.js-dataset-group-marimekko",
function(){var b=this.hcLib,v=b.pluck,J=b.pluckNumber,C=b.preDefStr.visibleStr,H=Math,A=H.min,u=H.max,a=H.abs,O=b.schedular;Q.register("component",["datasetGroup","marimekko",{init:function(){this.__base__.init.call(this);this.stackConf=[]},getDataSetPosition:function(a,b){var u=this.numVisiblePositions,v=this.stackConfig[a.positionIndex||0],A=this.stackConf[b],r;if(!a.visible&&v.visible||0===u)r=0;return{columnWidth:A.columnWidth,height:r,x:A.x}},draw:function(){var a=this,u=a.positionStackArr,v=
u.length,A=a.chart.getJobList(),E,r,k,m;a.preDrawCalculate();a.drawLabel();a.drawSumValueFlag=!0;for(E=0;E<v;E++)for(r=u[E],k=r.length,a.manageClip=!0,r=0;r<k;r++)m=u[E][r].dataSet,m.draw();a.drawn?a.drawSumValue():A.labelDrawID.push(O.addJob(function(){a.drawSumValue()},b.priorityList.label));a.drawn=!0},preDrawCalculate:function(){var b=this.chart,v=this.stackSumValue,C,H=b.isBar,E=b.jsonData.chart,r=b.components.xAxis[0];C=J(H?E.overlapbars:E.overlapcolumns,b.is3D?0:1);var k=r.getAxisPosition(0),
m=r.getAxisPosition(1),n=a(m-k),L=u(J(E.plotspacepercent),0),g=J(E.plotpaddingpercent),l,k=b.config.canvasWidth,B,e=m=0,O=r.config.axisRange.min,r=r.config.axisRange.max-O,p=b.config.categories,T;B=0;var K=b.components.numberFormatter;this.__base__.preDrawCalculate.call(this);b=O;l=this.numVisiblePositions;H=J(H?E.maxbarheight:E.maxcolwidth,Infinity);H=(1-.01*L)*n||A(1*n,H*(l||1));H=0===l?H:H/l;A(H-1,1<l?C||void 0!==g?0<g?H*g/100:0:4:0);C=0;for(g=v[0].length;C<g;C++)m+=v[0][C];this.totalSumValue=
m;for(C=0;C<p.length;C++)H=p[C],H.widthpercent&&(B+=K.getCleanValue(H.widthpercent));100===B&&(T=this.setUserWidth=1);C=0;for(g=v[0].length;C<g;C++)H=p[C],this.stackConf[C]||(this.stackConf[C]={}),B=this.stackConf[C],H=T?K.getCleanValue(H.widthpercent)/100:v[0][C]/m,B.columnWidth=H*k,e+=H,H=H*r/2+b,b=e*r+O,B.x=H;this.isCrisp=!0},getStackSumPercent:function(){var a=this.stackSumValue,b=this.totalSumValue,u,v=this.chart.components.numberFormatter,A=this.chart.config.categories,r=this.setUserWidth,k=
[];for(u=0;u<a[0].length;u++)k[u]=r?v.getCleanValue(A[u].widthpercent):a[0][u]/b*100;return k},drawLabel:function(){var a=this.chart,b=a.components,u=a.linkedItems.smartLabel,A=this.getStackSumPercent(),E=this.stackConf,r,k,m,n=a.graphics.datalabelsGroup,H=b.numberFormatter,g=0,l,B,e=b.paper,O=a.config.canvasBottom,p=b.xAxis[0];r=a.config.style;var T=a.config.dataLabelStyle,K=A.length,t,Q=this.sumValues[0],P,S,z,R=a.jsonData.chart;S=b.canvas.config.clip["clip-canvas"];n=this.labelContainer=this.labelContainer||
e.group("labelGroup",n);k=J(R.showxaxispercentvalues,1);var R=this.xLabels=this.xLabels||[],w=a.get("config","animationObj"),a=w.duration,b=w.animType,F=w.dummyObj,w=w.animObj;n.attr({"clip-rect":S});u.setStyle(T);if(k)for(S=v(T.backgroundColor,"#ffffff"),P=v(""===T.borderColor?"#"+r.inCancolor:T.borderColor,"#000000"),z=v(T.borderThickness,1),m=0;m<K-1;m++)g+=A[m],l=H.percentValue(g),r=p.getAxisPosition(E[m].x)+E[m].columnWidth/2,k=O,t=R[m],Q[m].positive===Q[m].negative?t&&t.hide():(B={text:l,fill:T.color,
"text-bound":[S,P,z,T.borderPadding,T.borderRadius,T.borderDash],"line-height":T.lineHeight,visibility:C},l=u.getOriSize(l),k=k-l.height/2-z,t?(t.show().animateWith(F,w,{x:r,y:k},a,b),t.attr(B)):(B.x=r,B.y=k,R[m]=e.text(B,n)))},getSumValueConfig:function(a){var b=a.yAxis,u=a.stack100percent,v=a.sumValue;a=this.chart.components.xAxis[0].getAxisPosition(this.stackConf[a.xValue].x);b=b.getAxisPosition(u?100:v);return{xPos:a,yPos:b}}},"column"])}]);Q.register("module",["private","modules.renderer.js-interface",
function(){var b=this,v=b.hcLib,J=b.renderer.getRenderer("javascript"),C=v.hasModule,H=v.loadModule,A=v.getMetaSentence,u=v.moduleCmdQueue,a=v.executeWaitingCommands,O=v.injectModuleDependency,q=v.moduleDependencies,M=v.getDependentModuleName,Q,N;Q=function(q){var r,k,m,n={},u;q=A(q);for(r in b.core.items)r=b.core.items[r],k=r.chartType(),m=r.options.chartTypeSourcePath+k,(k=r.jsVars)&&k.waitingModule&&r.__state.rendering&&v.needsModule(q.predicate,m)&&(k.waitingModuleError=!0,k=M(m).concat(k.userModules),
k.length&&(k=k[k.length-1],n[k]=v.moduleCmdQueue[k]));for(u in n)a(n[u]);b.raiseError(b.core,"11171116151","run","HC-interface~renderer.load","Unable to load required modules and resources: "+q.key)};N=function(a,r,k){var m=a.args,n=a.options;a._chartMessageImageStyle={imageHAlign:m.typeNotSupportedMessageImageHAlign||n.baseChartMessageImageHAlign,imageVAlign:m.typeNotSupportedMessageImageVAlign||n.baseChartMessageImageVAlign,imageAlpha:m.typeNotSupportedMessageImageAlpha||n.baseChartMessageImageAlpha,
imageScale:m.typeNotSupportedMessageImageScale||n.baseChartMessageImageScale};a._chartMessageStyle={color:m.typeNotSupportedMessageColor||n.baseChartMessageColor,fontFamily:m.typeNotSupportedMessageFont||n.baseChartMessageFont,fontSize:m.typeNotSupportedMessageFontSize||n.baseChartMessageFontSize};b.hcLib.createChart(a,r,"base",k,n.typeNotSupportedMessage)};v.eventList=b.extend(b.legacyEventList,{loaded:"FC_Loaded",dataloaded:"FC_DataLoaded",rendered:"FC_Rendered",drawcomplete:"FC_DrawComplete",dataxmlinvalid:"FC_DataXMLInvalid",
nodatatodisplay:"FC_NoDataToDisplay",exported:"FC_Exported"});v.raiseEvent=b.raiseEventWithLegacy;q.charts=b.extend(q.charts||{},{column2d:0,column3d:0,bar2d:0,bar3d:0,pie2d:0,pie3d:0,line:0,area2d:0,doughnut2d:0,doughnut3d:0,pareto2d:0,pareto3d:0,mscolumn2d:0,mscolumn3d:0,msline:0,msarea:0,msbar2d:0,msbar3d:0,stackedcolumn2d:0,marimekko:0,stackedcolumn3d:0,stackedarea2d:0,stackedcolumn2dline:0,stackedcolumn3dline:0,stackedbar2d:0,stackedbar3d:0,msstackedcolumn2d:0,mscombi2d:0,mscombi3d:0,mscolumnline3d:0,
mscombidy2d:0,mscolumn3dlinedy:0,stackedcolumn3dlinedy:0,msstackedcolumn2dlinedy:0,scatter:0,bubble:0,ssgrid:0,scrollcolumn2d:0,scrollcolumn3d:0,scrollline2d:0,scrollarea2d:0,scrollstackedcolumn2d:0,scrollcombi2d:0,scrollcombidy2d:0,zoomline:0,zoomlinedy:0,zoomscatter:0});q.powercharts=b.extend(q.powercharts||{},{spline:0,splinearea:0,msspline:0,mssplinearea:0,mssplinedy:0,multiaxisline:0,multilevelpie:0,waterfall2d:0,msstepline:0,inversemsline:0,inversemscolumn2d:0,inversemsarea:0,errorbar2d:0,errorscatter:0,
errorline:0,logmsline:0,logmscolumn2d:0,logstackedcolumn2d:0,radar:0,dragnode:0,candlestick:0,selectscatter:0,dragcolumn2d:0,dragline:0,dragarea:0,boxandwhisker2d:0,kagi:0,heatmap:0,treemap:0});q.widgets=b.extend(q.widgets||{},{angulargauge:0,bulb:0,cylinder:0,drawingpad:0,funnel:0,hbullet:0,hled:0,hlineargauge:0,vlineargauge:0,pyramid:0,realtimearea:0,realtimecolumn:0,realtimeline:0,realtimelinedy:0,realtimestackedarea:0,realtimestackedcolumn:0,sparkcolumn:0,sparkline:0,sparkwinloss:0,thermometer:0,
vbullet:0,gantt:0,vled:0});q.maps=b.extend(q.maps||{},{});b.extend(J,{render:function(a,r){var k=this.chartType(),m=this.options.chartTypeSourcePath+k,n=this.jsVars,q=this.__state,g=v.chartAPI,l=this.options,B=this.args,e=this.options.showChartLoadingMessage,A,p;A=M(m).concat(n.userModules);n.isResizing&&(n.isResizing=clearTimeout(n.isResizing));n.hcObj&&n.hcObj.destroy&&n.hcObj.destroy();if(g[k]){if(g[q.lastRenderedType]&&q.lastRenderedType!==k)for(p in b.raiseEvent("chartTypeChanged",{previousType:q.lastRenderedType,
newType:k},this),g[q.lastRenderedType].eiMethods)delete this[p];q.lastRenderedType=k;q.lastRenderedSrc=this.src;!n.waitingModuleError&&v.raiseEvent("internal.loaded",{type:k,triggeredModuleLoad:n.drLoadAttempted||n.waitingModule},this,[this.id]);delete n.waitingModule;delete n.waitingModuleError;delete n.drLoadAttempted;b.hcLib.createChart(this,a,k,r)}else{if(k&&C(A)){if(n.drLoadAttempted){b.raiseError(this,11112822001,"run","HC-interface~renderer.render","Chart runtimes not loaded even when resource is present");
N(this,a,r);return}O(m)&&(A=M(m).concat(n.userModules));n.drLoadAttempted=!0}else{if(!A.length){N(this,a,r);return}if(n.waitingModuleError){N(this,a,r);delete n.waitingModule;delete n.waitingModuleError;return}}(k=u[A[A.length-1]])?(k.push({cmd:"render",obj:this,args:arguments}),n.waitingModule||(n=e?l.PBarLoadingText||l.loadMessage:"",this._chartMessageImageStyle={imageHAlign:B.loadMessageImageHAlign||l.baseChartMessageImageHAlign,imageVAlign:B.loadMessageImageVAlign||l.baseChartMessageImageVAlign,
imageAlpha:B.loadMessageImageAlpha||l.baseChartMessageImageAlpha,imageScale:B.loadMessageImageScale||l.baseChartMessageImageScale},this._chartMessageStyle={color:B.loadMessageColor||l.baseChartMessageColor,fontFamily:B.loadMessageFont||l.baseChartMessageFont,fontSize:B.loadMessageFontSize||l.baseChartMessageFontSize},b.hcLib.createChart(this,a,"base",void 0,n),J.load.call(this,a,r))):(b.raiseError(this,12080515551,"run","HC-interface~renderer.render","Unregistered module in dependentModule definition."),
this._chartMessageImageStyle={imageHAlign:B.renderErrorMessageImageHAlign||l.baseChartMessageImageHAlign,imageVAlign:B.renderErrorMessageImageVAlign||l.baseChartMessageImageVAlign,imageAlpha:B.renderErrorMessageImageAlpha||l.baseChartMessageImageAlpha,imageScale:B.renderErrorMessageImageScale||l.baseChartMessageImageScale},this._chartMessageStyle={color:B.renderErrorMessageColor||l.baseChartMessageColor,fontFamily:B.renderErrorMessageFont||l.baseChartMessageFont,fontSize:B.renderErrorMessageFontSize||
l.baseChartMessageFontSize},b.hcLib.createChart(this,a,"base",void 0,l.renderErrorMessage))}},update:function(a){var r=this.ref,k=this.jsVars,m,n=k&&k.fcObj,n=k.container||n&&n.options&&n.options.containerElement&&n.options.containerElement.childNodes[0];k.hcObj&&k.hcObj.destroy&&k.hcObj.destroy();k.isResizing&&(k.isResizing=clearTimeout(k.isResizing));void 0===a.error?(delete k.stallLoad,delete k.loadError,!this.__state.firstRenderNotified&&this.jsVars.secondTimeRender&&(this.__state.firstRenderNotified=
!0,m=b.renderer.notifyRender),this.isActive()?this.src!==this.__state.lastRenderedSrc?this.render():b.hcLib.createChart(this,n,void 0,m):this.__state.rendering&&!k.waitingModule&&b.hcLib.createChart(this,n,void 0,m)):(this.isActive()&&"function"===typeof r.showChartMessage&&r.showChartMessage("InvalidXMLText"),delete k.loadError)},resize:function(a){var r=this.ref,k,m=this.jsVars;r&&r.resize&&(m.isResizing&&(m.isResizing=clearTimeout(m.isResizing)),m.isResizing=setTimeout(function(){k=b.normalizeCSSDimension(a.width,
a.height,r);void 0!==a.width&&(r.style.width=k.width);void 0!==a.height&&(r.style.height=k.height);r.resize();delete m.isResizing},0))},dispose:function(){var a,r=this.jsVars;r.isResizing&&(r.isResizing=clearTimeout(r.isResizing));this.apiInstance&&(this.apiInstance.dispose(),delete r.instanceAPI);if(a=this.ref)b.purgeDOM(a),a.parentNode&&a.parentNode.removeChild(a);r.container=null;v.cleanupWaitingCommands(this)},load:function(q,r){var k=this.jsVars,m=this.chartType(),n=b.hcLib.chartAPI[m],m=M(m).concat(k.userModules),
u=m[m.length-1];n||!m||m&&0===m.length?(delete k.waitingModule,q&&N(this,q||this.ref,r)):k.waitingModule||(k.waitingModule=!0,delete k.waitingModuleError,H(m,function(){delete k.waitingModule;a(v.moduleCmdQueue[u])},Q,this))}})}]);Q.register("module",["private","modules.api.dynamicchartattributes",function(){var b=this;b.extend(b.core,{setChartAttribute:function(v,J){var C,H,A,u;if("string"===typeof v)C=v,v={},v[C]=J;else if(null===v||"object"!==typeof v)return;u=0;if(A=(C=this.getChartData(b.dataFormats.JSON))&&
(C.chart||C.graph||C.map)){for(H in v)u+=1,null===v[H]?delete A[H.toLowerCase()]:A[H.toLowerCase()]=v[H];0<u&&("undefined"===typeof A.animation&&(A.animation="0"),this.setChartData(C,b.dataFormats.JSON))}else b.raiseError(this,"2105141421","run","#setChartAttribute()","Could not retrieve attribute list. Is data ready?")},getChartAttribute:function(v){var J=this.getChartData(b.dataFormats.JSON),J=J&&(J.chart||J.graph||J.map),C,H;if(0===arguments.length||void 0===v||void 0===J)return J;if("string"===
typeof v)C=J[v.toString().toLowerCase()];else if(v instanceof Array)for(C={},H=0;H<v.length;H+=1)C[v[H]]=J[v[H].toString().toLowerCase()];else b.raiseError(this,"25081429","param","~getChartAttribute()",'Unexpected value of "attribute"');return C}},!0)}]);Q.register("module",["private","api.linkmanager",function(){var b=this,v=b.FusionChartsDOMInsertModes,J={},C=function(u,a){this.items={};this.root=u;this.parent=a;a instanceof b.core?this.level=this.parent.link.level+1:(J[u.id]=[{}],this.level=0)},
H=function(b,a){return(b.options.containerElement===a.options.containerElement||b.options.containerElementId===a.options.containerElementId)&&b.options.insertMode===v.REPLACE},A=function(u){var a;u.sender.link instanceof C&&!u.sender.link.root.disposed?u.sender.link.parent instanceof b.core&&(a=u.sender.link.parent.link.items,!a[u.sender.id]&&(a[u.sender.id]=u.sender)):u.sender.link=new C(u.sender)};b.policies.link=["link",void 0];C.prototype.configuration=function(){return J[this.root.id][this.level]||
(J[this.root.id][this.level]={})};b.extend(b.core,{configureLink:function(u,a){var v;if(u instanceof Array){for(v=0;v<u.length;v+=1)"object"!==typeof J[this.link.root.id][v]&&(J[this.link.root.id][v]={}),b.extend(J[this.link.root.id][v],u[v]);J[this.link.root.id].splice(u.length)}else"object"===typeof u?("number"!==typeof a&&(a=this.link.level),void 0===J[this.link.root.id][a]&&(J[this.link.root.id][a]={}),b.extend(J[this.link.root.id][a],u)):b.raiseError(this,"25081731","param","~configureLink()",
"Unable to update link configuration from set parameters")}},!0);b.addEventListener("beforeRender",function(b){A(b)});b.addEventListener("beforeInitialize",function(b){A(b)});b.addEventListener("linkedChartInvoked",function(u,a){var v=u.sender,q=v.clone({dataSource:a.data,dataFormat:a.linkType,asyncRender:0,link:new C(v.link.root,v)},!0),A=a.alias,J;A&&(!q.typeSource&&q.swfUrl&&(q.typeSource=q.swfUrl.replace(/(.*?)?[^\/]*\.swf.*?/ig,"$1")),q.type=A);v.args&&0!==parseInt(v.args.animate,10)&&delete q.animate;
b.extend(q,v.link.configuration());b.raiseEvent("beforeLinkedItemOpen",{level:v.link.level},v.link.root,void 0,function(){b.core.items[q.id]instanceof b.core&&b.core.items[q.id].dispose();J=new b.core(q);H(J,v)||v.options.overlayButton&&v.options.overlayButton.message||("object"!==typeof v.options.overlayButton&&(v.options.overlayButton={}),v.options.overlayButton.message="Close");J.render();b.raiseEvent("linkedItemOpened",{level:v.link.level,item:J},v.link.root)})});b.addEventListener("overlayButtonClick",
function(u,a){if("LinkManager"===a.id){var v=u.sender,q=v.link.level-1,A=v.link.parent,C=v.link.root;b.raiseEvent("beforeLinkedItemClose",{level:q,item:v},C,v,function(){setTimeout(function(){b.core.items[v.id]&&v.dispose();b.raiseEvent("linkedItemClosed",{level:q},C)},0);A.disposed||A.isActive()||!H(v,A)||A.render()})}});b.addEventListener("DrawComplete",function(u){u=u.sender;var a;u&&void 0!==u.link&&u.link.root!==u&&u.link.parent instanceof b.core&&(u.ref&&"function"===typeof u.ref.drawOverlayButton?
(a=b.extend({show:!0,id:"LinkManager"},u.link.parent.options.overlayButton),b.extend(a,u.link.parent.link.configuration().overlayButton||{}),u.ref.drawOverlayButton(a)):b.raiseWarning(u,"04091602","run","::LinkManager^Loaded","Unable to draw overlay button on object. -"+u.id))});b.addEventListener("beforeDispose",function(u){var a=u.sender;a&&a.link instanceof C&&(a&&a.link&&a.link.parent instanceof b.core&&a.link.parent.link&&a.link.parent.link.items&&delete a.link.parent.link.items[u.sender.id],
delete J[a.id])})}]);Q.register("module",["private","modules.renderer.js-thememanager",function(){var b=this,v,J,C,H=/\s+!important$/,A=/\\!important$/,u=function(a,b){for(var m=b.length,n=-1;m--;)if(a===b[m]){n=m;break}return n},a=function(b,k,m,n,q){var g,l,v,e;q?(n.push(b),q.push(k)):(n=[b],q=[k]);if(k instanceof Array)for(g=0;g<k.length;g+=1){try{l=b[g],v=k[g]}catch(A){continue}if("object"!==typeof v)m&&void 0===v||(b[g]=v);else{if(null===l||"object"!==typeof l)l=b[g]=v instanceof Array?[]:{};
e=u(v,q);-1!==e?l=b[g]=n[e]:a(l,v,m,n,q)}}else for(g in k){try{l=b[g],v=k[g]}catch(A){continue}if(null!==v&&"object"===typeof v)if(e=Object.prototype.toString.call(v),"[object Object]"===e){if(null===l||"object"!==typeof l)l=b[g]={};e=u(v,q);-1!==e?l=b[g]=n[e]:a(l,v,m,n,q)}else"[object Array]"===e?(null!==l&&l instanceof Array||(l=b[g]=[]),e=u(v,q),-1!==e?l=b[g]=n[e]:a(l,v,m,n,q)):b[g]=v;else b[g]=v}return b},O=function(b,k,m){if("object"!==typeof b&&"object"!==typeof k)return null;if("object"!==
typeof k||null===k)return b;"object"!==typeof b&&(b=k instanceof Array?[]:{});a(b,k,m);return b},q=function(a){var b={important:!1,str:""};if(!a)return b;a=a.toString();H.test(a)?(a=a.replace(H,""),b.important=!0):(a=a.replace(A,"!imporant"),b.important=!1);b.str=a;return b},M=function(a,b){var m,n,q,g,l,u,e=0,v=0;for(m in a)if(n=a[m],n instanceof Array)for(u=n.length,l=0;l<u;l+=1){if(g=n[l],"object"===typeof g)if("category"===m)if("true"===g.vline){if(q=b.component("vline",e,g))Q(g,q),e+=1}else{if(q=
b.component("category",v,g,u))Q(g,q),v+=1}else if(q=b.component(m,l,g,u))Q(g,q),M(g,q)}else"object"===typeof n&&(q=b.component(m,null,n))&&(Q(n,q),M(n,q))},Q=function(a,b){var m=b.getAll(),n,u;for(n in m)u=m[n].toString(),u=q(u),u.important?a[n.toLowerCase()]=u.str:void 0===a[n.toLowerCase()]&&(a[n.toLowerCase()]=u.str)},N=function(a,b){"geo"===b.defaultSeriesType&&E.call(this,a,b)},E=function(a,k){var m=a.sender,n=m.getChartData(b.dataFormats.JSON,!0),q;n.error||((q=n.data.chart.theme)?C.themify(q,
m,m.chartType(),n.data,"geo"===k.defaultSeriesType&&"geo"):m.jsVars&&m.jsVars.themeObject&&m.jsVars.themeObject.dispose())};v=function(){this.themeStore={}};v.prototype={constructor:v,add:function(a){for(var b=0,m=a.length,n;b<m;b+=1)(n=a[b].name)&&(this.themeStore[n]=a[b])},themify:function(a,k,m,n,q){var g=k.jsVars,l=a.split(","),u=[],e=l.length,v,p;if(e){for(p=0;p<e;p+=1){v=this.themeStore;var A;A=l[p];A=A.replace(/^\s\s*/,"");for(var C=/\s/,t=A.length;C.test(A.charAt(--t)););A=A.slice(0,t+1);
(v=v[A])&&u.push(this.evaluateThemeJSON(v.theme,k,m,q))}u.length?(g.themeObject=new J(u,k,!1,n),this.applyTheme(k),k.addEventListener("chartTypeChanged",E),k.addEventListener("internal.drawstart",N)):b.raiseWarning(k,"14051100501","run","api.themes~themify()",'The theme "'+a+'" requested has not been registered.')}},evaluateThemeJSON:function(a,b,m,n){var q={},g=b.jsVars,l=function(a){var b,g;for(b in a)g=a[b],q[b]=g instanceof Array?O(q[b]||[],g):"object"===typeof g?O(q[b]||{},g):g};m=m||b.chartType();
g.themeObject&&a!==g.themeObject&&(g.themeObject.dispose(),delete g.themeObject);l(a.base);n&&a[n]&&l(a[n]);m&&a[m]&&l(a[m]);return q},applyTheme:function(a){a=a.jsVars.themeObject;var b=a.getThemedJSONData().data;b&&M(b,a)}};J=function(a,b,m,n){this.themeArray=a;this.themeComponents={};this.base={};this.chartInstance=b;this.isChildInstance=!!m;this.themedData=m?null:O({},n);this.length=a.length;b=0;for(m=a.length;b<m;b+=1)this.parse(a[b])};J.prototype={constructor:J,pushTheme:function(a){a&&(this.themeArray.push(a),
this.parse(a),this.length+=1)},popTheme:function(){},parse:function(a){var b=this.themeComponents,m=this.chartInstance,n=this.base,u,g,l;for(g in a)if("string"===typeof a[g]||"number"===typeof a[g])if(n[g]){if(u=q(a[g]),l=q(n[g]),u.important||!l.important)n[g]=a[g]}else n[g]=a[g];else b[g]||(b[g]=[]),u=b[g],a[g]instanceof Array?u.push(O([],a[g])):"object"===typeof a[g]?u.push(new J([a[g]],m,!0)):"function"===typeof a[g]&&u.push(a[g])},merge:function(a){var b=this.base,m=a.base,n=this.themeComponents,
u=a.themeComponents,g,l,v;for(v in m)if(g=q(b[v]),l=q(m[v]),!g.important||l.important)b[v]=m[v];for(v in u)n[v]=n[v]?n[v].concat(u[v]):[].concat(u[v]);this.length+=a.length},get:function(a){return this.base[a]},getAll:function(){return O({},this.base)},component:function(a,b,m,n){var q=this.themeComponents,g=this.chartInstance,l=new J([],g,!0),u,e,v;e=q[a];if(!e)return null;a=0;for(q=e.length;a<q;a+=1)v=e[a],"function"===typeof v?(b=b||0,l.pushTheme(v.call(g,b,m,n))):v instanceof Array?(b=b||0,u=
v.length,b%=u,u=v[b],u instanceof J?l.merge(u):"function"===typeof u?l.pushTheme(u.call(g,b,m,n)):l.pushTheme(u)):v instanceof J?l.merge(v):l.pushTheme(v);return l},getThemedJSONData:function(){return{data:this.themedData}},dispose:function(){var a=this.themeComponents,b=this.chartInstance,m,n;for(m in a)if(n=a[m].length){for(;n--;)a[m][n].dispose&&a[m][n].dispose();delete a[m]}this.isChildInstance||(b.removeEventListener("chartTypeChanged",E),b.removeEventListener("internal.drawstart",N));this.dataWithoutTheme=
this.isChildInstance=this.themeArray=this.base=this.chartInstance=this.themeComponents=null}};C=new v;b.registrars.theme=b.registerTheme=function(a){a&&("[object Array]"!==Object.prototype.toString.call(a)&&(a=[a]),C.add(a))};b.addEventListener("beforeDataUpdate",function(a,k){var m=a.sender,n=b.core.transcodeData(k.data,k.format,b.dataFormats.JSON),q=n.chart&&n.chart.theme;q?C.themify(q,m,m.args.type,n):m.jsVars&&m.jsVars.themeObject&&(m.jsVars&&m.jsVars.themeObject.dispose(),m.jsVars&&delete m.jsVars.themeObject)})}]);
Q.register("theme",{name:"default",theme:{base:{chart:{labelDisplay:"stagger !important",caption:"Theme Caption \\!important",canvasBgColor:"#56EF22",borderThickness:"5 !important",borderColor:"#E60539",baseFontColor:"#781129"},categories:[{fontColor:"#0F4F40",fontSize:15,category:function(b){return{showLabel:b%2?0:1}},vline:{color:"#000000",thickness:2}}],dataset:[{color:"#8C3146",data:function(b,v){8==b&&(v.value="");return{color:32E3>Number(v.value)?"#8C3146":"#FF0000",alpha:"100"}}}],trendlines:[{line:function(b){return b?
{color:"#ff0000",thickness:3}:{color:"#ffff00",thickness:3}}}]},pie2d:{chart:{bgColor:"#FF0000"}},msline:{chart:{canvasBgColor:"#ff0000"}},geo:{chart:{canvasBgColor:"#0000ff"}},world:{chart:{canvasBgColor:"#00ff00"}}}});Q.register("module",["private","modules.renderer.js-kdtree",function(){function b(a){function b(a,e,g,l){var m={},p;p=l?"y":"x";if(e===g)return m.point=a[e],m;if(1===g-e)return a[e][p]>a[g][p]?(m.point=a[e],m.left={point:a[g]}):(m.point=a[g],m.left={point:a[e]}),m;p=e+g>>1;l?k(a,p,
e,g):q(a,p,e,g);m.point=a[p];m.left=b(a,e,p-1,!l);m.right=b(a,p+1,g,!l);return m}function q(a,b,k,n){for(var u,z,C,w,E;n>k;){600<n-k&&(u=n-k+1,z=b-k+1,C=A(u),w=.5*p(2*C/3),E=.5*v(C*w*(u-w)/u)*(0>z-u/2?-1:1),C=g(k,l(b-z*w/u+E)),u=e(n,l(b+(u-z)*w/u+E)),q(a,b,C,u));u=a[b];z=k;w=n;m(a,k,b);for(a[n].x>u.x&&m(a,k,n);z<w;){m(a,z,w);z++;for(w--;a[z].x<u.x;)z++;for(;a[w].x>u.x;)w--}a[k].x===u.x?m(a,k,w):(w++,m(a,w,n));w<=b&&(k=w+1);b<=w&&(n=w-1)}}function k(a,b,n,q){for(var r,u,C,w,E;q>n;){600<q-n&&(r=q-n+
1,u=b-n+1,C=A(r),w=.5*p(2*C/3),E=.5*v(C*w*(r-w)/r)*(0>u-r/2?-1:1),C=g(n,l(b-u*w/r+E)),r=e(q,l(b+(r-u)*w/r+E)),k(a,b,C,r));r=a[b];u=n;w=q;m(a,n,b);for(a[q].y>r.y&&m(a,n,q);u<w;){m(a,u,w);u++;for(w--;a[u].y<r.y;)u++;for(;a[w].y>r.y;)w--}a[n].y===r.y?m(a,n,w):(w++,m(a,w,q));w<=b&&(n=w+1);b<=w&&(q=w-1)}}function m(a,b,e){var g=a[b];a[b]=a[e];a[e]=g}var n=a&&a[0]&&a[0].r||5,u,g=Math.max,l=Math.floor,v=Math.sqrt,e=Math.min,A=Math.log,p=Math.exp,C=Math.pow;a=a||[];for(u=a.length;u--;)a[u].r>n&&(n=a[u].r),
a[u].i=u,a[u].x=+a[u].x,a[u].y=+a[u].y;return{tree:0===a.length?{}:b(a,0,a.length-1,!1),search:function(a,b,e){function g(c,l){return"circle"===e?v(C(c-a,2)+C(l-b,2))<=r:c>=r&&c<=h&&l>=d&&l<=f}function l(d){var e=a>=d.x1&&a<=d.x2&&b>=d.y1&&b<=d.y2,f;f=d.point.y;f=v(C(a-d.point.x,2)+C(b-f,2));q?e?c?d.point.i>q.point.i&&(q=d,c=e,u=f):(q=d,c=e,u=f):!c&&f<u&&(q=d,c=e,u=f):(q=d,c=e,u=f)}function k(c){"circle"===e?r=c:(r=a-c||0,h=a+c||0,d=b-c||0,f=b+c||0)}function m(a){a&&a.point&&(k(a.point.r),g(a.point.x,
a.point.y)&&l(a),r<=a.point.x&&p(a.left),h>=a.point.x&&p(a.right))}function p(a){a&&a.point&&(k(a.point.r),g(a.point.x,a.point.y)&&l(a),d<=a.point.y&&m(a.left),f>=a.point.y&&m(a.right))}var q,r=a-n,h=a+n,d=b-n,f=b+n,c=!1,u=0;m(this.tree);return q&&q.point||q}}}function v(a){this.configure(a)}var J=this.hcLib,C=function(a,b,q,k,m){return Math.pow(q-a,2)+Math.pow(k-b,2)<=Math.pow(m,2)},H=Math.PI,A=Math.cos,u=Math.sin,a=Math.max,O=Math.min,q=H/180,M=function(b,q,r,k,m,n){return r<=a(b,m)&&r>=O(b,m)&&
k<=a(q,n)&&k>=O(q,n)?!0:!1},Q=function(a,b,q,k,m,n){b=(k-b)*(m-q);a=(q-a)*(n-k);isNaN(b)&&(b=0);isNaN(a)&&(a=0);a=b-a;return 0===a?0:0<a?1:2};v.prototype={configure:function(a){this.validatorFn=a?this.shapeValidator():this.defaultValidator()},defaultValidator:function(){var a=this;return function(b){var q=a.mousePoint;return b&&1>=Math.pow((b.x-q.x)/a.xLimit,2)+Math.pow((b.y-q.y)/a.yLimit,2)?!0:!1}},shapeValidator:function(){var a=this;return function(b){var r=a.mousePoint,k=b&&b.shapeInfo,m=!1,n,
v=r.x,r=r.y,g;switch(k&&k.type){case "circle":n=k.radius;m=C(v,r,b.x,b.y,n);break;case "arc":m=k.innerradius;n=k.radius;m=!C(v,r,b.x,b.y,m)&&C(v,r,b.x,b.y,n);break;case "polygon":n=k.radius;g=k.startAngle;k=k.sides;a:{m=b.x;b=b.y;var l,B=0,e,J,p,O,K;l=!1;if(C(v,r,m,b,n)&&3<=k){l=void 0===g?.5*H:g%360*q;K=2*H/k;e=m+n*A(-l);O=b+n*u(-l);for(g=0;g<k;g++){l+=K;J=m+n*A(-l);p=b+n*u(-l);var t=e,Z=O,P=J,S=p,z=v,R=r,w=r,F=Q(t,Z,P,S,z,R),X=Q(t,Z,P,S,Infinity,w),h=Q(z,R,Infinity,w,t,Z),d=Q(z,R,Infinity,w,P,S);
if(F!==X&&h!==d||0===F&&M(t,Z,z,R,P,S)||0===X&&M(t,Z,Infinity,w,P,S)||0===h&&M(z,R,t,Z,Infinity,w)||0===d&&M(z,R,P,S,Infinity,w)){if(0===Q(e,O,v,r,J,p)){m=M(e,O,v,r,J,p);break a}B++}e=J;O=p}l=0!==B%2}m=l}break;case "rect":m=b.x;n=b.y;b=m+(k.width||0);k=n+(k.height||0);m=v>=m&&v<=b&&r>=n&&r<=k;break;case "default":m=!1}return m}},buildKdTree:function(a){this.kdTree=b(a);this.tree=this.kdTree.tree;return this},getNeighbour:function(a,b,q){var k=this.tree,m={x1:a.x-this.xLimit,x2:a.x+this.xLimit,y1:a.y-
this.yLimit,y2:a.y+this.yLimit},n=this.validatorFn;this.mousePoint=a;if(b)return this.kdTree&&this.kdTree.search(a.x,a.y,q);if(k)return this._searchBtwnLimit(m,k,!0,n)},_compair2closest:function(a,b){return!a||a&&b&&b.i>a.i?b:a},_searchBtwnLimit:function(a,b,q,k){var m,n,u=q?a.x1:a.y1,g=q?a.x2:a.y2;m=b&&b.point&&b.point[q?"x":"y"];if(void 0!==m)return k(b.point)&&(n=b.point),m>=u&&b.left&&(n=this._compair2closest(n,this._searchBtwnLimit(a,b.left,!q,k))),m<=g&&b.right&&(n=this._compair2closest(n,this._searchBtwnLimit(a,
b.right,!q,k))),n},_setSearchLimit:function(a,b){this.xLimit=a;this.yLimit=b}};v.prototype.constructor=v;J.KdTree=v}]);Q.register("module",["private","modules.renderer.js-highlightmanager",function(){var b=this,v=b.hcLib,J=v.extend2,C=v.pluckNumber,H=v.toRaphaelColor,A=/^#?[0-9a-f]{6}/i,u=/FFFFFF/i,a=/255,255,255/,O=v.getFirstAlpha,q=function(a){a=a.replace("rgba(","").split(",");return"#"+("000000"+(a[0]<<16|a[1]<<8|a[2]).toString(16)).slice(-6)},M=v.pluck,U=function(a){if(/rgb/.test(a))return a=
a.match(/[\d\.]+\)/g),parseFloat(a&&a[0]);if(a.FCcolor)return O(a.FCcolor.alpha)},N=function(a){a=a.split(",");var b,e,g,k={},m;b=0;for(e=a.length;b<e;b++)g=a[b].split("="),m=g[0],g=g[1],k[m]=g;return k},E=function(a,b,e){var g,k=b.color;if(/rgb/.test(a))b=M(b.alpha,100*U(a)),/rgb/.test(k)&&(k=q(k)),g=e?H({color:M(k,q(a)),alpha:b}):a;else if(a.FCcolor){if(e){a=a.FCcolor;var m;e={};var n;for(m in a)if("alpha"===m){k=m;if(b.alpha){g=a[m];var t=b.alpha,r=void 0,u=void 0,v=[];if("number"===typeof g)g=
t;else{u=g.split&&g.split(",");for(r=0;r<u.length;r++)v.push(t);g=v.join()}}else g=a[m];e[k]=g}else"color"===m?(-1!==a[m].indexOf(",")&&b.color&&(n=b.color+","+a[m].substring(a[m].indexOf(",")+1)),e[m]=M(n||b.color,a[m])):e[m]=a[m];b=H(e)}else b=H(a.FCcolor);g=b}else A.test(a.color||a)&&(g=e?H({color:M(b.color,a.color,a),alpha:M(b.alpha,a.alpha)}):H({color:a.color||a,alpha:a.alpha}));return g},r=function(a,b,e){var g,k,m,n=a.chart;g=n.config;n=n.config.dataLabelStyle;a=a.components.data;var q,r,u,
v,z,A;q=0;for(r=a.length;q<r;q++)if(g=a[q])for(v in u=g.graphics,g=g.config,m=g.anchorProps,k=m.enabled,g={FCcolor:{alpha:e&&k?M(b.anchorbgalpha,b.alpha,m.bgAlpha):m.bgAlpha,color:e&&k?M(b.anchorbgcolor,b.color,m.bgColor):m.bgColor}},k={FCcolor:{alpha:e&&k?M(b.borderalpha,b.alpha,m.borderAlpha):m.borderAlpha,color:e&&k?M(b.anchorbordercolor,b.color,m.borderColor):m.borderColor}},m=e?b.alpha:m.imageAlpha,e||U(n.color),u)switch(A=(z=u[v])&&z.type,A){case "path":z.attr({fill:H(g),stroke:H(k)});break;
case "image":z.attr({opacity:m/100});break;case "text":L(z,b,n,e)}},k=function(b,g,e,k){var m=g.symbolAttr||{},n=m.fill,m=m.stroke,r=g.textAttr||{},r=k?M(e.color,q(r.fill)):q(r.fill),t=b.legendItemText,v=b.legendItemSymbol;b=b.legendItemLine;g=(g.lineAttr||{}).stroke;b&&g&&(A.test(g)?b.attr({stroke:k?H({color:M(e.color,g),alpha:e.alpha}):g}):(g=E(g,e,k),b.attr({stroke:g})));v&&(n&&(n=n.match(A)?k&&!u.test(n)?H({color:e.color||n,alpha:e.alpha}):n:a.test(n)?n:E(n,e,k)),m&&(m=A.test(m)?k&&!u.test(m)?
H({color:e.color||m,alpha:e.alpha}):m:k&&!a.test(m)?e.color?H({color:e.color,alpha:e.alpha}):m:m),v.attr({fill:n||"none",stroke:m||"none"}));t&&t.attr({fill:H({color:r,alpha:k?e.alpha:100})})},m={area:function(a,b,e){var g=this.chart,m=g.config,n=g.components.legend.components.items,q,t=this.legendItemId,u=n.length;a=N(a);var v=this.graphics||{},g=v.legendGraphics,A=m.dataLabelStyle,z=v.dataLabelContainer,C=this.config,w,m=0<(C.shadow||{}).opacity;if(!e&&!0===this.visible){a.alpha=a.alpha||30;for(e=
0;e<u&&(q=n[e]||{},q.legendItemId!==t);e++);z&&z.attr({opacity:b?a.alpha/100:U(A.color)});e=C.plotbordercolor;n=C.plotborderalpha;t=C.plotfillalpha;u=C.plotgradientcolor;v=M(v.lineElement,v.splineElement);e=b?M(a.bordercolor,a.color,e):e;a.color&&(w=a.color+(u?","+u:""));u=C.fillColor.color;w=b?M(w,u):u;C=C.plotfillangle;t=b?a.alpha:t;n=b?M(a.borderalpha,a.alpha):n;m=m?b?a.alpha/100:t/100:!1;v.attr({fill:H({color:w,alpha:t,angle:C}),stroke:H({color:e,alpha:n})}).shadow(m);g&&k(g,q.config,a,b);r(this,
a,b)}},bubble:function(a,b,e){var g=this.chart,m=g.components.legend.components.items||[],n,q=m.length,t=this.legendItemId,g=g.config.dataLabelStyle,r=this.graphics,u=r.legendGraphics,A=v.graphics.getPointColor,z=r.dataLabelContainer;a=N(a);if(!1===e&&!0===this.visible){a.alpha||(a.alpha=30);r=this.components.data||[];for(e=0;e<q&&(n=m[e]||{},n.legendItemId!==t);e++);k(u,n.config,a,b);z&&z.attr({opacity:b?a.alpha/100:U(g.color)});e=0;for(q=r.length;e<q;e++)if(m=r[e])t=m.graphics,n=m.config,m=n.colorObj,
u=n.is3d,n=t.element,t=t.label,u?(u=b?A(M(a.color,m.FCcolor.color),M(a.alpha,O(m.alpha))):m,u=H(u)):(u=b?M(a.color,m.color):m.color,m=b?a.alpha:m.alpha,u=H({color:u,alpha:m})),n&&n.attr({fill:u}),t&&L(t,a,g,b)}},pie:function(a,b,e,g){var m=g.chart,n;g=g._getPointColor;var q=this,t,r,u,v;u={};var q=this.legendItemId,z;r=m.components.legend.getItems()||[];a=N(a);if(!1===e){a.alpha||(a.alpha=30);e=this.graphics.element;t=this.config;v=0;for(m=r.length;v<m&&(n=r[v],z=n.legendItemId,z!==q);v++);q=n.graphics;
k(q,n.config,a,b);r=t.color.color;q=e.data("plotItem");m=q.chart;n=q.style;m=m.is3D;if(v=q.center)u=v[0],v=v[1],q=q.radius,u={cx:u,cy:v,r:q};r=b?g(M(a.color,r),a.alpha,90):t.color;g=b?a.alpha:r.alpha;r=J(r,u);m?e&&e.attr({color:r.color.split(",")[0],alpha:g}):e&&e.attr({fill:H(r)});g=this.graphics.label;e=this.graphics.connector;g&&L(g,a,n,b);e&&e.attr({opacity:b?a.alpha/100:U(n.color)})}},line:function(a,b,e){var g=this.chart,m=g.components.legend.components.items||[],n=m.length,q,t=this.legendItemId,
u=g.config.dataLabelStyle;a=N(a);var v=this.graphics||{},g=v.legendGraphics,A=v.dataLabelContainer,z=v.errorGroupContainer,C=this.config,w=C.linecolor,F=C.alpha,E=0<(C.shadow||{}).opacity;if(!e&&!0===this.visible){a.alpha||(a.alpha=30);for(e=0;e<n&&(q=m[e]||{},q.legendItemId!==t);e++);z&&(m=U(C.errorBarColor),m=b?M(a.alpha/100,m):m,z.attr({opacity:m}));A&&A.attr({opacity:b?a.alpha/100:U(u.color)});u=M(v.lineElement,v.SplineElement);w=b?M(a.color,w):w;F=b?M(a.alpha,F):F;E=E?b?a.alpha/100:F/100:!1;
u&&u.attr({stroke:H({color:w,alpha:F})}).shadow(E);g&&k(g,q.config,a,b);r(this,a,b)}},boxandwhisker2d:function(a,b,e){var g=this.config.isRoundEdges,m=this.graphics,n=m.legendGraphics,r=m.lowerWhiskerContainer,t=m.upperWhiskerContainer,u=m.dataLabelContainer,A=this.legendItemId,C=this.chart.components.legend.components.items||[],m=C.length,z;a=N(a);if(!1===e&&!0===this.visible){a.alpha||(a.alpha=30);for(e=0;e<m&&(z=C[e]||{},z.legendItemId!==A);e++);k(n,z.config,a,b);r&&r.attr({opacity:b?a.alpha/100:
1});t&&t.attr({opacity:b?a.alpha/100:1});u&&u.attr({opacity:b?a.alpha/100:1});n=this.components.data;e=0;for(m=n.length;e<m;e++){r=n[e];t=r.config;r=r.graphics;z=a;var u=b,A=g,J={},w={},F=J=w=void 0,L=C=void 0,h=void 0,d=void 0,f=void 0;u?(w=v.graphics.getColumnColor(z.color||t.upperColorArr[0].FCcolor.color,z.alpha.toString(),t.upperColorArr[0].FCcolor.ratio,t.upperColorArr[0].FCcolor.angle,A,z.bordercolor||q(t.upperBoxBorder.color),z.borderalpha&&z.borderalpha.toString()||(100*U(t.lowerBoxBorder.color)).toString()),
w=H(w[0]),J=v.graphics.getColumnColor(z.color||t.lowerColorArr[0].FCcolor.color,z.alpha.toString(),t.lowerColorArr[0].FCcolor.ratio,t.lowerColorArr[0].FCcolor.angle,A,z.bordercolor||q(t.lowerBoxBorder.color),z.borderalpha&&z.borderalpha.toString()||(100*U(t.lowerBoxBorder.color)).toString()),J=H(J[0]),F=E(t.median.color,z,u),h=E(t.lowerQuartile.color,z,u),d=E(t.upperQuartile.color,z,u)):(w=H(t.upperColorArr[0]),J=H(t.lowerColorArr[0]),F=t.median.color,C=t.upperBoxBorder.color,L=t.lowerBoxBorder.color,
d=t.upperQuartile.color,h=t.lowerQuartile.color);f=r.upperBoxElem;f.attr({fill:w,"drop-shadow":f.attrs["drop-shadow"]&&"none"!==f.attrs["drop-shadow"]?[1,1,3,"rgba(64,64,64,"+U(w)+")",f.attrs[4],f.attrs["drop-shadow"][5]]:"none"});f=r.lowerBoxElem;f.attr({fill:J,"drop-shadow":f.attrs["drop-shadow"]&&"none"!==f.attrs["drop-shadow"]?[1,1,3,"rgba(64,64,64,"+U(J)+")",f.attrs[4],f.attrs["drop-shadow"][5]]:"none"});f=r.lowerBoxBorderEle;f.attr({stroke:L});r.upperBoxBorderEle&&r.upperBoxBorderEle.attr({stroke:C});
r.lowerQuartileEle&&r.lowerQuartileEle.attr({stroke:h});r.upperQuartileEle&&r.upperQuartileEle.attr({stroke:d});r.midLineElem&&r.midLineElem.attr({stroke:F})}}},heatmap:function(a,b,e,g){var m=g.chart,n=m.config;g=n.dataLabelStyle;var n=m.components.legend,r,t,m=this.legendItemId,u,v;a=N(a);var A=n.getItems()||[];if(!e&&this.config.visible){a.alpha||(a.alpha=30);n=this.config;u=0;for(e=A.length;u<e&&(r=A[u],v=r.legendItemId,v!==m);u++);m=r.graphics;k(m,r.config,a,b);r=q(n.color);n=U(n.color);r=b?
M(a.color,r):r;n=b?a.alpha:100*n;e=this.graphics;m=e.element;m.attr({fill:H({color:r,alpha:n})});b||U(g.color);for(t in e)m=e[t],"text"===m.type&&L(m,a,g,b)}},funnelpyramid:function(a,b,e,g){g=g.chart.components.legend;var m,n,r,t,u;a=N(a);g=g.getItems()||[];n=this.legendItemId;if(!1===e){a.alpha||(a.alpha=30);r=0;for(e=g.length;r<e&&(m=g[r],t=m.legendItemId,t!==n);r++);e=m.graphics;k(e,m.config,a,b);m=this.style;g=this.color;e=q(g);g=U(g);e=b?M(a.color,e):e;r=b?a.alpha:100*g;n=this.plot.graphic;
t=this.plot.dataLabel;u=this.plot.connector;g=this.plot.point.style;n&&n.attr({fill:H({color:e,alpha:r})});t&&L(t,a,g,b);u&&u.attr({opacity:b?a.alpha/100:U(m.color)})}},"default":function(a,b,e){var g=this.config,m=this.chart,n=m.config,q=n.dataLabelStyle,r=n.useroundedges,u=m.is3D,A,E,z;a=N(a);var J=this.graphics,w=J.legendGraphics,F=J.dataLabelContainer;z=J.errorGroupContainer;var Q,h,n="",n=this.legendItemId,d=m.components.legend.components.items||[];Q=d.length;m=g.showShadow;J=v.graphics.getColumnColor;
if(!1===e&&!0===this.visible){a.alpha||(a.alpha="30");e=this.components.data||[];for(A=0;A<Q&&(E=d[A]||{},E.legendItemId!==n);A++);w&&k(w,E.config,a,b);F&&F.attr({opacity:b?a.alpha/100:U(q.color)});z&&(Q=U(g.errorBarColor),Q=b?M(a.alpha/100,Q):Q,z.attr({opacity:Q}));A=0;for(Q=e.length;A<Q;A++)if((g=e[A])&&g.graphics){n=g.config;z=n.colorArr[0];E=n.colorArr[1];w=E.FCcolor.alpha;n=z.FCcolor.color;n=-1!==(h=n.indexOf(","))&&a.color?a.color+n.substring(h):M(a.color,n);F=u?w:M(a.borderalpha,a.alpha,w);
0===C(w)&&(F="0");w=b?J(n,a.alpha,z.FCcolor.ratio,z.FCcolor.angle,r,M(a.bordercolor,E.FCcolor.color),F,!1,u):[z,E];if(z=g.graphics.element)n=H(w[0]),E=H(w[1]),z.attr({stroke:E,fill:n}).shadow({opacity:m?O(w[0].alpha)/100:0});g=g.graphics.label;L(g,a,q,b)}}}},n=function(){this.effectStore={};this.eventHandlers={}},L=function(a,b,e,g){var k,m,n,r,u;k=q(e.color);n=100*U(e.color);m=g?M(b.valuefontcolor,k):k;r=g?M(b.valuefontalpha,b.alpha,n):n;k=""===e.backgroundColor?"":q(e.backgroundColor);n=""===e.backgroundColor?
0:100*U(e.backgroundColor);isNaN(n)&&(n=0);u=g?M(b.valuebgcolor,k):k;n=g?M(b.valuebgalpha,b.alpha,n):n;u=H({color:u,alpha:n});k=""===e.borderColor?"":q(e.borderColor);n=""===e.borderColor?"":100*U(e.borderColor);isNaN(n)&&(n=0);k=g?M(b.valuebordercolor,k):k;b=g?M(b.valueborderalpha,b.alpha,n):n;b=H({color:k,alpha:b});a&&a.attr({fill:H({color:m,alpha:r}),"text-bound":[u,b,e.borderThickness,e.borderPadding,e.borderRadius,e.borderDash]})},g=new n;n.prototype.add=function(a){this.effectStore[a.name]=
a};n.prototype.attachEventHandlers=function(a,g){this.eventHandlers[a]||(this.eventHandlers[a]={},this.eventHandlers[a].listenerFn=b.addEventListener(a,g))};n.prototype.applyEffect=function(a,b,e){var g=this.effectStore,k=a.jsonData.chart,m=a.defaultDatasetType,n=k.plothighlighteffect&&k.plothighlighteffect.toLowerCase(),k=a.components.dataset;a=a.isSingleSeries?k[0].components.data:k;b=M(b.itemId,b.legendItemId,b.legendItemIndex);var q,r,u,v="",z;n&&(n=n.replace(/\s+/g,"").split("|"),z=n[0],v=n[1]||
"");if(z&&g[z])for(r=0,u=a.length;r<u;r++)n=a[r],m=n.type||m,m=m.toLowerCase(),q=M(n.itemId,n.legendItemId),void 0!==q&&(q=q===b,g[z][m]?g[z][m].call(n,v,e,q,k[0]):g[z]["default"].call(n,v,e,q,k[0]))};b.registrars.highlighteffect=function(a){a&&g.add(a)};g.attachEventHandlers("legenditemrollover",function(a,b){var e=a.sender.jsVars.instanceAPI;!1!==e.hasInteractiveLegend&&!1!==e.highlightEnabled&&g.applyEffect(e,b,!0)});g.attachEventHandlers("legenditemrollout",function(a,b){var e=a.sender.jsVars.instanceAPI;
!1!==e.hasInteractiveLegend&&!1!==e.highlightEnabled&&g.applyEffect(e,b,!1)});g.attachEventHandlers("legenditemclicked",function(a,b){var e=a.sender.jsVars.instanceAPI;!1!==e.hasInteractiveLegend&&!1!==e.highlightEnabled&&g.applyEffect(e,b,!0)});Q.register("highlightEffect",{name:"fadeout",area:m.area,radar:m.area,bubble:m.bubble,pie2d:m.pie,line:m.line,spline:m.line,areaspline:m.area,pie3d:m.pie,zoomline:m.line,funnel:m.funnelpyramid,pyramid:m.funnelpyramid,scatter:m.line,doughnut2d:m.pie,doughnut3d:m.pie,
heatmap:m.heatmap,boxandwhisker2d:m.boxandwhisker2d,multiaxisline:m.line,"default":m["default"]})}]);Rb&&(Ab.FusionCharts=Q);return Q});

//# sourceMappingURL=http://localhost:3052/3.12.2/map/eval/fusioncharts.js.map
