(function(d){function f(aY,aT,aS){var ab=[],aE={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,min:null,max:null,autoscaleMargin:null,ticks:null,tickFormatter:null,labelWidth:null,labelHeight:null,tickDecimals:null,tickSize:null,minTickSize:null,monthNames:null,timeformat:null},yaxis:{autoscaleMargin:0.02},x2axis:{autoscaleMargin:null},y2axis:{autoscaleMargin:0.02},points:{show:false,radius:3,lineWidth:2,fill:true,fillColor:"#ffffff"},lines:{show:false,lineWidth:2,fill:false,fillColor:null},bars:{show:false,lineWidth:2,barWidth:1,fill:true,fillColor:null,align:"left"},grid:{color:"#545454",backgroundColor:null,tickColor:"#dddddd",labelMargin:5,borderWidth:2,markings:null,markingsColor:"#f4f4f4",markingsLineWidth:2,clickable:false,hoverable:false,autoHighlight:true,mouseActiveRadius:10},selection:{mode:null,color:"#e8cfac"},shadowSize:4},H=null,aW=null,aU=null,aQ=null,aH=null,ap=aY,ae={xaxis:{},yaxis:{},x2axis:{},y2axis:{}},aG={left:0,right:0,top:0,bottom:0},l=0,D=0,am=0,ac=0,ah={};this.setData=aF;this.setupGrid=aA;this.draw=aM;this.clearSelection=ar;this.setSelection=aa;this.getCanvas=function(){return H};this.getPlotOffset=function(){return aG};this.getData=function(){return ab};this.getAxes=function(){return ae};this.highlight=aP;this.unhighlight=A;au(aS);aF(aT);aL();aA();aM();function aF(j){ab=af(j);aX();az()}function af(m){var o=[];for(var j=0;j<m.length;++j){var n;if(m[j].data){n={};for(var k in m[j]){n[k]=m[j][k]}}else{n={data:m[j]}}o.push(n)}return o}function au(j){d.extend(true,aE,j);if(aE.xaxis.noTicks&&aE.xaxis.ticks==null){aE.xaxis.ticks=aE.xaxis.noTicks}if(aE.yaxis.noTicks&&aE.yaxis.ticks==null){aE.yaxis.ticks=aE.yaxis.noTicks}if(aE.grid.coloredAreas){aE.grid.markings=aE.grid.coloredAreas}if(aE.grid.coloredAreasColor){aE.grid.markingsColor=aE.grid.coloredAreasColor}}function aX(){var j;var r=ab.length,p=[],m=[];for(j=0;j<ab.length;++j){var s=ab[j].color;if(s!=null){--r;if(typeof s=="number"){m.push(s)}else{p.push(e(ab[j].color))}}}for(j=0;j<m.length;++j){r=Math.max(r,m[j]+1)}var o=[],k=0;j=0;while(o.length<r){var t;if(aE.colors.length==j){t=new c(100,100,100)}else{t=e(aE.colors[j])}var n=k%2==1?-1:1;var u=1+n*Math.ceil(k/2)*0.2;t.scale(u,u,u);o.push(t);++j;if(j>=aE.colors.length){j=0;++k}}var v=0,q;for(j=0;j<ab.length;++j){q=ab[j];if(q.color==null){q.color=o[v].toString();++v}else{if(typeof q.color=="number"){q.color=o[q.color].toString()}}q.lines=d.extend(true,{},aE.lines,q.lines);q.points=d.extend(true,{},aE.points,q.points);q.bars=d.extend(true,{},aE.bars,q.bars);if(q.shadowSize==null){q.shadowSize=aE.shadowSize}if(q.xaxis&&q.xaxis==2){q.xaxis=ae.x2axis}else{q.xaxis=ae.xaxis}if(q.yaxis&&q.yaxis==2){q.yaxis=ae.y2axis}else{q.yaxis=ae.yaxis}}}function az(){var n=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,m;for(m in ae){ae[m].datamin=n;ae[m].datamax=o;ae[m].used=false}for(var v=0;v<ab.length;++v){var j=ab[v].data,q=ab[v].xaxis,r=ab[v].yaxis,p=0,s=0;if(ab[v].bars.show){p=ab[v].bars.align=="left"?0:-ab[v].bars.barWidth/2;s=p+ab[v].bars.barWidth}q.used=r.used=true;for(var k=0;k<j.length;++k){if(j[k]==null){continue}var t=j[k][0],u=j[k][1];if(t!=null&&!isNaN(t=+t)){if(t+p<q.datamin){q.datamin=t+p}if(t+s>q.datamax){q.datamax=t+s}}if(u!=null&&!isNaN(u=+u)){if(u<r.datamin){r.datamin=u}if(u>r.datamax){r.datamax=u}}if(t==null||u==null||isNaN(t)||isNaN(u)){j[k]=null}}}for(m in ae){if(ae[m].datamin==n){ae[m].datamin=0}if(ae[m].datamax==o){ae[m].datamax=1}}}function aL(){l=ap.width();D=ap.height();ap.html("");ap.css("position","relative");if(l<=0||D<=0){throw"Invalid dimensions for plot, width = "+l+", height = "+D}H=d('<canvas width="'+l+'" height="'+D+'"></canvas>').appendTo(ap).get(0);if(d.browser.msie){H=window.G_vmlCanvasManager.initElement(H)}aQ=H.getContext("2d");aW=d('<canvas style="position:absolute;left:0px;top:0px;" width="'+l+'" height="'+D+'"></canvas>').appendTo(ap).get(0);if(d.browser.msie){aW=window.G_vmlCanvasManager.initElement(aW)}aH=aW.getContext("2d");aU=d([aW,H]);if(aE.selection.mode!=null||aE.grid.hoverable){aU.each(function(){this.onmousemove=aq});if(aE.selection.mode!=null){aU.mousedown(a0)}}if(aE.grid.clickable){aU.click(aI)}}function aA(){function k(m,n){aj(m,n);ao(m,n);aw(m,n);if(m==ae.xaxis||m==ae.x2axis){m.p2c=function(o){return(o-m.min)*m.scale};m.c2p=function(o){return m.min+o/m.scale}}else{m.p2c=function(o){return(m.max-o)*m.scale};m.c2p=function(o){return m.max-o/m.scale}}}for(var j in ae){k(ae[j],aE[j])}aJ();aD();aK()}function aj(o,m){var p=m.min!=null?m.min:o.datamin;var k=m.max!=null?m.max:o.datamax;if(k-p==0){var j;if(k==0){j=1}else{j=0.01}p-=j;k+=j}else{var n=m.autoscaleMargin;if(n!=null){if(m.min==null){p-=(k-p)*n;if(p<0&&o.datamin>=0){p=0}}if(m.max==null){k+=(k-p)*n;if(k>0&&o.datamax<=0){k=0}}}}o.min=p;o.max=k}function ao(j,y){var k;if(typeof y.ticks=="number"&&y.ticks>0){k=y.ticks}else{if(j==ae.xaxis||j==ae.x2axis){k=l/100}else{k=D/60}}var t=(j.max-j.min)/k;var q,x,v,u,z,n,o;if(y.mode=="time"){function r(J,P,N){var O=function(R){R=""+R;return R.length==1?"0"+R:R};var K=[];var L=false;if(N==null){N=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}for(var M=0;M<P.length;++M){var Q=P.charAt(M);if(L){switch(Q){case"h":Q=""+J.getUTCHours();break;case"H":Q=O(J.getUTCHours());break;case"M":Q=O(J.getUTCMinutes());break;case"S":Q=O(J.getUTCSeconds());break;case"d":Q=""+J.getUTCDate();break;case"m":Q=""+(J.getUTCMonth()+1);break;case"y":Q=""+J.getUTCFullYear();break;case"b":Q=""+N[J.getUTCMonth()];break}K.push(Q);L=false}else{if(Q=="%"){L=true}else{K.push(Q)}}}return K.join("")}var w={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 s=[[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 m=0;if(y.minTickSize!=null){if(typeof y.tickSize=="number"){m=y.tickSize}else{m=y.minTickSize[0]*w[y.minTickSize[1]]}}for(z=0;z<s.length-1;++z){if(t<(s[z][0]*w[s[z][1]]+s[z+1][0]*w[s[z+1][1]])/2&&s[z][0]*w[s[z][1]]>=m){break}}q=s[z][0];v=s[z][1];if(v=="year"){n=Math.pow(10,Math.floor(Math.log(t/w.year)/Math.LN10));o=(t/w.year)/n;if(o<1.5){q=1}else{if(o<3){q=2}else{if(o<7.5){q=5}else{q=10}}}q*=n}if(y.tickSize){q=y.tickSize[0];v=y.tickSize[1]}x=function(R){var M=[],O=R.tickSize[0],L=R.tickSize[1],N=new Date(R.min);var S=O*w[L];if(L=="second"){N.setUTCSeconds(g(N.getUTCSeconds(),O))}if(L=="minute"){N.setUTCMinutes(g(N.getUTCMinutes(),O))}if(L=="hour"){N.setUTCHours(g(N.getUTCHours(),O))}if(L=="month"){N.setUTCMonth(g(N.getUTCMonth(),O))}if(L=="year"){N.setUTCFullYear(g(N.getUTCFullYear(),O))}N.setUTCMilliseconds(0);if(S>=w.minute){N.setUTCSeconds(0)}if(S>=w.hour){N.setUTCMinutes(0)}if(S>=w.day){N.setUTCHours(0)}if(S>=w.day*4){N.setUTCDate(1)}if(S>=w.year){N.setUTCMonth(0)}var J=0,K=Number.NaN,Q;do{Q=K;K=N.getTime();M.push({v:K,label:R.tickFormatter(K,R)});if(L=="month"){if(O<1){N.setUTCDate(1);var T=N.getTime();N.setUTCMonth(N.getUTCMonth()+1);var P=N.getTime();N.setTime(K+J*w.hour+(P-T)*O);J=N.getUTCHours();N.setUTCHours(0)}else{N.setUTCMonth(N.getUTCMonth()+O)}}else{if(L=="year"){N.setUTCFullYear(N.getUTCFullYear()+O)}else{N.setTime(K+S)}}}while(K<R.max&&K!=Q);return M};u=function(N,K){var J=new Date(N);if(y.timeformat!=null){return r(J,y.timeformat,y.monthNames)}var M=K.tickSize[0]*w[K.tickSize[1]];var L=K.max-K.min;if(M<w.minute){fmt="%h:%M:%S"}else{if(M<w.day){if(L<2*w.day){fmt="%h:%M"}else{fmt="%b %d %h:%M"}}else{if(M<w.month){fmt="%b %d"}else{if(M<w.year){if(L<w.year){fmt="%b"}else{fmt="%b %y"}}else{fmt="%y"}}}}return r(J,fmt,y.monthNames)}}else{var p=y.tickDecimals;var I=-Math.floor(Math.log(t)/Math.LN10);if(p!=null&&I>p){I=p}n=Math.pow(10,-I);o=t/n;if(o<1.5){q=1}else{if(o<3){q=2;if(o>2.25&&(p==null||I+1<=p)){q=2.5;++I}}else{if(o<7.5){q=5}else{q=10}}}q*=n;if(y.minTickSize!=null&&q<y.minTickSize){q=y.minTickSize}if(y.tickSize!=null){q=y.tickSize}j.tickDecimals=Math.max(0,(p!=null)?p:I);x=function(M){var K=[];var J=g(M.min,M.tickSize),N=0,O=Number.NaN,L;do{L=O;O=J+N*M.tickSize;K.push({v:O,label:M.tickFormatter(O,M)});++N}while(O<M.max&&O!=L);return K};u=function(K,J){return K.toFixed(J.tickDecimals)}}j.tickSize=v?[q,v]:q;j.tickGenerator=x;if(d.isFunction(y.tickFormatter)){j.tickFormatter=function(K,J){return""+y.tickFormatter(K,J)}}else{j.tickFormatter=u}if(y.labelWidth!=null){j.labelWidth=y.labelWidth}if(y.labelHeight!=null){j.labelHeight=y.labelHeight}}function aw(o,k){o.ticks=[];if(!o.used){return}if(k.ticks==null){o.ticks=o.tickGenerator(o)}else{if(typeof k.ticks=="number"){if(k.ticks>0){o.ticks=o.tickGenerator(o)}}else{if(k.ticks){var n=k.ticks;if(d.isFunction(n)){n=n({min:o.min,max:o.max})}var p,m;for(p=0;p<n.length;++p){var j=null;var q=n[p];if(typeof q=="object"){m=q[0];if(q.length>1){j=q[1]}}else{m=q}if(j==null){j=o.tickFormatter(m,o)}o.ticks[p]={v:m,label:j}}}}}if(k.autoscaleMargin!=null&&o.ticks.length>0){if(k.min==null){o.min=Math.min(o.min,o.ticks[0].v)}if(k.max==null&&o.ticks.length>1){o.max=Math.min(o.max,o.ticks[o.ticks.length-1].v)}}}function aJ(){function k(q){if(q.labelWidth==null){q.labelWidth=l/6}if(q.labelHeight==null){var s=[];for(var p=0;p<q.ticks.length;++p){var o=q.ticks[p].label;if(o){s.push('<div class="tickLabel" style="float:left;width:'+q.labelWidth+'px">'+o+"</div>")}}q.labelHeight=0;if(s.length>0){var r=d('<div style="position:absolute;top:-10000px;width:10000px;font-size:smaller">'+s.join("")+'<div style="clear:left"></div></div>').appendTo(ap);q.labelHeight=r.height();r.remove()}}}function m(p){if(p.labelWidth==null||p.labelHeight==null){var q,o=[],r;for(q=0;q<p.ticks.length;++q){r=p.ticks[q].label;if(r){o.push('<div class="tickLabel">'+r+"</div>")}}if(o.length>0){var s=d('<div style="position:absolute;top:-10000px;font-size:smaller">'+o.join("")+"</div>").appendTo(ap);if(p.labelWidth==null){p.labelWidth=s.width()}if(p.labelHeight==null){p.labelHeight=s.find("div").height()}s.remove()}if(p.labelWidth==null){p.labelWidth=0}if(p.labelHeight==null){p.labelHeight=0}}}k(ae.xaxis);m(ae.yaxis);k(ae.x2axis);m(ae.y2axis);var n=aE.grid.borderWidth/2;for(var j=0;j<ab.length;++j){n=Math.max(n,2*(ab[j].points.radius+ab[j].points.lineWidth/2))}aG.left=aG.right=aG.top=aG.bottom=n;if(ae.xaxis.labelHeight>0){aG.bottom=Math.max(n,ae.xaxis.labelHeight+aE.grid.labelMargin)}if(ae.yaxis.labelWidth>0){aG.left=Math.max(n,ae.yaxis.labelWidth+aE.grid.labelMargin)}if(ae.x2axis.labelHeight>0){aG.top=Math.max(n,ae.x2axis.labelHeight+aE.grid.labelMargin)}if(ae.y2axis.labelWidth>0){aG.right=Math.max(n,ae.y2axis.labelWidth+aE.grid.labelMargin)}am=l-aG.left-aG.right;ac=D-aG.bottom-aG.top;ae.xaxis.scale=am/(ae.xaxis.max-ae.xaxis.min);ae.yaxis.scale=ac/(ae.yaxis.max-ae.yaxis.min);ae.x2axis.scale=am/(ae.x2axis.max-ae.x2axis.min);ae.y2axis.scale=ac/(ae.y2axis.max-ae.y2axis.min)}function aM(){a2();for(var j=0;j<ab.length;j++){a4(ab[j])}}function ad(m,j){var p=j+"axis",o=j+"2axis",q,k,n,r;if(m[p]){q=ae[p];k=m[p].from;n=m[p].to}else{if(m[o]){q=ae[o];k=m[o].from;n=m[o].to}else{q=ae[p];k=m[j+"1"];n=m[j+"2"]}}if(k!=null&&n!=null&&k>n){return{from:n,to:k,axis:q}}return{from:k,to:n,axis:q}}function a2(){var o;aQ.save();aQ.clearRect(0,0,l,D);aQ.translate(aG.left,aG.top);if(aE.grid.backgroundColor){aQ.fillStyle=aE.grid.backgroundColor;aQ.fillRect(0,0,am,ac)}if(aE.grid.markings){var k=aE.grid.markings;if(d.isFunction(k)){k=k({xmin:ae.xaxis.min,xmax:ae.xaxis.max,ymin:ae.yaxis.min,ymax:ae.yaxis.max,xaxis:ae.xaxis,yaxis:ae.yaxis,x2axis:ae.x2axis,y2axis:ae.y2axis})}for(o=0;o<k.length;++o){var n=k[o],j=ad(n,"x"),p=ad(n,"y");if(j.from==null){j.from=j.axis.min}if(j.to==null){j.to=j.axis.max}if(p.from==null){p.from=p.axis.min}if(p.to==null){p.to=p.axis.max}if(j.to<j.axis.min||j.from>j.axis.max||p.to<p.axis.min||p.from>p.axis.max){continue}j.from=Math.max(j.from,j.axis.min);j.to=Math.min(j.to,j.axis.max);p.from=Math.max(p.from,p.axis.min);p.to=Math.min(p.to,p.axis.max);if(j.from==j.to&&p.from==p.to){continue}j.from=j.axis.p2c(j.from);j.to=j.axis.p2c(j.to);p.from=p.axis.p2c(p.from);p.to=p.axis.p2c(p.to);if(j.from==j.to||p.from==p.to){aQ.strokeStyle=n.color||aE.grid.markingsColor;aQ.lineWidth=n.lineWidth||aE.grid.markingsLineWidth;aQ.moveTo(Math.floor(j.from),Math.floor(p.from));aQ.lineTo(Math.floor(j.to),Math.floor(p.to));aQ.stroke()}else{aQ.fillStyle=n.color||aE.grid.markingsColor;aQ.fillRect(Math.floor(j.from),Math.floor(p.to),Math.floor(j.to-j.from),Math.floor(p.from-p.to))}}}aQ.lineWidth=1;aQ.strokeStyle=aE.grid.tickColor;aQ.beginPath();var q,m=ae.xaxis;for(o=0;o<m.ticks.length;++o){q=m.ticks[o].v;if(q<=m.min||q>=ae.xaxis.max){continue}aQ.moveTo(Math.floor(m.p2c(q))+aQ.lineWidth/2,0);aQ.lineTo(Math.floor(m.p2c(q))+aQ.lineWidth/2,ac)}m=ae.yaxis;for(o=0;o<m.ticks.length;++o){q=m.ticks[o].v;if(q<=m.min||q>=m.max){continue}aQ.moveTo(0,Math.floor(m.p2c(q))+aQ.lineWidth/2);aQ.lineTo(am,Math.floor(m.p2c(q))+aQ.lineWidth/2)}m=ae.x2axis;for(o=0;o<m.ticks.length;++o){q=m.ticks[o].v;if(q<=m.min||q>=m.max){continue}aQ.moveTo(Math.floor(m.p2c(q))+aQ.lineWidth/2,-5);aQ.lineTo(Math.floor(m.p2c(q))+aQ.lineWidth/2,5)}m=ae.y2axis;for(o=0;o<m.ticks.length;++o){q=m.ticks[o].v;if(q<=m.min||q>=m.max){continue}aQ.moveTo(am-5,Math.floor(m.p2c(q))+aQ.lineWidth/2);aQ.lineTo(am+5,Math.floor(m.p2c(q))+aQ.lineWidth/2)}aQ.stroke();if(aE.grid.borderWidth){aQ.lineWidth=aE.grid.borderWidth;aQ.strokeStyle="#D5CB64";aQ.lineJoin="round";aQ.strokeRect(0,0,am,ac)}aQ.restore()}function aD(){ap.find(".tickLabels").remove();var k='<div class="tickLabels" style="font-size:smaller;color:'+aE.grid.color+'">';function j(n,m){for(var o=0;o<n.ticks.length;++o){var p=n.ticks[o];if(!p.label||p.v<n.min||p.v>n.max){continue}k+=m(p,n)}}j(ae.xaxis,function(n,m){return'<div style="position:absolute;top:'+(aG.top+ac+aE.grid.labelMargin)+"px;left:"+(aG.left+m.p2c(n.v)-m.labelWidth/2)+"px;width:"+m.labelWidth+'px;text-align:center" class="tickLabel">'+n.label+"</div>"});j(ae.yaxis,function(n,m){return'<div style="position:absolute;top:'+(aG.top+m.p2c(n.v)-m.labelHeight/2)+"px;right:"+(aG.right+am+aE.grid.labelMargin)+"px;width:"+m.labelWidth+'px;text-align:right" class="tickLabel">'+n.label+"</div>"});j(ae.x2axis,function(n,m){return'<div style="position:absolute;bottom:'+(aG.bottom+ac+aE.grid.labelMargin)+"px;left:"+(aG.left+m.p2c(n.v)-m.labelWidth/2)+"px;width:"+m.labelWidth+'px;text-align:center" class="tickLabel">'+n.label+"</div>"});j(ae.y2axis,function(n,m){return'<div style="position:absolute;top:'+(aG.top+m.p2c(n.v)-m.labelHeight/2)+"px;left:"+(aG.left+am+aE.grid.labelMargin)+"px;width:"+m.labelWidth+'px;text-align:left" class="tickLabel">'+n.label+"</div>"});k+="</div>";ap.append(k)}function a4(j){if(j.lines.show||(!j.bars.show&&!j.points.show)){aO(j)}if(j.bars.show){ay(j)}if(j.points.show){ax(j)}}function aO(o){function j(w,y,s,t){var z,r=null,p=null,q=null;aQ.beginPath();for(var x=0;x<w.length;++x){z=r;r=w[x];if(z==null||r==null){continue}var I=z[0],u=z[1],J=r[0],v=r[1];if(u<=v&&u<t.min){if(v<t.min){continue}I=(t.min-u)/(v-u)*(J-I)+I;u=t.min}else{if(v<=u&&v<t.min){if(u<t.min){continue}J=(t.min-u)/(v-u)*(J-I)+I;v=t.min}}if(u>=v&&u>t.max){if(v>t.max){continue}I=(t.max-u)/(v-u)*(J-I)+I;u=t.max}else{if(v>=u&&v>t.max){if(u>t.max){continue}J=(t.max-u)/(v-u)*(J-I)+I;v=t.max}}if(I<=J&&I<s.min){if(J<s.min){continue}u=(s.min-I)/(J-I)*(v-u)+u;I=s.min}else{if(J<=I&&J<s.min){if(I<s.min){continue}v=(s.min-I)/(J-I)*(v-u)+u;J=s.min}}if(I>=J&&I>s.max){if(J>s.max){continue}u=(s.max-I)/(J-I)*(v-u)+u;I=s.max}else{if(J>=I&&J>s.max){if(I>s.max){continue}v=(s.max-I)/(J-I)*(v-u)+u;J=s.max}}if(p!=s.p2c(I)||q!=t.p2c(u)+y){aQ.moveTo(s.p2c(I),t.p2c(u)+y)}p=s.p2c(J);q=t.p2c(v)+y;aQ.lineTo(p,q)}aQ.stroke()}function n(z,s,u){var J,r=null;var p=Math.min(Math.max(0,u.min),u.max);var w,K=0;var t=false;for(var I=0;I<z.length;++I){J=r;r=z[I];if(t&&J!=null&&r==null){aQ.lineTo(s.p2c(K),u.p2c(p));aQ.fill();t=false;continue}if(J==null||r==null){continue}var L=J[0],v=J[1],M=r[0],x=r[1];if(L<=M&&L<s.min){if(M<s.min){continue}v=(s.min-L)/(M-L)*(x-v)+v;L=s.min}else{if(M<=L&&M<s.min){if(L<s.min){continue}x=(s.min-L)/(M-L)*(x-v)+v;M=s.min}}if(L>=M&&L>s.max){if(M>s.max){continue}v=(s.max-L)/(M-L)*(x-v)+v;L=s.max}else{if(M>=L&&M>s.max){if(L>s.max){continue}x=(s.max-L)/(M-L)*(x-v)+v;M=s.max}}if(!t){aQ.beginPath();aQ.moveTo(s.p2c(L),u.p2c(p));t=true}if(v>=u.max&&x>=u.max){aQ.lineTo(s.p2c(L),u.p2c(u.max));aQ.lineTo(s.p2c(M),u.p2c(u.max));continue}else{if(v<=u.min&&x<=u.min){aQ.lineTo(s.p2c(L),u.p2c(u.min));aQ.lineTo(s.p2c(M),u.p2c(u.min));continue}}var q=L,y=M;if(v<=x&&v<u.min&&x>=u.min){L=(u.min-v)/(x-v)*(M-L)+L;v=u.min}else{if(x<=v&&x<u.min&&v>=u.min){M=(u.min-v)/(x-v)*(M-L)+L;x=u.min}}if(v>=x&&v>u.max&&x<=u.max){L=(u.max-v)/(x-v)*(M-L)+L;v=u.max}else{if(x>=v&&x>u.max&&v<=u.max){M=(u.max-v)/(x-v)*(M-L)+L;x=u.max}}if(L!=q){if(v<=u.min){w=u.min}else{w=u.max}aQ.lineTo(s.p2c(q),u.p2c(w));aQ.lineTo(s.p2c(L),u.p2c(w))}aQ.lineTo(s.p2c(L),u.p2c(v));aQ.lineTo(s.p2c(M),u.p2c(x));if(M!=y){if(x<=u.min){w=u.min}else{w=u.max}aQ.lineTo(s.p2c(y),u.p2c(w));aQ.lineTo(s.p2c(M),u.p2c(w))}K=Math.max(M,y)}if(t){aQ.lineTo(s.p2c(K),u.p2c(p));aQ.fill()}}aQ.save();aQ.translate(aG.left,aG.top);aQ.lineJoin="round";var m=o.lines.lineWidth;var k=o.shadowSize;if(k>0){aQ.lineWidth=k/2;aQ.strokeStyle="rgba(0,0,0,0.1)";j(o.data,m/2+k/2+aQ.lineWidth/2,o.xaxis,o.yaxis);aQ.lineWidth=k/2;aQ.strokeStyle="rgba(0,0,0,0.2)";j(o.data,m/2+aQ.lineWidth/2,o.xaxis,o.yaxis)}aQ.lineWidth=m;aQ.strokeStyle=o.color;G(o.lines,o.color);if(o.lines.fill){n(o.data,o.xaxis,o.yaxis)}j(o.data,0,o.xaxis,o.yaxis);aQ.restore()}function ax(j){function m(t,v,s,p,r){for(var u=0;u<t.length;++u){if(t[u]==null){continue}var w=t[u][0],q=t[u][1];if(w<p.min||w>p.max||q<r.min||q>r.max){continue}aQ.beginPath();aQ.arc(p.p2c(w),r.p2c(q),v,0,2*Math.PI,true);if(s){aQ.fill()}aQ.stroke()}}function n(t,r,v,p,s){for(var u=0;u<t.length;++u){if(t[u]==null){continue}var w=t[u][0],q=t[u][1];if(w<p.min||w>p.max||q<s.min||q>s.max){continue}aQ.beginPath();aQ.arc(p.p2c(w),s.p2c(q)+r,v,0,Math.PI,false);aQ.stroke()}}aQ.save();aQ.translate(aG.left,aG.top);var o=j.lines.lineWidth;var k=j.shadowSize;if(k>0){aQ.lineWidth=k/2;aQ.strokeStyle="rgba(0,0,0,0.1)";n(j.data,k/2+aQ.lineWidth/2,j.points.radius,j.xaxis,j.yaxis);aQ.lineWidth=k/2;aQ.strokeStyle="rgba(0,0,0,0.2)";n(j.data,aQ.lineWidth/2,j.points.radius,j.xaxis,j.yaxis)}aQ.lineWidth=j.points.lineWidth;aQ.strokeStyle=j.color;G(j.points,j.color);m(j.data,j.points.radius,j.points.fill,j.xaxis,j.yaxis);aQ.restore()}function a1(v,x,k,w,n,q,r,u,z){var s=true,I=true,m=true,j=false,o=v+k,t=v+w,p=0,y=x;if(y<p){y=0;p=x;j=true;m=false}if(t<r.min||o>r.max||y<u.min||p>u.max){return}if(o<r.min){o=r.min;s=false}if(t>r.max){t=r.max;I=false}if(p<u.min){p=u.min;j=false}if(y>u.max){y=u.max;m=false}if(q){z.beginPath();z.moveTo(r.p2c(o),u.p2c(p)+n);z.lineTo(r.p2c(o),u.p2c(y)+n);z.lineTo(r.p2c(t),u.p2c(y)+n);z.lineTo(r.p2c(t),u.p2c(p)+n);z.fill()}if(s||I||m||j){z.beginPath();o=r.p2c(o);p=u.p2c(p);t=r.p2c(t);y=u.p2c(y);z.moveTo(o,p+n);if(s){z.lineTo(o,y+n)}else{z.moveTo(o,y+n)}if(m){z.lineTo(t,y+n)}else{z.moveTo(t,y+n)}if(I){z.lineTo(t,p+n)}else{z.moveTo(t,p+n)}if(j){z.lineTo(o,p+n)}else{z.moveTo(o,p+n)}z.stroke()}}function ay(m){function j(r,u,s,o,q,n,p){for(var t=0;t<r.length;t++){if(r[t]==null){continue}a1(r[t][0],r[t][1],u,s,o,q,n,p,aQ)}}aQ.save();aQ.translate(aG.left,aG.top);aQ.lineJoin="round";aQ.lineWidth=m.bars.lineWidth;aQ.strokeStyle=m.color;G(m.bars,m.color);var k=m.bars.align=="left"?0:-m.bars.barWidth/2;j(m.data,k,k+m.bars.barWidth,0,m.bars.fill,m.xaxis,m.yaxis);aQ.restore()}function G(n,k){var j=n.fill;if(!j){return}if(n.fillColor){aQ.fillStyle=n.fillColor}else{var m=e(k);m.a=typeof j=="number"?j:0.4;m.normalize();aQ.fillStyle=m.toString()}}function aK(){ap.find(".legend").remove();if(!aE.legend.show){return}var v=[];var k=false;for(var o=0;o<ab.length;++o){if(!ab[o].label){continue}if(o%aE.legend.noColumns==0){if(k){v.push("</tr>")}v.push("<tr>");k=true}var t=ab[o].label;if(aE.legend.labelFormatter!=null){t=aE.legend.labelFormatter(t)}v.push('<td class="legendColorBox"><div style="border:1px solid '+aE.legend.labelBoxBorderColor+';padding:1px"><div style="width:14px;height:10px;background-color:'+ab[o].color+';overflow:hidden"></div></div></td><td class="legendLabel">'+t+"</td>")}if(k){v.push("</tr>")}if(v.length==0){return}var r='<table style="font-size:smaller;color:'+aE.grid.color+'">'+v.join("")+"</table>";if(aE.legend.container!=null){aE.legend.container.html(r)}else{var u="";var p=aE.legend.position,n=aE.legend.margin;if(p.charAt(0)=="n"){u+="top:"+(n+aG.top)+"px;"}else{if(p.charAt(0)=="s"){u+="bottom:"+(n+aG.bottom)+"px;"}}if(p.charAt(1)=="e"){u+="right:"+(n+aG.right)+"px;"}else{if(p.charAt(1)=="w"){u+="left:"+(n+aG.left)+"px;"}}var s=d('<div class="legend">'+r.replace('style="','style="position:absolute;'+u+";")+"</div>").appendTo(ap);if(aE.legend.backgroundOpacity!=0){var j=aE.legend.backgroundColor;if(j==null){var m;if(aE.grid.backgroundColor){m=aE.grid.backgroundColor}else{m=a(s)}j=e(m).adjust(null,null,null,1).toString()}var q=s.children();d('<div style="position:absolute;width:'+q.width()+"px;height:"+q.height()+"px;"+u+"background-color:"+j+';"> </div>').prependTo(s).css("opacity",aE.legend.backgroundOpacity)}}}var B={pageX:null,pageY:null},aV={first:{x:-1,y:-1},second:{x:-1,y:-1},show:false,active:false},C=[],ak=false,al=null,at=null;function aN(P,j){var I=aE.grid.mouseActiveRadius,u=I*I+1,s=null,y=false;function L(R,S){return{datapoint:ab[R].data[S],dataIndex:S,series:ab[R],seriesIndex:R}}for(var v=0;v<ab.length;++v){var p=ab[v].data,Q=ab[v].xaxis,k=ab[v].yaxis,z=Q.c2p(P),J=k.c2p(j),n=I/Q.scale,o=I/k.scale,q=ab[v].bars.show,r=!(ab[v].bars.show&&!(ab[v].lines.show||ab[v].points.show)),m=ab[v].bars.align=="left"?0:-ab[v].bars.barWidth/2,t=m+ab[v].bars.barWidth;for(var w=0;w<p.length;++w){if(p[w]==null){continue}var N=p[w][0],O=p[w][1];if(q){if(!y&&z>=N+m&&z<=N+t&&J>=Math.min(0,O)&&J<=Math.max(0,O)){s=L(v,w)}}if(r){if((N-z>n||N-z<-n)||(O-J>o||O-J<-o)){continue}var K=Math.abs(Q.p2c(N)-P),M=Math.abs(k.p2c(O)-j),x=K*K+M*M;if(x<u){u=x;y=true;s=L(v,w)}}}}return s}function aq(j){var n=j||window.event;if(n.pageX==null&&n.clientX!=null){var m=document.documentElement,k=document.body;B.pageX=n.clientX+(m&&m.scrollLeft||k.scrollLeft||0);B.pageY=n.clientY+(m&&m.scrollTop||k.scrollTop||0)}else{B.pageX=n.pageX;B.pageY=n.pageY}if(aE.grid.hoverable&&!at){at=setTimeout(ai,100)}if(aV.active){a3(B)}}function a0(j){if(j.which!=1){return}document.body.focus();if(document.onselectstart!==undefined&&ah.onselectstart==null){ah.onselectstart=document.onselectstart;document.onselectstart=function(){return false}}if(document.ondrag!==undefined&&ah.ondrag==null){ah.ondrag=document.ondrag;document.ondrag=function(){return false}}aR(aV.first,j);B.pageX=null;aV.active=true;d(document).one("mouseup",E)}function aI(j){if(ak){ak=false;return}an("plotclick",j)}function ai(){an("plothover",B);at=null}function an(o,p){var n=aU.offset(),r={pageX:p.pageX,pageY:p.pageY},j=p.pageX-n.left-aG.left,m=p.pageY-n.top-aG.top;if(ae.xaxis.used){r.x=ae.xaxis.c2p(j)}if(ae.yaxis.used){r.y=ae.yaxis.c2p(m)}if(ae.x2axis.used){r.x2=ae.x2axis.c2p(j)}if(ae.y2axis.used){r.y2=ae.y2axis.c2p(m)}var q=aN(j,m);if(q){q.pageX=parseInt(q.series.xaxis.p2c(q.datapoint[0])+n.left+aG.left);q.pageY=parseInt(q.series.yaxis.p2c(q.datapoint[1])+n.top+aG.top)}if(aE.grid.autoHighlight){for(var k=0;k<C.length;++k){var s=C[k];if(s.auto&&!(q&&s.series==q.series&&s.point==q.datapoint)){A(s.series,s.point)}}if(q){aP(q.series,q.datapoint,true)}}ap.trigger(o,[r,q])}function av(){if(!al){al=setTimeout(ag,50)}}function ag(){al=null;aH.save();aH.clearRect(0,0,l,D);aH.translate(aG.left,aG.top);var o,p;for(o=0;o<C.length;++o){p=C[o];if(p.series.bars.show){i(p.series,p.point)}else{F(p.series,p.point)}}aH.restore();if(aV.show&&aZ()){aH.strokeStyle=e(aE.selection.color).scale(null,null,null,0.8).toString();aH.lineWidth=1;aQ.lineJoin="round";aH.fillStyle=e(aE.selection.color).scale(null,null,null,0.4).toString();var m=Math.min(aV.first.x,aV.second.x),k=Math.min(aV.first.y,aV.second.y),j=Math.abs(aV.second.x-aV.first.x),n=Math.abs(aV.second.y-aV.first.y);aH.fillRect(m+aG.left,k+aG.top,j,n);aH.strokeRect(m+aG.left,k+aG.top,j,n)}}function aP(n,k,m){if(typeof n=="number"){n=ab[n]}if(typeof k=="number"){k=n.data[k]}var j=aC(n,k);if(j==-1){C.push({series:n,point:k,auto:m});av()}else{if(!m){C[j].auto=false}}}function A(m,k){if(typeof m=="number"){m=ab[m]}if(typeof k=="number"){k=m.data[k]}var j=aC(m,k);if(j!=-1){C.splice(j,1);av()}}function aC(n,m){for(var k=0;k<C.length;++k){var j=C[k];if(j.series==n&&j.point[0]==m[0]&&j.point[1]==m[1]){return k}}return -1}function F(q,r){var m=r[0],j=r[1],k=q.xaxis,o=q.yaxis;if(m<k.min||m>k.max||j<o.min||j>o.max){return}var p=q.points.radius+q.points.lineWidth/2;aH.lineWidth=p;aH.strokeStyle=e(q.color).scale(1,1,1,0.5).toString();var n=1.5*p;aH.beginPath();aH.arc(k.p2c(m),o.p2c(j),n,0,2*Math.PI,true);aH.stroke()}function i(m,k){aH.lineJoin="round";aH.lineWidth=m.bars.lineWidth;aH.strokeStyle=e(m.color).scale(1,1,1,0.5).toString();aH.fillStyle=e(m.color).scale(1,1,1,0.5).toString();var j=m.bars.align=="left"?0:-m.bars.barWidth/2;a1(k[0],k[1],j,j+m.bars.barWidth,0,true,m.xaxis,m.yaxis,aH)}function aB(){var j=Math.min(aV.first.x,aV.second.x),k=Math.max(aV.first.x,aV.second.x),n=Math.max(aV.first.y,aV.second.y),o=Math.min(aV.first.y,aV.second.y);var m={};if(ae.xaxis.used){m.xaxis={from:ae.xaxis.c2p(j),to:ae.xaxis.c2p(k)}}if(ae.x2axis.used){m.x2axis={from:ae.x2axis.c2p(j),to:ae.x2axis.c2p(k)}}if(ae.yaxis.used){m.yaxis={from:ae.yaxis.c2p(n),to:ae.yaxis.c2p(o)}}if(ae.y2axis.used){m.yaxis={from:ae.y2axis.c2p(n),to:ae.y2axis.c2p(o)}}ap.trigger("plotselected",[m]);if(ae.xaxis.used&&ae.yaxis.used){ap.trigger("selected",[{x1:m.xaxis.from,y1:m.yaxis.from,x2:m.xaxis.to,y2:m.yaxis.to}])}}function E(j){if(document.onselectstart!==undefined){document.onselectstart=ah.onselectstart}if(document.ondrag!==undefined){document.ondrag=ah.ondrag}aV.active=false;a3(j);if(aZ()){aB();ak=true}return false}function aR(m,k){var j=aU.offset();if(aE.selection.mode=="y"){if(m==aV.first){m.x=0}else{m.x=am}}else{m.x=k.pageX-j.left-aG.left;m.x=Math.min(Math.max(0,m.x),am)}if(aE.selection.mode=="x"){if(m==aV.first){m.y=0}else{m.y=ac}}else{m.y=k.pageY-j.top-aG.top;m.y=Math.min(Math.max(0,m.y),ac)}}function a3(j){if(j.pageX==null){return}aR(aV.second,j);if(aZ()){aV.show=true;av()}else{ar()}}function ar(){if(aV.show){aV.show=false;av()}}function aa(j,k){var m;if(aE.selection.mode=="y"){aV.first.x=0;aV.second.x=am}else{m=ad(j,"x");aV.first.x=m.axis.p2c(m.from);aV.second.x=m.axis.p2c(m.to)}if(aE.selection.mode=="x"){aV.first.y=0;aV.second.y=ac}else{m=ad(j,"y");aV.first.y=m.axis.p2c(m.from);aV.second.y=m.axis.p2c(m.to)}aV.show=true;av();if(!k){aB()}}function aZ(){var j=5;return Math.abs(aV.second.x-aV.first.x)>=j&&Math.abs(aV.second.y-aV.first.y)>=j}}d.plot=function(i,k,l){var j=new f(i,k,l);return j};function g(i,j){return j*Math.floor(i/j)}function b(j,i,k){if(i<j){return i}else{if(i>k){return k}else{return i}}}function c(m,n,k,i){var o=["r","g","b","a"];var l=4;while(-1<--l){this[o[l]]=arguments[l]||((l==3)?1:0)}this.toString=function(){if(this.a>=1){return"rgb("+[this.r,this.g,this.b].join(",")+")"}else{return"rgba("+[this.r,this.g,this.b,this.a].join(",")+")"}};this.scale=function(q,r,p,s){l=4;while(-1<--l){if(arguments[l]!=null){this[o[l]]*=arguments[l]}}return this.normalize()};this.adjust=function(q,r,p,s){l=4;while(-1<--l){if(arguments[l]!=null){this[o[l]]+=arguments[l]}}return this.normalize()};this.clone=function(){return new c(this.r,this.b,this.g,this.a)};var j=function(q,r,p){return Math.max(Math.min(q,p),r)};this.normalize=function(){this.r=j(parseInt(this.r),0,255);this.g=j(parseInt(this.g),0,255);this.b=j(parseInt(this.b),0,255);this.a=j(this.a,0,1);return this};this.normalize()}var h={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 a(j){var k,i=j;do{k=i.css("background-color").toLowerCase();if(k!=""&&k!="transparent"){break}i=i.parent()}while(!d.nodeName(i.get(0),"body"));if(k=="rgba(0, 0, 0, 0)"){return"transparent"}return k}function e(i){var k;if(k=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(i)){return new c(parseInt(k[1],10),parseInt(k[2],10),parseInt(k[3],10))}if(k=/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(i)){return new c(parseInt(k[1],10),parseInt(k[2],10),parseInt(k[3],10),parseFloat(k[4]))}if(k=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(i)){return new c(parseFloat(k[1])*2.55,parseFloat(k[2])*2.55,parseFloat(k[3])*2.55)}if(k=/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(i)){return new c(parseFloat(k[1])*2.55,parseFloat(k[2])*2.55,parseFloat(k[3])*2.55,parseFloat(k[4]))}if(k=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(i)){return new c(parseInt(k[1],16),parseInt(k[2],16),parseInt(k[3],16))}if(k=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(i)){return new c(parseInt(k[1]+k[1],16),parseInt(k[2]+k[2],16),parseInt(k[3]+k[3],16))}var j=d.trim(i).toLowerCase();if(j=="transparent"){return new c(255,255,255,0)}else{k=h[j];return new c(k[0],k[1],k[2])}}})(jQuery);
