/* Javascript plotting library for jQuery, v. 0.6.
 * Modificated for WXSIM 3in1 by Henkka, v. 2.0
 *
 * Released under the MIT license by IOLA, December 2007.
 *
 */

(function(){jQuery.color={};jQuery.color.make=function(c,d,f,e){var b={};b.r=c||0;b.g=d||0;b.b=f||0;b.a=e!=null?e:1;b.add=function(g,h){for(var j=0;j<g.length;++j){b[g.charAt(j)]+=h}return b.normalize()};b.scale=function(g,h){for(var j=0;j<g.length;++j){b[g.charAt(j)]*=h}return b.normalize()};b.toString=function(){if(b.a>=1){return"rgb("+[b.r,b.g,b.b].join(",")+")"}else{return"rgba("+[b.r,b.g,b.b,b.a].join(",")+")"}};b.normalize=function(){function g(j,h,k){return h<j?j:(h>k?k:h)}b.r=g(0,parseInt(b.r),255);b.g=g(0,parseInt(b.g),255);b.b=g(0,parseInt(b.b),255);b.a=g(0,b.a,1);return b};b.clone=function(){return jQuery.color.make(b.r,b.b,b.g,b.a)};return b.normalize()};jQuery.color.extract=function(c,d){var b;do{b=c.css(d).toLowerCase();if(b!=""&&b!="transparent"){break}c=c.parent()}while(!jQuery.nodeName(c.get(0),"body"));if(b=="rgba(0, 0, 0, 0)"){b="transparent"}return jQuery.color.parse(b)};jQuery.color.parse=function(b){var c,e=jQuery.color.make;if(c=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(b)){return e(parseInt(c[1],10),parseInt(c[2],10),parseInt(c[3],10))}if(c=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(b)){return e(parseInt(c[1],10),parseInt(c[2],10),parseInt(c[3],10),parseFloat(c[4]))}if(c=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(b)){return e(parseFloat(c[1])*2.55,parseFloat(c[2])*2.55,parseFloat(c[3])*2.55)}if(c=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(b)){return e(parseFloat(c[1])*2.55,parseFloat(c[2])*2.55,parseFloat(c[3])*2.55,parseFloat(c[4]))}if(c=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(b)){return e(parseInt(c[1],16),parseInt(c[2],16),parseInt(c[3],16))}if(c=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(b)){return e(parseInt(c[1]+c[1],16),parseInt(c[2]+c[2],16),parseInt(c[3]+c[3],16))}var d=jQuery.trim(b).toLowerCase();if(d=="transparent"){return e(255,255,255,0)}else{c=a[d];return e(c[0],c[1],c[2])}};var a={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]}})();(function(c){function b(M,x,y,e){var p=[],H={colors:["#edc240","#afd8f8","#cb4b4b","#4da74d","#9440ed"],legend:{show:true,noColumns:1,labelFormatter:null,labelBoxBorderColor:"#ccc",container:null,position:"ne",margin:5,backgroundColor:null,backgroundOpacity:0.85},xaxis:{mode:null,transform:null,inverseTransform:null,min:null,max:null,autoscaleMargin:null,ticks:null,tickFormatter:null,labelWidth:null,labelHeight:null,tickDecimals:null,tickSize:null,minTickSize:null,monthNames:null,timeformat:null,twelveHourClock:false},yaxis:{autoscaleMargin:0.02},x2axis:{autoscaleMargin:null},y2axis:{autoscaleMargin:0.02},series:{points:{show:false,radius:3,lineWidth:2,fill:true,fillColor:"#ffffff",dirdata:null},lines:{lineWidth:2,fill:false,fillColor:null,steps:false},bars:{show:false,lineWidth:2,barWidth:1,fill:true,fillColor:null,align:"left",horizontal:false,candle:false},shadowSize:3},grid:{show:true,aboveData:false,color:"#545454",backgroundColor:null,tickColor:"rgba(0,0,0,0.15)",labelMargin:5,borderWidth:2,borderColor:null,markings:null,markingsColor:"#f4f4f4",markingsLineWidth:2,clickable:false,hoverable:false,autoHighlight:true,mouseActiveRadius:10},hooks:{}},q=null,ad=null,ae=null,z=null,ak=null,T={xaxis:{},yaxis:{},x2axis:{},y2axis:{}},F={left:0,right:0,top:0,bottom:0},Z=0,r=0,j=0,U=0,m={processOptions:[],processRawData:[],processDatapoints:[],draw:[],bindEvents:[],drawOverlay:[]},g=this;g.setData=G;g.setupGrid=L;g.draw=ai;g.getPlaceholder=function(){return M};g.getCanvas=function(){return q};g.getPlotOffset=function(){return F};g.width=function(){return j};g.height=function(){return U};g.offset=function(){var al=ae.offset();al.left+=F.left;al.top+=F.top;return al};g.getData=function(){return p};g.getAxes=function(){return T};g.getOptions=function(){return H};g.highlight=af;g.unhighlight=Y;g.triggerRedrawOverlay=R;g.pointOffset=function(al){return{left:parseInt(u(al,"xaxis").p2c(+al.x)+F.left),top:parseInt(u(al,"yaxis").p2c(+al.y)+F.top)}};g.hooks=m;C(g);S(y);D();G(x);L();ai();ah();function A(an,al){al=[g].concat(al);for(var am=0;am<an.length;++am){an[am].apply(this,al)}}function C(){for(var al=0;al<e.length;++al){var am=e[al];am.init(g);if(am.options){c.extend(true,H,am.options)}}}function S(al){c.extend(true,H,al);if(H.grid.borderColor==null){H.grid.borderColor=H.grid.color}if(H.xaxis.noTicks&&H.xaxis.ticks==null){H.xaxis.ticks=H.xaxis.noTicks}if(H.yaxis.noTicks&&H.yaxis.ticks==null){H.yaxis.ticks=H.yaxis.noTicks}if(H.grid.coloredAreas){H.grid.markings=H.grid.coloredAreas}if(H.grid.coloredAreasColor){H.grid.markingsColor=H.grid.coloredAreasColor}if(H.lines){c.extend(true,H.series.lines,H.lines)}if(H.points){c.extend(true,H.series.points,H.points)}if(H.bars){c.extend(true,H.series.bars,H.bars)}if(H.shadowSize){H.series.shadowSize=H.shadowSize}for(var am in m){if(H.hooks[am]&&H.hooks[am].length){m[am]=m[am].concat(H.hooks[am])}}A(m.processOptions,[H])}function G(al){p=n(al);v();N()}function n(ao){var am=[];for(var al=0;al<ao.length;++al){var an=c.extend(true,{},H.series);if(ao[al].data){an.data=ao[al].data;delete ao[al].data;c.extend(true,an,ao[al]);ao[al].data=an.data}else{an.data=ao[al]}am.push(an)}return am}function u(an,al){var am=an[al];if(!am||am==1){return T[al]}if(typeof am=="number"){return T[al.charAt(0)+am+al.slice(1)]}return am}function v(){var aq;var ax=p.length,al=[],ao=[];for(aq=0;aq<p.length;++aq){var au=p[aq].color;if(au!=null){--ax;if(typeof au=="number"){ao.push(au)}else{al.push(c.color.parse(p[aq].color))}}}for(aq=0;aq<ao.length;++aq){ax=Math.max(ax,ao[aq]+1)}var am=[],ap=0;aq=0;while(am.length<ax){var at;if(H.colors.length==aq){at=c.color.make(100,100,100)}else{at=c.color.parse(H.colors[aq])}var an=ap%2==1?-1:1;at.scale("rgb",1+an*Math.ceil(ap/2)*0.2);am.push(at);++aq;if(aq>=H.colors.length){aq=0;++ap}}var ar=0,ay;for(aq=0;aq<p.length;++aq){ay=p[aq];if(ay.color==null){ay.color=am[ar].toString();++ar}else{if(typeof ay.color=="number"){ay.color=am[ay.color].toString()}}if(ay.lines.show==null){var aw,av=true;for(aw in ay){if(ay[aw].show){av=false;break}}if(av){ay.lines.show=true}}ay.xaxis=u(ay,"xaxis");ay.yaxis=u(ay,"yaxis")}}function N(){var ay=Number.POSITIVE_INFINITY,ar=Number.NEGATIVE_INFINITY,aE,aC,aB,ax,am,at,aD,az,aq,ap,al,aK,aH,av;for(al in T){T[al].datamin=ay;T[al].datamax=ar;T[al].used=false}function ao(aN,aM,aL){if(aM<aN.datamin){aN.datamin=aM}if(aL>aN.datamax){aN.datamax=aL}}for(aE=0;aE<p.length;++aE){at=p[aE];at.datapoints={points:[]};A(m.processRawData,[at,at.data,at.datapoints])}for(aE=0;aE<p.length;++aE){at=p[aE];var aJ=at.data,aG=at.datapoints.format;if(!aG){aG=[];aG.push({x:true,number:true,required:true});aG.push({y:true,number:true,required:true});if(at.bars.show){aG.push({y:true,number:true,required:false,defaultValue:0})}at.datapoints.format=aG}if(at.datapoints.pointsize!=null){continue}if(at.datapoints.pointsize==null){at.datapoints.pointsize=aG.length}az=at.datapoints.pointsize;aD=at.datapoints.points;insertSteps=at.lines.show&&at.lines.steps;at.xaxis.used=at.yaxis.used=true;for(aC=aB=0;aC<aJ.length;++aC,aB+=az){av=aJ[aC];var an=av==null;if(!an){for(ax=0;ax<az;++ax){aK=av[ax];aH=aG[ax];if(aH){if(aH.number&&aK!=null){aK=+aK;if(isNaN(aK)){aK=null}}if(aK==null){if(aH.required){an=true}if(aH.defaultValue!=null){aK=aH.defaultValue}}}aD[aB+ax]=aK}}if(an){for(ax=0;ax<az;++ax){aK=aD[aB+ax];if(aK!=null){aH=aG[ax];if(aH.x){ao(at.xaxis,aK,aK)}if(aH.y){ao(at.yaxis,aK,aK)}}aD[aB+ax]=null}}else{if(insertSteps&&aB>0&&aD[aB-az]!=null&&aD[aB-az]!=aD[aB]&&aD[aB-az+1]!=aD[aB+1]){for(ax=0;ax<az;++ax){aD[aB+az+ax]=aD[aB+ax]}aD[aB+1]=aD[aB-az+1];aB+=az}}}}for(aE=0;aE<p.length;++aE){at=p[aE];A(m.processDatapoints,[at,at.datapoints])}for(aE=0;aE<p.length;++aE){at=p[aE];aD=at.datapoints.points,az=at.datapoints.pointsize;var au=ay,aA=ay,aw=ar,aF=ar;for(aC=0;aC<aD.length;aC+=az){if(aD[aC]==null){continue}for(ax=0;ax<az;++ax){aK=aD[aC+ax];aH=aG[ax];if(!aH){continue}if(aH.x){if(aK<au){au=aK}if(aK>aw){aw=aK}}if(aH.y){if(aK<aA){aA=aK}if(aK>aF){aF=aK}}}}if(at.bars.show){var aI=at.bars.align=="left"?0:-at.bars.barWidth/2;if(at.bars.horizontal){aA+=aI;aF+=aI+at.bars.barWidth}else{au+=aI;aw+=aI+at.bars.barWidth}}ao(at.xaxis,au,aw);ao(at.yaxis,aA,aF)}for(al in T){if(T[al].datamin==ay){T[al].datamin=null}if(T[al].datamax==ar){T[al].datamax=null}}}function D(){function al(an,am){var ao=document.createElement("canvas");ao.width=an;ao.height=am;if(window.G_vmlCanvasManager){ao=window.G_vmlCanvasManager.initElement(ao)}return ao}Z=M.width();r=M.height();M.html("");if(M.css("position")=="static"){M.css("position","relative")}if(Z<=0||r<=0){throw"Invalid dimensions for plot, width = "+Z+", height = "+r}if(window.G_vmlCanvasManager){window.G_vmlCanvasManager.init_(document)}q=c(al(Z,r)).appendTo(M).get(0);z=q.getContext("2d");ad=c(al(Z,r)).css({position:"absolute",left:0,top:0}).appendTo(M).get(0);ak=ad.getContext("2d");ak.stroke()}function ah(){ae=c([ad,q]);if(H.grid.hoverable){ae.mousemove(d)}if(H.grid.clickable){ae.click(E)}A(m.bindEvents,[ae])}function L(){function am(av,aw){function aq(ax){return ax}var au,ap,ar=aw.transform||aq,at=aw.inverseTransform;if(av==T.xaxis||av==T.x2axis){au=av.scale=j/(ar(av.max)-ar(av.min));ap=ar(av.min);if(ar==aq){av.p2c=function(ax){return(ax-ap)*au}}else{av.p2c=function(ax){return(ar(ax)-ap)*au}}if(!at){av.c2p=function(ax){return ap+ax/au}}else{av.c2p=function(ax){return at(ap+ax/au)}}}else{au=av.scale=U/(ar(av.max)-ar(av.min));ap=ar(av.max);if(ar==aq){av.p2c=function(ax){return(ap-ax)*au}}else{av.p2c=function(ax){return(ap-ar(ax))*au}}if(!at){av.c2p=function(ax){return ap-ax/au}}else{av.c2p=function(ax){return at(ap-ax/au)}}}}function ao(at,av){var ar,au=[],aq;at.labelWidth=av.labelWidth;at.labelHeight=av.labelHeight;if(at==T.xaxis||at==T.x2axis){if(at.labelWidth==null){at.labelWidth=Z/(at.ticks.length>0?at.ticks.length:1)}if(at.labelHeight==null){au=[];for(ar=0;ar<at.ticks.length;++ar){aq=at.ticks[ar].label;if(aq){au.push('<div class="tickLabel" style="float:left;width:'+at.labelWidth+'px">'+aq+"</div>")}}if(au.length>0){var ap=c('<div style="position:absolute;top:-10000px;width:10000px;font-size:smaller">'+au.join("")+'<div style="clear:left"></div></div>').appendTo(M);at.labelHeight=ap.height();ap.remove()}}}else{if(at.labelWidth==null||at.labelHeight==null){for(ar=0;ar<at.ticks.length;++ar){aq=at.ticks[ar].label;if(aq){au.push('<div class="tickLabel">'+aq+"</div>")}}if(au.length>0){var ap=c('<div style="position:absolute;top:-10000px;font-size:smaller">'+au.join("")+"</div>").appendTo(M);if(at.labelWidth==null){at.labelWidth=ap.width()}if(at.labelHeight==null){at.labelHeight=ap.find("div").height()}ap.remove()}}}if(at.labelWidth==null){at.labelWidth=0}if(at.labelHeight==null){at.labelHeight=0}}function an(){var aq=H.grid.borderWidth;for(i=0;i<p.length;++i){aq=Math.max(aq,2*(p[i].points.radius+p[i].points.lineWidth/2))}F.left=F.right=F.top=F.bottom=aq;var ap=H.grid.labelMargin+H.grid.borderWidth;if(T.xaxis.labelHeight>0){F.bottom=Math.max(aq,T.xaxis.labelHeight+ap)}if(T.yaxis.labelWidth>0){F.left=Math.max(aq,T.yaxis.labelWidth+ap)}if(T.x2axis.labelHeight>0){F.top=Math.max(aq,T.x2axis.labelHeight+ap)}if(T.y2axis.labelWidth>0){F.right=Math.max(aq,T.y2axis.labelWidth+ap)}j=Z-F.left-F.right;U=r-F.bottom-F.top}var al;for(al in T){l(T[al],H[al])}if(H.grid.show){for(al in T){f(T[al],H[al]);Q(T[al],H[al]);ao(T[al],H[al])}an()}else{F.left=F.right=F.top=F.bottom=0;j=Z;U=r}for(al in T){am(T[al],H[al])}if(H.grid.show){I()}aj()}function l(ao,ar){var an=+(ar.min!=null?ar.min:ao.datamin),al=+(ar.max!=null?ar.max:ao.datamax),aq=al-an;if(aq==0){var am=al==0?1:0.01;if(ar.min==null){an-=am}if(ar.max==null||ar.min!=null){al+=am}}else{var ap=ar.autoscaleMargin;if(ap!=null){if(ar.min==null){an-=aq*ap;if(an<0&&ao.datamin!=null&&ao.datamin>=0){an=0}}if(ar.max==null){al+=aq*ap;if(al>0&&ao.datamax!=null&&ao.datamax<=0){al=0}}}}ao.min=an;ao.max=al}function f(aq,au){var ap;if(typeof au.ticks=="number"&&au.ticks>0){ap=au.ticks}else{if(aq==T.xaxis||aq==T.x2axis){ap=0.3*Math.sqrt(Z)}else{ap=0.3*Math.sqrt(r)}}var az=(aq.max-aq.min)/ap,aB,av,ax,ay,at,an,am;if(au.mode=="time"){var aw={second:1000,minute:60*1000,hour:60*60*1000,day:24*60*60*1000,month:30*24*60*60*1000,year:365.2425*24*60*60*1000};var aA=[[1,"second"],[2,"second"],[5,"second"],[10,"second"],[30,"second"],[1,"minute"],[2,"minute"],[5,"minute"],[10,"minute"],[30,"minute"],[1,"hour"],[2,"hour"],[4,"hour"],[8,"hour"],[12,"hour"],[1,"day"],[2,"day"],[3,"day"],[0.25,"month"],[0.5,"month"],[1,"month"],[2,"month"],[3,"month"],[6,"month"],[1,"year"]];var ao=0;if(au.minTickSize!=null){if(typeof au.tickSize=="number"){ao=au.tickSize}else{ao=au.minTickSize[0]*aw[au.minTickSize[1]]}}for(at=0;at<aA.length-1;++at){if(az<(aA[at][0]*aw[aA[at][1]]+aA[at+1][0]*aw[aA[at+1][1]])/2&&aA[at][0]*aw[aA[at][1]]>=ao){break}}aB=aA[at][0];ax=aA[at][1];if(ax=="year"){an=Math.pow(10,Math.floor(Math.log(az/aw.year)/Math.LN10));am=(az/aw.year)/an;if(am<1.5){aB=1}else{if(am<3){aB=2}else{if(am<7.5){aB=5}else{aB=10}}}aB*=an}if(au.tickSize){aB=au.tickSize[0];ax=au.tickSize[1]}av=function(aE){var aJ=[],aH=aE.tickSize[0],aK=aE.tickSize[1],aI=new Date(aE.min);var aD=aH*aw[aK];if(aK=="second"){aI.setUTCSeconds(a(aI.getUTCSeconds(),aH))}if(aK=="minute"){aI.setUTCMinutes(a(aI.getUTCMinutes(),aH))}if(aK=="hour"){aI.setUTCHours(a(aI.getUTCHours(),aH))}if(aK=="month"){aI.setUTCMonth(a(aI.getUTCMonth(),aH))}if(aK=="year"){aI.setUTCFullYear(a(aI.getUTCFullYear(),aH))}aI.setUTCMilliseconds(0);if(aD>=aw.minute){aI.setUTCSeconds(0)}if(aD>=aw.hour){aI.setUTCMinutes(0)}if(aD>=aw.day){aI.setUTCHours(0)}if(aD>=aw.day*4){aI.setUTCDate(1)}if(aD>=aw.year){aI.setUTCMonth(0)}var aM=0,aL=Number.NaN,aF;do{aF=aL;aL=aI.getTime();aJ.push({v:aL,label:aE.tickFormatter(aL,aE)});if(aK=="month"){if(aH<1){aI.setUTCDate(1);var aC=aI.getTime();aI.setUTCMonth(aI.getUTCMonth()+1);var aG=aI.getTime();aI.setTime(aL+aM*aw.hour+(aG-aC)*aH);aM=aI.getUTCHours();aI.setUTCHours(0)}else{aI.setUTCMonth(aI.getUTCMonth()+aH)}}else{if(aK=="year"){aI.setUTCFullYear(aI.getUTCFullYear()+aH)}else{aI.setTime(aL+aD)}}}while(aL<aE.max&&aL!=aF);return aJ};ay=function(aC,aF){var aH=new Date(aC);if(au.timeformat!=null){return c.plot.formatDate(aH,au.timeformat,au.monthNames)}var aD=aF.tickSize[0]*aw[aF.tickSize[1]];var aE=aF.max-aF.min;var aG=(au.twelveHourClock)?" %p":"";if(aD<aw.minute){fmt="%h:%M:%S"+aG}else{if(aD<aw.day){if(aE<2*aw.day){fmt="%h:%M"+aG}else{fmt="%b %d %h:%M"+aG}}else{if(aD<aw.month){fmt="%b %d"}else{if(aD<aw.year){if(aE<aw.year){fmt="%b"}else{fmt="%b %y"}}else{fmt="%y"}}}}return c.plot.formatDate(aH,fmt,au.monthNames)}}else{var al=au.tickDecimals;var ar=-Math.floor(Math.log(az)/Math.LN10);if(al!=null&&ar>al){ar=al}an=Math.pow(10,-ar);am=az/an;if(am<1.5){aB=1}else{if(am<3){aB=2;if(am>2.25&&(al==null||ar+1<=al)){aB=2.5;++ar}}else{if(am<7.5){aB=5}else{aB=10}}}aB*=an;if(au.minTickSize!=null&&aB<au.minTickSize){aB=au.minTickSize}if(au.tickSize!=null){aB=au.tickSize}aq.tickDecimals=Math.max(0,(al!=null)?al:ar);av=function(aE){var aG=[];var aH=a(aE.min,aE.tickSize),aD=0,aC=Number.NaN,aF;do{aF=aC;aC=aH+aD*aE.tickSize;aG.push({v:aC,label:aE.tickFormatter(aC,aE)});++aD}while(aC<aE.max&&aC!=aF);return aG};ay=function(aC,aD){return aC.toFixed(aD.tickDecimals)}}aq.tickSize=ax?[aB,ax]:aB;aq.tickGenerator=av;if(c.isFunction(au.tickFormatter)){aq.tickFormatter=function(aC,aD){return""+au.tickFormatter(aC,aD)}}else{aq.tickFormatter=ay}}function Q(ap,ar){ap.ticks=[];if(!ap.used){return}if(ar.ticks==null){ap.ticks=ap.tickGenerator(ap)}else{if(typeof ar.ticks=="number"){if(ar.ticks>0){ap.ticks=ap.tickGenerator(ap)}}else{if(ar.ticks){var aq=ar.ticks;if(c.isFunction(aq)){aq=aq({min:ap.min,max:ap.max})}var ao,al;for(ao=0;ao<aq.length;++ao){var am=null;var an=aq[ao];if(typeof an=="object"){al=an[0];if(an.length>1){am=an[1]}}else{al=an}if(am==null){am=ap.tickFormatter(al,ap)}ap.ticks[ao]={v:al,label:am}}}}}if(ar.autoscaleMargin!=null&&ap.ticks.length>0){if(ar.min==null){ap.min=Math.min(ap.min,ap.ticks[0].v)}if(ar.max==null&&ap.ticks.length>1){ap.max=Math.max(ap.max,ap.ticks[ap.ticks.length-1].v)}}}function ai(){z.clearRect(0,0,Z,r);var am=H.grid;if(am.show&&!am.aboveData){t()}for(var al=0;al<p.length;++al){ab(p[al])}A(m.draw,[z]);if(am.show&&am.aboveData){t()}}function o(am,at){var ap=at+"axis",al=at+"2axis",ao,ar,aq,an;if(am[ap]){ao=T[ap];ar=am[ap].from;aq=am[ap].to}else{if(am[al]){ao=T[al];ar=am[al].from;aq=am[al].to}else{ao=T[ap];ar=am[at+"1"];aq=am[at+"2"]}}if(ar!=null&&aq!=null&&ar>aq){return{from:aq,to:ar,axis:ao}}return{from:ar,to:aq,axis:ao}}function t(){var ap;z.save();z.translate(F.left,F.top);if(H.grid.backgroundColor){z.fillStyle=s(H.grid.backgroundColor,U,0,"rgba(255, 255, 255, 0)");z.fillRect(0,0,j,U)}var am=H.grid.markings;if(am){if(c.isFunction(am)){am=am({xmin:T.xaxis.min,xmax:T.xaxis.max,ymin:T.yaxis.min,ymax:T.yaxis.max,xaxis:T.xaxis,yaxis:T.yaxis,x2axis:T.x2axis,y2axis:T.y2axis})}for(ap=0;ap<am.length;++ap){var al=am[ap],ar=o(al,"x"),ao=o(al,"y");if(ar.from==null){ar.from=ar.axis.min}if(ar.to==null){ar.to=ar.axis.max}if(ao.from==null){ao.from=ao.axis.min}if(ao.to==null){ao.to=ao.axis.max}if(ar.to<ar.axis.min||ar.from>ar.axis.max||ao.to<ao.axis.min||ao.from>ao.axis.max){continue}ar.from=Math.max(ar.from,ar.axis.min);ar.to=Math.min(ar.to,ar.axis.max);ao.from=Math.max(ao.from,ao.axis.min);ao.to=Math.min(ao.to,ao.axis.max);if(ar.from==ar.to&&ao.from==ao.to){continue}ar.from=ar.axis.p2c(ar.from);ar.to=ar.axis.p2c(ar.to);ao.from=ao.axis.p2c(ao.from);ao.to=ao.axis.p2c(ao.to);if(ar.from==ar.to||ao.from==ao.to){z.beginPath();z.strokeStyle=al.color||H.grid.markingsColor;z.lineWidth=al.lineWidth||H.grid.markingsLineWidth;z.moveTo(ar.from,ao.from);z.lineTo(ar.to,ao.to);z.stroke()}else{z.fillStyle=al.color||H.grid.markingsColor;z.fillRect(ar.from,ao.to,ar.to-ar.from,ao.from-ao.to)}}}z.lineWidth=1;z.strokeStyle=H.grid.tickColor;z.beginPath();var an,aq=T.xaxis;for(ap=0;ap<aq.ticks.length;++ap){an=aq.ticks[ap].v;if(an<=aq.min||an>=T.xaxis.max){continue}z.moveTo(Math.floor(aq.p2c(an))+z.lineWidth/2,0);z.lineTo(Math.floor(aq.p2c(an))+z.lineWidth/2,U)}aq=T.yaxis;for(ap=0;ap<aq.ticks.length;++ap){an=aq.ticks[ap].v;if(an<=aq.min||an>=aq.max){continue}z.moveTo(0,Math.floor(aq.p2c(an))+z.lineWidth/2);z.lineTo(j,Math.floor(aq.p2c(an))+z.lineWidth/2)}aq=T.x2axis;for(ap=0;ap<aq.ticks.length;++ap){an=aq.ticks[ap].v;if(an<=aq.min||an>=aq.max){continue}z.moveTo(Math.floor(aq.p2c(an))+z.lineWidth/2,-5);z.lineTo(Math.floor(aq.p2c(an))+z.lineWidth/2,5)}aq=T.y2axis;for(ap=0;ap<aq.ticks.length;++ap){an=aq.ticks[ap].v;if(an<=aq.min||an>=aq.max){continue}z.moveTo(j-5,Math.floor(aq.p2c(an))+z.lineWidth/2);z.lineTo(j+5,Math.floor(aq.p2c(an))+z.lineWidth/2)}z.stroke();if(H.grid.borderWidth){var at=H.grid.borderWidth;z.lineWidth=at;z.strokeStyle=H.grid.borderColor;z.strokeRect(-at/2,-at/2,j+at,U+at)}z.restore()}function I(){M.find(".tickLabels").remove();var al=['<div class="tickLabels" style="font-size:smaller;color:'+H.grid.color+'">'];function an(aq,ar){for(var ap=0;ap<aq.ticks.length;++ap){var ao=aq.ticks[ap];if(!ao.label||ao.v<aq.min||ao.v>aq.max){continue}al.push(ar(ao,aq))}}var am=H.grid.labelMargin+H.grid.borderWidth;an(T.xaxis,function(ao,ap){return'<div style="position:absolute;top:'+(F.top+U+am)+"px;left:"+Math.round(F.left+ap.p2c(ao.v)-ap.labelWidth/2)+"px;width:"+ap.labelWidth+'px;text-align:center" class="tickLabel">'+ao.label+"</div>"});an(T.yaxis,function(ao,ap){return'<div style="position:absolute;top:'+Math.round(F.top+ap.p2c(ao.v)-ap.labelHeight/2)+"px;right:"+(F.right+j+am)+"px;width:"+ap.labelWidth+'px;text-align:right" class="tickLabel">'+ao.label+"</div>"});an(T.x2axis,function(ao,ap){return'<div style="position:absolute;bottom:'+(F.bottom+U+am)+"px;left:"+Math.round(F.left+ap.p2c(ao.v)-ap.labelWidth/2)+"px;width:"+ap.labelWidth+'px;text-align:center" class="tickLabel">'+ao.label+"</div>"});an(T.y2axis,function(ao,ap){return'<div style="position:absolute;top:'+Math.round(F.top+ap.p2c(ao.v)-ap.labelHeight/2)+"px;left:"+(F.left+j+am)+"px;width:"+ap.labelWidth+'px;text-align:left" class="tickLabel">'+ao.label+"</div>"});al.push("</div>");M.append(al.join(""))}function ab(al){if(al.lines.show){B(al)}if(al.bars.show){O(al)}if(al.points.show){P(al)}}function B(ao){function an(aA,aB,at,aF,aE){var aG=aA.points,au=aA.pointsize,ay=null,ax=null;z.beginPath();for(var az=au;az<aG.length;az+=au){var aw=aG[az-au],aD=aG[az-au+1],av=aG[az],aC=aG[az+1];if(aw==null||av==null){continue}if(aD<=aC&&aD<aE.min){if(aC<aE.min){continue}aw=(aE.min-aD)/(aC-aD)*(av-aw)+aw;aD=aE.min}else{if(aC<=aD&&aC<aE.min){if(aD<aE.min){continue}av=(aE.min-aD)/(aC-aD)*(av-aw)+aw;aC=aE.min}}if(aD>=aC&&aD>aE.max){if(aC>aE.max){continue}aw=(aE.max-aD)/(aC-aD)*(av-aw)+aw;aD=aE.max}else{if(aC>=aD&&aC>aE.max){if(aD>aE.max){continue}av=(aE.max-aD)/(aC-aD)*(av-aw)+aw;aC=aE.max}}if(aw<=av&&aw<aF.min){if(av<aF.min){continue}aD=(aF.min-aw)/(av-aw)*(aC-aD)+aD;aw=aF.min}else{if(av<=aw&&av<aF.min){if(aw<aF.min){continue}aC=(aF.min-aw)/(av-aw)*(aC-aD)+aD;av=aF.min}}if(aw>=av&&aw>aF.max){if(av>aF.max){continue}aD=(aF.max-aw)/(av-aw)*(aC-aD)+aD;aw=aF.max}else{if(av>=aw&&av>aF.max){if(aw>aF.max){continue}aC=(aF.max-aw)/(av-aw)*(aC-aD)+aD;av=aF.max}}if(aw!=ay||aD!=ax){z.moveTo(aF.p2c(aw)+aB,aE.p2c(aD)+at)}ay=av;ax=aC;z.lineTo(aF.p2c(av)+aB,aE.p2c(aC)+at)}z.stroke()}function ap(az,aG,aE){var aH=az.points,at=az.pointsize,au=Math.min(Math.max(0,aE.min),aE.max),aC,ax=0,aF=false;for(var ay=at;ay<aH.length;ay+=at){var aw=aH[ay-at],aD=aH[ay-at+1],av=aH[ay],aB=aH[ay+1];if(aF&&aw!=null&&av==null){z.lineTo(aG.p2c(ax),aE.p2c(au));z.fill();aF=false;continue}if(aw==null||av==null){continue}if(aw<=av&&aw<aG.min){if(av<aG.min){continue}aD=(aG.min-aw)/(av-aw)*(aB-aD)+aD;aw=aG.min}else{if(av<=aw&&av<aG.min){if(aw<aG.min){continue}aB=(aG.min-aw)/(av-aw)*(aB-aD)+aD;av=aG.min}}if(aw>=av&&aw>aG.max){if(av>aG.max){continue}aD=(aG.max-aw)/(av-aw)*(aB-aD)+aD;aw=aG.max}else{if(av>=aw&&av>aG.max){if(aw>aG.max){continue}aB=(aG.max-aw)/(av-aw)*(aB-aD)+aD;av=aG.max}}if(!aF){z.beginPath();z.moveTo(aG.p2c(aw),aE.p2c(au));aF=true}if(aD>=aE.max&&aB>=aE.max){z.lineTo(aG.p2c(aw),aE.p2c(aE.max));z.lineTo(aG.p2c(av),aE.p2c(aE.max));ax=av;continue}else{if(aD<=aE.min&&aB<=aE.min){z.lineTo(aG.p2c(aw),aE.p2c(aE.min));z.lineTo(aG.p2c(av),aE.p2c(aE.min));ax=av;continue}}var aI=aw,aA=av;if(aD<=aB&&aD<aE.min&&aB>=aE.min){aw=(aE.min-aD)/(aB-aD)*(av-aw)+aw;aD=aE.min}else{if(aB<=aD&&aB<aE.min&&aD>=aE.min){av=(aE.min-aD)/(aB-aD)*(av-aw)+aw;aB=aE.min}}if(aD>=aB&&aD>aE.max&&aB<=aE.max){aw=(aE.max-aD)/(aB-aD)*(av-aw)+aw;aD=aE.max}else{if(aB>=aD&&aB>aE.max&&aD<=aE.max){av=(aE.max-aD)/(aB-aD)*(av-aw)+aw;aB=aE.max}}if(aw!=aI){if(aD<=aE.min){aC=aE.min}else{aC=aE.max}z.lineTo(aG.p2c(aI),aE.p2c(aC));z.lineTo(aG.p2c(aw),aE.p2c(aC))}z.lineTo(aG.p2c(aw),aE.p2c(aD));z.lineTo(aG.p2c(av),aE.p2c(aB));if(av!=aA){if(aB<=aE.min){aC=aE.min}else{aC=aE.max}z.lineTo(aG.p2c(av),aE.p2c(aC));z.lineTo(aG.p2c(aA),aE.p2c(aC))}ax=Math.max(av,aA)}if(aF){z.lineTo(aG.p2c(ax),aE.p2c(au));z.fill()}}z.save();z.translate(F.left,F.top);z.lineJoin="round";var aq=ao.lines.lineWidth,al=ao.shadowSize;if(aq>0&&al>0){z.lineWidth=al;z.strokeStyle="rgba(0,0,0,0.1)";var ar=Math.PI/18;an(ao.datapoints,Math.sin(ar)*(aq/2+al/2),Math.cos(ar)*(aq/2+al/2),ao.xaxis,ao.yaxis);z.lineWidth=al/2;an(ao.datapoints,Math.sin(ar)*(aq/2+al/4),Math.cos(ar)*(aq/2+al/4),ao.xaxis,ao.yaxis)}z.lineWidth=aq;z.strokeStyle=ao.color;var am=w(ao.lines,ao.color,0,U);if(am){z.fillStyle=am;ap(ao.datapoints,ao.xaxis,ao.yaxis)}if(aq>0){an(ao.datapoints,0,0,ao.xaxis,ao.yaxis)}z.restore()}function P(ao){function aq(ay,ax,aF,av,az,aD,aC){var aE=ay.points,ar=ay.pointsize;var au=ao.dirdata;var at=0;for(var aw=0;aw<aE.length;aw+=ar){var aB=aE[aw],aA=aE[aw+1];if(aB==null||aB<aD.min||aB>aD.max||aA<aC.min||aA>aC.max){continue}if(ao.points.type=="x"){z.strokeStyle=ao.color;z.lineWidth=ao.points.lineWidth;z.save();z.beginPath();z.translate((aD.p2c(aB)+F.left),(aC.p2c(aA)+F.top));z.rotate((2*Math.PI/360)*((au[at]-90)));at+=1;z.moveTo(-10,0);z.lineTo(10,-7);z.bezierCurveTo(5,-3,5,3,10,7);z.lineTo(-10,0);z.fillStyle=ao.color;z.fill();z.restore()}else{z.beginPath();z.arc(aD.p2c(aB),aC.p2c(aA)+av,ax,0,az,false);if(aF){z.fillStyle=aF;z.fill()}z.stroke()}}}if(ao.points.type!="x"){var ap=ao.lines.lineWidth,am=ao.shadowSize,al=ao.points.radius;if(ap>0&&am>0){var an=am/2;z.lineWidth=an;z.strokeStyle="rgba(0,0,0,0.1)";aq(ao.datapoints,al,null,an+an/2,Math.PI,ao.xaxis,ao.yaxis);z.strokeStyle="rgba(0,0,0,0.2)";aq(ao.datapoints,al,null,an/2,Math.PI,ao.xaxis,ao.yaxis)}z.lineWidth=ap;z.strokeStyle=ao.color}aq(ao.datapoints,al,w(ao.points,ao.color),0,2*Math.PI,ao.xaxis,ao.yaxis);z.restore()}function ac(ax,aw,aF,ar,aA,ao,am,av,au,aE,aB){var an,aD,at,az,ap,al,ay,aq,aC;if(aB){aq=al=ay=true;ap=false;an=aF;aD=ax;az=aw+ar;at=aw+aA;if(aD<an){aC=aD;aD=an;an=aC;ap=true;al=false}}else{ap=al=ay=true;aq=false;an=ax+ar;aD=ax+aA;at=aF;az=aw;if(az<at){aC=az;az=at;at=aC;aq=true;ay=false}}if(aD<av.min||an>av.max||az<au.min||at>au.max){return}if(an<av.min){an=av.min;ap=false}if(aD>av.max){aD=av.max;al=false}if(at<au.min){at=au.min;aq=false}if(az>au.max){az=au.max;ay=false}an=av.p2c(an);at=au.p2c(at);aD=av.p2c(aD);az=au.p2c(az);if(am){aE.beginPath();aE.moveTo(an,at);aE.lineTo(an,az);aE.lineTo(aD,az);aE.lineTo(aD,at);aE.fillStyle=am(at,az);aE.fill()}if(ap||al||ay||aq){aE.beginPath();aE.moveTo(an,at+ao);if(ap){aE.lineTo(an,az+ao)}else{aE.moveTo(an,az+ao)}if(ay){aE.lineTo(aD,az+ao)}else{aE.moveTo(aD,az+ao)}if(al){aE.lineTo(aD,at+ao)}else{aE.moveTo(aD,at+ao)}if(aq){aE.lineTo(an,at+ao)}else{aE.moveTo(an,at+ao)}aE.stroke()}}function J(av,am,aq,au,ap,ao,ay,ax,ar,al){var an=true,aw=true;if(al){var at=av+ao;if(at<ay.min||at>ay.max||au<ay.min||ap>ay.max){return}if(ap<ay.min){ap=ay.min}if(aq<ay.min){aw=false}if(au>ay.max){au=ay.max}if(am>ay.max){an=false}at=ax.p2c(at);au=ay.p2c(au);am=ay.p2c(am);aq=ay.p2c(aq);ap=ay.p2c(ap);if(aw){ar.moveTo(ap,at);ar.lineTo(aq,at);ar.stroke()}if(an){ar.moveTo(am,at);ar.lineTo(au,at);ar.stroke()}}else{av=av+ao;if(av<ay.min||av>ay.max||au<ax.min||ap>ax.max){return}if(ap<ax.min){ap=ax.min}if(aq<ax.min){aw=false}if(au>ax.max){au=ax.max}if(am>ax.max){an=false}av=ay.p2c(av);au=ax.p2c(au);am=ax.p2c(am);aq=ax.p2c(aq);ap=ax.p2c(ap);if(aw){ar.moveTo(av,ap);ar.lineTo(av,aq);ar.stroke()}if(an){ar.moveTo(av,am);ar.lineTo(av,au);ar.stroke()}}}function O(an){function am(av,au,ax,ar,aw,aA,ay,aq){var az=av.points,ap=av.pointsize;for(var at=0;at<az.length;at+=ap){if(az[at]==null){continue}ac(az[at],az[at+1],az[at+2],au,ax,ar,aw,aA,ay,z,an.bars.horizontal);if(an.bars.candle){J(az[at],az[at+1],az[at+2],az[at+3],az[at+4],xcenter,aA,ay,z,an.bars.horizontal)}}}z.save();z.translate(F.left,F.top);z.lineWidth=an.bars.lineWidth;z.strokeStyle=an.color;var al=an.bars.align=="left"?0:-an.bars.barWidth/2;var ao=an.bars.fill?function(ap,aq){return w(an.bars,an.color,ap,aq)}:null;am(an.datapoints,al,al+an.bars.barWidth,0,ao,an.xaxis,an.yaxis);z.restore()}function w(an,al,am,ap){var ao=an.fill;if(!ao){return null}if(an.fillColor){return s(an.fillColor,am,ap,al)}var aq=c.color.parse(al);aq.a=typeof ao=="number"?ao:0.4;aq.normalize();return aq.toString()}function aj(){M.find(".legend").remove();if(!H.legend.show){return}var aq=[],ao=false,ax=H.legend.labelFormatter,aw,at;for(i=0;i<p.length;++i){aw=p[i];at=aw.label;if(!at){continue}if(i%H.legend.noColumns==0){if(ao){aq.push("</tr>")}aq.push("<tr>");ao=true}if(ax){at=ax(at,aw)}aq.push('<td class="legendColorBox"><div style="border:1px solid '+H.legend.labelBoxBorderColor+';padding:1px"><div style="width:4px;height:0;border:5px solid '+aw.color+';overflow:hidden"></div></div></td><td class="legendLabel">'+at+"</td>")}if(ao){aq.push("</tr>")}if(aq.length==0){return}var av='<table style="font-size:smaller;color:'+H.grid.color+'">'+aq.join("")+"</table>";if(H.legend.container!=null){c(H.legend.container).html(av)}else{var ar="",am=H.legend.position,an=H.legend.margin;if(an[0]==null){an=[an,an]}if(am.charAt(0)=="n"){ar+="top:"+(an[1]+F.top)+"px;"}else{if(am.charAt(0)=="s"){ar+="bottom:"+(an[1]+F.bottom)+"px;"}}if(am.charAt(1)=="e"){ar+="right:"+(an[0]+F.right)+"px;"}else{if(am.charAt(1)=="w"){ar+="left:"+(an[0]+F.left)+"px;"}}var au=c('<div class="legend">'+av.replace('style="','style="position:absolute;'+ar+";")+"</div>").appendTo(M);if(H.legend.backgroundOpacity!=0){var ap=H.legend.backgroundColor;if(ap==null){ap=H.grid.backgroundColor;if(ap&&typeof ap=="string"){ap=c.color.parse(ap)}else{ap=c.color.extract(au,"background-color")}ap.a=1;ap=ap.toString()}var al=au.children();c('<div style="position:absolute;width:'+al.width()+"px;height:"+al.height()+"px;"+ar+"background-color:"+ap+';"> </div>').prependTo(au).css("opacity",H.legend.backgroundOpacity)}}}var X=[],k=null;function ag(at,aq,an){var az=H.grid.mouseActiveRadius,aL=az*az+1,aJ=null,aC=false,aH,aF;for(aH=0;aH<p.length;++aH){if(!an(p[aH])){continue}var aA=p[aH],ar=aA.xaxis,ap=aA.yaxis,aG=aA.datapoints.points,aE=aA.datapoints.pointsize,aB=ar.c2p(at),ay=ap.c2p(aq),am=az/ar.scale,al=az/ap.scale;if(aA.lines.show||aA.points.show){for(aF=0;aF<aG.length;aF+=aE){var av=aG[aF],au=aG[aF+1];if(av==null){continue}if(av-aB>am||av-aB<-am||au-ay>al||au-ay<-al){continue}var ax=Math.abs(ar.p2c(av)-at),aw=Math.abs(ap.p2c(au)-aq),aD=ax*ax+aw*aw;if(aD<=aL){aL=aD;aJ=[aH,aF/aE]}}}if(aA.bars.show&&!aJ){var ao=aA.bars.align=="left"?0:-aA.bars.barWidth/2,aI=ao+aA.bars.barWidth;for(aF=0;aF<aG.length;aF+=aE){var av=aG[aF],au=aG[aF+1],aK=aG[aF+2];if(av==null){continue}if(p[aH].bars.horizontal?(aB<=Math.max(aK,av)&&aB>=Math.min(aK,av)&&ay>=au+ao&&ay<=au+aI):(aB>=av+ao&&aB<=av+aI&&ay>=Math.min(aK,au)&&ay<=Math.max(aK,au))){aJ=[aH,aF/aE]}}}}if(aJ){aH=aJ[0];aF=aJ[1];aE=p[aH].datapoints.pointsize;return{datapoint:p[aH].datapoints.points.slice(aF*aE,(aF+1)*aE),dataIndex:aF,series:p[aH],seriesIndex:aH}}return null}function d(al){if(H.grid.hoverable){h("plothover",al,function(am){return am.hoverable!=false})}}function E(al){h("plotclick",al,function(am){return am.clickable!=false})}function h(am,al,an){var ao=ae.offset(),au={pageX:al.pageX,pageY:al.pageY},ar=al.pageX-ao.left-F.left,ap=al.pageY-ao.top-F.top;if(T.xaxis.used){au.x=T.xaxis.c2p(ar)}if(T.yaxis.used){au.y=T.yaxis.c2p(ap)}if(T.x2axis.used){au.x2=T.x2axis.c2p(ar)}if(T.y2axis.used){au.y2=T.y2axis.c2p(ap)}var av=ag(ar,ap,an);if(av){av.pageX=parseInt(av.series.xaxis.p2c(av.datapoint[0])+ao.left+F.left);av.pageY=parseInt(av.series.yaxis.p2c(av.datapoint[1])+ao.top+F.top)}if(H.grid.autoHighlight){for(var aq=0;aq<X.length;++aq){var at=X[aq];if(at.auto==am&&!(av&&at.series==av.series&&at.point==av.datapoint)){Y(at.series,at.point)}}if(av){af(av.series,av.datapoint,am)}}M.trigger(am,[au,av])}function R(){if(!k){k=setTimeout(W,30)}}function W(){k=null;ak.save();ak.clearRect(0,0,Z,r);ak.translate(F.left,F.top);var am,al;for(am=0;am<X.length;++am){al=X[am];if(al.series.bars.show){aa(al.series,al.point)}else{V(al.series,al.point)}}ak.restore();A(m.drawOverlay,[ak])}function af(an,al,ao){if(typeof an=="number"){an=p[an]}if(typeof al=="number"){al=an.data[al]}var am=K(an,al);if(am==-1){X.push({series:an,point:al,auto:ao});R()}else{if(!ao){X[am].auto=false}}}function Y(an,al){if(an==null&&al==null){X=[];R()}if(typeof an=="number"){an=p[an]}if(typeof al=="number"){al=an.data[al]}var am=K(an,al);if(am!=-1){X.splice(am,1);R()}}function K(an,ao){for(var al=0;al<X.length;++al){var am=X[al];if(am.series==an&&am.point[0]==ao[0]&&am.point[1]==ao[1]){return al}}return -1}function V(ao,an){var am=an[0],at=an[1],ar=ao.xaxis,aq=ao.yaxis;if(am<ar.min||am>ar.max||at<aq.min||at>aq.max){return}var ap=ao.points.radius+ao.points.lineWidth/2;ak.lineWidth=ap;ak.strokeStyle=c.color.parse(ao.color).scale("a",0.5).toString();var al=1.5*ap;ak.beginPath();ak.arc(ar.p2c(am),aq.p2c(at),al,0,2*Math.PI,false);ak.stroke()}function aa(ao,al){ak.lineWidth=ao.bars.lineWidth;ak.strokeStyle=c.color.parse(ao.color).scale("a",0.5).toString();var an=c.color.parse(ao.color).scale("a",0.5).toString();var am=ao.bars.align=="left"?0:-ao.bars.barWidth/2;ac(al[0],al[1],al[2]||0,am,am+ao.bars.barWidth,0,function(){return an},ao.xaxis,ao.yaxis,ak,ao.bars.horizontal)}function s(an,am,ar,ap){if(typeof an=="string"){return an}else{var aq=z.createLinearGradient(0,ar,0,am);for(var ao=0,al=an.colors.length;ao<al;++ao){var at=an.colors[ao];if(typeof at!="string"){at=c.color.parse(ap).scale("rgb",at.brightness);at.a*=at.opacity;at=at.toString()}aq.addColorStop(ao/(al-1),at)}return aq}}}c.plot=function(g,e,d){var f=new b(c(g),e,d,c.plot.plugins);return f};c.plot.plugins=[];c.plot.formatDate=function(j,f,h){var n=function(d){d=""+d;return d.length==1?"0"+d:d};var e=[];var o=false;var m=j.getUTCHours();var k=m<12;if(h==null){h=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}if(f.search(/%p|%P/)!=-1){if(m>12){m=m-12}else{if(m==0){m=12}}}for(var g=0;g<f.length;++g){var l=f.charAt(g);if(o){switch(l){case"h":l=""+m;break;case"H":l=n(m);break;case"M":l=n(j.getUTCMinutes());break;case"S":l=n(j.getUTCSeconds());break;case"d":l=""+j.getUTCDate();break;case"m":l=""+(j.getUTCMonth()+1);break;case"y":l=""+j.getUTCFullYear();break;case"b":l=""+h[j.getUTCMonth()];break;case"p":l=(k)?("am"):("pm");break;case"P":l=(k)?("AM"):("PM");break}e.push(l);o=false}else{if(l=="%"){o=true}else{e.push(l)}}}return e.join("")};function a(e,d){return d*Math.floor(e/d)}})(jQuery);

/* Flot Threshold */

(function(b){var a={series:{threshold:null}};function c(d){function e(n,w,o){if(!w.threshold){return}var f=o.pointsize,j,r,q,g,l,h=b.extend({},w);h.datapoints={points:[],pointsize:f};h.label=null;h.color=w.threshold.color;h.threshold=null;h.originSeries=w;h.data=[];var t=w.threshold.below,u=o.points,v=w.lines.show;threspoints=[];newpoints=[];for(j=0;j<u.length;j+=f){r=u[j];q=u[j+1];l=g;if(q<t){g=threspoints}else{g=newpoints}if(v&&l!=g&&r!=null&&j>0&&u[j-f]!=null){var k=(r-u[j-f])/(q-u[j-f+1])*(t-q)+r;l.push(k);l.push(t);for(m=2;m<f;++m){l.push(u[j+m])}g.push(null);g.push(null);for(m=2;m<f;++m){g.push(u[j+m])}g.push(k);g.push(t);for(m=2;m<f;++m){g.push(u[j+m])}}g.push(r);g.push(q)}o.points=newpoints;h.datapoints.points=threspoints;if(h.datapoints.points.length>0){n.getData().push(h)}}d.hooks.processDatapoints.push(e)}b.plot.plugins.push({init:c,options:a,name:"threshold",version:"1.0"})})(jQuery);
