",{Wn:"Never attached to DOM."});return(new DOMParser).parseFromString(Rc(a),"text/html").body.children[0]} function rm(a,b){if(!a)return"";var c=document.createElement("div").style,d=I(a),e=d.next();try{for(;!e.done;e=d.next()){var f=e.value,g=qf&&f in om?f:f.replace(/^-(?:apple|css|epub|khtml|moz|mso?|o|rim|wap|webkit|xv)-(?=[a-z])/i,"");if(g.lastIndexOf("--",0)!=0&&g.lastIndexOf("var",0)!=0){var h=bm(Yl,a,"getPropertyValue",[f])||"",k=Ml(g,h,b);k!=null&&bm(Zl,c,"setProperty",[g,k])}}}finally{ua(d,e)}return c.cssText||""} function um(a){var b=Array.from(bm(Rl,a,"getElementsByTagName",["STYLE"])),c=wd(b,function(g){return ld(gm(g).cssRules)});c=qm(c);for(var d=[],e=0;e"+b+"
"),R(b,"Older browsers that don't support inert parsing should not get to this branch"),um(b),b=b.innerHTML);b=Nd(b,{Wn:"Never attached to DOM."});var c= document.createElement("template");Sc(c,b);b=document.createTreeWalker(c.content,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,null,!1);c=new WeakMap;for(var d;d=b.nextNode();){a:{var e=d;var f=im(e);switch(f){case 3:e=this.createTextNode(e);break a;case 1:im(e)==1||lb("Expected Node of type Element but got Node of type %s",im(e));if(hm(e).toUpperCase()=="TEMPLATE")e=null;else{f=hm(e).toUpperCase();if(f in this.Zj||km(e)!="http://www.w3.org/1999/xhtml")f=null;else if(this.fi[f])f=this.fj.createElement(f);else{var g=this.fj.createElement("span");this.Ro&&dm(g,"data-sanitizer-original-tag",f.toLowerCase());f=g}if(g=f){var h=cm(e);if(h!=null)for(var k=0;f=h[k];k++)if(f.specified){var l=e,m=f;var n=m.name;if(n.lastIndexOf("data-sanitizer-",0)==0)n=null;else{var p=hm(l);m=m.value;var q={tagName:Zb(p).toLowerCase(),attributeName:Zb(n).toLowerCase()},r={en:void 0};q.attributeName=="style"&&(r.en=em(l));l=Pm(p,n);l in this.wi?n=(0,this.wi[l])(m,q,r):(n=Pm(null,n),n=n in this.wi?(0,this.wi[n])(m,q,r):null)}n!== null&&dm(g,f.name,n)}e=g}else e=null}break a;default:vm&&Ld(vm,zd,"Dropping unknown node type: "+f),e=null}}e?(im(e)==1&&c.set(d,e),d=jm(d),f=!1,d&&(g=im(d),h=jm(d),g!=11||h||(f=!0),g=null,f||!d?g=a:im(d)==1&&(g=c.get(d)),g.content&&(g=g.content),g.appendChild(e))):sg(d)}cm(a).length>0&&(b=this.fj.createElement("span"),b.appendChild(a),a=b);a=(new XMLSerializer).serializeToString(a);return Nd(a.slice(a.indexOf(">")+1,a.lastIndexOf("=f&&a.box.right<=b)){d=ae(a);var g=d.box.left;d.box.left=we(c.x,d.box.right,-1);d.box.right=we(c.x,g,-1);if(g=d.bc){var h=g[0];g[0]=g[2];g[2]=h;g[0].x=we(c.x,g[0].x,-1);g[1].x=we(c.x,g[1].x,-1);g[2].x=we(c.x,g[2].x,-1)}d.box.left>=f&&d.box.right<=b?(a.box=d.box,a.bc=d.bc):(a.bc&&(c=new li(f+e,b-e),e=new li(d.bc[0].x,d.bc[2].x),g=new li(a.bc[0].x,a.bc[2].x),!(c.start<=g.start&&c.end>=g.end)&&c.start<=e.start&&c.end>=e.end&&(a.box=d.box,a.bc=d.bc)),a.box.right>b&&(a.box.left-=a.box.right-b,a.box.right=b),a.box.left=e&&a.box.bottom<=b)){d=ae(a);var f=d.box.top;d.box.top=we(c.y,d.box.bottom,-1);d.box.bottom=we(c.y,f,-1);if(f=d.bc){var g=f[0];f[0]=f[2];f[2]=g;f[0].y=we(c.y,f[0].y,-1);f[1].y=we(c.y,f[1].y,-1);f[2].y=we(c.y,f[2].y,-1)}d.box.top>=e&&d.box.bottom<=b?(a.box=d.box,a.bc=d.bc):(a.box.bottom>b&&(a.box.top-=a.box.bottom-b,a.box.bottom=b),a.box.top0?p.gh:0);l=Math.max(l,p.width);break;case "separator":m+=1.5*g+p.data.m.strokeWidth;break;default:lb('Invalid tooltip entry type "'+p.type+'"')}l=Math.max(l,2*g);var q=new Se(Math.round(l+2*g/1.618),Math.round(m+2*g/1.618));m=Math.sign(d.x-f.x);n=Math.sign(d.y-f.y);var r=c?new U(d.x+m*g,d.y+n*(g+q.height/2)):new U(d.x+m*q.width/2,d.y+n*q.height/2);p=r.x-q.width/2;var v=p+q.width,w=r.y-q.height/2,x=w+q.height;l={};c&&(c=new U(r.x,we(d.y,r.y,g/(g+q.height/2))),r=new U(we(r.x,d.x,-1),c.y),c.x=Math.round(c.x),c.y=Math.round(c.y),r.x=Math.round(r.x),r.y=Math.round(r.y),l.bc=m*n===1?[c,d,r]:[r,d,c]);l.box=new Lk(Math.round(w),Math.round(v),Math.round(x),Math.round(p));Xm(l,e,f,5,4);an(l,e,f,5);d={};e=g/1.618;e=new Lk(l.box.top+e,l.box.right-e,l.box.bottom-e,l.box.left+e);f=[];x=e.top;c=a.entries.length;q=!1;for(m=0;mr.length-1?r.push(D.width):r[y]=Math.max(r[y],D.width))}}p=[];v=[];w= 0;if(q)for(m=0;m0&&(x+=C.gh);A.background&&(y.background={box:new Lk(x-C.gh/2,l.box.right,x+C.height+C.gh,l.box.left)});D=[];B=e.left;var G=0;for(A=A.items.length;G0&&(B+=z.Zn);var E=x+(C.height-z.height)/2;F.box=new Lk(Math.round(E),Math.round(B+z.width),Math.round(E+z.height),Math.round(B));h&&(E=e.right-(F.box.left-e.left)-F.box.left-z.width,F.box.left+=E,F.box.right+=E);D.push(F);B+=z.width}y.items=D;x+=C.height;w++;break;case "separator":q=q.data;y=x+g+q.m.strokeWidth/2;r.data.line=new ji(l.box.left,y,l.box.right,y);x+=1.5*g+q.m.strokeWidth/2;break;default:lb('Invalid tooltip entry type "'+q.type+'"')}f.push(r)}d.entries=f;d.Us=!!h;k=k||new X({fill:"white",stroke:"#ccc",strokeWidth:1});return{Cc:k,outline:l,zi:d}}function en(a,b){for(var c=0,d=0,e=0,f=0;f0?g.Zn:0);d=Math.max(d,g.height);e=Math.max(e,g.height/2+g.gh)}return{width:c,height:d,gh:e-d/2}} function fn(a,b){switch(a.type){case "text":var c=a.data;a=c.text;c=c.style;return{width:b?b(String(a),c).width:0,height:c.fontSize,gh:c.fontSize/3.236,Zn:c.fontSize/3.236};case "square":return b=a.data.size,{width:b,height:b,gh:b,Zn:b};default:throw Error('Invalid tooltip item type "'+a.type+'"');}};var gn=function(a,b){this.entries={};this.actions={};this.lb=[];this.Nf(a,b)},jn=function(a){Yc(a.lb,function(b){hn(this,this.actions[b])},a)};gn.prototype.Nf=function(a,b){this.l=sh(a,"actionsMenu.textStyle",b);this.Ov=sh(a,"actionsMenu.disabledTextStyle",b);jn(this)};gn.prototype.getEntries=function(){for(var a=[],b=0,c=this.lb.length;b=0&&this.lb.splice(a,1)};var kn=function(a,b){a.zi=a.zi||{};a=a.zi;a.entries=a.entries||{};a=a.entries;a[b]=a[b]||{};b=a[b];b.entry=b.entry||{};return b.entry};gn.prototype.Dh=function(a,b){if(!a.Jh){var c=b.focused.Bh;c!=null&&(b=fd(a.zi.entries,function(d){return d.entry.data.id===c}),b!==-1&&(a=kn(a,b),a.data=a.data||{},a=a.data,a.background=a.background||{m:new X},a.background.m=Ng("#DDD")))}};var ln=function(a){this.C=a},mn=function(a,b){var c={index:{},order:[],If:{}};Yc(b,function(d){var e=a.getKey(d);if(e!=null){e=e.toString();if(!c.If.hasOwnProperty(e)){var f=a.Zq(d);f&&(c.If[e]=f)}c.index.hasOwnProperty(e)||(c.index[e]=[],c.order.push(e));c.index[e].push(d)}});return c};var nn=function(a){this.C=a};u(nn,ln);nn.prototype.getKey=function(a){return this.C.wn(a)};nn.prototype.Zq=function(a){return this.C.Rk(a)};nn.prototype.Tq=function(a,b,c){var d=on(this.C,c);return pn(a,d,b.content||"",!0,a.My,this.C.h[c.ia])};var qn=function(a){this.C=a};u(qn,ln);qn.prototype.getKey=function(a){return a.ia};qn.prototype.Zq=function(a){return on(this.C,a)};qn.prototype.Tq=function(a,b,c){c=this.C.Rk(c)||"";return[c?bn(b.content||"",a.Ai,c,a.l):null]};var rn=function(){};t=rn.prototype;t.Mc=function(){return this};t.yg=function(){return!1};t.Gr=function(){return!1};t.Sk=function(){throw Error("Only NaryOperator can return components");};t.Sq=function(){throw Error("Only NaryOperator can return component count");};t.ng=function(){throw Error("Only NaryOperator can return precedence");};t.F=function(){throw Error("Only GVizNumber can return value");};t.getName=function(){throw Error("Only Variable can return name");};var sn=function(){};sn.prototype.Wd=function(){return")"};var tn=function(){};tn.prototype.Wd=function(){return"("};var un=function(){this.Jb=[]};u(un,rn);un.prototype.join=function(a){var b=[];this.Jb.forEach(function(c,d){d>0&&b.push(a);d=!1;c instanceof un&&c.Sq()>1&&this.ng()>c.ng()&&(d=!0);d&&b.push(new tn);md(b,c.Uc());d&&b.push(new sn)},this);return b};un.prototype.Mc=function(){if(this.Jb.length===1)return this.Jb[0];var a=[];this.Jb.forEach(function(b){a.push(b.Mc())});this.Jb=a;return this};un.prototype.Sk=function(){return this.Jb[0]};un.prototype.Sq=function(){return this.Jb.length};var vn=function(a){R(typeof a==="number");this.value=a};vn.prototype.Wd=function(){return"number"};var wn=function(a){this.value=a};u(wn,rn);wn.prototype.Uc=function(){return[new vn(this.value)]};wn.prototype.yg=function(){return this.value<0};wn.prototype.F=function(){return this.value};wn.prototype.Gr=function(){return!0};var xn=function(){};xn.prototype.Wd=function(){return"--"};var yn=function(){this.Jb=[]};u(yn,un);var zn=function(){this.Jb=[]};u(zn,yn);zn.prototype.Mc=function(){var a=this.Sk().Mc();if(a.yg()){if(a instanceof zn)return a.Sk();if(a instanceof wn)return new wn(-a.F());throw Error("Unknown type of negative.");}return new zn(a)};zn.prototype.Uc=function(){return[new xn].concat(this.Sk().Uc())};zn.prototype.yg=function(){return this.Mc()instanceof zn};zn.prototype.ng=function(){return-1};var An=function(){};An.prototype.Wd=function(){return"-"};var Bn=function(){};Bn.prototype.Wd=function(){return"+"};var Cn=function(){this.Jb=[]};u(Cn,un);Cn.prototype.ng=function(){return 1};Cn.prototype.Uc=function(){for(var a=[],b=0;b0&&c.yg()?(a.push(new An),c=(new zn(c)).Mc()):a.length>0&&a.push(new Bn);a=a.concat(c.Uc())}return a};var Dn=function(){};Dn.prototype.Wd=function(){return"="};var En=function(){this.Jb=[]};u(En,un);En.prototype.ng=function(){return 0};En.prototype.Uc=function(){return this.join(new Dn)};var Fn=function(){};Fn.prototype.Wd=function(){return"*"};var Gn=function(a,b){this.Jb=[];this.hq=b!=null?b:!1};u(Gn,un);Gn.prototype.ng=function(){return 2};Gn.prototype.Mc=function(){un.prototype.Mc.call(this);var a=0,b=[],c=1;this.Jb.forEach(function(e){e.yg()&&(e=(new zn(e)).Mc(),a++);e.Gr()&&(c*=e.F(),e=null);e&&b.push(e)});c!==1&&b.splice(0,0,new wn(c));var d=new Gn(b,this.hq);a%2&&(d=new zn(d));return d};Gn.prototype.Uc=function(){return this.hq?Array.prototype.concat.apply([],this.Jb.map(function(a){return a.Uc()})):this.join(new Fn)};Gn.prototype.yg=function(){var a=0;this.Jb.forEach(function(b){b.yg()&&a++});return!!(a%2)};var Hn=function(){};Hn.prototype.Wd=function(){return"^"};var In=function(){this.Jb=[]};u(In,un);In.prototype.ng=function(){return 3};In.prototype.Uc=function(){return this.join(new Hn)};var Jn=function(a){this.name=a};Jn.prototype.Wd=function(){return"identifier"};var Kn=function(a){this.name=a};u(Kn,rn);Kn.prototype.Uc=function(){return[new Jn(this.name)]};Kn.prototype.getName=function(){return this.name};function Ln(a,b){if(a instanceof Ln)this.Na=a.toArray();else{var c;if(c=Ra(a))a:{for(var d=c=0;d0&&a[d].length!=c){c=!1;break a}for(var e=0;e0&&b>0)this.Na=Mn(a,b);else throw Error("Invalid argument(s) for Matrix contructor");}this.cb=new Se(this.Na[0].length,this.Na.length)}var Nn=function(a,b,c){for(var d=0;d=b.cb.width);d++){for(var e=d;b.Na[e][c]==0;)if(e++,e==b.cb.height&&(e=d,c++,c==b.cb.width))return b;var f=a,g=d,h=f.Na[e];f.Na[e]=f.Na[g];f.Na[g]=h;f=b.Na[d][c];for(e=c;e=0&&b=0&&ca&&(a=c)});var b=[];Yc(this.Na,function(c){b.push("[ ");c.forEach(function(d){d=String(d);b.push(Od(" ",a-d.length)+d+" ")});b.push("]\n")});return b.join("")};var Rn=function(a,b){var c=new Ln(a.cb.height,b.getSize().width);Nn(c,function(d,e,f){for(var g=d=0;g=0&&e=0&&f=this.Qc?(this.W=new Un(a,b,c,d,this.mc),this.Wb=Math.round(this.W.Pa(this.Qc))):b<=-this.Qc?(this.W=new Un(-b,-a,d,c,this.mc),this.Wb=Math.round(this.W.Pa(this.Qc)),f=2*this.Wb-d,e=2*this.Wb-c,this.W=new Un(-b,-a,f,e,this.mc)):a>=-this.Qc?(this.Wb=Math.round(c),this.W=new Un(this.Qc,b,this.Wb,d,this.mc)):b<=this.Qc?(this.Wb= Math.round(d),e=2*this.Wb-c,this.W=new Un(this.Qc,-a,this.Wb,e,this.mc)):(this.W=new Un(this.Qc,b,0,1,this.mc),e=this.W.Pa(-a),this.Wb=Math.round(c+e/(e+1)*(d-c)),b>=-a?this.W=new Un(this.Qc,b,this.Wb,d,this.mc):(e=2*this.Wb-c,this.W=new Un(this.Qc,-a,this.Wb,e,this.mc)));this.reversed=dthis.Wb*b?this.W.Zb(a):a*bthis.Qc?this.W.Pa(a):a<-this.Qc?2*this.Wb-this.W.Pa(-a):this.Wb};var Zn={GA:"piecewiseLinear",oA:"log",tA:"mirrorLog"};function $n(){return{transform:function(a){return a},inverse:function(a){return a}}}function ao(a){var b=new Yn(a*.5,a,0,1,0);return{transform:function(c){return c==null?c:b.Pa(c)},inverse:function(c){return c==null?c:b.Zb(c)}}}function bo(a){R(a>0);var b=new Yn(-a,a,-1,1,0,a);return{transform:function(c){return c==null?c:b.Pa(c)},inverse:function(c){return c==null?c:b.Zb(c)}}} function co(a,b,c){return(c=a.Ta(c,Zn))?c:Z(a,b)?"log":"piecewiseLinear"}function eo(a,b){switch(a){case "piecewiseLinear":return $n();case "log":return ao(b);case "mirrorLog":return bo(b);default:return $n()}};var fo=function(a,b){this.ds=a;this.Nt=b;this.data=[]},go=function(a,b){if(a.data.length>0){var c=a.data[a.data.length-1][0],d=b-c;if(d>a.ds&&(d=Math.round(d/a.ds),d>1))for(var e=1;e0){var c=a-this.data[this.data.length-1].x;c>0&&(this.un+=c)}this.up+=b;this.data.push({x:a,y:b})}};var io=function(a){var b=a.sl;b||(a.range!=null&&a.range.min!=null&&isFinite(a.range.min)&&a.range.max!=null&&isFinite(a.range.max)?(R(a.range.min!=null),R(a.range.max!=null),b=(a.range.max-a.range.min)/100):b=void 0);b!=null&&isFinite(b)||(b=a.un/(a.data.length-1));return b},jo=function(a,b){return a.data.reduce(function(c,d){return c+Math.pow(a.qf.inverse(d.x),b)},0)},ko=function(a,b){return a.data.reduce(function(c,d){return c+Math.pow(a.qf.inverse(d.x),b)*d.y},0)},lo=function(a){for(var b=[],c=a.bg,d=0;dr.x?1:q.x0&&S(f.min)1&&S(f.max)>d[d.length-1].x&&go(c,f.max);return{data:c.ff(),r2:b}},po=function(a){var b=mo(a),c=function(d,e){for(var f=[],g=b.length-1;g>=0;g--){var h=b[g];if(h!=null&&h!==0){h=new wn(h);if(g>0){var k=new Kn(d||"x");g>1&&(k=new In([k,new wn(g)]));h=new Gn([h,k],!0)}f.push(h)}}return new En([new Kn(e||"y"),new Cn(f)])};a=oo(a,b);return a==null||a.data.length===0?null:{gq:b,data:a.data,r2:a.r2,rf:c().Mc(),rl:c}};function qo(a,b,c,d){d=new ho(d);for(var e=0;e0?null:e-1;var h=ro(a,b,function(k){k=c(k);if(k==null)return null;e!=null&&(k-=e);return Math.log(k)},d);if(h===null)return null;a=[];for(b=0;b0&&(Go(c,a),b||c.close());return c};var Io=function(){this.Va=[]};t=Io.prototype;t.lc=function(a,b){this.Va.length===0&&R(b.type==="move");this.Va.push({m:a,segment:b})};t.move=function(a,b){a=Eo(a,b);this.lc(null,a)};t.Ma=function(a,b,c){b=Fo(b,c);this.lc(a,b)};t.qk=function(a,b,c,d,e,f,g){this.lc(a,{type:"curve",data:{x1:b,y1:c,x2:d,y2:e,x:f,y:g}})};t.qh=function(a,b,c,d,e,f,g){this.lc(a,{type:"arc",data:{cx:b,cy:c,rx:d,ry:e,Mq:f,gp:g,Br:void 0}})};t.close=function(a){R(this.Va.length!==0);var b=this.Va[0].segment.data;this.Ma(a,b.x,b.y)};var Jo=function(a){switch(a.type){case "move":case "line":case "curve":return a=a.data,new U(a.x,a.y);case "arc":a=a.data;var b=ve(a.gp);return new U(a.cx+a.rx*Math.cos((b-90)*Math.PI/180),a.cy+a.ry*Math.sin((b-90)*Math.PI/180));default:return R(!1),new U(0,0)}};Io.prototype.ue=function(a){for(var b=[],c=null,d=0;d0;if(-(n.Mh.x-n.hp.x)*v+(n.Mh.y-n.hp.y)*r>0&&w&&Math.sqrt(Math.pow(n.Mh.x-p,2)+Math.pow(n.Mh.y-q,2))d?null:h)&&h1&&(h=f,k=d)}var m={entries:[]};Yc(k.order,function(n){dp(a,m,(k.If[n]||"").toString());Yc(k.index[n],function(p){var q=e.Xi(p.ia,p.Aa);q.cc?ep(a,m,null,q.content,!1,a.Tg,e.h[p.ia]):m.entries.push.apply(m.entries,h.Tq(a,q,p))})});a.hg(m,b.ld,c.length>0);return m};cp.prototype.rq=function(a,b){var c=a.C,d=c.h[b],e=d.Ja,f=null,g=null,h=c.ab!=null&&c.ab;c.ab&&(f=c.h.length,f=(b+f/c.Ng.vc.length)%f,g=c.h[f],R(d.m!=null),R(g.m!=null),c={color:d.m.fill,alpha:d.m.fillOpacity},g={color:g.m.fill,alpha:g.m.fillOpacity},f=b>f?[c,g]:[g,c],g=[this.yq,this.zq]);b={entries:[]};e.Ue?ep(this,b,e.Ue,e.content,!0,this.Tg,d,!0,f,g,h):ep(this,b,null,e.content,!1,this.Tg,d);this.hg(b,a.ld);return b};cp.prototype.oq=function(a,b){var c=a.C,d=c.N[b].Ja,e=!1,f={entries:[]};if(d&&d.content)ep(this,f,null,d.content,!1,!1);else{var g=0,h=1,k=c.h.length;Uo(c)&&(g=c.h.length-1,k=h=-1);for(d=[];g!==k;g+=h){var l=c.h[g];if(l.bm){var m=gp(c,g,b);m=l.points[m];var n=void 0,p=void 0;((n=m)==null?0:(p=n.Ja)==null?0:p.content)&&l.Ca!=null&&d.push({h:l,zf:m})}}this.pv.Ta("tooltip.sort")==="descending"&&d.length>0&&d.every(function(x){return x.h.type==="line"||x.h.type==="scatter"})&&d.sort(function(x,y){var C,D,B;x=(B=(C=x.zf)==null?void 0:(D=C.bb)==null?void 0:D.t)!=null?B:NaN;var A,G,F;y=(F=(A=y.zf)==null?void 0:(G=A.bb)==null?void 0:G.t)!=null?F:NaN;A=isNaN(x);G=isNaN(y);return A&&G?0:A?1:G?-1:y-x});g=null;d=I(d);h=d.next();try{for(;!h.done;h=d.next()){var q=h.value,r=q.h,v=q.zf.Ja;if(g!==r.Ca){g=r.Ca;var w=c.N[b].If[g];Yb(w==null?"":String(w))||dp(this,f,w)}ep(this,f,v.Ue,v.content,!0,this.Tg,r,void 0,void 0,void 0,void 0,v.cc&&v.td);e=!0}}finally{ua(d,h)}}a.ld!=null&&a.ld.length>0&&(e=!0);this.hg(f,a.ld);return e||this.Ny?f:null};var dp=function(a,b,c){a=bn(c,a.Ai);b.entries.push(a)},pn=function(a,b,c,d,e,f,g,h,k,l,m){g=g===void 0?!1:g;d=d?a.Ai:a.l;c=c==null?[]:c.split("\n");R(h==null||h.length===c.length);var n=e?f.color.color:null;b=g&&b!=null?bn(b,a.l,null,null,n,f&&f.Hi):bn(c[0],d,b,a.l,n,f&&f.Hi,null,m);a=[b];for(g=g?0:1;g0?"both":"focus";this.Bt=Y(a,"tooltip.trigger",b,Wj)},lp=function(a){if(a.K==="pie"){var b=a.Ng.Di;return new U(b.x,b.y)}b=Wd(a.Ea);a=Wd(a.qa);return new U(b.ha!=null?b.ha.J:Math.min(b.Wa,b.Za),a.ha!=null?a.ha.J:Math.max(a.Wa,a.Za))},mp=function(a,b){a.Ya=b},np=function(a,b,c){var d=b.o;a=lp(a);b=1+Math.ceil(To(b,c)/Math.sqrt(2));return new U(d.x+(d.x>=a.x?b:-b),d.y+(d.y<=a.y?-b:b))},op=function(a,b,c){var d=b.o;b=np(a,b,c);if(b.xa.chartArea.right)b.x+=2*(d.x-b.x);if(b.ya.chartArea.bottom)b.y+=2*(d.y-b.y);return b},pp=function(a){R(a.lines.length>0);var b=a.anchor?a.anchor:new U(0,0),c=a.lines[0],d=a.l.fontSize;if(a.angle===270)return new U(b.x+c.x+d,b.y+c.y-c.length/2);R(!a.angle);return new U(b.x+c.x+c.length/2,b.y+c.y-d)},rp=function(a,b,c){var d=a.h[b],e=d.type;c=gp(a,b,c);var f=d.points[c];if(!f)return new U(0,0);b=function(){switch(e){case "bars":case "steppedArea":var g=f.o.bar||f.o,h=lp(a);g=new U(g.left+(g.lefth.x?g.left+g.width:g.left,g.toph.x?g.left+g.width:g.left,g.top0);var b=a.anchor?a.anchor:new U(0,0),c=a.lines[0],d=a.l.fontSize;if(a.angle===270)return new U(b.x+ c.x+d/2,b.y+c.y);R(!a.angle);return new U(b.x+c.x,b.y+c.y-d/2)},up=function(a,b,c){c=gp(a,b,c);var d=a.h[b];b=d.type;c=d.points[c].o;if(b==="bars"||b==="steppedArea"||b==="candlesticks"||b==="boxplot"){var e=c.bar||c.rect||c;c=e.left;b=e.width;d=e.top;e=e.height;var f=d+e,g=lp(a);a=a.orientation==="horizontal"?f>g.y?new U(c+b/2,f-.1):new U(c+b/2,d+.1):c0&&h.hg(d,b.ld),a=dn(d,f.Z,!1,c,a.Ya,g,f.uf,f.Yd,f.eh))):a=null,a):c===null&&d!==null?(R(f!==void 0),c=b.C,e=f.clone(),f=sp(a,c,e,d),e=a.Yf?Re(f,a.Yf):e,(g=c.N[d].Ja)&&g.td&&g.cc?(R(g.content!=null),b=Rm.Bf(g.content),a=vp(a,b,f,e)):(b=a.ef.oq(b,d),a=b===null?null:dn(b,c.Z,!1,f,a.Ya,e,c.uf,c.Yd,c.eh)),a):null},wp=function(a,b,c,d){var e=b.C;if(!e.h[c].bm)return null;var f=rp(e,c,d),g=a.Yf?Re(f,a.Yf):up(e,c,d),h=e.h[c].points[d].Ja;if(!h)return null;if(typeof h.tq==="function"){e= h.tq(e,c,d);if(!e)return null;if(typeof e!=="string"&&!(e instanceof Nc))throw Error("Custom calc function for tooltip content should produce string literal or safe HTML.");b=null;e instanceof Nc?b=e:typeof e==="string"&&(b=cg.Bf(e));return vp(a,b,f,g)}if(h.td&&h.cc)return e=Rm.Bf(h.content||""),vp(a,e,f,g);b=a.ef.qq(b,c,d);return dn(b,e.Z,!0,f,a.Ya,g,e.uf,e.Yd,e.eh)},yp=function(a,b,c,d,e){var f=b.C;d=d.clone();var g=sp(a,f,d,c[c.length-1]);d=a.Yf?Re(g,a.Yf):d;var h=[];c.forEach(function(k){f.h.forEach(function(l,m){h.push({ia:m,Aa:k})})});b=fp(a.ef,b,h,e);return b===null?null:dn(b,f.Z,!1,g,a.Ya,d,f.uf,f.Yd,f.eh)},vp=function(a,b,c,d){return{Jh:Pf("div",{"class":"google-visualization-tooltip"},b),Jv:!0,Ds:d,anchor:c,Ya:a.Ya,spacing:20,margin:5}};var zp=function(a,b,c,d,e,f){this.Xa=f;d==="dive"||this.Xa?this.Xa!=null&&this.Xa.Nf(a,c):this.Xa=new gn(a,c);c=d==="dive"?new hp(a,c,e):new cp(a,c,e,this.Xa);this.Jf=new kp(a,c,b)},Ap=function(a,b,c){var d={};if(c.legend.Qb!=null){d.legend=d.legend||{};var e=b.legend;R(typeof c.legend.Qb==="number");var f=c.legend.Qb;d.legend.lf=e.Qa[f];var g=f+1+"/"+e.Qa.length,h=e.Nj.Bo,k=f>0,l=e.Nj.po;e=f8;){var e=d+c>>1;b[e]<=a?c=e:d=e}for(;c0&&g===2;)h-=k>=65536&&k<=1114111?2:1,k=Ip(d,h),g=Jp(k);if(g===16||g===19)return!1}}else if((b===16|| b===19)&&e===18)return!1;if(b===15&&(e===17||e===19))return!1;if(f){if(e===14){e=0;d=a;h=d.length-1;k=c;for(g=b;h>0&&g===14;)e++,h-=k>=65536&&k<=1114111?2:1,k=Ip(d,h),g=Jp(k);g===14&&e++;if(e%2===1)return!1}}else if(b===14&&e===14)return!1;return!0}function Jp(a){if(44032<=a&&a<=55203)return a%28===16?10:11;Gp||(Gp=new Fp);return Gp.at(a)} function Ip(a,b){a:{var c=a.charCodeAt(b);if(c>=55296&&c<=56319&&b+1=56320&&a<=57343){c=c>=55296&&c<=56319&&a>=56320&&a<=57343?(c<<10)-56623104+(a-56320+65536):null;break a}}else if(c>=56320&&c<=57343&&b>0&&(a=a.charCodeAt(b-1),a>=55296&&a<=56319)){c=-(a>=55296&&a<=56319&&c>=56320&&c<=57343?(a<<10)-56623104+(c-56320+65536):0);break a}}return c<0?-c:c};var Kp=function(){this.cursor=this.text=null};Kp.prototype.adoptText=function(a){this.text=a};Kp.prototype.first=function(){return this.cursor=0};Kp.prototype.current=function(){return this.cursor||0};Kp.prototype.next=function(a){a=this.yf(a);return a==null?a:this.cursor=a};var Lp=function(a,b){R(b.global);R(a.cursor!==null);R(a.text!==null);b.lastIndex=a.cursor;b=b.exec(a.text);return!b||b.index<0?a.text.length:b.index+b[0].length};Kp.prototype.yf=function(a){R(this.text!==null);R(this.cursor!==null);if(a===0)a=Lp(this,/(\r\n|\n|\r)/g);else if(a===1)a=Lp(this,/([`~!@#$%^&*()_+\-=\[\]\\{}|;':",\.\/<>?]|[ \t\u2009\u200b]+)/g);else if(a===2)a=Lp(this,/[\u00ad]/g);else if(a===3)a:{a=this.text.length;for(var b=this.cursor+1;b=0&&c.push(d);else for(var f in e)if(e.hasOwnProperty(f)){var g=e[f];if(typeof g==="number")g===b&&c.push(d);else if(g.Sc)g.Ga.indexOf(b)>=0&&c.push(d);else throw Error("Unknown type");}}return c};Mp.prototype.Fi=function(a,b,c){if(!(a in this.ae))throw Error("Error: unknown iterator type "+a);a=this.ae[a];if(typeof a==="number")return a;if(a.Sc)return b=a.Sc,b(c);if(b in a){a=a[b];if(typeof a==="number")return a;if(a.Sc)return b=a.Sc,b(c)}return null};var Op=function(a){var b=this;this.Yx=a;this.zg={};this.pending={};this.text=this.cursor=null;this.Sc=new Mp;this.Fi("line","number",0);this.Fi("line","none",[1,2],function(c){return b.text[c-1]==="\u00ad"?2:1});this.Fi("character",null,3)};Op.prototype.adoptText=function(a){this.text=a;for(var b in this.zg)this.zg.hasOwnProperty(b)&&this.zg[b].adoptText(a)};var Pp=function(a,b){var c=a.zg[b];c||(c=a.zg[b]=new window.Intl.v8BreakIterator(a.Yx,{type:b}),a.text!=null&&c.adoptText(a.text),a.cursor!=null&&c.first());return c};Op.prototype.Fi=function(a,b,c,d){this.Sc.add(a,b,c,d)};var Qp=function(a,b,c){c.next();if(c.current()>=a.text.length)return!0;if(c.current()>a.cursor){var d=c.breakType();c=c.current();var e=a.Sc.Fi(b,d,c);if(e==null)throw Error("Break type "+d+" in "+b+" iterator was classified as null.");e in a.pending||(a.pending[e]=[]);a.pending[e].push(c)}return!1},Rp=function(a,b){for(var c=a.pending[b];c&&c.length>0&&c[0]<=a.cursor;)c.shift();c=Np(a.Sc,b);for(var d={},e=!1;!(e||a.pending[b]&&a.pending[b].length!==0);){e=!0;for(var f=c.length,g=0;g0){a=this.cursor=a.shift();for(var b in this.zg)if(this.zg.hasOwnProperty(b))for(var c=Pp(this,b);c.current()<=a;)Qp(this,b,c);return this.cursor}return this.text.length};Op.prototype.yf=function(a){Rp(this,a);a=this.pending[a];return a!=null&&a.length>0?a[0]:this.text.length};var Sp=function(){this.ez=window.Intl&&!!window.Intl.v8BreakIterator},Tp=function(){R(!Object.isSealed(Sp),"Cannot use getInstance() with a sealed constructor.");var a="Pn";if(Sp.Pn&&Sp.hasOwnProperty(a))a=Sp.Pn;else{Ep.push(Sp);var b=new Sp;Sp.Pn=b;R(Sp.hasOwnProperty(a),"Could not instantiate singleton.");a=b}b=["en"];return a.ez?new Op(b):new Kp};function Up(a,b,c,d,e,f){var g=null;f=f?2:3;for(var h=0;h<=f;h++){var k=c.yf(h);if(g==null||k=0?Zb(a.slice(0,b))+"\u2026":"...".slice(0,b)} function Xp(a,b,c,d){if(a(Wp(b))<=c)return Wp(b);var e=Tp();e.adoptText(b);e.first();var f=e.next(3),g=a(b.slice(0,f))<=c;if(d&&!g||!d&&a(Wp(b,f))>c)for(d=0;d>=-3&&!(b=Wp(b,d),a(b)<=c);d--);else{for(;a(Wp(b,e.yf(3)))<=c;)f=e.next(3);if(d&&a(Wp(b,f))>c)for(d=b.slice(0,f),e=0;e>=-3&&!(b=d+Wp(b,e),a(b)<=c);e--);else b=Wp(b,f)}return b} var Yp=zb(function(a,b,c,d,e,f){if(b==="")return{lines:[],Lf:!1};var g=f==null||f.truncate==null?!0:f.truncate,h=f==null||f.Rs==null?!1:f.Rs;f=f==null||f.Bq==null?!1:f.Bq;var k=a;a=function(y){return k(y,c).width};var l=Tp();l.adoptText(b);l.first();for(var m=!1,n=Vp(b),p=!1,q=[],r=0;;){var v=Up(a,n,l,r,d,f),w=l.next(v);if(v!==0)for(;w=b.length||q.length>=e||!x){(w0,vj:0};if(e===0)return{lines:[],Ha:!1,vj:0};var f=function(g){return a(g,c)};b=Yp(f,b,c,d,e,{truncate:!0,Rs:!1,Bq:!0});return{lines:b.lines,Ha:b.Lf,vj:b.lines.length>0?Math.max.apply(null,b.lines.map(f).map(function(g){return g.width})):0}};var $p=function(a,b){this.zx=100;this.yv=a;this.ny=b;this.Bl=0;this.bl=null};$p.prototype.get=function(){if(this.Bl>0){this.Bl--;var a=this.bl;this.bl=a.next;a.next=null}else a=this.yv();return a};$p.prototype.put=function(a){this.ny(a);this.Bl1)));g=g.next)e||(f=g);e&&(c.Cb==0&&d==1?zq(c,b):(f?(d=f,R(c.qe),R(d!=null),d.next==c.yh&&(c.yh=d),d.next=d.next.next):Aq(c),Bq(c,e,3,b)))}a.Mg=null}else oq(a,3,b)},xq=function(a,b){a.qe||a.Cb!=2&&a.Cb!=3||Cq(a);R(b.Ig!=null);a.yh?a.yh.next=b:a.qe=b;a.yh=b},wq=function(a,b,c,d){b&&(b=gq(b,"goog.Promise.then"));c&&(c=gq(c,"goog.Promise.then"));var e=tq(null,null,null);e.Wf=new qq(function(f,g){e.Ig=b?function(h){try{var k=b.call(d,h);f(k)}catch(l){g(l)}}:f;e.Wh=c?function(h){try{var k=c.call(d,h);k===void 0&&h instanceof pq?g(h):f(k)}catch(l){g(l)}}:g});e.Wf.Mg=a;xq(a,e);return e.Wf};qq.prototype.Yy=function(a){R(this.Cb==1);this.Cb=0;oq(this,2,a)};qq.prototype.Zy=function(a){R(this.Cb==1);this.Cb=0;oq(this,3,a)};var oq=function(a,b,c){if(a.Cb==0){a===c&&(b=3,c=new TypeError("Promise cannot resolve to itself"));a.Cb=1;a:{var d=c,e=a.Yy,f=a.Zy;if(d instanceof qq){yq(d,e,f,a);var g=!0}else{if(d)try{var h=!!d.$goog_Thenable}catch(l){h=!1}else h=!1;if(h)d.then(e,f,a),g=!0;else{if(Ta(d))try{var k=d.then;if(typeof k==="function"){Dq(d,k,e,f,a);g=!0;break a}}catch(l){f.call(a,l);g=!0;break a}g=!1}}}g||(a.Af=c,a.Cb=b,a.Mg=null,Cq(a),b!=3||c instanceof pq||Eq(a,c))}},Dq=function(a,b,c,d,e){var f=!1,g=function(k){f|| (f=!0,c.call(e,k))},h=function(k){f||(f=!0,d.call(e,k))};try{b.call(a,g,h)}catch(k){h(k)}},Cq=function(a){a.pn||(a.pn=!0,mq(a.Uv,a))},Aq=function(a){var b=null;a.qe&&(b=a.qe,a.qe=b.next,b.next=null);a.qe||(a.yh=null);b!=null&&R(b.Ig!=null);return b};qq.prototype.Uv=function(){for(var a;a=Aq(this);)Bq(this,a,this.Cb,this.Af);this.pn=!1};var Bq=function(a,b,c,d){if(c==3&&b.Wh&&!b.sk)for(;a&&a.Xk;a=a.Mg)a.Xk=!1;if(b.Wf)b.Wf.Mg=null,Fq(b,c,d);else try{b.sk?b.Ig.call(b.context):Fq(b,c,d)}catch(e){Gq.call(null,e)}sq.put(b)},Fq=function(a,b,c){b==2?a.Ig.call(a.context,c):a.Wh&&a.Wh.call(a.context,c)},Eq=function(a,b){a.Xk=!0;mq(function(){a.Xk&&Gq.call(null,b)})},Gq=aq,pq=function(a){gb.call(this,a)};ab(pq,gb);pq.prototype.name="cancel";var uq=function(a,b,c){this.promise=a;this.resolve=b;this.reject=c};function Hq(a,b){Ik.call(this);this.kl=a||1;this.ck=b||Q;this.Xp=Za(this.Wy,this);this.Mr=Date.now()}ab(Hq,Ik);t=Hq.prototype;t.enabled=!1;t.Ed=null;t.setInterval=function(a){this.kl=a;this.Ed&&this.enabled?(this.stop(),this.start()):this.Ed&&this.stop()};t.Wy=function(){if(this.enabled){var a=Date.now()-this.Mr;a>0&&a2147483647?-1:Q.setTimeout(a,b||0)};function Jq(a){return Math.pow(a,3)}function Kq(a){return 1-Math.pow(1-a,3)}function Lq(a){return 3*a*a-2*a*a*a};var Mq={LINEAR:"linear",dA:"in",BA:"out",fA:"inAndOut"};function Nq(a){switch(a){case "linear":break;case "in":return Jq;case "out":return Kq;case "inAndOut":return Lq;default:lb('Invalid easing type "'+a+'"')}return ii}function Oq(a){var b=Z(a,"animation.startup",!1),c=lh(a,"animation.duration",0);if(!c)return null;var d=lh(a,"animation.maxFramesPerSecond",30);a=Y(a,"animation.easing","linear",Mq);a=Nq(a);return{Ry:b,duration:c,easing:a,fo:d}};function Pq(a){if(a==null||!og(a))throw Error("google-visualization-errors: container is null");var b=a.childNodes;var c=null;for(var d=ol(),e=0;e255||isNaN(c)||c<0||c>255||isNaN(d)||d<0||d>255||isNaN(a)||a<0||a>1)throw Error('"('+b+","+c+","+d+","+a+')" is not a valid RGBA color');b=[b,c,d,a];c=b.slice(0);c[3]=Math.round(b[3]*1E3)/1E3;return"rgba("+c.join(",")+")"};var $q={100:"#c6dafc",500:"#5e97f6",800:"#2a56c6"},ar={100:"#f4c7c3",500:"#db4437",900:"#a52714"},br={100:"#fce8b2",600:"#f2a600",700:"#f09300",800:"#ee8100"},cr={100:"#b7e1cd",500:"#0f9d58",700:"#0b8043"},dr={100:"#e1bee7",400:"#ab47bc",800:"#6a1b9a"},er={100:"#b2ebf2",600:"#00acc1",800:"#00838f"},fr={100:"#ffccbc",400:"#ff7043",700:"#e64a19"},gr={100:"#f0f4c3",800:"#9e9d24",900:"#827717"},hr={100:"#c5cae9",400:"#5c6bc0",600:"#3949ab"},ir={100:"#f8bbd0",200:"#f48fb1",300:"#f06292",500:"#e91e63",700:"#c2185b",900:"#880e4f"},jr={100:"#b2dfdb",700:"#00796b",900:"#004d40"};var kr={},lr=!1;function mr(a){return a.replace(/[^\d,.]/g,"").split(",").map(function(b){return Number(b)})} function nr(a){var b={};typeof a==="string"&&(a={color:a});b.color=a.color;var c=yg(b.color);c==="none"?(b.fn=a.darker||c,b.ao=a.lighter||c):c.includes("rgba")?(c=mr(c),a=c.slice(0,3),c=c[3]||1,b.fn=Zq([].concat(ra(Le([0,0,0],a,.25)),[c])),b.ao=Zq([].concat(ra(Le([255,255,255],a,.25)),[c]))):(c=Ie(c),b.fn=a.darker||Ge(Le([0,0,0],c,.25)),b.ao=a.lighter||Ge(Le([255,255,255],c,.25)));return b};var qj={emptyString:function(){return""},error:function(a,b,c){var d=c.sourceColumn,e=c.magnitude;if(typeof d!=="number"||typeof e!=="number")return null;a=a.F(b,d);return typeof a!=="number"?null:c.errorType==="percent"?a+e/100*a:a+e},mapFromSource:function(a,b,c){var d=c.sourceColumn;c=c.mapping;return typeof d==="number"&&c&&(a=a.F(b,d),typeof a==="string")?a in c?c[a]:null:null},stringify:function(a,b,c){c=c.sourceColumn;return typeof c!=="number"?"":a.oa(b,c)},fillFromTop:function(a,b,c){c=c.sourceColumn;return typeof c!=="number"?null:Dj(a,b,c,!0)},fillFromBottom:function(a,b,c){c=c.sourceColumn;return typeof c!=="number"?null:Dj(a,b,c,!1)},identity:function(a,b,c){c=c.sourceColumn;return typeof c!=="number"?null:a.F(b,c)}};var or=function(a){this.Tc=null;this.ja=a;this.columns=[];this.Qn=!0;this.Ho=null;this.Tm=[];this.Rm=!0;var b=[];a=a.Sb();for(var c=0;c=-q&&p-g<=q&&p-g>=-q&&(n=(n-f)*(n-f)+(p-g)*(p-g),n<=q*q&&n<=k&&(h=rl(["pointsensitivityarea",m.ea,m.nc]),k=n))}f=h}if(f==null&&e.has("category"))b:{e=a.C.N;for(l=0;le?c:d):c=d);return sr(a,c)?c:"chart"},sr=function(a,b){a=a.C.Nb;return a.has("category")&&!a.has("datum")?(b=b.split("#")[0],b!=="bar"&&b!=="bubble"&&b!=="candlestick"&&b!=="boxplot"&&b!=="point"&&b!=="pointsensitivityarea"&&b!=="steppedareabar"):!0};function tr(a,b,c,d){var e=b.ro||di;if(b.orientation==="horizontal"){var f=b.l,g=a.Oc[0],h=a.Oc[a.Oc.length-1];e=new ai({pattern:e});g=e.Sa(g);h=e.Sa(h);d={minValue:{text:g,width:d?d(g,f).width:0,height:f.fontSize},maxValue:{text:h,width:d?d(h,f).width:0,height:f.fontSize}};f=d.minValue.height/4;e=new Nk(d.minValue.width+f,0,b.width-(d.minValue.width+d.maxValue.width+2*f),b.height)}else e=new Nk(0,0,b.width,b.height),d={};f=e.height*.33;h=f/Math.sqrt(3)*2;g=new Nk(e.left+h/2,e.top+f+1,e.width-h,e.height- f-1);var k=a.jf,l=a.Oc,m=l[l.length-1]-l[0];if(m===0)var n=[{Gb:new Nk(g.left,g.top,g.width,g.height),m:new X({fill:k[0]})}];else{n=[];m=g.width/m;for(var p=g.left,q,r=0;r0&&(g[0].Gb.width<0||g[0].Gb.height<0))return null;k=e;l=b.Dx;e=[];for(n=0;np[p.length-1]?m=q:(r=p[p.length-1]-p[0],m=r===0?q*.5:(m-p[0])/r*q)),m=k.left+m+h/2,m=[m-h/2,k.top,m+h/2,k.top,m,k.top+f],p=new X({fill:l,stroke:l}),e[n]={path:m,m:p};a=[];b.orientation==="horizontal"&&(a=d,c=[],c[0]={x:0,y:b.height-a.minValue.height,text:a.minValue.text,style:b.l},c[1]={x:b.width-a.maxValue.width,y:b.height-a.maxValue.height,text:a.maxValue.text,style:b.l},a=c);a={jq:g,Xr:e,vt:a};c=a.jq;for(d=0;d=4);R(d[0]===null);R(d[d.length-1]===null);f=d[1].clone();var g=d[2].clone(),h=d[d.length-3].clone(),k=d[d.length-2].clone();e?(d[0]=k,d[d.length-1]=f):Pe(f,k)?(d[0]=h,d[d.length-1]=g):(d[0]=ki(new ji(f.x,f.y,g.x,g.y),-1),d[d.length-1]=ki(new ji(k.x,k.y,h.x,h.y),-1));f=b<0;var l= null,m=null;k=null;g=d.length-2;for(h=0;h<=g;h++)if(!Pe(d[h],d[h+1])){var n=d[h];var p=d[h+1],q=b,r=n;var v=p;R(!Pe(r,v));v=(v.y-r.y)/(v.x-r.x);v=isFinite(v)?{Eg:v,n:r.y-v*r.x}:{Eg:Infinity,n:r.x};r=v.Eg;v=v.n;r===Infinity?n={Eg:Infinity,n:p.y-n.y<0?v+q:v-q}:(q*=Math.sqrt(1+r*r),n={Eg:r,n:p.x-n.x>0?v+q:v-q});if(l){q=vr(l,n);Ta(q)?(p=vr(wr(m,d[h]),l),r=vr(wr(d[h],m),l),p=mi(new li(p.x,r.x),q.x)&&mi(new li(p.y,r.y),q.y)):p=q===Infinity;l=p&&q!==Infinity?q:vr(wr(d[h],m),l);R(k!==null);m=c;q=m.lc;var w= k;r=l;k=ae(w);switch(w.type){case "move":case "line":v=k.data;v.x=r.x;v.y=r.y;break;case "curve":v=k.data;var x=w.data;v.x=r.x;v.y=r.y;w=r.x-x.x;r=r.y-x.y;v.x1+=w;v.y1+=r;v.x2+=w;v.y2+=r;break;case "arc":lb("Calculating parallel arcs is not yet supported.");break;case "close":break;default:lb('Unsupported segment type "'+w.type+'"')}q.call(m,k);p||(k=180-Math.atan2(l.x-d[h].x,l.y-d[h].y)*180/Math.PI,l=vr(wr(d[h],d[h+1]),n),l=180-Math.atan2(l.x-d[h].x,l.y-d[h].y)*180/Math.PI,R(k!==l,"Two adjacent input segments cannot be parallel, so their parallel\n segments cannot be either"),c.qh(d[h].x,d[h].y,Math.abs(b),Math.abs(b),k,l,f));l=n;m=d[h];k=a[h]}else l=n,m=d[h],k=a[h].data,k=Eo(k.x,k.y)}e&&c.close();return c}function wr(a,b){b=(a.x-b.x)/(b.y-a.y);isFinite(b)?a=a.y-b*a.x:(b=Infinity,a=a.x);return{Eg:b,n:a}}function vr(a,b){var c=a.Eg,d=b.Eg;a=a.n;b=b.n;isFinite(c)||(c=Infinity);isFinite(d)||(d=Infinity);if(Oi(c,d))return Oi(a,b)?Infinity:null;if(c===Infinity)return new U(a,d*a+b);if(d===Infinity)return new U(b,c*b+a);var e=d-c;return new U(-(b-a)/e,(a*d-c*b)/e)};var xr=function(a,b,c,d,e,f,g){zp.call(this,a,b,c,d,e,g);this.el=!0;this.Ik=a.Ta("crosshair.trigger",Xj);this.Ev=Y(a,["crosshair.selected.orientation","crosshair.orientation"],"both",Yj);this.Bv=Y(a,["crosshair.focused.orientation","crosshair.orientation"],"both",Yj);this.Cv=a.il(["crosshair.selected.color","crosshair.color"]);this.zv=a.il(["crosshair.focused.color","crosshair.color"]);this.Dv=nh(a,["crosshair.selected.opacity","crosshair.opacity"],1);this.Av=nh(a,["crosshair.focused.opacity","crosshair.opacity"],1);this.Im=Y(a,"aggregationTarget","none",bk)};u(xr,zp);xr.prototype.Dh=function(a,b,c){this.el=!0;switch(a.xg){case "default":yr(this,a,b,c);break;case "dive":zr(this,a,b,c);break;default:lb('Invalid interactivity model "'+a.xg+'"')}};var Ar=function(a){return a.h.some(function(b){return b.Mb})},Br=function(a,b,c){a.h=a.h||{};a=a.h;a[b]=a[b]||{};b=a[b];b.points=b.points||{};b=b.points;a=b[c]||{};return b[c]=a},Dr=function(a,b,c){if(b!=null)return a=Br(a,b,c),a.ga=a.ga||{},a.ga;a=Cr(a,c);a.ga=a.ga||{};return a.ga},Er=function(a,b){a.h=a.h||[];a=a.h;a[b]=a[b]||{};return a[b]},Cr=function(a,b){a.N=a.N||{};a=a.N;a[b]=a[b]||{};return a[b]},Fr=function(a,b){a.legend=a.legend||{};a=a.legend;a.lf=a.lf||{};a=a.lf;a[b]=a[b]||{};return a[b]},yr=function(a,b,c,d){var e=a.Xa,f={C:b,ld:e.getEntries(),kj:d,le:c.lb},g=c.lb.focused.Bh;g!=null&&(c.lb.focused.action=e.Ti(g).action);e=a.Jf.Bt;g=e==="selection"||e==="both";e=e==="focus"||e==="both";for(var h=a.Im!=="none",k=f.ld.length>0,l=Uq(c.selected),m=l.length>1&&(h||k),n=0;n0&&Kr(a,f,h?l:[],l[l.length-1]));l=Tq(c.selected,"column");for(m=0;m1&&(h||k);for(k=0;k0&&Or(a,f,c.cursor.zo,g)));g=c.focused.ia;h=c.focused.we;h!=null&&R(g!=null);h!=null?b.h[g].Mb&&(Pr(a,b,g,h,d),e&&Hr(a,f,g,h),Qr(b,g,h,d)):g!=null&&b.h[g].Mb&&Rr(a,b,g,d);g=c.legend.focused.entry;g!=null&&b.h[g].Mb&&Rr(a,b,g,d);g=c.focused.Aa;g!=null&&b.N[g]&&(Sr(a,b,g,d),e&&Ar(f.C)&&(Nr(a,f,c.cursor.position,g),a.el=!1));if(g=c.Hb.Mk)g=Dr(d,g.ea,g.kn),g.Id=g.Id|| {},g.Id.Dr=!0;(g=c.Hb.focused)&&e&&(h=b.Nd[g.column],e=h.ea,g=b.ve[g.row],h=h.ci,(e!=null?b.h[e].Mb:b.Mb)&&Jr(a,f,e,g,h));if(a=c.Fb)d.Fb=a},Pr=function(a,b,c,d,e){var f=b.h[c],g=f.points[d];if(!Oo(g)&&g.o&&(!Po(f)||f.lineWidth!==0||Qo(g,f))){var h=f.type==="bars"?Tr:Ur;d=Br(e,c,d);d.Fe={};c=d.Fe;c.Ga=[];for(e=0;e0){var f=Er(d,c);f.Fe={};f=f.Fe;f.Ga=[];var g=e.type==="area"?b.Cd!=="none"?Wo(e):Vo(e,!1):Vo(e,b.Jc);g=Ko(g);for(var h=e.la.strokeWidth/2,k=0;k0};var Sr=function(a,b,c,d){for(var e=b.h,f=0;f0){var f=Er(d,c);f.fd={};f=f.fd;var g=e.type==="area"?b.Cd!=="none"?Wo(e):Vo(e,!1):Vo(e,b.Jc);g=Ko(g);f.m=new X({stroke:e.la.stroke,strokeWidth:Math.min(1,e.la.strokeWidth/2)});f.path=ur(g,-(e.la.strokeWidth/2+2+f.m.strokeWidth/2))}for(f=0;f=0;l--)if(g=f[l],!Oo(g)&&g.o&&(new Lk(b.chartArea.top,b.chartArea.right,b.chartArea.bottom,b.chartArea.left)).contains(new U(g.o.x,g.o.y))){var n=l;break}n!=null&&(l=Br(d,c,n),l.visible=!0,h==="focus"&&Hr(a,e,c,n));for(a=0;a=0&&b0&&c===0?e.forEach(function(g){Xq(b.L.selected,d,g)}):c>0&&f.forEach(function(g){b.L.selected.add("cell",[d,g])})}else Vq(this.L.selected,d,a);is(this.scheduler,0)}};t.kr=function(a){if(this.C.K!=="bubble"){var b;this.L.legend.focused.entry=(b=a.data.pl)!=null?b:null;is(this.scheduler,50)}};t.lr=function(){this.C.K!=="bubble"&&(this.L.legend.focused.entry=null,is(this.scheduler,250))};t.Jw=function(a){this.C.K!=="bubble"&&(ls(this,S(a.data.pl)),is(this.scheduler,0))};t.Kw=function(a){this.L.legend.Qb==null&&(this.L.legend.Qb=a.data.Qb||0,this.L.legend.ii=a.data.ii||0);this.L.legend.Qb+=a.data.Ey;is(this.scheduler,0)};t.rr=function(a){if(this.C.K!=="bubble"){var b=this.C.xg;if(this.C.Nb.has("series")||b==="dive"){var c;this.L.focused.ia=(c=a.data.ea)!=null?c:null;is(this.scheduler,50)}}};t.sr=function(){if(this.C.K!=="bubble"){var a=this.C.xg;if(this.C.Nb.has("series")||a==="dive")this.L.focused.ia=null,is(this.scheduler,250)}};t.qr=function(a){this.C.K!=="bubble"&&this.C.Nb.has("series")&&(ls(this,S(a.data.ea)),is(this.scheduler,0))};t.Pw=function(a){this.kr(a)};t.Qw=function(a){this.lr(a)};t.Ow=function(a){this.Ib.dispatchEvent("removeserie",{index:a.data.pl})};t.Gw=function(a){var b=this.C.Nb;if(b.has("datum")){var c;this.L.focused.ia=(c=a.data.ea)!=null?c:null;var d;this.L.focused.we=(d=a.data.nc)!=null?d:null}else{if(b.has("series")){this.rr(a);return}if(b.has("category")){this.hr(a);return}}is(this.scheduler,50)};t.Hw=function(a){var b=this.C.Nb;if(b.has("datum"))this.L.focused.ia=null,this.L.focused.we=null;else{if(b.has("series")){this.sr(a);return}if(b.has("category")){this.ir(a);return}}is(this.scheduler,250)};t.Fw=function(a){var b=this.C;if(b.Nb.has("datum")){var c=b.Yl==="single";S(a.data.nc);S(a.data.ea);a={Aa:a.data.nc,ia:a.data.ea};var d=b.h[a.ia];d.Mb&&(b.K==="bubble"?Vq(this.L.selected,a.Aa,c):d.rb||(b=b.xn(a),a=this.C.Nb,a.has("datum")?Yq(this.L.selected,b.row,b.column,c):a.has("series")&&Wq(this.L.selected,b.column,c)));is(this.scheduler,0)}else b.Nb.has("series")?this.qr(a):b.Nb.has("category")&&this.gr(a)};t.mw=function(a){var b=a.data.ui;if(b!==-1){S(a.data.nc);S(b);var c;this.L.Hb.focused={row:a.data.nc,column:ms(this,(c=a.data.ea)!=null?c:null,b)};this.L.focused.ia=null;this.L.focused.we=null;is(this.scheduler,50)}};t.nw=function(a){a.data.ui!==-1&&(this.L.Hb.focused=null,is(this.scheduler,250))};t.lw=function(a){var b=this.C,c=b.Yl==="single",d=S(a.data.nc),e,f=(e=a.data.ea)!=null?e:null;a=a.data.ui;if(f==null||b.h[f].Mb)a===-1?this.L.Hb.Mk={ea:f,kn:d}:(S(a),b=ms(this,f,a),Yq(this.L.selected,d,b,c));is(this.scheduler,0)};t.Tw=function(){};t.Uw=function(){};t.jw=function(a){this.L.lb.focused.Bh=a.data.Bh||null;is(this.scheduler,50)};t.kw=function(){this.L.lb.focused.Bh=null;is(this.scheduler,250)};t.iw=function(){var a=this.L.lb.focused.action;a&&a();is(this.scheduler,250)};t.Xd=function(){this.features.xc("ready")};var ms=function(a,b,c){a=a.C;var d=null;if(b!=null)d=a.h[b].columns.annotation;else for(b=0;b0&&b===0?g.forEach(function(k){Xq(a.L.selected,k,f)}):b>0&&h.forEach(function(k){a.L.selected.add("cell",[k,f])})}else Wq(a.L.selected,f,d)}};function ns(a){gk.call(this);this.Jr=1;this.Jl=[];this.Ol=0;this.Ac=[];this.Kf={};this.Vu=!!a}ab(ns,gk);ns.prototype.subscribe=function(a,b,c){var d=this.Kf[a];d||(d=this.Kf[a]=[]);var e=this.Jr;this.Ac[e]=a;this.Ac[e+1]=b;this.Ac[e+2]=c;this.Jr=e+3;d.push(e);return e};ns.prototype.unsubscribe=function(a,b,c){if(a=this.Kf[a]){var d=this.Ac;if(a=a.find(function(e){return d[e+1]==b&&d[e+2]==c}))return this.rp(a)}return!1};ns.prototype.rp=function(a){var b=this.Ac[a];if(b){var c=this.Kf[b];this.Ol!=0?(this.Jl.push(a),this.Ac[a+1]=function(){}):(c&&jd(c,a),delete this.Ac[a],delete this.Ac[a+1],delete this.Ac[a+2])}return!!b};ns.prototype.xc=function(a,b){var c=this.Kf[a];if(c){var d=Array(arguments.length-1),e=arguments.length,f;for(f=1;f0&&this.Ol==0)for(;c=this.Jl.pop();)this.rp(c)}}return f!=0}return!1};var os=function(a,b,c){mq(function(){a.apply(b,c)})};ns.prototype.clear=function(a){if(a){var b=this.Kf[a];b&&(b.forEach(this.rp,this),delete this.Kf[a])}else this.Ac.length=0,this.Kf={}};ns.prototype.ka=function(){ns.Nc.ka.call(this);this.clear();this.Jl.length=0};function ps(a,b){return ue(a.x,b.left,b.left+b.width)===a.x&&ue(a.y,b.top,b.top+b.height)===a.y?!0:!1};var qs=function(a,b,c,d){var e=this;this.L=a;this.Ec=c;this.Vb=d;this.viewport=null;this.jb=b;this.Vb.subscribe("ready",function(){e.Xd()})};t=qs.prototype;t.setViewport=function(a){this.viewport=a};t.jb=function(){return this.jb()};t.getState=function(){return this.L};t.Xd=function(){};t.Nf=function(){var a={hAxis:{viewWindowMode:"explicit",viewWindow:{}},vAxis:{viewWindowMode:"explicit",viewWindow:{}}};this.Ec.dj&&(isNaN(this.viewport.Zc)||(a.hAxis.viewWindow.numericMin=this.viewport.Zc),isNaN(this.viewport.vd)||(a.hAxis.viewWindow.numericMax=this.viewport.vd));this.Ec.vertical&&(isNaN(this.viewport.ad)||(a.vAxis.viewWindow.numericMin=this.viewport.ad),isNaN(this.viewport.wd)||(a.vAxis.viewWindow.numericMax=this.viewport.wd));this.L.zd=a};var rs=function(a,b,c,d){qs.call(this,a,b,c,d);this.Cg=null};u(rs,qs);t=rs.prototype;t.Xd=function(){var a=this,b=this.Vb;b.subscribe("dragstart",function(c){a.Jn(c)});b.subscribe("drag",function(c){a.Hn(c)});b.subscribe("dragend",function(){a.In()});b.subscribe("onmousedown",function(c,d){a.aj(c,d)})};t.Jn=function(a){var b=this.jb().getChartAreaBoundingBox();ps(a,b)&&(this.Cg=new ni(a.x,a.y))};t.Hn=function(a){this.Cg&&(this.li(a.x,a.y),this.Cg.x=a.x,this.Cg.y=a.y)};t.In=function(){this.Cg=null};t.aj=function(a,b){var c=this.jb().getChartAreaBoundingBox();ps(a,c)&&b()};t.li=function(a,b){var c=this.viewport;if(c){var d=this.jb();c.layout=d;d=this.Ec;if(d.dj){a=c.getHAxisValue(a)-c.getHAxisValue(this.Cg.x);var e=c.Zc-a,f=c.vd-a,g=Math.max(e,c.El),h=Math.min(f,c.El+c.Dl);if(c.nl&&(g===e||a<0)&&(h===f||a>0)||!c.nl)c.Zc=e,c.vd=f}d.vertical&&(b=c.getVAxisValue(b)-c.getVAxisValue(this.Cg.y),d=c.ad-b,a=c.wd-b,e=Math.max(d,c.Fl),f=Math.min(a,c.Fl+c.Cl),c.nl&&(e===d||b<0)&&(f===a||b>0)||!c.nl)&&(c.ad=d,c.wd=a);this.Nf()}};var ss=function(a,b,c,d){qs.call(this,a,b,c,d);this.Ff=null};u(ss,qs);t=ss.prototype;t.Xd=function(){var a=this,b=this.Vb;b.subscribe("dragstart",function(c){a.Jn(c)});b.subscribe("drag",function(c){a.Hn(c)});b.subscribe("dragend",function(){a.In()});b.subscribe("onmousedown",function(c,d){a.aj(c,d)})};t.Jn=function(a){var b=this.jb().getChartAreaBoundingBox();ps(a,b)&&(this.Ff=new ni(a.x,a.y))};t.Hn=function(a){if(this.Ff){var b=this.jb().getChartAreaBoundingBox(),c=this.Ec;this.Co(a,b);if(c.dj){var d=Math.min(this.Ff.x,a.x);var e=Math.abs(this.Ff.x-a.x)}else d=b.left,e=b.width;c.vertical?(c=Math.min(this.Ff.y,a.y),a=Math.abs(this.Ff.y-a.y)):(c=b.top,a=b.height);this.getState().Fb={left:d,top:c,width:e,height:a,color:"blue",opacity:.2}}};t.In=function(){this.Ff&&(this.li(),this.Ff=null,this.getState().Fb=null)};t.aj=function(a,b){var c=this.jb().getChartAreaBoundingBox();ps(a,c)&&b()};t.li=function(){var a=this.Ec,b=this.viewport,c=this.jb();b.layout=c;var d=this.getState().Fb,e=b.getHAxisValue(d.left),f=b.getHAxisValue(d.left+d.width);c=b.getVAxisValue(d.top);d=b.getVAxisValue(d.top+d.height);if(e!==f&&c!==d){var g=b.Dl*b.ho;if(a.dj){var h=Math.min(e,f);e=Math.max(e,f);e-h1&&(c=1/c);var d=hh(this.options,"explorer.zoomDelta",1.5),e=Z(this.options,"explorer.keepInBounds",!1);this.viewport=new Es(this.C,this.jb(),b,c,d,e);this.Fq.forEach(function(f){f.setViewport(a.viewport)})};Fs.prototype.init=function(){var a=this,b=this.C.Ea[0]?0:1,c=this.C.qa[0]?0:1,d=this.C.Ea[b],e=this.C.qa[c];b=!this.C.Ea[1-b]&&d&&d.type==="value"&&!d.Xc;c=!this.C.qa[1-c]&&e&&e.type==="value"&&!e.Xc;e=(this.options.O("explorer")||{}).axis;e==="horizontal"?c=!1:e==="vertical"&&(b=!1);this.Ec=new ts(b,c);Gs(this);this.Vb.subscribe("ready",function(){a.Xd()})};var Gs=function(a){var b=a.Fq,c=a.options.O("explorer.actions");(c==null||Array.isArray(c)&&c.includes("dragToPan"))&&b.push(new rs(a.L,a.jb,a.Ec,a.Vb));c=a.options.O("explorer.actions");Array.isArray(c)&&c.includes("dragToZoom")&&b.push(new ss(a.L,a.jb,a.Ec,a.Vb));c=a.options.O("explorer.actions");(c==null||Array.isArray(c)&&c.includes("rightClickToReset"))&&b.push(new vs(a.L,a.jb,a.Ec,a.Vb));c=a.options.O("explorer.actions");Array.isArray(c)&&c.includes("pinchToZoom")&&pl&&b.push(new us(a.L,a.jb,a.Ec,a.Vb));c=a.options.O("explorer.actions");(c==null||Array.isArray(c)&&c.includes("scrollToZoom"))&&b.push(new ws(a.L,a.jb,a.Ec,a.Vb))};var Hs=function(a,b,c,d,e){e=e===void 0?!0:e;this.options=a;this.state=b;this.C=d;this.Sv=[];this.scheduler=null;this.jb=c;this.Vb=new ns;e&&this.init()};Hs.prototype.init=function(){var a=this.options;a.O("type")==="pie"?a=!1:(a=a.O("explorer"),a=a!=null&&typeof a==="object");a&&this.Sv.push(new Fs(this.state,this.jb,this.options,this.C,this.Vb))};Hs.prototype.xc=function(a,b,c){var d=Is[a];d&&this.scheduler&&!this.scheduler.Pd&&is(this.scheduler,d);this.Vb.xc.apply(this.Vb,[a,b,c])};var Js={},Is=(Js.dragstart=15,Js.drag=5,Js.dragend=5,Js.scroll=5,Js.rightclick=5,Js.pinch=5,Js.pinchend=15,Js);function Ks(a){gk.call(this);this.sd=a;this.Ph={}}ab(Ks,gk);var Ls=[];Ks.prototype.Dg=function(a,b,c,d){Array.isArray(b)||(b&&(Ls[0]=b.toString()),b=Ls);for(var e=0;e=0;var n;if(n=yf)n=$b(Ps,10)>=0;var p=Us&&$b(Xs,85)>=0;m=pf||m||n||p}k=m?-h.scrollLeft:k&&Uk(h,"overflowX")!="visible"?h.scrollWidth-h.clientWidth-h.scrollLeft:h.scrollLeft;l=Qe(l,new U(k,h.scrollTop))}}}h=l||new U;l=Zk(a);k=fl(a);l=new Nk(l.x,l.y,k.width,k.height);(k=$k(a))&&l.intersection(Ok(k));k=hg(a);m=hg(c);if(k.ob!=m.ob){k=k.ob.body;m=m.ob.defaultView;n=new U(0,0);p=ng(gg(k));b:{try{wb(p.parent);var q=!0;break b}catch(w){}q=!1}if(q){q=k;do{var r=p==m?Zk(q):cl(R(q));n.x+=r.x;n.y+=r.y}while(p&&p!=m&&p!=p.parent&&(q=p.frameElement)&&(p=p.parent))}q=Qe(n,Zk(k));l.left+=q.x;l.top+=q.y}a=Ys(a,b);b=l.left;a&4?b+=l.width:a&2&&(b+=l.width/2);b=new U(b,l.top+(a&1?l.height:0));b=Qe(b,h);e&&(b.x+=(a&4?-1:1)*e.x,b.y+=(a&1?-1:1)*e.y);var v;g&&(v=$k(c))&&(v.top-=h.y,v.right-=h.x,v.bottom-=h.y,v.left-=h.x);return Zs(b,c,d,f,v,g)},Zs=function(a,b,c,d,e,f){a=a.clone();var g=Ys(b,c);c=fl(b);var h=c.clone();a=a.clone();h=h.clone();var k=0;if(d||g!=0)g&4?a.x-=h.width+(d?d.right:0):g&2?a.x-=h.width/2:d&&(a.x+=d.left),g&1?a.y-=h.height+(d?d.bottom:0):d&&(a.y+=d.top);f&&(e?(d=h,g=0,(f&65)==65&&(a.x=e.right)&&(f&=-2),(f&132)==132&&(a.y=e.bottom)&&(f&=-5),a.xe.right&&(d.width=Math.min(e.right-a.x,k+ d.width-e.left),d.width=Math.max(d.width,0),g|=4)),a.x+d.width>e.right&&f&1&&(a.x=Math.max(e.right-d.width,e.left),g|=1),f&2&&(g|=(a.xe.right?32:0)),a.ye.bottom&&(d.height=Math.min(e.bottom-a.y,k+d.height-e.top),d.height=Math.max(d.height,0),g|=8)),a.y+d.height>e.bottom&&f&4&&(a.y=Math.max(e.bottom-d.height,e.top),g|=2),f&8&&(g|=(a.ye.bottom?128:0)),e=g):e=256,k=e);f=new Nk(0,0,0,0);f.left=a.x;f.top=a.y;f.width=h.width;f.height=h.height;e=k;if(e&496)return e;Wk(b,new U(f.left,f.top));h=f.getSize();Te(c,h)||(c=h,b=b.style,pf?b.MozBoxSizing="border-box":qf?b.WebkitBoxSizing="border-box":b.boxSizing="border-box",b.width=Math.max(c.width,0)+"px",b.height=Math.max(c.height,0)+"px");return e},Ys=function(a,b){return(b&8&&hl(a)?b^4:b)&-9};function at(a,b,c){this.element=a;this.nq=b;this.Zx=c}ab(at,Os);at.prototype.ee=function(a,b,c){$s(this.element,this.nq,a,b,void 0,c,this.Zx)};function bt(a,b){this.J=a instanceof U?a:new U(a,b)}ab(bt,Os);bt.prototype.ee=function(a,b,c){$s((a?gg(a):document).documentElement,0,a,b,this.J,c,null)};function ct(a,b){Ik.call(this);this.sd=new Ks(this);this.Oo(a||null);b&&(this.ki=b)}ab(ct,Ik);t=ct.prototype;t.eb=null;t.Wu=!0;t.Up=null;t.Vp=null;t.Nh=!1;t.Ly=!1;t.Yn=-1;t.Ww=!1;t.Rv=!0;t.ki="toggle_display";t.getType=function(){return this.ki};t.R=function(){return this.eb};t.Oo=function(a){if(this.Nh)throw Error("Can not change this state of the popup while showing.");this.eb=a};t.isVisible=function(){return this.Nh};var et=function(a,b){a.Tj&&a.Tj.stop();a.cj&&a.cj.stop();if(b){if(!a.Nh&&a.uo()){if(!a.eb)throw Error("Caller must call setElement before trying to show the popup");a.ee();b=gg(a.eb);a.Ww&&a.sd.Dg(b,"keydown",a.Wx,!0);a.Wu&&(a.sd.Dg(b,"mousedown",a.Xx,!0),a.sd.Dg(b,"blur",a.Vx));a.ki=="toggle_display"?(a.eb.style.visibility="visible",gl(a.eb,!0)):a.ki=="move_offscreen"&&a.ee();a.Nh=!0;a.Yn=Date.now();a.Tj?(wk(a.Tj,"end",a.zs,!1,a),a.Tj.play()):a.zs()}}else dt(a)};ct.prototype.ee=function(){};var dt=function(a,b){if(!a.Nh||!a.dispatchEvent({type:"beforehide",target:b}))return!1;a.sd&&a.sd.Re();a.Nh=!1;a.cj?(wk(a.cj,"end",$a(a.mq,b),!1,a),a.cj.play()):a.mq(b);return!0};t=ct.prototype;t.mq=function(a){this.ki=="toggle_display"?this.Ly?Iq(this.xr,0,this):this.xr():this.ki=="move_offscreen"&&(this.eb.style.top="-10000px");this.vo(a)};t.xr=function(){this.eb.style.visibility="hidden";gl(this.eb,!1)};t.uo=function(){return this.dispatchEvent("beforeshow")};t.zs=function(){this.dispatchEvent("show")};t.vo=function(a){this.dispatchEvent({type:"hide",target:a})};t.Xx=function(a){a=a.target;ug(this.eb,a)||ft(this,a)||this.Vp&&!ug(this.Vp,a)||Date.now()-this.Yn<150||dt(this,a)};t.Wx=function(a){a.keyCode==27&&dt(this,a.target)&&(a.preventDefault(),a.stopPropagation())};t.Vx=function(a){if(this.Rv){var b=gg(this.eb);if(typeof document.activeElement!="undefined"){if(a=b.activeElement,!a||ug(this.eb,a)||a.tagName=="BODY"||ft(this,a))return}else if(a.target!=b)return;Date.now()-this.Yn<150||dt(this)}};var ft=function(a,b){return cd(a.Up||[],function(c){return b===c||ug(c,b)})};ct.prototype.ka=function(){ct.Nc.ka.call(this);this.sd.dispose();fk(this.Tj);fk(this.cj);delete this.eb;delete this.sd;delete this.Up};function gt(a,b){this.hy=8;this.Ll=b||void 0;ct.call(this,a)}ab(gt,ct);gt.prototype.Vd=function(){return this.Ll||null};gt.prototype.setPosition=function(a){this.Ll=a||void 0;this.isVisible()&&this.ee()};gt.prototype.ee=function(){if(this.Ll){var a=!this.isVisible()&&this.getType()!="move_offscreen",b=this.R();a&&(b.style.visibility="hidden",gl(b,!0));this.Ll.ee(b,this.hy,this.LB);a&&gl(b,!1)}};function ht(a,b,c){this.Oi=c||(a?hg(ig(document,a)):hg());gt.call(this,this.Oi.bn("DIV",{style:"position:absolute;display:none;"}));this.X=new U(1,1);this.gg=new Set;this.fh=null;a&&(a=ig(document,a),this.gg.add(a),xk(a,"mouseover",this.nr,!1,this),xk(a,"mouseout",this.Yk,!1,this),xk(a,"mousemove",this.mr,!1,this),xk(a,"focus",this.jr,!1,this),xk(a,"blur",this.Yk,!1,this));if(b!=null)if(a=this.R(),R(a!=null,"goog.dom.setTextContent expects a non-null value for node"),"textContent"in a)a.textContent= b;else if(a.nodeType==3)a.data=String(b);else if(a.firstChild&&a.firstChild.nodeType==3){for(;a.lastChild!=a.firstChild;)a.removeChild(R(a.lastChild));a.firstChild.data=String(b)}else sg(a),c=gg(a),a.appendChild(c.createTextNode(String(b)))}ab(ht,gt);var it=[];t=ht.prototype;t.kc=null;t.className="goog-tooltip";t.So=500;t.wr=0;t.Vq=function(){return this.Oi};t.detach=function(a){var b=this;a?(a=ig(document,a),jt(this,a),this.gg.delete(a)):(this.gg.forEach(function(c){jt(b,c)}),this.gg.clear())};var jt=function(a,b){Ek(b,"mouseover",a.nr,!1,a);Ek(b,"mouseout",a.Yk,!1,a);Ek(b,"mousemove",a.mr,!1,a);Ek(b,"focus",a.jr,!1,a);Ek(b,"blur",a.Yk,!1,a)};t=ht.prototype;t.Oo=function(a){var b=this.R();b&&tg(b);ht.Nc.Oo.call(this,a);a?(b=this.Oi.ob.body,b.insertBefore(a,b.lastChild),fk(this.fh),this.fh=new Ns(R(this.R())),hk(this,this.fh),xk(this.fh,"focusin",this.Gi,void 0,this),xk(this.fh,"focusout",this.gm,void 0,this)):(fk(this.fh),this.fh=null)};t.getState=function(){return this.Ef?this.isVisible()?4:1:this.bj?3:this.isVisible()?2:0};t.uo=function(){if(!ct.prototype.uo.call(this))return!1;if(this.anchor)for(var a,b=0;a=it[b];b++)ug(a.R(),this.anchor)||et(a,!1);hd(it,this)||it.push(this);a=this.R();a.className=this.className;this.Gi();xk(a,"mouseover",this.ur,!1,this);xk(a,"mouseout",this.tr,!1,this);kt(this);return!0};t.vo=function(){jd(it,this);for(var a=this.R(),b,c=0;b=it[c];c++)b.anchor&&ug(a,b.anchor)&&et(b,!1);this.Cs&&this.Cs.gm();Ek(a,"mouseover",this.ur,!1,this);Ek(a,"mouseout",this.tr,!1,this);this.anchor=void 0;this.getState()==0&&(this.Xl=!1);ct.prototype.vo.call(this)};t.es=function(a,b){this.anchor==a&&this.gg.has(this.anchor)&&(this.Xl||!this.PB?(et(this,!1),this.isVisible()||(this.anchor=a,this.setPosition(b||lt(this,0)),et(this,!0))):this.anchor=void 0);this.Ef=void 0};t.Qq=function(){return this.kc};t.Hx=function(a){this.bj=void 0;if(a==this.anchor){a=this.Vq();var b=a.Qq();a=b&&this.R()&&a.contains(this.R(),b);this.kc!=null&&(this.kc==this.R()||this.gg.has(this.kc))||a||this.fq&&this.fq.kc||et(this,!1)}};var mt=function(a,b){var c=mg(a.Oi.ob);a.X.x=b.clientX+c.x;a.X.y=b.clientY+c.y};ht.prototype.nr=function(a){var b=nt(this,a.target);this.kc=b;this.Gi();b!=this.anchor&&(this.anchor=b,this.Ef||(this.Ef=Iq(Za(this.es,this,b,void 0),this.So)),ot(this),mt(this,a))};var nt=function(a,b){try{for(;b&&!a.gg.has(b);)b=b.parentNode;return b}catch(c){return null}};ht.prototype.mr=function(a){mt(this,a);this.Xl=!0};ht.prototype.jr=function(a){this.kc=a=nt(this,a.target);this.Xl=!0;if(this.anchor!=a){this.anchor=a;var b=lt(this,1);this.Gi();this.Ef||(this.Ef=Iq(Za(this.es,this,a,b),this.So));ot(this)}};var lt=function(a,b){return b==0?(a=a.X.clone(),new pt(a)):new qt(a.kc)},ot=function(a){if(a.anchor)for(var b,c=0;b=it[c];c++)ug(b.R(),a.anchor)&&(b.fq=a,a.Cs=b)};ht.prototype.Yk=function(a){var b=nt(this,a.target),c=nt(this,a.relatedTarget);b!=c&&(b==this.kc&&(this.kc=null),kt(this),this.Xl=!1,!this.isVisible()||a.relatedTarget&&ug(this.R(),a.relatedTarget)?this.anchor=void 0:this.gm())};ht.prototype.ur=function(){var a=this.R();this.kc!=a&&(this.Gi(),this.kc=a)};ht.prototype.tr=function(a){var b=this.R();this.kc!=b||a.relatedTarget&&ug(b,a.relatedTarget)||(this.kc=null,this.gm())};var kt=function(a){a.Ef&&(Q.clearTimeout(a.Ef),a.Ef=void 0)};ht.prototype.gm=function(){this.getState()==2&&(this.bj=Iq(Za(this.Hx,this,this.anchor),this.wr))};ht.prototype.Gi=function(){this.bj&&(Q.clearTimeout(this.bj),this.bj=void 0)};ht.prototype.ka=function(){et(this,!1);kt(this);this.detach();this.R()&&tg(this.R());this.kc=null;delete this.Oi;ht.Nc.ka.call(this)};var pt=function(a,b){bt.call(this,a,b)};ab(pt,bt);pt.prototype.ee=function(a,b,c){b=(a?gg(a):document).documentElement;b=$k(b);c=c?new Lk(c.top+10,c.right,c.bottom,c.left+10):new Lk(10,0,0,10);Zs(this.J,a,8,c,b,9)&496&&Zs(this.J,a,8,c,b,5)};var qt=function(a){at.call(this,a,5)};ab(qt,at);qt.prototype.ee=function(a,b,c){var d=new U(10,0);$s(this.element,this.nq,a,b,d,c,9)&496&&$s(this.element,4,a,1,d,c,5)};var rt=function(a){var b=this.ql=null,c=null;typeof a==="function"?b=a:c=a;this.Ka=b;this.element=c};rt.prototype.di=function(a){this.ql=a;this.element&&wg(this.element,a)};rt.prototype.Xq=function(){return this.element?xg(this.element):this.ql};rt.prototype.R=function(){!this.element&&this.Ka&&(this.element=this.Ka(),this.ql!==null&&wg(this.element,this.ql));if(!this.element)throw Error("Failed to get element for DrawingGroup.");return this.element};var tt=function(a,b){gk.call(this);var c=this;this.container=a;this.Ye=b;this.Sh=null;this.height=this.width=0;this.Wi=zb(function(d,e,f){return st(c,d,e,f)},{ct:function(d,e){var f=[d,e[0]];Td(e[1],function(g,h){f.push(g);f.push(h)});f.push(+e[2]);return"getTextSize_"+f.join("_")}})};u(tt,gk);var ut=function(){var a=ol().ob.defaultView;a.__googleVisualizationAbstractRendererElementsCount__=a.__googleVisualizationAbstractRendererElementsCount__||0;var b="_ABSTRACT_RENDERER_ID_"+a.__googleVisualizationAbstractRendererElementsCount__;a.__googleVisualizationAbstractRendererElementsCount__=Number(a.__googleVisualizationAbstractRendererElementsCount__)+1;return b};t=tt.prototype;t.deleteContents=function(){for(var a=this.Sh.R(),b=a.childNodes,c=b.length;c>1;)a.removeChild(b[0]),c--;vt(this,a)};t.flush=function(){};t.clear=function(){this.pd()};t.pd=function(){this.Sh=null};t.ka=function(){this.pd();gk.prototype.ka.call(this)};t.di=function(a,b){a&&(a instanceof rt?a.di(b):wg(a,b))};t.Xq=function(a){return xg(a)};t.appendChild=function(a,b){if(b){if(b instanceof rt){if(!b.element)return;b=b.R()}a.R().appendChild(b)}};var wt=function(a,b){for(b instanceof rt&&(b=b.R());b.firstChild;)wt(a,b.firstChild);b.parentElement.removeChild(b)};tt.prototype.replaceChild=function(a,b,c){a=a.R();(c.parentElement||null)!==a?(wt(this,c),a.appendChild(b),lb("oldChild should be a child of parent.")):a.replaceChild(b,c)};tt.prototype.ai=function(a){if(a.element){var b=a.R();this.Rb.ai(b);a.R()}};tt.prototype.Ka=function(a){var b=new rt(this.xv.bind(this));a!=null&&a||b.R();return b};tt.prototype.ue=function(a,b){for(var c=[],d=0;d0&&k>0){var p=ve(m)-ve(l);p>180?p-=360:p<=-180&&(p=360+p);var q=2*Math.PI*Math.min(h,k);Math.abs(p/360*q)<.1&& (p=(.1/q*360-Math.abs(p))*Math.sign(p)/2,l-=p,m+=p)}l=ve(l);m=ve(m);p=h*Math.cos((m-90)*Math.PI/180);q=k*Math.sin((m-90)*Math.PI/180);l=n?m-l:l-m;l<0&&(l+=360);f.push("A"+h+","+k+",0,"+(l>180?1:0)+","+(n?1:0)+","+(e+p)+","+(g+q));break;case "close":e.push("Z");break;default:throw Error("Unexpected segment.type "+f.type+".");}}a=xt(this,"path");c.length>0&&a.setAttribute("d",c.join(""));yt(this,a,b);return a};var At=function(a,b,c,d,e,f,g){b=zt(a,b,c,d,e,f);a.appendChild(g,b);return b},Bt=function(a,b,c,d){b=a.ue(b,c);a.appendChild(d,b);return b},Dt=function(a,b,c,d,e,f,g,h,k,l){b=Ct(a,b,c,d,e,0,f,g,h,l);a.appendChild(k,b);return b},Et=function(a,b,c,d,e,f,g,h,k,l){b=Ct(a,b,c,d,e,f,g,h,k);a.appendChild(l,b)};tt.prototype.Pj=function(){};tt.prototype.an=function(){return null};var Ft=Symbol("referencepoint");function Gt(a){return vg(a,function(b){return b[Ft]})};var Ht=function(a,b){tt.call(this,a,b);this.kp=[];this.Rb=hg(a);this.Aq=this.Rb.ob;this.pb=new Ks};u(Ht,tt);var It=function(a,b,c,d){b=new ht(b);var e=a.Rb.bn("DIV");c=c.split("\n");e.appendChild(a.Rb.createTextNode(c[0]));for(var f=1;f=Number(c)?a:a=b.indexOf("-",0)>-1?a+Od(" ",Number(c)-a.length):Od(" ",Number(c)-a.length)+a},f:function(a,b,c,d,e){d=a.toString();isNaN(e)||e==""||(d=parseFloat(a).toFixed(e));var f=Number(a)<0?"-":b.indexOf("+")>=0?"+":b.indexOf(" ")>=0?" ":"";Number(a)>=0&&(d=f+d);if(isNaN(c)||d.length>=Number(c))return d;d=isNaN(e)?Math.abs(Number(a)).toString():Math.abs(Number(a)).toFixed(e);a=Number(c)-d.length-f.length;return d=b.indexOf("-",0)>=0?f+d+Od(" ",a):f+Od(b.indexOf("0",0)>=0?"0":" ",a)+d},d:function(a,b,c,d,e,f,g,h){return Nt.f(parseInt(a,10),b,c,d,0,f,g,h)}};Nt.i=Nt.d;Nt.u=Nt.d;var Ot=function(a,b){Ht.call(this,a,b);this.rd=null;this.Hl={};this.Dn={};this.Qo={};this.Yd=!1;this.Me=Jd(Kd(),"google.visualization.graphics.SvgRenderer").Me;st(this,"-._.-*^*-._.-*^*-._.-",{fontSize:8,fb:"Arial",bold:!1,Zd:!1});for(a=this.container.parentElement.parentElement;a;){if(a.getAttribute("dir")!=null){this.Yd=a.getAttribute("dir")==="rtl";break}a=a.parentElement}};u(Ot,Ht);var vt=function(a,b){a.rd=xt(a,"defs");var c=ut();a.rd.setAttribute("id",c);a.Hl={};a.Dn={};a.Qo={};b.appendChild(a.rd)};Ot.prototype.getBoundingBox=function(a){if(a instanceof SVGGraphicsElement&&a.tagName.toLowerCase()!=="path"&&a.tagName.toLowerCase()!=="svg"){var b=a.getBBox();return b.y|b.x|b.height|b.width?new Lk(b.y,b.x+b.width,b.y+b.height,b.x):Ht.prototype.getBoundingBox.call(this,a)}return Ht.prototype.getBoundingBox.call(this,a)};Ot.prototype.round=function(a){R(!isNaN(a));R(isFinite(a));return Math.round(100*a)/100};var Pt=function(a,b,c,d,e){R(!isNaN(b));R(!isNaN(c));R(!isNaN(d));R(isFinite(b));R(isFinite(c));R(isFinite(d));R(d>=0);var f=xt(a,"circle");f.setAttribute("cx",b);f.setAttribute("cy",c);f.setAttribute("r",d);yt(a,f,e);return f},zt=function(a,b,c,d,e,f){R(!isNaN(b));R(!isNaN(c));R(!isNaN(d));R(!isNaN(e));R(isFinite(b));R(isFinite(c));R(isFinite(d));R(isFinite(e));R(d>=0);R(e>=0);var g=xt(a,"rect");g.setAttribute("x",b);g.setAttribute("y",c);g.setAttribute("width",d);g.setAttribute("height",e);yt(a,g,f);return g},Ct=function(a,b,c,d,e,f,g,h,k,l){var m=k.opacity!==void 0?k.opacity:1,n=new X({fill:k.color,fillOpacity:m});if(k.color&&k.color!=="none"&&k.gb&&k.gb!=="none"){var p=new X({fill:k.color,fillOpacity:m,stroke:k.gb,strokeOpacity:m,strokeWidth:k.xi});m=a.Ka();p=Qt(a,b,c,d,e,f,g,h,k,p,l);a.appendChild(m,p);p.setAttribute("aria-hidden","true");b=Qt(a,b,c,d,e,f,g,h,k,n,l);a.appendChild(m,b);return m.R()}return Qt(a,b,c,d,e,f,g,h,k,n,l)},Qt=function(a,b,c,d,e,f,g,h,k,l,m){R(!isNaN(c));R(!isNaN(d));R(!isNaN(e));R(!isNaN(f));R(isFinite(c));R(isFinite(d));R(isFinite(e));R(isFinite(f));e=xt(a,"text");h=Cp(0,k.fontSize,h);h=Dp(h.start,h.end,"end");h-=k.fontSize*.15;h=new ni(0,h);h.rotate(f*Math.PI/180);d=new ni(c,d);d.add(h);c=d.x;d=d.y;e.appendChild(a.Aq.createTextNode(b));switch(g){case "start":e.setAttribute("text-anchor","start");break;case "center":e.setAttribute("text-anchor","middle");break;case "end":e.setAttribute("text-anchor","end");break;default:lb('Invalid parallel alignment "'+g+'"')}e.setAttribute("x",String(c));e.setAttribute("y",String(d));e.setAttribute("font-family",k.fb);e.setAttribute("font-size",String(k.fontSize||0));k.bold&&e.setAttribute("font-weight","bold");k.Zd&&e.setAttribute("font-style","italic");k.ih&&e.setAttribute("text-decoration","underline");m&&e.setAttribute("direction","rtl");f!==0&&e.setAttribute("transform","rotate("+f+" "+c+" "+d+")");yt(a,e,l);return e};Ot.prototype.xv=function(){return xt(this,"g")};var St=function(a,b,c){var d=ut(),e=xt(a,"clipPath"),f=xt(a,"rect");f.setAttribute("x",String(c.left));f.setAttribute("y",String(c.top));f.setAttribute("width",String(c.width));f.setAttribute("height",String(c.height));e.appendChild(f);e.setAttribute("id",d);R(a.rd!=null);a.rd.appendChild(e);a=b.R();a.setAttribute("clip-path",Rt(d));return a},Rt=function(a){var b="";nf&&Ef==="9.0"||(b=window.location.href.split("#")[0]);return"url("+b+"#"+a+")"};Ot.prototype.gd=function(a,b){R(!isNaN(void 0));R(isFinite(void 0));a.setAttribute("stroke-width","undefined");b&&a.setAttribute("stroke",b)};var st=function(a,b,c,d){var e=a.Ye;if(e.firstChild.nodeType===3)e.firstChild.data=b;else throw Error("Unexpected type of text node "+e.firstChild.nodeType);if(!document.contains(a.Ye)){var f=a.Me;f&&Ld(f,zd,"The text measurement div is missing.")}f=e.style;f.fontFamily=c.fb;f.fontSize=c.fontSize+"px";f.fontWeight=c.bold?"bold":"";f.fontStyle=c.Zd?"italic":"";f.display="block";if(d!=null){var g=Mt("rotate(%ddeg)",d);f.transform=g;f.transformOrigin="0 0"}g=e.clientWidth;e=e.clientHeight;f.display= "none";if(g===0&&b.trim().length>0){(e=a.Me)&&Ld(e,zd,"Unable to measure the text in the chart container. Most likely the chart container or one of its parents has style display:none.");e=document.getElementsByTagName("body")[0];if(a.Ye.parentElement!==e)return(f=a.Me)&&Ld(f,Ad,"Trying to measure text at the body element."),e.appendChild(a.Ye),st(a,b,c,d);throw Error("Unable to measure the text bbox, even with div attached to the `body` element...");}return new Se(g,e)},xt=function(a,b){return a.Aq.createElementNS("http://www.w3.org/2000/svg",b)},yt=function(a,b,c){Jg(c)?(b.setAttribute("stroke",c.stroke),b.setAttribute("stroke-width",c.strokeWidth),Jg(c)&&c.strokeOpacity>=1?b.removeAttribute("stroke-opacity"):b.setAttribute("stroke-opacity",c.strokeOpacity),c.rc!=="solid"?b.setAttribute("stroke-dasharray",Tt(c.rc,c.strokeWidth)):b.removeAttribute("stroke-dasharray")):(b.setAttribute("stroke","none"),b.setAttribute("stroke-width",0));Mg(c)&&c.fillOpacity>=1?b.removeAttribute("fill-opacity"):b.setAttribute("fill-opacity",c.fillOpacity);var d=c.radiusX;typeof d==="number"&&b.setAttribute("rx",d);d=c.radiusY;typeof d==="number"&&b.setAttribute("ry",d);var e=c.Pb,f=c.pattern;if(e){f=Jb(e,1).toString();d=a.Dn[f];if(!d){d=ut();a.Dn[f]=d;f=xt(a,"linearGradient");var g=e.x1,h=e.x2,k=e.y1,l=e.y2,m=e.Kd,n=e.Ld,p=1;if(e.Jg===0||e.Jg)p=e.Jg;var q=1;if(e.Kg===0||e.Kg)q=e.Kg;var r=e.jh?"objectBoundingBox":"userSpaceOnUse";f.setAttribute("id",d);f.setAttribute("x1",String(g));f.setAttribute("y1",String(k));f.setAttribute("x2",String(h));f.setAttribute("y2",String(l));f.setAttribute("gradientUnits",r);g="stop-color:"+m+"; stop-opacity:"+p;n="stop-color:"+n+"; stop-opacity:"+q;q=xt(a,"stop");q.setAttribute("offset","0%");q.style.cssText=g;f.appendChild(q);e.Sg&&(e=xt(a,"stop"),e.setAttribute("offset","49.99%"),e.style.cssText=g,f.appendChild(e),e=xt(a,"stop"),e.setAttribute("offset","50%"),e.style.cssText=n,f.appendChild(e));e=xt(a,"stop");e.setAttribute("offset","100%");e.style.cssText=n;f.appendChild(e);R(a.rd!=null);a.rd.appendChild(f)}b.setAttribute("fill",Rt(d))}else if(f){d=f.style+"_"+f.color+"_"+f.Rc;e=null;if(!(d in a.Hl)){n=f.style;switch(n){case "primarydiagonalstripes":e=xt(a,"pattern");e.setAttribute("patternUnits","userSpaceOnUse");e.setAttribute("x","0");e.setAttribute("y","0");e.setAttribute("width","4");e.setAttribute("height","4");e.setAttribute("viewBox","0 0 4 4");n=xt(a,"rect");n.setAttribute("x","0");n.setAttribute("y","0");n.setAttribute("width","4");n.setAttribute("height","4");n.setAttribute("fill",f.Rc);e.appendChild(n);n=xt(a,"g");n.setAttribute("stroke",f.color);n.setAttribute("stroke-linecap","square");f=xt(a,"line");f.setAttribute("x1","2");f.setAttribute("y1","0");f.setAttribute("x2","4");f.setAttribute("y2","2");f.setAttribute("stroke-width","2");n.appendChild(f);f=xt(a,"line");f.setAttribute("x1","0");f.setAttribute("y1","2");f.setAttribute("x2","2");f.setAttribute("y2","4");f.setAttribute("stroke-width","2");n.appendChild(f);e.appendChild(n);break;case "secondarydiagonalstripes":e=xt(a,"pattern");e.setAttribute("patternUnits","userSpaceOnUse");e.setAttribute("x","0");e.setAttribute("y","0");e.setAttribute("width","6");e.setAttribute("height","6");e.setAttribute("viewBox","0 0 4 4");n=xt(a,"rect");n.setAttribute("x","0");n.setAttribute("y","0");n.setAttribute("width","4");n.setAttribute("height","4");n.setAttribute("fill",f.Rc);e.appendChild(n);n=xt(a,"g");n.setAttribute("stroke",f.color);n.setAttribute("stroke-linecap","square");f=xt(a,"line");f.setAttribute("x1","2");f.setAttribute("y1","0");f.setAttribute("x2","0");f.setAttribute("y2","2");f.setAttribute("stroke-width","2");n.appendChild(f);f=xt(a,"line");f.setAttribute("x1","4");f.setAttribute("y1","2");f.setAttribute("x2","2");f.setAttribute("y2","4");f.setAttribute("stroke-width","2");n.appendChild(f);e.appendChild(n);break;default:R(!1,"Unsupported pattern style "+n)}f=ut();e.setAttribute("id",f);R(a.rd!=null);a.rd.appendChild(e);a.Hl[d]=f}d=a.Hl[d];b.setAttribute("fill",Rt(d))}else b.setAttribute("fill",c.fill);c.Df!=null&&(f=c.Df,d=Jb(f,1).toString(),c=a.Qo[d],c||(c=ut(),a.Qo[d]=c,d=xt(a,"filter"),d.setAttribute("id",c),e=xt(a,"feGaussianBlur"),e.setAttribute("in","SourceAlpha"),e.setAttribute("stdDeviation",String(f.Bb||0)),d.appendChild(e),e=xt(a,"feOffset"),e.setAttribute("dx",String(f.Lt||0)),e.setAttribute("dy",String(f.Ot||0)),d.appendChild(e),f.opacity!=null&&(e=xt(a,"feComponentTransfer"),n=xt(a,"feFuncA"),n.setAttribute("type","linear"),n.setAttribute("slope",String(f.opacity)),e.appendChild(n),d.appendChild(e)),f=xt(a,"feMerge"),e=xt(a,"feMergeNode"),f.appendChild(e),e=xt(a,"feMergeNode"),e.setAttribute("in","SourceGraphic"),f.appendChild(e),d.appendChild(f),R(a.rd!=null),a.rd.appendChild(d)),b.setAttribute("filter",Rt(c)))},Tt=function(a,b){if(Array.isArray(a))return a.join(",");switch(a){case "solid":return"0";case "dash":return String(4*b)+","+String(b);default:return Tt("solid",b)}};Ot.prototype.an=function(){var a="position:absolute; overflow:hidden;left:"+((this.Yd?1E4:-1E4)+"px; top:auto; width:1px; height:1px;"),b=document.createElement("div");b.setAttribute("aria-label","A tabular representation of the data in the chart.");b.setAttribute("style",a);this.container.appendChild(b);this.container.setAttribute("aria-label","A chart.");return b}; var Ut=ta(["about:invalid#zClosurez"]),Wt=Vt;function Xt(a,b,c){if(a.nodeType!==1)return Yt;var d=b.toLowerCase();if(d==="innerhtml"||d==="innertext"||d==="textcontent"||d==="outerhtml")return d==="innerhtml"||d==="outerhtml"?Zt("When Lit is running in high security mode, it can't be used to set "+b+". Use the SafeHTML directive instead."):Zt("When Lit is running in high security mode, it can't be used to set "+b+". Instead you can bind a string directly as a child of the element."),function(){return Rc(Pc)};b=$t.get(a.tagName+" "+d);return b!== void 0?b:/^on/.test(d)&&c==="attribute"&&(a=a.tagName.includes("-")?HTMLElement.prototype:a,d in a)?function(e){throw Error("The "+d+" attribute looks like a string based event listener. These are insecure, and not supported in Lit's high security mode. Use an event binding instead, like this:\n@"+(d.slice(2)+"=${(event) => {"+e+"}}"));}:Yt} var au=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i,bu=mc(function(a){var b=Ja.apply(1,arguments);vc(a,b.length);if(b.length===0)return lc(a[0]);var c=eg(a[0]);if(c!==void 0)throw Error(c);c=a[0];for(var d=0;d",Hu=Q.document===void 0?{createTreeWalker:function(){return{}}}:document,Iu=function(a){return a===null||typeof a!="object"&&typeof a!="function"||ou(a)},Ju=Array.isArray,Ku=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Lu=/--\x3e/g,Mu=/>/g,Nu=RegExp(">|[ \t\n\f\r](?:([^\\s\"'>=/]+)([ \t\n\f\r]*=[ \t\n\f\r]*(?:[^ \t\n\f\r\"'`<>=]|(\"|')|))|$)","g"),Ou=/'/g,Pu=/"/g,Qu=/^(?:script|style|textarea|title)$/i,Ru=function(a){var b=Ja.apply(1,arguments),c={};return c._$litType$=1,c.hd=a,c.values=b,c},Su=Symbol.for?Symbol.for("lit-noChange"):Symbol("lit-noChange"),Tu=Symbol.for?Symbol.for("lit-nothing"):Symbol("lit-nothing"),Uu=new WeakMap,Vu=Hu.createTreeWalker(Hu,129),Bu=Wt;function Wu(a,b){if(!Ju(a)||!a.hasOwnProperty("raw"))throw Error("Internal Error: expected template strings to be an array\n with a 'raw' field. Faking a template strings array by\n calling html or svg like an ordinary function is effectively\n the same as calling unsafeHtml and can lead to major security\n issues, e.g. opening your code up to XSS attacks.\n If you're using the html or svg tagged template functions normally\n and still seeing this error, please file a bug at\n https://github.com/lit/lit/issues/new?template=bug_report.md\n and include information about your build tooling, if any.".replace(/\n */g,"\n"));return yu!==void 0?yu.createHTML(b):b} var Xu=function(a,b){var c=a.hd;var d=a._$litType$;this.de=[];for(var e=a=0,f=c.length-1,g=this.de,h,k=c.length-1,l=[],m=d===2?"":d===3?"":"",n=Ku,p=0;p"?(r=void 0,n=(r=h)!=null?r:Ku,r=-1):x[1]===void 0?r=-2:(r=n.lastIndex-x[2].length,v=x[1],n=x[3]===void 0?Nu:x[3]==='"'?Pu:Ou):n===Pu||n===Ou?n=Nu:n===Lu||n===Mu?n=Ku:(n=Nu,h=void 0)}console.assert(r===-1||n===Nu||n===Ou||n===Pu,"unexpected parse state B");w=n===Nu&&c[p+1].startsWith("/>")?" ":"";m+=n===Ku?q+Gu:r>=0?(l.push(v),q.slice(0,r)+"$lit$"+q.slice(r))+Eu+w:q+Eu+(r===-2?p:w)}h=[Wu(c,m+(c[k]||"")+(d===2?"":d===3?"":"")),l];h=I(h);k=h.next().value;h=h.next().value;this.fg=Xu.createElement(k,b);Vu.currentNode=this.fg.content;if(d===2||d===3)b=this.fg.content.firstChild,b.replaceWith.apply(b,ra(b.childNodes));for(;(b=Vu.nextNode())!==null&&g.length0)){b.textContent=xu?xu.emptyScript:"";for(l=0;l" contains a duplicate "disabled" attribute. The error was detected in the following template: \n`'+ c.join("${...}")+"`");qu&&qu({kind:"template prep",cp:this,CB:this.fg,de:this.de,hd:c})};Xu.createElement=function(a){var b=Hu.createElement("template");b.innerHTML=a;return b};function bv(a,b,c,d){c=c===void 0?a:c;if(b===Su)return b;var e,f=d!==void 0?(e=c.Kp)==null?void 0:e[d]:c.Ju;e=Iu(b)?void 0:b._$litDirective$;var g;if(((g=f)==null?void 0:g.constructor)!==e){var h,k;(h=f)==null||(k=h._$notifyDirectiveConnectionChanged)==null||k.call(h,!1);e===void 0?f=void 0:(f=new e(a),f.vB(a,c,d));if(d!==void 0){var l,m;((m=(l=c).Kp)!=null?m:l.Kp=[])[d]=f}else c.Ju=f}f!==void 0&&(b=bv(a,f.xB(a,b.values),f,d));return b} var cv=function(a,b){this.pi=[];this.Cm=void 0;this.Dm=a;this.jd=b};da.Object.defineProperties(cv.prototype,{parentNode:{configurable:!0,enumerable:!0,get:function(){return this.jd.parentNode}},Pf:{configurable:!0,enumerable:!0,get:function(){return this.jd.Pf}}});cv.prototype.Lu=function(a){var b=this.Dm,c=b.fg.content;b=b.de;var d,e=((d=a==null?void 0:a.DB)!=null?d:Hu).importNode(c,!0);Vu.currentNode=e;c=Vu.nextNode();for(var f=d=0,g=b[0];g!==void 0;){if(d===g.index){var h=void 0;g.type===2?h=new dv(c,c.nextSibling,this,a):g.type===1?h=new g.Gv(c,g.name,g.hd,this,a):g.type===6&&(h=new ev(c,this,a));this.pi.push(h);g=b[++f]}h=void 0;d!==((h=g)==null?void 0:h.index)&&(c=Vu.nextNode(),d++)}Vu.currentNode=Hu;return e};cv.prototype.Lp=function(a){var b=0,c=I(this.pi),d=c.next();try{for(;!d.done;d=c.next()){var e=d.value;e!==void 0&&(qu&&qu({kind:"set part",part:e,value:a[b],WB:b,values:a,SB:this}),e.hd!==void 0?(e.ke(a,e,b),b+=e.hd.length-2):e.ke(a[b]));b++}}finally{ua(c,d)}};var dv=function(a,b,c,d){this.type=2;this.ya=Tu;this.Cm=void 0;this.kd=a;this.Of=b;this.jd=c;this.options=d;var e;this.Ku=(e=d==null?void 0:d.isConnected)!=null?e:!0;this.ph=void 0};da.Object.defineProperties(dv.prototype,{Pf:{configurable:!0,enumerable:!0,get:function(){var a,b;return(b=(a=this.jd)==null?void 0:a.Pf)!=null?b:this.Ku}},parentNode:{configurable:!0,enumerable:!0,get:function(){var a=wu(this.kd).parentNode,b=this.jd,c;b!==void 0&&((c=a)==null?void 0:c.nodeType)===11&&(a=b.parentNode);return a}}});t=dv.prototype;t.ke=function(a,b){if(this.parentNode===null)throw Error("This `ChildPart` has no `parentNode` and therefore cannot accept a value. This likely means the element containing the part was manipulated in an unsupported way outside of Lit's control such that the part's marker nodes were ejected from DOM. For example, setting the element's `innerHTML` or `textContent` can do this.");a=bv(this,a,b===void 0?this:b);if(Iu(a))a===Tu||a==null||a===""?(this.ya!==Tu&&(qu&&qu({kind:"commit nothing to child",start:this.kd,end:this.Of,parent:this.jd,options:this.options}),this.mk()),this.ya=Tu):a!==this.ya&&a!==Su&&this.Fm(a);else if(a._$litType$!==void 0)this.Nu(a);else if(a.nodeType!==void 0){var c;((c=this.options)==null?void 0:c.host)===a?(this.Fm("[probable mistake: rendered a template's host in itself (commonly caused by writing ${this} in a template]"),console.warn("Attempted to render the template host",a,"inside itself. This is almost always a mistake, and in dev mode ","we render some warning text. In production however, we'll ","render it, which will usually result in an error, and sometimes ","in the element disappearing from the DOM.")):this.Em(a)}else Ju(a)||typeof(a==null?void 0:a[Symbol.iterator])==="function"?this.Mu(a):this.Fm(a)};t.Hm=function(a){return wu(wu(this.kd).parentNode).insertBefore(a,this.Of)};t.Em=function(a){if(this.ya!==a){this.mk();if(Bu!==Au){var b,c=(b=this.kd.parentNode)==null?void 0:b.nodeName;if(c==="STYLE"||c==="SCRIPT")throw Error(c==="STYLE"?"Lit does not support binding inside style nodes. This is a security risk, as style injection attacks can exfiltrate data and spoof UIs. Consider instead using css`...` literals to compose styles, and do dynamic styling with css custom properties, ::parts, s, and by mutating the DOM rather than stylesheets.":"Lit does not support binding inside script nodes. This is a security risk, as it could allow arbitrary code execution.");}qu&&qu({kind:"commit node",start:this.kd,parent:this.jd,value:a,options:this.options});this.ya=this.Hm(a)}};t.Fm=function(a){if(this.ya!==Tu&&Iu(this.ya)){var b=wu(this.kd).nextSibling;this.ph===void 0&&(this.ph=Bu(b,"data","property"));a=this.ph(a);qu&&qu({kind:"commit text",node:b,value:a,options:this.options});b.data=a}else b=Hu.createTextNode(""),this.Em(b),this.ph===void 0&&(this.ph=Bu(b,"data","property")),a=this.ph(a),qu&&qu({kind:"commit text",node:b,value:a,options:this.options}),b.data=a;this.ya=a};t.Nu=function(a){var b=a.values,c=a._$litType$;a=typeof c==="number"?this.Jp(a):(c.fg===void 0&&(c.fg=Xu.createElement(Wu(c.hw,c.hw[0]),this.options)),c);var d;((d=this.ya)==null?void 0:d.Dm)===a?(qu&&qu({kind:"template updating",cp:a,instance:this.ya,de:this.ya.pi,options:this.options,values:b}),this.ya.Lp(b)):(d=new cv(a,this),c=d.Lu(this.options),qu&&qu({kind:"template instantiated",cp:a,instance:d,de:d.pi,options:this.options,fragment:c,values:b}),d.Lp(b),qu&&qu({kind:"template instantiated and updated",cp:a,instance:d,de:d.pi,options:this.options,fragment:c,values:b}),this.Em(c),this.ya=d)};t.Jp=function(a){var b=a.hd,c=Uu.get(b);if(c===void 0){var d=b.join("\x00");c=Du.get(d);c===void 0&&(c=new Xu(a),Du.set(d,c));Uu.set(b,c)}return c};t.Mu=function(a){Ju(this.ya)||(this.ya=[],this.mk());var b=this.ya,c=0,d;a=I(a);var e=a.next();try{for(;!e.done;e=a.next()){var f=e.value;c===b.length?b.push(d=new dv(this.Hm(Hu.createComment("")),this.Hm(Hu.createComment("")),this,this.options)):d=b[c];d.ke(f);c++}}finally{ua(a,e)}c2||c[0]!==""||c[1]!==""?(this.ya=Array(c.length-1).fill(new String),this.hd=c):this.ya=Tu;this.oh=void 0};da.Object.defineProperties(av.prototype,{tagName:{configurable:!0,enumerable:!0,get:function(){return this.element.tagName}},Pf:{configurable:!0,enumerable:!0,get:function(){return this.jd.Pf}}});av.prototype.ke=function(a,b,c,d){b=b===void 0?this:b;var e=this.hd,f=!1;if(e===void 0){if(a=bv(this,a,b,0),f=!Iu(a)||a!==this.ya&&a!==Su)this.ya=a}else{var g=a;a=e[0];var h;for(h=0;h` has a `@"+b+"=...` listener with invalid content. Event listeners in templates must have exactly one expression and no surrounding text.");};u($u,av);$u.prototype.ke=function(a,b){var c;a=(c=bv(this,a,b===void 0?this:b,0))!=null?c:Tu;if(a!==Su){b=this.ya;c=a===Tu&&b!==Tu||a.capture!==b.capture||a.once!==b.once||a.passive!==b.passive;var d=a!==Tu&&(b===Tu||c);qu&&qu({kind:"commit event listener",element:this.element,name:this.name,value:a,options:this.options,removeListener:c,addListener:d,NB:b});c&&this.element.removeEventListener(this.name,this,b);d&&this.element.addEventListener(this.name,this,a);this.ya=a}};$u.prototype.handleEvent=function(a){if(typeof this.ya==="function"){var b,c;this.ya.call((c=(b=this.options)==null?void 0:b.host)!=null?c:this.element,a)}else this.ya.handleEvent(a)};var ev=function(a,b,c){this.element=a;this.type=6;this.Cm=void 0;this.jd=b;this.options=c};da.Object.defineProperties(ev.prototype,{Pf:{configurable:!0,enumerable:!0,get:function(){return this.jd.Pf}}});ev.prototype.ke=function(a){qu&&qu({kind:"commit to element binding",element:this.element,value:a,options:this.options});bv(this,a)};var fv;(fv=globalThis.litHtmlPolyfillSupportDevMode)==null||fv(Xu,dv);var gv=function(){var a;((a=Q.litHtmlVersions)!=null?a:Q.litHtmlVersions=[]).push("3.3.3");Q.litHtmlVersions.length>1&&Promise.resolve().then(function(){su("multiple-versions","Multiple versions of Lit loaded. Loading multiple versions is not recommended.")})},hv=function(){gv();var a=function(b,c,d){if(c==null)throw new TypeError("The container to render into may not be "+c);var e=ru++,f,g=(f=d==null?void 0:d.ly)!=null?f:c;f=g._$litPart$;qu&&qu({kind:"begin render",id:e,value:b,container:c,options:d,part:f});if(f===void 0){var h;f=(h=d==null?void 0:d.ly)!=null?h:null;g._$litPart$=f=new dv(c.insertBefore(Hu.createComment(""),f),f,void 0,d!=null?d:{})}f.ke(b);qu&&qu({kind:"end render",id:e,value:b,container:c,options:d,part:f});return f};a.yB=Cu;return a}();var iv=ta([' \n \n \n \n
\n \n \'>\n ']),kv=function(a,b,c,d){gk.call(this);this.Dc=b;this.Ye=this.Bd=null;this.mj=!1;this.bi=[];this.ed=null;if(!(nf?$b(Ef,"9")>=0:pf?$b(Ef,"1.8")>=0:mf?$b(Ef,"9.0")>=0:qf?$b(Ef,"420+")>=0:of))throw Error("Graphics is not supported");for(b=Math.floor(Math.random()*1E5);window.frames["Drawing_Frame"+b];)b++;this.frameId="Drawing_Frame"+b;(a=this.ek=a)&&(a[Ft]=!0);sg(this.ek);this.Rb=hg(this.ek);this.container=this.Rb.createElement("div");this.container.style.position="relative";this.ek.appendChild(this.container);this.my=Ot;(this.rm=d)&&hv(Ru(iv,this.frameId,this.frameId,this.Dc?this.Dc.width.toString()+"px":"",this.Dc?this.Dc.height.toString()+"px":""),this.container);jv(this.Er.bind(this),this.ys.bind(this),c)};u(kv,gk);kv.prototype.ys=function(){if(this.rm){var a=lv(this);R(a.body!=null);var b=this.Bd=a.getElementById("renderers");b&&(b[Ft]=!0);this.Ye=mv(a.body,this.Dc)}else this.Bd=this.Rb.createElement("div"),Qk(this.Bd,"position","relative"),this.Dc&&dl(this.Bd,this.Dc),this.Bd.dir="ltr",this.container.appendChild(this.Bd),this.Ye=mv(this.container,this.Dc);this.mj=!0};var mv=function(a,b){R(a!=null);var c=hg(a),d=c.createElement("div"),e=d.style,f=b?b.height+10:0;b=b?b.width+10:0;e.display="none";e.position="absolute";e.top=f+"px";e.left=b+"px";e.whiteSpace="nowrap";e=!0;Array.isArray(e)&&(e=e.join(" "));R("hidden","ARIA attribute cannot be empty.");a:{for(g in Jt)if(Jt[g]=="hidden"){var g=!0;break a}g=!1}R(g,"No such ARIA attribute hidden");e===""||e==void 0?(Kt||(g={},Kt=(g.atomic=!1,g.autocomplete="none",g.dropeffect="none",g.haspopup=!1,g.live="off",g.multiline= !1,g.multiselectable=!1,g.orientation="vertical",g.readonly=!1,g.relevant="additions text",g.required=!1,g.sort="none",g.busy=!1,g.disabled=!1,g.hidden=!1,g.invalid="false",g)),g=Kt,"hidden"in g?d.setAttribute("aria-hidden",g.hidden):d.removeAttribute("aria-hidden")):d.setAttribute("aria-hidden",e);d.setAttribute("aria-hidden",!0);c.appendChild(d,c.createTextNode(" "));c.appendChild(a,d);return d};kv.prototype.Er=function(){if(!this.rm)return!0;var a=this.Rb.R(this.frameId);if(a)a:{try{var b=a.contentWindow||(a.contentDocument?ng(a.contentDocument):null);break a}catch(c){}b=null}else b=null;return b?(a=lv(this),a.readyState==="complete"&&a.body!=null&&a.getElementById("renderers")!=null):!1};var nv=function(a){var b;var c=c===void 0?!0:c;if(!a.mj)return null;for(b=b!=null?b:0;a.bi.length<=b;){var d=a,e=c;e=e===void 0?!0:e;var f=hg(d.Bd).createElement("div");e&&(Qk(f,"position","absolute"),Wk(f,0,0));dl(f,"100%","100%");d.Bd.appendChild(f);R(d.Ye!=null);e=new d.my(f,d.Ye);hk(d,e);d.bi.push(e)}return a.bi[b]},ov=function(a){if(!a.mj)return null;if(!a.ed){var b=a.Rb.createElement("div");a.ed=new Lt(b);a.Rb.appendChild(a.container,a.ed.container)}return a.ed},pv=function(a,b,c){jv(function(){return a.Bd!= null},b,c)};kv.prototype.update=function(a,b){if(a!=null&&!Te(this.Dc,a))if(this.Dc=a,this.rm){if(a=this.Rb.R(this.frameId))a.width=this.Dc.width.toString(),a.height=this.Dc.height.toString()}else this.mj&&dl(this.Bd,this.Dc);this.mj||jv(this.Er.bind(this),this.ys.bind(this),b)};var lv=function(a){a=a.Rb.R(a.frameId);if(!a)throw Error("No iframe");return a.contentDocument||a.contentWindow.document},jv=function(a,b,c,d){a.call()?b.call():qv(a,b,c,d)},qv=function(a,b,c,d){d=d!=null?d:10;setTimeout(c(function(){jv(a,b,c,d)}),d)};kv.prototype.ka=function(){try{this.Rb.ai(this.ek),fk(this.ed),Yc(this.bi,function(a){fk(a)})}catch(a){}gk.prototype.ka.call(this)};var sv=function(a,b){this.fonts=a||[];rv(this,b)},uv=function(){return function(a,b){return b==="fontName"&&typeof a==="string"&&tv.indexOf(a.toLowerCase())===-1}},rv=function(a,b){var c=Q.WebFont;a.fonts.length!==0&&c?c.load({google:{HB:a.fonts},active:function(){b.resolve()},IB:function(){b.reject(Error("One or more fonts could not be loaded"))}}):b.resolve(null)},tv="arial;comic sans ms;courier new;georgia;impact;times new roman;trebuchet ms;verdana".split(";");function vv(a){for(var b=Pf("thead",{},wv(a,xv)),c=[],d=a.Eb(),e={Kj:0};e.Kj=0);R(d>=0);b.width=e;b.height=d;var f=xt(b,"svg");f.setAttribute("width",e);f.setAttribute("height",d);f.style.overflow="hidden";f.setAttribute("aria-label","A chart.");b.container.appendChild(f);vt(b,f);e=new rt(f);e.di("_default_");b.Sh=e;Gv(a,c,e)},Fv=function(a,b,c){var d=new bs;ds(d,0,b);ds(d,1,c);a.C=d.compact()},Gv=function(a,b,c){a.registerElement(c.R(),"chart");var d=a.C,e=a.D,f=d.Lm;!Mg(f)&&!Jg(f)||At(e,0,0,d.width,d.height,f,c);d.gi==="out"&&(R(d.title!=null),f=Iv(a,d.title,c,!0),a.registerElement(f,"title"));a.wc=e.Ka(!0);f=d.legend;Jv(a,f);f&&(e.appendChild(c,a.wc),a.registerElement(a.wc.R(),"legend"));a.re=e.Ka(!0);f=d.qd;Kv(a,f);f&&f.position!=="in"&&(e.appendChild(c,a.re),a.Gc.colorbar=a.re.R());a.km=e.Ka(!1);if(!Lv(a,d,c)){var g= {color:"black",fb:d.xe,fontSize:d.Od,bold:!1,Zd:!1,ih:!1};R(g.fontSize!=null);a.D.Wi("No data",g);var h=d.chartArea.top+Math.round(d.chartArea.height/2);f=a.D;var k=d.chartArea.left;d=d.chartArea.left+d.chartArea.width;var l=Dp(k,d,"center"),m=Dp(h,h,"center"),n=new ji(k,h,d,h),p=n.x1-n.ni;n=n.y1-n.oi;g=Ct(f,"No data",l,m,Math.sqrt(p*p+n*n),ve(Math.atan2(h-h,d-k)*180/Math.PI),"center","center",g);f.appendChild(c,g)}e.appendChild(c,a.km);a.ze=b},Jv=function(a,b){if(b){var c=b.lf;if(c){var d=b.Qb|| 0,e=b.Qa.length;if(b.Nj)var f=b.Y;else f=c.map(function(g){return Mv(g)}).filter(function(g){return g!=null}),f=Ri(f);f&&(f=Ok(f),R(a.wc!=null),At(a.D,f.left,f.top,f.width,f.height,new X(Qg),a.wc));for(f=0;f500&&(h==="polygon"||h==="star")&&(h="circle");if(h==="polygon"||h==="star"){f=Number(f.dent);f!=null&&isFinite(f)||(k>=5?(f=Math.cos(Math.PI/k),f-=Math.pow(Math.sin(Math.PI/k),2)/Math.sin(Math.PI/2-Math.PI/k)):f=.3);f*=d;h==="star"&&(k*=2);h=new Do;for(var n=0;n0?h.Ma(r,p):h.move(r,p)}h.close();b=a.D.ue(h,e)}else b=Pt(a.D,b,c,d,e);b&&g&&a.D.appendChild(g,b);return b},Nv=function(a,b){if(b.isVisible){var c=a.D.Ka(!1),d=c.R();b.id&&d.setAttribute("column-id",b.id);var e=rl(["legendentry",b.index]);a.registerElement(d,e,"legendentry");if(d=Mv(b))d=Ok(d),At(a.D,d.left,d.top,d.width,d.height,new X(Qg),c);b.H&&Iv(a,b.H,c);if(b.pa)if(d=a.C.h[b.index],a.C.Ht&&d&&!d.dg&&d.Zh){var f=b.pa.sa.left;e=b.pa.sa.width;var g=b.pa.sa.height,h=f+e/2,k=b.pa.sa.top+g/2;d.Hd&&At(a.D,f,k,e,g/2,d.Hd,c);var l=g*.5,m=d.la;if(m){m.strokeWidth>l&&(m=m.clone(),Fg(m,l));l=a.D;var n=f+e,p=new Do;p.move(f,k);p.Ma(n,k);f=l.ue(p,m);l.appendChild(c,f)}d.ub&&d.hk&&((f=d.Zh)||(f={type:"circle"}),Pv(a,h,k,Math.min(d.yo,g/2,e/2),d.ub,f,c))}else At(a.D,b.pa.sa.left,b.pa.sa.top,b.pa.sa.width,b.pa.sa.height,b.pa.m,c);b.wb&&b.wb.isVisible&&b.wb.m&&(g=b.wb.sa.x,h=b.wb.sa.y,k=b.wb.m,d=a.D,e=d.Ka(),At(d,g,h,12,12,k,e),d.appendChild(c,e),k=new Do,k.move(g+2,h+2),k.Ma(g+ 12-2,h+12-2),k.move(g+12-2,h+2),k.Ma(g+2,h+12-2),g=new X,g.gd("#ffffff"),Fg(g,2),Bt(d,k,g,e),d=e.R(),b=rl(["removeseriebutton",b.index]),a.registerElement(d,b));R(a.wc!=null);a.D.appendChild(a.wc,c)}},Ov=function(a,b,c,d){b&&(Qv(a,b.Bo,c,d,-1),b.wo&&(R(a.wc!=null),Iv(a,b.wo,a.wc)),Qv(a,b.po,c,d,1))},Qv=function(a,b,c,d,e){if(b){R(a.wc!=null);var f=Ho(b.path);f=Bt(a.D,f,b.m,a.wc);b.active&&(b=rl(["legendscrollbutton",e,c,d]),a.registerElement(f,b))}},Kv=function(a,b){if(b){R(a.re!=null);for(var c= b.definition,d=a.D,e=a.re,f=c.jq,g=0;g=k.width+c,m=g.x-f.left>=k.width+c,n=f.bottom-g.y>=k.height+c,p=g.y-f.top>=k.height+c,q=Math.sign(g.x-d.x),r=Math.sign(g.y-d.y);q===0&&q===r&&(q=!m||l||n||p?1:-1,r=p||l?-1:1);l=g.x+(h+k.width/2)*q;g=g.y+(h+k.height/2)*r;g={box:new Lk(g-k.height/2,l+k.width/2,g+k.height/2,l-k.width/2),bc:null};Xm(g,f,d,c,0);an(g,f,d,c);d=new U(g.box.left,g.box.top);e.style.width=e.clientWidth+1+"px";e.style.height=e.clientHeight+"px";e.style.left=d.x+"px";e.style.top=d.y+"px"}else{e=a.D;d=a.km;f=e.Ka();f.R().setAttribute("class","google-visualization-tooltip");k=c.outline;g=new Do;r=new Lk(k.box.top+.5,k.box.right+.5,k.box.bottom+.5,k.box.left+.5);h=k.bc;g.move(r.left+1,r.bottom);g.qh(r.left+ 1,r.bottom-1,1,1,180,270,!0);g.Ma(r.left,r.top+1);g.qh(r.left+1,r.top+1,1,1,270,0,!0);if(h!=null&&h[0].y===k.box.top)for(l=0;l<3;++l)g.Ma(h[l].x+.5,h[l].y+.5);g.Ma(r.right-1,r.top);g.qh(r.right-1,r.top+1,1,1,0,90,!0);g.Ma(r.right,r.bottom-1);g.qh(r.right-1,r.bottom-1,1,1,90,180,!0);if(h!=null&&h[0].y===k.box.bottom)for(k=0;k<3;++k)g.Ma(h[k].x+.5,h[k].y+.5);g.close();Bt(e,g,c.Cc,f);c=c.zi;for(g=0;g=r;g--)q=p.points[g].o,n.Ma(q.Om,q.Pm),q.Mm===q.Om&&q.Nm===q.Pm||n.Ma(q.Mm,q.Nm);else w!=null&&(p=p.points[w].o,n.Ma(p.Om,p.Pm),n.close());Bt(a.D,m,l,h)}f=rl(["area",c]);Tv(a,a.Ra.area.La,f,h.R());if(d){e=Wo(b);d=rl(["line",c]);e=e.ue(a.D);f=iw(a,b);if(e){h=b.Fe;k=b.fd;if(h||k){f=f||a.D.Ka();if(h)for(l=0;l=k.right||h.x+g<=k.left||h.y-g>=k.bottom||h.y+g<=k.top)g=!1;else{if((h.x>=k.right||h.x<=k.left)&&(h.y>=k.bottom||h.y<=k.top)){g*=g;var l=h.x-k.right,m=h.x-k.left,n=h.y-k.bottom;h=h.y-k.top;k=l*l;m*=m;n*=n;h*=h;if(k+n>=g&&k+h>=g&&m+h>=g&&m+n>=g){g=!1;break a}}g=!0}}if(g){g=rl([b.type==="bubbles"?"bubble":"point",c,e]);n=Qo(d,b);R(n!=null);if(n){m=Mo(d,b);h=So(d,b);R(h!=null);n= null;l=d.fd;k=d.Fe;var p=d.dn;if(l||k||p)n=a.D.Ka();p&&Bt(a.D,p.path,p.m,n);(p=d.shape)&&p.type||(p={type:"circle"});l&&Pv(a,l.x,l.y,l.Bb+.5,l.m,p,n);if(k)for(l=0;lf.right)&&(f=b.labels)&&f.length!=0){var g=["annotation",d];nd(g,1,0,c);g=rl(g);var h=e.x,k=e.y,l=e.length;l=e.orientation==="horizontal"?[l,1]:[1,l];e=zt(a.D,Math.min(h,h+l[0]),Math.min(k,k+l[1]),Math.abs(l[0]),Math.abs(l[1]),new X({fill:e.color}));Tv(a,a.Ra.annotation.La,g,e);e=a.D.Ka();g=["annotationtext",d];nd(g,1,0,c);h=null;b.Id&&!b.Id.Dr&&(f=[b.Id.label],h=-1);for(b=0;b0&&(h=Pt(a.D,h.left,h.top,k,l),a.D.appendChild(f,h))):h.width===0||h.height=== 0?(k=new Do,k.move(h.left,h.top),k.Ma(h.left+h.width,h.top+h.height),Bt(a.D,k,l,f)):a.D.appendChild(f,zt(a.D,h.left,h.top,h.width,h.height,l))}}f.element&&(c=rl(["interval",c,d]),f=f.R(),Tv(a,a.Ra.interval.La,c,f))}},$v=function(a,b,c){pw(a,c,function(d,e){var f=d.length!=null?d.length:b.chartArea.height,g=c.Dd.J;return At(a.D,Math.floor(d.J),Math.min(g,g+c.Dd.direction*f),1,f,d.m,e)})},aw=function(a,b,c){pw(a,c,function(d,e){var f=d.length!=null?d.length:b.chartArea.width,g=c.Dd.J;return At(a.D,Math.min(g,g+c.Dd.direction*f),Math.floor(d.J),f,1,d.m,e)})},pw=function(a,b,c){(function(f,g,h){if(f){var k=a.Ra[g].La,l=rl([b.name,g]);Yc(f,function(m,n){n=rl([b.name,g,n]);qw(a,m,h,k,n,l)})}})(b.gridlines,"gridline",c);var d=a.Ra.baseline.La,e=rl([b.name,"baseline"]);b.ha&&b.ha.isVisible&&b.ha.T!=null&&b.ha.J!==Infinity&&qw(a,b.ha,c,d,e)},qw=function(a,b,c,d,e,f){var g;if(g=b&&b.isVisible)g=b.m,g=!(!Mg(g)&&!Jg(g));g&&(b=c(b,d),a.registerElement(b,e,f))},dw=function(a,b){var c=a.Ra;if(b.title){var d= Iv(a,b.title,c.axistitle.La,!0),e=rl([b.name,"title"]);a.registerElement(d,e);if(b.text){var f=c.axistick.La,g=rl([b.name,"label"]);Yc(b.text,function(h,k){h.isVisible&&(R(h.H!=null),h=Iv(a,h.H,f),k=rl([b.name,"label",k]),a.registerElement(h,k,g))})}}},rw=function(a,b){var c=a.ze;if(c){for(var d in c.h){var e=Number(d),f=b.h[e];if(Ki(c.h[e],Zd({points:null}))){var g=c.h[e].points,h;for(h in g){var k=Number(h),l=g[k];if(l.fa){var m=rl(["tooltip",Number(e),Number(k)]);Rv(a,m)}if(l=l.ga)for(var n in l.labels)l.labels[Number(n)].hi&& (m=rl(["tooltip",Number(e),Number(k),n]),Rv(a,m));nw(a,f,Number(e),f.points[k],Number(k))}}else{for(var p in c.h[e].points)c.h[e].points[Number(p)].fa&&(g=rl(["tooltip",Number(e),Number(p)]),Rv(a,g));bw(a,f,Number(e))}}for(var q in c.N)if(d=Number(q),e=c.N[d],e.fa&&(f=rl(["tooltip",Number(d)]),Rv(a,f)),e=e.ga){for(var r in e.labels)e.labels[Number(r)].hi&&(f=rl(["tooltip",null,Number(d),Number(r)]),Rv(a,f));Zv(a,b.N[d].ga,null,Number(d))}Xv(a)}};var sw=function(a,b,c,d){this.value=a;this.position=b;this.ox=c;this.label=this.label=d};sw.prototype.Vd=function(){return Math.round(this.position)};sw.prototype.F=function(){return this.value};var tw=function(){};var uw=function(a,b){b=b===void 0?0:b;this.spacing=a;this.offset=b;this.position=0};u(uw,tw);t=uw.prototype;t.next=function(){this.position++;return this.F()};t.Ab=function(){this.position--;return this.F()};t.F=function(){return Fi(15,this.position*this.spacing+this.offset)};t.floor=function(a){this.position=Math.floor((a-this.offset)/this.spacing);return this.F()};t.ceil=function(a){this.position=Math.ceil((a-this.offset)/this.spacing);return this.F()};t.round=function(a){this.position=Math.round((a-this.offset)/this.spacing);return this.F()};var vw=function(a){this.position=0;var b=a.length;R(b>0,"Multiplier is empty.");R(a[0]>=1,"Multipliers first value is too low.");R(a[b-1]<10,"Multipliers last value is too high.");for(var c=0,d,e=0;ec,"Multipliers are not sorted."),c=d;this.Sx=a.concat();this.tj=a.length};u(vw,tw);t=vw.prototype;t.next=function(){this.position++;return this.F()};t.Ab=function(){this.position--;return this.F()};t.F=function(){var a=Math.floor(this.position/this.tj);return Vn(this.Sx[this.position-a*this.tj],a)};t.floor=function(a){R(a>0,"Value, "+a+", must be positive");this.position=this.tj*Xn(a);if(this.F()!==a)for(;this.Ab()>a;);return this.F()};t.ceil=function(a){R(a>0,"Value "+a+" must be positive");this.position=this.tj*Wn(a);if(this.F()!==a)for(;this.next()0,"Value must be positive");this.position=this.tj*Xn(a);if(this.F()!==a){for(;this.Ab()>a;);if(a-this.F()0,"numSignificantDigits must be a positive number if passed in."));this.Vh=c||null;this.Mf=d||null};Aw.prototype.format=function(a){var b=a<0;a=Math.abs(a);a=Fi(this.Vh||15,a);for(var c=null,d=0;d=e.magnitude){c=e.format(a);break}}c==null&&(c=this.xq.Sa(a));this.Mf&&(a=this.Mf.RB,d=this.Mf.VB?" ":"",c=this.Mf.position==="right"?c+d+a:a+d+c);return b?"-"+c:c};Aw.prototype.Sa=function(a){return this.format(a)};Aw.prototype.parse=function(a){return this.xq.parse(a)};var Bw=function(a,b,c,d){this.W=a;this.ep=b;this.orientation=c;this.Td=d;this.Oe=this.wa=null},Cw=function(a){if(a.Td){var b=a.Td;b.Vh=15;b.ie=!0;a.wa=a.Td.ff()}},Dw=function(a,b){if(a.Td){b=ww(b);var c=a.Td;c.Fg=b;c.ie=!0;zw(a.Td,b)}},Ew=function(a,b,c){var d;return dd(b,function(e,f){f=f===0?!0:Math.abs(a.W.Pa(e)-a.W.Pa(d))>=c;d=e;return f})},Fw=function(a,b,c){if(c==null)return!0;a.Oe&&a.Oe.multiple===c||(a.Oe={},a.Oe.multiple=c,a.Oe.ns=Math.pow(10,Ei(c||1)),a.Oe.Rx=Math.round(c*a.Oe.ns));return Math.abs(Fi(15,b*a.Oe.ns)%a.Oe.Rx)<1E-15},Gw=function(a,b){if(!a.wa)return!0;var c={};return dd(b,function(d){var e=a.wa.Sa(d);return c[e]==null?(c[e]=d,!0):!1})},Iw=function(a,b){if(!a.wa)return!0;var c=b.length;if(c>0){if(Hw(a,b[0],b[1]))return!1;for(;--c>1;)if(Hw(a,b[c-1],b[c]))return!1}return!0},Hw=function(a,b,c){var d=Jw(a,b),e=Jw(a,c);return Math.abs(a.W.Pa(b)-a.W.Pa(c))<(d+e)/2},Jw=function(a,b){b=a.wa.Sa(b);var c=a.ep;return a.orientation==="horizontal"?c.Wk(b):c.ac(b)},Kw=function(a,b,c){return Math.abs(a.W.Zb(c)- a.W.Zb(b))},Lw=function(a,b){return ad(b,function(c){var d=c=Fi(15,c),e=a.W.Pa(c);c=a.wa?a.wa.Sa(c):"";return new sw(d,e,!0,c)})},Mw=function(a,b){for(var c=[],d=0;d=f)&&(g.push(h),c=h),h=b.next();while(c==null||c0?Uw(this):this.location<0?-Uw(this):0};t.next=function(){this.location++;return this.F()};t.Ab=function(){this.location--;return this.F()};t.floor=function(a){var b=this.Bj,c=Wn(Math.abs(a));if(Math.abs(a)<=Math.pow(10,this.vl))return this.location=a<0?-1:0,this.F();a>0?this.location=this.me*c-this.nh:a<0&&(this.location=this.nh-this.me*c,b=-b);this.F()!==a&&(c=this.yl*a/Vn(1,Xn(Math.abs(a))),this.location+=Math.floor(c)-b);return this.F()};t.ceil=function(a){var b=this.Bj,c=Wn(Math.abs(a));if(Math.abs(a)<=Math.pow(10,this.vl))return this.location=a>0?1:0,this.F();a>0?this.location=this.me*c-this.nh:a<0&&(this.location=this.nh-this.me*c,b=-b);this.F()!==a&&(c=this.yl*a/Vn(1,Xn(Math.abs(a))),this.location+=Math.ceil(c)-b);return this.F()};t.round=function(a){var b=Wn(Math.abs(a));if(Math.abs(a)<=Math.pow(10,this.vl))return this.location=0;if(a>0){this.location=this.me*b-this.nh;if(this.next()>a)return a-this.F()>=this.Ab()-a?this.next():this.F();this.Ab()}else if(a<0){this.location=this.nh-this.me*b;if(this.Ab()=10;)l/=10;return l}).sort(function(l,m){return l>m?1:l0&&(r[0]>a||r[r.length-1]0,"largestPossibleNumSteps must be positive number. firstValue: "+(l+" secondValue: "+k+" firstPowerOfTen: ")+h);this.ei.ceil(q);h=this.ei.F();this.Wg.floor(10/h);l=this.Wg.F();do{h=10/l;h=new Tw(h,e);k=[];Fw(this.za,l,this.Th)&&(k=Nw(this.za,h,a,b,this.multiple,this.Qd));if(g(k)){p=!0;break}l=this.Wg.next()}while(l=a.Ne);c=a.ei.Ab();c<1&&(c=a.ei.next());return c},Vw=[1,2,5],Ww=[1,2,5];var Zw=function(){};var ax=function(a,b,c,d,e,f,g,h,k,l,m,n,p){if(e){var q=c;c=d;d=q}this.mb=a;this.Kb=b;this.he=c;this.Se=d;this.reversed=e;this.Xn=f;this.Qd=g;this.orientation=h;this.options=k;this.ep=l;this.Td=m;this.ah=n;this.Wr=p;this.W=$w(this)},$w=function(a){a.W=a.Xn===1?new Sw(a.mb,a.Kb,a.he,a.Se):new Yn(a.mb,a.Kb,a.he,a.Se,a.Xn,a.Qd);a.Wr&&a.Wr(a.W);return a.W},bx=function(a,b,c,d,e){var f=100;do{if(f--<0)break;a.mb=b;a.Kb=c;$w(a);var g=b;var h=c;var k=a,l=b,m=c;if(k.mb===k.Kb){var n=k.he+(k.Se-k.he)/2;var p= "";k.Td&&(p=k.Td.ff().format(k.mb));n={ec:[new sw(k.mb,n,!1,p)],xj:void 0}}else{n=k.W;p=k.options;var q=k.Qd,r=k.Xn,v=k.orientation,w=k.ep,x=k.Td;k=k.ah;if(n.mb===n.Kb)var y=1;else{var C=Math.min(n.Vk(),n.Uk()),D=Math.max(n.Vk(),n.Uk()),B=n.Pa(0),A=Math.abs(n.Zb(C)),G=Math.abs(n.Zb(D)),F=Math.max(A,G);y=0;if(C>B||B>D)y=Math.min(A,G);C=n.Pa(F);y=n.Pa(y);y=Math.abs(n.Zb(y+10)-n.Zb(y))/Math.abs(n.Zb(C+10)-n.Zb(C))}n=(y>.65&&r>.5?new Qw(n,x,w,k,v,p):new Xw(n,x,w,k,v,p,q)).Uq(l,m)}p=n.ec;p.length>1&&(d!= null&&(b=p[0].F()),e!=null&&(c=p[p.length-1].F()));g=b!==g||c!==h;if(isNaN(b)||isNaN(c))g=!1,b=d!=null?d:b,c=e!=null?e:c}while(g);if(!n)throw Error("Failed creating decorations");n.min=b;n.max=c;return n},cx=function(a,b,c,d,e){var f=a,g=b,h=(b-a)*.005;b+=h;a-=h;return bx(new ax(a,b,c,d,!1,1,0,"horizontal",e,null,null,null,null),f,g,null,null).ec};var ex=function(a,b,c,d,e){this.Ts=dx;this.Cq=3;this.options=a;this.ks=this.Tr=null;var f=a.O("format");this.format=f==null?null:typeof f==="string"?{pattern:f}:{pattern:f.pattern,formatType:f.formatType,timeZone:f.timeZone};this.Mx=lh(a,["gridlines.minSpacing","gridlines.minStrongLineDistance"]);this.Px=lh(a,["minorGridlines.minSpacing","gridlines.minWeakLineDistance"]);this.Nx=lh(a,"gridlines.minStrongToWeakLineDistance");this.Lx=lh(a,"gridlines.minNotchDistance");this.Jx=lh(a,"gridlines.minMajorTextDistance");this.Kx=lh(a,"gridlines.minMinorTextDistance");this.az=lh(a,"gridlines.unitThreshold");this.Pp=Z(a,"gridlines.allowMinor");a.xa("minorGridlines.count")===0&&(this.Pp=!1);this.sx=b;this.bh=c;this.Al=d;this.Ix=e},fx=function(a,b,c,d,e){return new ex(a,b,c,d,e)},kx=function(a,b,c,d){return function f(){var g,h,k,l,m,n,p,q,r,v,w,x,y,C,D,B,A,G,F,z,E,J,P,M,H,O,W,ia,xa;return Ha(f,function(L){switch(L.tb){case 1:L.Qj(2),g=gx(a,b,c),h=a.options.hl("gridlines.units."+g.unit),R(h!=null),k=gj[g.unit],l=mj[k],m=[],n={minValue:g.minValue,maxValue:g.maxValue,Ft:g.unit,Et:k,Ct:l,Dt:h.format,op:h.interval,gs:a.Mx,Ge:d.Ge,ua:d.ua,Ox:a.Jx,En:m,fs:0},a.Tr=n,p=hx(a,n),q=null;case 4:if(!(q=p.next().value)){L.sb(6);break}if(q.gridlines.length===0){L.sb(4);break}r=d.rh;if(!(a.Pp&&q.multiple===1&&k>0))return H=q.multiple!==1?0:r,O=ix(d.ua,H,q.gridlines,q.bk),W=void 0,q.multiple>1?(ia=jx(a,g,q,l,d),W=kd(q.gridlines,ia)):W=q.gridlines,xa=Ka,L.yield({gridlines:W,ca:O},16);v=k-1;w=fj[v];x=a.options.hl("minorGridlines.units."+ w);R(x!=null);y=mj[v];C={minValue:g.minValue,maxValue:g.maxValue,Ft:w,Et:v,Ct:y,Dt:x.format,op:x.interval,gs:a.Px,Ge:d.xl,ua:d.yj,Ox:a.Kx,En:q.gridlines,fs:a.Nx};a.ks=C;D=hx(a,C);B=null;A=!1;case 9:if(A){L.sb(4);break}B=D.next().value;A=B==null;if(B==null||!B.gridlines.length)return P=ix(d.ua,2,q.gridlines,q.bk),M=Ka,L.yield({gridlines:q.gridlines,ca:P},15);G=ix(d.ua,r,q.gridlines,q.bk);F=ix(d.yj,r,B.gridlines,B.bk);Yc(F,function(K){K.optional=!0});z=kd(B.gridlines,q.gridlines);E=kd(G,F);J=Ka;return L.yield({gridlines:z,ca:E},14);case 14:J(L.Pc);L.sb(9);break;case 15:M(L.Pc);L.sb(9);break;case 16:xa(L.Pc);L.sb(4);break;case 6:return L.return({gridlines:[],ca:[]});case 2:L.Qi(),L.sj(0)}})}()},gx=function(a,b,c){a=Xi((c-b)/a.az,a.Ts,a.Cq);var d=lx(a);a=fd(mj,function(e){a:if(Ra(e)&&Ra(d)&&e.length==d.length){for(var f=e.length,g=0;g=q&&(r=n.length);x=m.yf();if(x!=null&&(y=a.Al(x.getTime()-a.bh),R(y!=null),Math.abs(y-w)w){h=Math.max(0,h-1);break}h++}C||n.push({T:v,J:w,isVisible:!0,m:b.Ge,length:null,Un:!1})}if(!p){E.sb(5);break}B=mx(a,n,b);A=null;case 7:if(!(A=B.next().value)){E.sb(9);break}if(A==null){E.sb(7);break}G= Infinity;for(F=0;F1?c[1].J-c[0].J:0,l=0;lv.end&&(g=Math.max(0,g-1)),g++;h.push({T:m.T,isVisible:!0,J:n,H:{text:d[l].text,l:a,lines:[{x:n,y:0,text:d[l].text,length:p}],Ua:f,Ia:"end",UB:d[l].text,anchor:null,angle:0}})}return h};function lx(a){return ad(a,function(b){return b>0?1:0})} var dx=[[1],[2],[5],[10],[20],[50],[100],[200],[500],[0,1],[0,2],[0,5],[0,10],[0,15],[0,30],[0,0,1],[0,0,2],[0,0,5],[0,0,10],[0,0,15],[0,0,30],[0,0,0,1],[0,0,0,2],[0,0,0,3],[0,0,0,4],[0,0,0,6],[0,0,0,12],[0,0,0,0,1],[0,0,0,0,2],[0,0,0,0,7],[0,0,0,0,0,1],[0,0,0,0,0,3],[0,0,0,0,0,6],[0,0,0,0,0,0,1],[0,0,0,0,0,0,10],[0,0,0,0,0,0,50],[0,0,0,0,0,0,100]];var nx=function(a,b){this.wt=a;this.l=b};u(nx,Zw);nx.prototype.Wk=function(a){return this.wt(a,this.l).width};nx.prototype.ac=function(a){return this.wt(a,this.l).height};function ox(a,b,c){if(a>=b||!c)return null;c=Math.abs(a);var d=Math.abs(b);c>d&&(c=Math.abs(b),d=Math.abs(a));a=function(e){if(e<=0)return-1;for(var f=0;e<1&&f<9;)e*=10,f++;return f};if(c===d)return d>=1?1:a(d)+1;if(c===0)return a(d)+1;b=d-c;return c<1?a(b)+1:Math.min(Math.floor(Math.log10(d))+1-(Math.floor(Math.log10(b))+1)+1,10)};var px=function(){this.da=[];this.wa=null};px.prototype.init=function(a){this.options=a;this.da=[];this.dd=Infinity;this.cd=-Infinity;this.ws=null;this.format=a.Ta("format");a.O("valueFormatter",function(b,c){return c});this.wa=this.Dj=null};px.prototype.Lh=function(a,b,c){if(c.length!==0&&a!=="piecewiseLinear")throw Error("Non-linear scale with gaps is not supported.");this.Dj=eo(a,Vn(1,Wn(b)))};var qx=function(a,b){a.format||(a.format=b)},rx=function(a){a.wa||a.kf();return a.wa};px.prototype.aa=function(a){a=sx(this,a);if(a==null)return null;a=tx(this,a);return isFinite(a)?a:null};var sx=function(a,b){return b==null?null:a.tp(b)};px.prototype.Qe=function(a){return this.zl(ux(this,a))};var tx=function(a,b){R(a.Dj!=null);return a.Dj.transform(b)},ux=function(a,b){R(a.Dj!=null);return a.Dj.inverse(b)};px.prototype.Xm=function(a,b){return ab?1:0};px.prototype.ba=function(a){a!=null&&(athis.cd&&a!=null&&(this.cd=a))};var vx=function(a,b,c){px.call(this);this.Ts=a;this.Cq=b;this.jn=c};u(vx,px);vx.prototype.An=function(){return null};vx.prototype.init=function(a,b){px.prototype.init.call(this,a,b);b=a.hl("formatOptions");a=[];a.push(b.millisecond);a.push(b.second);a.push(b.minute);a.push(b.hour);a.push(b.day);a.push(b.month);a.push(b.year);b=this.format;for(var c=a.length,d=[],e=0;eb?1:0};t.tp=function(a){return As(a)};t.zl=function(a){return Zi(a).reverse()};t.kf=function(){var a=new uh({pattern:this.format||(this.granularity>1?"HH:mm":this.granularity===1?"HH:mm:ss":"HH:mm:ss.SSS"),timeZone:0});this.wa={Sa:function(b){b=dj(b);return a.Sa(b)}}};var Fx=function(a,b,c,d,e,f){this.j=a;this.index=d;this.Nv=f;this.maxValue=this.minValue=null;this.ti=[];this.Kk=this.kh=null;this.da=[];this.ca=this.yb=null;this.xd=2;this.yi=0;this.Za=this.Wa=null;this.fk=this.Ad=0;this.M={min:-Infinity,max:Infinity};this.ha=this.G=null;this.vm=Infinity;this.Lr=this.ol=null;this.Yu=c[0];this.options=b.view(c);this.type=Y(this.options,"type",e,Mj);R(this.type!=null,"Unspecified "+c+" type.");this.Ru=a.xb.bars>0;b=Y(this.options,"title");c=a.uh==="in"?a.wg:"none";c=sh(this.options,"titleTextStyle",{fb:a.xe,fontSize:a.Od,gb:c});this.title={text:b,l:c,Cc:null,lines:[],Ua:"center",Ia:"start",fa:"",anchor:null,angle:0};this.hc=Y(this.options,"textPosition","out",Sj);b=this.type!=="value"||a.K==="scatter"?ph(this.options,"majorAxisTextColor",Bo.majorAxisTextColor):ph(this.options,"minorAxisTextColor",Bo.minorAxisTextColor);c=this.hc==="in"?a.wg:"none";b={color:b,fb:a.xe,fontSize:a.Od,gb:c};this.ua=sh(this.options,"textStyle",b);c=lh(this.options,"gridlines.minorTextOpacity");c=Ag(this.ua.color,a.pk||"#fff",c);this.yj=sh(this.options,"textStyle",b);this.yj.color=c;this.Vy=Y(this.options,"outTextPosition","unbound",Tj);this.yt=Y(this.options,"inTextPosition","low",Uj);b=ph(this.options,"baselineColor",a.bv);this.av=new X({fill:b});b=ph(this.options,"gridlines.color",a.gw);this.Ge=new X({fill:b});this.sf=this.options.xa("gridlines.count");this.er=this.options.xa("gridlines.minSpacing");this.Qx=this.options.xa("minorGridlines.count");c=lh(this.options,"gridlines.minorGridlineOpacity");a=b==="none"?"none":Ag(b,a.pk||"#fff",c);a=ph(this.options,"minorGridlines.color",a);this.xl=new X({fill:a});this.Pq=Math.max(this.xd,Math.round(this.title.l.fontSize/3.236));this.direction=this.Mi=hh(this.options,"direction",1);this.gk=this.Nv;this.Jo=co(this.options,"logScale","scaleType");this.rt=(this.Xc=(this.ls=this.Jo==="mirrorLog")||this.Jo==="log")&&!this.ls},Gx=function(a,b){typeof b!=="number"||b===0||isNaN(b)||(b=Math.abs(b),a.vm=Math.min(b-b/10,a.vm))};Fx.prototype.Lh=function(){this.yb&&Yc(this.yb,function(a){Gx(this,a.v)},this);this.G.Lh(this.Jo,this.vm,[])};var Jx=function(a,b){var c=(c=Dx().Jj[b])?c.apply(null,[]):null;R(c!=null,"Type "+b+" is not a valid VALUE type");a.G=c;a.dataType=b;Hx(a)&&(b={},Gb(b,["maxAlternation"],1),Gb(b,["slantedText"],!1),Xg(a.options,1,b),a.Ml());b=a.Vi();if(a.options.O("explorer")&&(!a.options.O("explorer.axis")||a.options.Ta("explorer.axis."+b))||a.sf!=null&&a.sf<0)a.sf=-1;c.init(a.options,a.sf);a.minValue=c.O(a.options,"minValue");a.maxValue=c.O(a.options,"maxValue");a.kh=a.options.O("baseline",Bo.vAxis.gridlines.baseline);a.Kk=a.kh!==void 0&&a.kh!=="auto"?a.kh:a.Kk||c.An();Ix(a)},Ix=function(a){var b=a.options.O("ticks");Array.isArray(b)&&(a.yb=b);a.yb&&(a.yb=ad(a.yb,function(c){var d={};d.v=c.v!==void 0?c.v:c;typeof c.f==="string"&&(d.f=c.f);return d}),a.yb.length>0&&(rd(a.yb,function(c,d){return a.G.Xm(c.v,d.v)}),a.minValue==null&&(a.minValue=a.yb[0].v),a.maxValue==null&&(a.maxValue=Wc(a.yb).v)))},Lx=function(a){a.gk=Y(a.options,"viewWindowMode",a.gk,Nj);var b=a.G;if(a.type==="value"){var c=b.O(a.options,"viewWindow.numericMin");typeof c!=="number"&&(c=b.aa(b.O(a.options,"viewWindow.min")));var d=b.O(a.options,"viewWindow.numericMax");typeof d!=="number"&&(d=b.aa(b.O(a.options,"viewWindow.max")));c!=null&&(a.M.min=c);d!=null&&(a.M.max=d)}else a.M.min=hh(a.options,"viewWindow.min",a.M.min),a.M.max=hh(a.options,"viewWindow.max",a.M.max),a.M.max=Math.max(a.M.min+1,a.M.max);a.M.min>a.M.max&&(c=a.M.min,a.M.min=a.M.max,a.M.max=c);a.type==="value"&&(a.M.min!==-Infinity&&(c=a.M.min,c!=null&&(b.dd=c)),a.M.max!==Infinity&&(c=a.M.max,c!=null&&(b.cd=c)),Kx(a))},Mx=function(a){if(a.type==="value"&&!a.G)throw Error("Axis type/data type mismatch for "+a.Yu);},Rx=function(a,b,c,d,e){a.Wa=c+(a.direction===1?.5:-.5);a.yi=b-1;a.Za=c+b*a.direction;b=a.cq();a.kb=d;a.zb=e;a.type!=="value"?d=Nx(a,a.yi+1):(a.kh!=null&&a.kh!=="auto"&&a.ba(a.G.aa(a.kh)),a.minValue!=null&&a.ba(a.G.aa(a.minValue)),a.maxValue!=null&&a.ba(a.G.aa(a.maxValue)),Ox(a),d=Hx(a)?Px(a):Qx(a));return{title:a.title,name:a.Rq(),type:a.type,Xc:a.Xc,dataType:a.dataType,Mi:a.Mi,Wa:a.Wa,Za:a.Za,number:{Ob:a.vs.bind(a),dh:a.Qe.bind(a)},position:{Ob:a.Um.bind(a),dh:a.Zp.bind(a)},Dd:b,ha:d.ha,gridlines:d.gridlines,text:d.ca,M:a.G?{min:a.G.dd,max:a.G.cd}:{min:a.M.min,max:a.M.max}}},Nx=function(a,b){var c=a.j.N;a.M.min===-Infinity&&(a.M.min=Math.min(0,a.M.max-1));a.M.max===Infinity&&(a.M.max=Math.max(c.length,a.M.min+1));a.M.max=Math.max(a.M.min+1,a.M.max);var d=a.M.max-a.M.min;a.Ru&&(d=Math.min(d,Math.floor((b+1)/2)));a.type==="categorypoint"&&(d=Math.max(1,d-1));R(d>0);a.fk= Sx(a);a.Ad=a.yi/d;R(a.Ad!==0);var e=Tx(a);b=xi(c.length,function(f){var g=e.Sa(c[f].If[0]),h=f-a.fk;return{T:c[f].data,J:a.hb(f),text:g,isVisible:h>=0&&h<=d,optional:!0}});return{gridlines:[],ha:null,ca:a.xh(b,null),da:[]}},Tx=function(a){if(a.G){if(Hx(a)){var b=fx(a.options,!1,0,function(d){return a.hb(d)},a.j.Z);Ux(a,b,0);return new uh({pattern:8})}b=ad(a.yb,function(d){return d.v});b=ww(b);var c=Vx(a);zw(c,b);return c.ff()}return{Sa:function(d){return d}}},Px=function(a){function b(z,E){return function P(){var M,H,O,W,ia;return Ha(P,function(xa){switch(xa.tb){case 1:xa.Qj(2),M=kx(w,z,E,x),H=null,O=function(){C.direction=1;return H=M.next().value},W={};case 4:if(!O()){xa.sb(2);break}H.gridlines=ld(H.gridlines);H.ca=ld(H.ca);W.Ul=function(L){return Math.round(L*100)/100};y===-1&&(C.direction=y,Yc(H.gridlines,function(L){return function(K,Sa){K=T(K);H.gridlines[Sa]=K;K.J=(0,L.Ul)(Wx(C,K.J))}}(W)),Yc(H.ca,function(L){return function(K,Sa){K=T(K);H.ca[Sa]=K;K.J=(0,L.Ul)(Wx(C,K.J));K.H=T(K.H);K.H.lines[0]=T(K.H.lines[0]);K.H.lines[0].x=(0,L.Ul)(Wx(C,K.H.lines[0].x))}}(W)));Zc(H.ca,function(L){L.T=c.Qe(L.T.getTime());L.H=T(L.H);var K=T(L.H.lines[0]);L.H.lines[0]=K;r&&(L=I([K.y,K.x]),K.x=L.next().value,K.y=L.next().value)});Zc(H.gridlines,function(L,K){L=T(L);H.gridlines[K]=L;Xx(C,L.J)?L.T=c.Qe(L.T.getTime()-v):(L.isVisible=!1,jd(H.gridlines,L))});sd(H.gridlines,function(L,K){return c.Xm(L.T,K.T)});ia=Ka;return xa.yield(H,7);case 7:ia(xa.Pc);W={Ul:void 0};xa.sb(4);break;case 2:xa.Qi(),xa.sj(0)}})}()}var c=a.G,d=!0,e=!0;a.gk!=="maximized"&&(d=isFinite(a.M.min),e=isFinite(a.M.max));var f=Yx(a),g=f,h=g.min;g=g.max;Zx(a,f);Kx(a);var k=h,l=g;f=Math.abs(g-h);var m=a.vn(),n=a.ha.T,p=n==null?null:c.aa(n);R(a.Wa!=null&&a.Za!=null);n=Math.abs(a.Za-a.Wa);var q=S(a.options.Hc("viewWindow.maxPadding",n))/n;q*=f;d||(h=p!=null&&p<=h&&h-f=g&&g+f>p?p:g+q);f={min:h,max:g};Zx(a,f);Kx(a);rd(a.ti);f=Infinity;for(p=1;p=0?a.sf:-1;S(f);p=a.er;f>=0&&(p=n/(f+1));p!=null&&Gb(m,["gridlines","minStrongLineDistance"],p);Xg(a.options,1,m);var w=fx(a.options,r,v,function(z){return a.hb(z)},a.j.Z),x={ua:a.ua,Ge:a.Ge,yj:a.yj,xl:a.xl,rh:a.direction===1?1:0},y=a.direction,C=a;p=!0;n=null;var D=function(z){a.yb?z=Ux(a,w,v):(z=z||[],z=ad(z,function(E){var J= E.T;J=(Array.isArray(J)?c.aa(J):J.getTime())-v;if(J!=null&&(J=a.hb(J),J!=null&&!isNaN(J)))return{T:E.T,J:J,text:E.H.text,isVisible:E.isVisible,optional:E.optional}}));return z};m=function(z){z=D(z);var E=a.xh(z,null);if(E==null)return!1;Zc(E,function(J){var P=J.H.anchor.x;r&&(P=J.H.anchor.y);J.isVisible&&Xx(C,P)||jd(E,J)});return E};for(var B,A;p;){f=h;p=g;var G=b(h,g);q=null;for(var F=!1;!F&&(q=G.next().value);)if(n=q.gridlines,F=m(q.ca)!==!1)A=a.ol,B=a.Lr;F&&n.length>1&&(d||(B=bd(q.gridlines,function(z,E){var J=c.aa(E.T);R(J!=null);return E.Un||J>k?z:Math.max(z,J)},-Infinity),h=Math.max(h,B)),e||(q=bd(q.gridlines,function(z,E){var J=c.aa(E.T);R(J!=null);return E.Un||J2&&(a.Xc&&(m*=2),w=p/Math.max(1,m+1));w==null&&(w=40,a.Vi()==="horizontal"&&(w*=2));S(w);a.Xc&&(w/=2);c||(e!=null&&e<=g&&g-l=f&&f+l2)for(var D=l.ec,B=[0,1,D.length-1],A=0;A3||typeof C==="number"&&C=2)&&Yc(l.xj||[],function(z){z=z.F();z=tx(b,z);z=cy(a,z);z=Math.round(z*1E4)/1E4;R(z!=null&&!isNaN(z),"Bad tick value for minor gridline.");F[z.toString()]||G.push(z)})}m=ad(f,function(z){var E=Xx(this,S(z.J));return{xt:z,T:z.T,J:z.J,isVisible:E,length:null,m:this.Ge}},a);G.length>0&&(C=ad(G,function(z){return{T:this.Zp(z),J:z,isVisible:!0,length:null,m:this.xl}},a),md(m,C));if(C=$x(a))C.isVisible=Xx(a,C.J);return{gridlines:m,ha:C,ca:g,da:f}},by=function(a,b){var c=[];Yc(b,function(d){var e=d.label,f=d.F(),g=f==null?null:a.G.zl(f);f=tx(a.G,f);f=a.hb(f);if(!isNaN(f)){R(f!=null&&!isNaN(f),"Bad tick value for major gridline.");f=Math.round(f*1E4)/1E4;var h=Xx(a,f);d.ox&&h&&c.push({T:g,J:f,text:e||"",isVisible:h})}});return c},ay=function(a,b){var c=ad(a.yb,function(f){return f.v});c=ww(c);zw(b,c);var d=b.ff(),e=[];Yc(a.yb,function(f){var g=f.v,h=a.G.aa(g);h!=null&&(h=a.hb(h),h!=null&&!isNaN(h)&&Xx(a,h)&&(f=f.f,typeof f!== "string"&&(f=d.Sa(g)),R(typeof f==="string"),e.push({T:g,J:h,text:f,isVisible:!0})))});return e},Vx=function(a,b){b=b===void 0?{}:b;var c=a.options;a=new yw;b={pattern:c.Ta(["format","format.pattern"]),fractionDigits:c.xa(["format.fractionDigits","formatOptions.fractionDigits"]),significantDigits:b.Uj||c.xa(["format.significantDigits"]),scaleFactor:c.xa(["format.scaleFactor","formatOptions.scaleFactor","formatter.scaleFactor"]),prefix:c.Ta(["format.prefix","formatOptions.prefix","formatter.prefix"]),suffix:c.Ta(["format.suffix","formatOptions.suffix","formatter.suffix"]),decimalSymbol:c.Ta(["format.decimalSymbol"]),groupingSymbol:c.Ta(["format.groupingSymbol"]),negativeColor:c.Ta(["format.negativeColor"]),negativeParens:c.Ta(["format.negativeParens"])};a.Lq=b;a.ie=!1;b=c.xa(["format.numDecimals","formatter.numDecimals","formatOptions.numDecimals"]);typeof b==="number"&&(a.Fg=b,a.ie=!0,zw(a,b));b=c.xa(["format.maxNumDecimals","formatter.maxNumDecimals","formatOptions.maxNumDecimals"]);typeof b=== "number"&&zw(a,b);var d=c.xa(["format.minNumDecimals","formatter.minNumDecimals","formatOptions.minNumDecimals"]);typeof d==="number"&&(a.Fg=d,a.ie=!0);d=c.xa(["format.numSignificantDigits","formatter.numSignificantDigits","formatOptions.numSignificantDigits"]);typeof d==="number"&&(a.Vh=d,a.ie=!0);if(d=c.O(["format.unit","formatter.unit","formatOptions.unit"]))a.Mf={symbol:d.symbol,position:d.position,usePadding:d.usePadding},a.ie=!0;c=c.O(["format.useMagnitudes","formatter.useMagnitudes","formatOptions.useMagnitudes"]);c!=null&&(d=a.dz.bind(a),c==="long"&&(d=a.cz.bind(a)),d(typeof b==="number"?b:5));return a},$x=function(a){var b=null;a.type==="value"&&a.ha&&(b={T:a.ha.T,J:a.ha.J,isVisible:!0,length:null,m:a.av});return b},Ox=function(a){if(a.yb){var b=Infinity,c=-Infinity;Yc(a.yb,function(e){e=this.G.aa(e.v);b=Math.min(b,e);c=Math.max(c,e);this.ba(e)},a);if(a.yb.length>1){var d=a.G.cd;b<=a.G.dd&&!isFinite(a.M.min)&&(a.M.min=b);c>=d&&!isFinite(a.M.max)&&(a.M.max=c)}}},Yx=function(a){var b=isFinite(a.M.min)?a.M.min:a.G.dd;isFinite(b)||(b=0);var c=isFinite(a.M.max)?a.M.max:a.G.cd;isFinite(c)||(c=1);if(b===c){if(Hx(a)){a=new Date(b);a=aj([a.getMilliseconds(),a.getSeconds(),a.getMinutes(),a.getHours(),a.getDate()-1,a.getMonth(),a.getFullYear()]);var d=[1,1E3,6E4,36E5,864E5,26784E5];a=ac&&(c=I([c,b]),b=c.next().value,c=c.next().value);return{min:b,max:c}},Zx=function(a,b){R(typeof b.min==="number");R(typeof b.max==="number");var c=a.G,d=b.min;d!=null&&(c.dd=d);c=a.G;d=b.max;d!=null&&(c.cd=d);a.M=b;a.Ad=a.yi/Math.max(1,b.max-b.min);R(a.Ad!==0);b.min!==Infinity&&(a.fk=b.min)},Kx=function(a){var b=a.Kk==null?null:a.G.aa(a.Kk);R(b==null||typeof b==="number"&&isFinite(b));a.G.ws=b;if(b!=null){var c=a.hb(b);isNaN(c)&&(c=Infinity);a.ha={T:a.G.Qe(b),J:c,isVisible:!0}}else a.ha={T:null,J:Infinity,isVisible:!1}};Fx.prototype.ba=function(a){this.type==="value"&&a!=null&&(!this.rt||a>=0)&&(this.G.ba(a),this.ti.push(a))};var dy=function(a){if(a.type==="value"){var b=a.G,c=b.dd,d=b.cd,e=(d-c)*.01;c>0&&a.M.min===-Infinity&&(c=Math.max(c-e,0),c!=null&&(b.dd=c));d<0&&a.M.max===Infinity&&(a=Math.min(d+e,0),a!=null&&(b.cd=a))}};Fx.prototype.hb=function(a){if(a==null||this.Ad===0)return null;R(!isNaN(this.Ad));R(this.Wa!=null);a=this.Wa+(a-this.fk)*this.direction*this.Ad;R(!isNaN(a));return a};var cy=function(a,b){a=a.hb(b);if(a==null)throw Error("null position for value of '"+b+"'");return a};Fx.prototype.xk=function(a){if(a==null||this.Ad===0)return null;R(this.Wa!=null);a=(a-this.Wa)*this.direction/this.Ad+this.fk;R(!isNaN(a));return a};Fx.prototype.Zp=function(a){a=this.xk(a);return a==null?null:this.Qe(a)};Fx.prototype.Um=function(a){a=this.vs(a);return a==null?null:this.hb(a)};var ey=function(a,b){a=a.Um(b);if(a==null)throw Error("null position for value of '"+b+"'");return a},Wx=function(a,b){R(a.Wa!=null);return b==null?null:2*a.Wa-b},fy=function(a,b){if(isNaN(b))return!0;R(a.Za!=null);return b*a.direction>a.Za*a.direction},gy=function(a,b){if(isNaN(b))return!0;R(a.Wa!=null);return b*a.direction=a.M.min&&b<=a.M.max:b>=Math.floor(a.M.min)&&b1?1:d;for(var f=[],g=0;gh||l.Pe===0)k=ty(this,c),l=null}else k=ty(this,c);else this.Wo?k=ty(this,c):l=py(g);var m=Zp(c,f,this.title.l,this.j.chartArea.width,Infinity),n=this.xd,p=Math.max(n,Math.round(d/1.618)),q=Math.max(n,Math.round(d/3.236));f=function(){if(k==null)throw Error("optimisticSlantedTicks is null");return{key:"ticks",min:k.minHeight+n,max:k.maxHeight+n,va:[p-n]}};var r=[];r.push({key:"bottom-space",min:n,va:[Infinity]});m.lines.length>0&&r.push({key:"title",min:e+n,va:[Infinity]});var v=this.kb.l.fontSize;this.kb.Vd()==="bottom"&&r.push({key:"legend",min:v+this.xd,va:[Infinity]});this.zb.Vd()=== "bottom"&&r.push({key:"colorBar",min:this.zb.ac()+n,va:[Infinity]});v=r.length;l&&l.Pe>0?r.push({key:"ticks",min:d+n,va:[p-n]}):k&&r.push(f());var w=r.length;if(l)for(var x=1;xh&&(C=l=null,k=ty(this,c),r[v]=f(),r=Di(r,0,w,d,void 0),e=Ci(r,this.j.height-this.j.chartArea.bottom))}this.dc=this.j.chartArea.bottom;y=e.ticks||[];if(y.length>0){for(g=1;g0)for(b=Zp(b,c,a.title.l,a.j.chartArea.width,d.length),a.title.fa=b.Ha?c:"",a.title.lines=[],c=0;c0&&(a.dc+=c[0],a.kb.Cf(new Lk(a.dc-b,a.j.chartArea.right,a.dc,a.j.chartArea.left)))},xy= function(a){var b=a.Jm.colorBar||[];b.length>0&&(a.dc+=b[0],b=new Lk(a.dc-a.zb.ac(),a.j.chartArea.right,a.dc,a.j.chartArea.left),a.zb.Cf(b))},ty=function(a,b){var c=a.ua,d=c.fontSize,e=Math.sin(a.dm%Math.PI),f=Math.cos(a.dm%Math.PI),g=function(m){m=b(m.text,c).width;return Math.ceil(Math.abs(m*e)+Math.abs(d*f))},h=a.Be;if(!h)if(a.da.length<2)h=1;else{h=a.da[0].J;var k=a.da[1].J;R(h!=null&&k!=null);h=Math.ceil((d+a.xd)/e/Math.abs(k-h))}for(var l=k=0;l180?"start":"end",Ia:"center",fa:k.Ha?h.text:"",anchor:new Bp(h.J,c)};k.lines.length>0&&l.lines.push({x:0,y:0,length:d,text:k.lines[0]});g.push({T:h.T,isVisible:h.isVisible,optional:h.optional,H:l})}return g};t=sy.prototype;t.aq=function(){var a=this;if(this.index===0){var b=this.j.Z,c=this.ua.fontSize,d=new iy(this.j.width,this.da,this.Nk,this.ul,this.co,this.Be,this.Vj,this.hs,this.Np,function(q,r,v){return Zp(b,q,a.ua,r,v)}),e,f=this.yt;this.hc==="in"&&(e=py(d));var g=this.xd,h=Math.max(this.xd,Math.round(c/3.236)),k=Math.max(this.xd,Math.round(c/1.618));k=this.type==="value"?h:k;var l=Math.max(g,Math.round(c/3.236));if(this.type==="value")if(f==="high"){var m="start";var n=h}else m="end",n=-h;else m="center",n=0;f=[];f.push({key:"top-space",min:g,va:[Infinity]});if(e)for(h=0;h0&&e!=null){for(c=1;c0?d[0].angle:0;e&&(e>0?b(d,360- e):b(d,-e));var f=[],g=[];return dd(d,function(h,k){var l=Dv(h);if(!l)return!0;h=Math.round(h.l.fontSize/4);l.expand(new Lk(0,h,0,h));h=function(m){return Mk(l,m)};if(ed(f,h))return c||a.ca[k].optional?(a.ca[k].isVisible=!1,!0):!1;if(c||a.ca[k].optional){if(ed(g,h))return a.ca[k].isVisible=!1,f.length===0;g.push(l)}else f.push(l);return!0})};t.vn=function(){return{reversed:this.direction===-1,he:this.j.chartArea.left,Se:this.j.chartArea.right,orientation:this.Vi()}};t.Vi=function(){return"horizontal"};t.cq=function(){return this.index===0?{J:this.j.chartArea.bottom,direction:-1}:{J:this.j.chartArea.top,direction:1}};var yy=function(){px.call(this);this.Kv=0};u(yy,px);t=yy.prototype;t.An=function(){return 0};t.init=function(a,b){px.prototype.init.call(this,a,b);this.wa=null;this.Lj=hh(a,"formatOptions.scaleFactor",1)};t.kf=function(){var a=this.format;a={pattern:a,fractionDigits:a?null:this.Kv,scaleFactor:this.Lj,prefix:this.options.Ta("formatOptions.prefix"),suffix:this.options.Ta("formatOptions.suffix"),significantDigits:this.options.gj("formatOptions.significantDigits")};this.wa=new ai(a)};t.O=function(a,b){return a.xa(b)};t.tp=function(a){return Cs(a)};t.zl=function(a){return a};Dx().Jj.timeofday=function(){return new Ex};Dx().Jj.date=function(){return new vx(xx,3,yx)};Dx().Jj.datetime=function(){return new vx(zx,3,Ax)};Dx().Jj.number=function(){return new yy};function zy(a,b,c){return a.left<=b.right+c&&b.left<=a.right+c&&a.top<=b.bottom+c&&b.top<=a.bottom+c}var Ay=function(a,b,c,d,e,f){Fx.call(this,a,b,kd(["vAxes."+d,"vAxis"],c),d,e,f);this.type==="value"&&(this.direction=-this.direction);this.Ml()};u(Ay,Fx);Ay.prototype.Ml=function(){this.ul=lh(this.options,"maxTextLines",3)};Ay.prototype.Rq=function(){return"vAxis#"+this.index};Ay.prototype.Sm=function(a,b){var c=this.j.chartArea;return Rx(this,c.height,this.direction===1?c.top:c.bottom,a,b)};var By=function(a){var b=a.j.Z;return a.da.reduce(function(c,d){return Math.max(c,b(d.text,a.ua).width)},0)},Cy=function(a){var b=a.j.Z,c=By(a);a=b("...",a.ua).width;return Math.min(a,c)};Ay.prototype.bq=function(){var a=this,b=this.j.Z,c=this.ua.fontSize,d=this.title.l.fontSize,e=this.j.uh==="out"?this.title.text:"",f=Zp(b,e,this.title.l,this.j.chartArea.height,Infinity),g=this.xd,h=By(this),k=Cy(this),l=[];this.hc==="out"?l.push({key:"right-space",min:g,va:[c-g]}):l.push({key:"right-space",min:0,va:[Infinity]});f.lines.length>0&&l.push({key:"title",min:d+g,va:[Infinity]});this.hc==="out"&&l.push({key:"ticks",min:k+g,max:h+g,va:[Infinity]});for(c=1;c0)for(b=Zp(b,e,this.title.l,d.height,f.length),this.index===1&&b.lines.reverse(),this.title.fa=b.Ha?e:"",this.title.lines=[],e=0;e=0&&e.oa(b,l)||(l=null);e.F(b,k)!=null&&(l={text:e.oa(b,k),zt:l,rowIndex:b},Y(a.options,"annotation."+k+".style",d,ek)==="line"?g.line.push(l):g.zf.push(l))}return g},Ny=function(a,b,c,d,e,f,g,h,k,l,m,n,p,q,r,v){var w=a.Yb.De(),x=l.length,y=[[64,64,64],[128,128,128],[255,255,255]];r=r==null?!0:r;(e=e==="bars"||e==="steppedArea")&&d&&(g==="vertical"?c=Math.floor(d.top+d.height/2):b=Math.floor(d.left+d.width/ 2));if(g==="horizontal"&&k===1||g==="vertical"&&h===1)p*=-1;var C=g==="horizontal"?k===1?"bottom":"top":h===1?"right":"left";R(b!=null&&c!=null);var D=b,B=c-p;g==="vertical"&&(D=b-p,B=c);var A=-p,G=!1,F=p+m.fontSize*x;c-FM.width-4)if(L.heightO.fontSize/3)P=H,Sa=["..."],W=Math.floor(M.Gh().y),K.Ia="center",K.Lf=!0;else{P=null;break a}K.lines=[];if(Sa.length)for(H=0,O=Sa.length,ia=0;ia=a.Oc[a.Oc.length-1])return a.jf[a.jf.length-1];if(b<=a.Oc[0])return a.jf[0];var c=pd(a.Oc,b);if(c>=0)return a.jf[c];var d=-c-2;c=-c-1;return Ag(a.jf[c],a.jf[d],(b-a.Oc[d])/ (a.Oc[c]-a.Oc[d]))},Wy=function(a,b){b&&b.length!==0?b.length===1&&(b=[Uy[0],b[0]]):b=a&&a.length===3?Vy:Uy;R(Array.isArray(b));if(!a||a.length<2)return{values:null,colors:[Wc(b)]};var c=a[0],d=a[a.length-1],e=d-c;if(e===0)return{values:[d],colors:[Wc(b)]};if(a.length===2)for(a=[],d=e/(b.length-1),e=0;ea.lp)throw Error("Not enough space for labels. Need: "+b+"; got: "+a.lp);a.Ag.sort(function(f,g){var h=f.hn,k=g.hn;return h===k?f.index>g.index?1:0:h>k?1:-1});b=0;for(c=a.Ag.length;be[0].Bg){for(f=0;f0;){if(c>0&&this.Qa.length===c){c=!1;break a}var h= [mz(this,f,g,e)];for(var k=1;k1}c=!0}if(c)break}this.We&&(this.Lo=Math.round((this.Y.top+this.Y.bottom-this.l.fontSize)/2),this.Pg=this.Y.right-this.l.fontSize,this.Qg=this.Pg-this.Ri-this.l.fontSize,this.To&&(a=kz(this,this.Qa.length),this.Qg-=a+this.Ri))}a=0;c=b=null;if(this.Qa&&this.Qa.length>0)if(this.Qa.length>1&&(a= this.Qb0;d=a0;){f=qz(a,c,e);a.Qa.push(f);for(f=0;c[f]!==void 0&&c[f].length!== 0;)++f;g=g.slice(f);c=oz(a,g,d);e=e.slice(f)}a.We&&(a.Lo=Math.round(a.Y.bottom-a.l.fontSize),a.Qg=a.Y.left,a.Pg=a.Qg+a.l.fontSize+a.Ri,a.To&&(d=kz(a,a.Qa.length),a.Pg+=d+a.Ri))}else a.Qa=[qz(a,c,e)];else a.Qa=[rz(a,g,c,e)]},oz=function(a,b,c){var d=a.l.fontSize;a=sz(a,b,d+Math.round(d/1.618),d+Math.round(d/3.236));return Ci(a,c)},uz=function(a,b){var c=Wd(a.C.Ea);b=a.C.h[b];a=b.points.map(function(d){return Oo(d)?null:new U(d.o.x,d.o.y)});b=Li(a,c.Za,b.Jc);return b!==null?b:tz(a,c.Za)},tz=function(a,b){a=a.filter(function(c){return c!=null});b=-(pd(a,b,function(c,d){return qd(c,d.x)})+1);return(a=gd(a.slice(0,b),function(c){return c.y!==null}))?a.y:null},rz=function(a,b,c,d){for(var e=a.Y.right-a.Y.left,f=Math.round(a.Y.left),g=[],h=[],k=a.C.xg==="dive",l=0,m=0;m0&&(l+=k),r.H.lines.push({x:d,y:l,length:e,text:q.lines[v]});r.index=p.index;l+=h;f.push(r)}}b=Math.round(a.Y.top);a.We||(g=l-g,c=a.Y.bottom-a.Y.top,a.rh==="end"?b+=c-g:a.rh==="center"&&(b+=Math.floor((c-g)/2)));for(a=0;a1&&b[c].length<1},nz=function(a,b){var c=a.Y.bottom-a.Y.top,d=a.l.fontSize,e=c-a.ri*d,f=a.ri>1?e/(a.ri-1):0,g=(c-((d+f)*b.length-f))/2,h=[];b.forEach(function(k){var l=Math.round(g);k.forEach(function(m){m.H.anchor.y+=l;m.pa.sa.top+=l});g+=d+f;md(h,k)});return h},lz=function(a,b,c){var d=Math.min(a.C.width*(2-1.618)/2,c);if(d0?g:0),1),q=p.lines.length>0?p.lines[0]:"",r=a.Z(q,a.l).width,v=[{x:k+f,y:0,length:r,text:q}],w={};w.id=n.id;w.H={text:n.text,l:a.l,Cc:null,lines:q?v:[],anchor:new Bp(0,l),Ua:"start",Ia:"start",fa:p.Ha?n.text:"",angle:0};w.isVisible=!0;w.pa={};w.pa.m=n.m.clone();a.l.gb&&w.pa.m.gd(a.l.gb,1);w.pa.sa=new Nk(k,l,a.vg,a.dl);w.index=n.index;h.push(w);k+=r+f+g}b=a.Y.left;d||(d=k-g,a.rh==="end"?b+=e-d:a.rh==="center"&&(b+=Math.floor((e-d)/2)));for(a=0;a=d);return c.map(function(f,g){var h=this.Z(f.text,this.l).width+d;f=Math.min(b,h);h-=f;g>0&&(f+=e);return{min:f,va:[h]}},a)},kz=function(a,b){for(var c="0";b>=10;)c+="0",b/=10;return a.Z(c+"/"+c,a.Bs).width};var wz=function(){},gp=function(a,b,c){b=a.h[b];return b.rb&&b.As!==void 0?(a=a.h[b.As].points[c],a=a!=null?a.bb.d:a,a!=null?pd(b.points,a,function(d,e){return d-e.bb.d}):c):c};wz.prototype.Rk=function(a){var b=a.ia;a=a.Aa;var c=gp(this,b,a);return this.h[b].points[c].Ja.Vf||(this.N[c]?this.N[a].If[0]:null)};var on=function(a,b){var c=b.ia;b=gp(a,c,b.Aa);a=a.h[c].points[b].Ja.Ue||a.h[c].title;return a==null?null:a};wz.prototype.wn=function(a){return a.Aa};wz.prototype.xn=function(a){return{row:a.Aa,column:this.h[a.ia].mf}};wz.prototype.Tk=function(a){var b=this.Nd[a.column].ea;return b==null?null:{ia:b,Aa:this.ve[a.row]}};wz.prototype.Xi=function(a,b){return this.h[a].points[b].Ja};var xz=function(a,b,c,d,e){this.ja=a;this.options=b;this.Z=c;this.zb=this.kb=null;this.V=a;a=this.j=this.lq();a.Z=c;a.width=d;a.height=e;a.K=Y(b,"type","none",Jj);a.xe=Y(b,"fontName");a.Od=lh(b,"fontSize",Math.round(Math.pow((a.width+a.height)*2,1/3)));a.Ni=Y(b,"seriesType","line",Kj);a.Mb=Z(b,"enableInteractivity",!0);a.uf=Z(b,"tooltip.isHtml");a.eh=rh(b,"tooltip.boxStyle");a.Yl=Y(b,"selectionMode","single",Vj);a.Ht=Z(b,"legend.newLegend");a.Lm=rh(b,"backgroundColor");a.eq=rh(b,"chartArea.backgroundColor");c=a.eq;d=a.Lm;c=Mg(c)&&c.fillOpacity>=1?c.fill:Mg(d)&&d.fillOpacity>=1?Mg(c)?Ag(c.fill,d.fill,c.fillOpacity):d.fill:null;a.pk=c;a.bv=ph(b,"baselineColor","");a.gw=ph(b,"gridlineColor","");a.wg=a.pk||"";c=Y(b,"title");a.gi=Y(b,"titlePosition","out",Sj);d=sh(b,"titleTextStyle",{fb:a.xe,fontSize:a.Od,gb:a.gi==="in"?a.wg:"none"});a.title={text:c,l:d,Cc:null,lines:[],Ua:"start",Ia:"end",fa:"",anchor:null,angle:0};a.uh=Y(b,"axisTitlesPosition","out",Sj);a.JB=Z(b,"is3D");a.Yd=Z(b,"isRtl",!1);a.QB=Z(b,"shouldHighlightSelection",!0);a.Jc=Z(b,"interpolateNulls");a.xg=Y(b,"interactivityModel","default",Zj);this.pq()};t=xz.prototype;t.lq=function(){return new wz};t.De=function(){return this.j};t.init=function(a,b){var c=this,d=Infinity;if(b!=null){var e=this.options.O("async",null);d=typeof e==="number"?e:(e=Z(this.options,"async",!1))?100:Infinity}var f=kd([this.kv.bind(this)],this.ij()),g=a(function(){for(var h=Date.now(),k=0;f.length>0&&k<=d;)(k=f.shift()())&&(f=kd(k,f)),k=Date.now()-h;if(f.length===0){if(c.j.xg==="dive"&&(!c.j.xb||c.j.xb.line!==c.j.h.length))throw Error("DIVE interactivity model is only supported when all series are of type line.");b&&b(c)}else setTimeout(g,0)});g()};t.ij=function(){var a=this,b;return[function(){b=a.De()},function(){var c=a.nd&&a.nd.Md==="number"?null:a.na[0]!=null&&a.na[1]!=null?"top":a.na[1]!=null?"left":"right",d=a.nd&&a.nd.Md==="number"?"top":null,e=null,f=b.K;!b.ab||f!=="pie"&&f!=="scatter"?b.Ht&&f!=="pie"&&f!=="bubble"&&(e=2):e=2;e=a.options.xa("legend.iconAspectRatio")||e;a.kb=new hz(b,a.options,c,e);a.zb=new az(a.options,d,b.xe,b.Od,b.wg,b.Z)},this.lv.bind(this),function(){iz(a.kb);var c=a.j,d=c.title.l.fontSize,e=a.kb.l.fontSize,f=a.kb.Vd(),g=a.zb.l.fontSize,h=a.zb.Vd(),k=c.gi==="out"?c.title.text:"",l=Zp(a.Z,k,c.title.l,c.chartArea.width,Infinity),m=Math.max(2,Math.round(d/3.236)),n=Math.max(2,Math.round(e/1.618)),p=Math.max(2,Math.round(g/1.618));g=[];g.push({key:"bottom-space",min:2,va:[Math.max(2,Math.round(c.Od*1.618))-2]});g.push({key:"top-space",min:0,va:[Infinity]});l.lines.length>0&&g.push({key:"title",min:d+2,va:[]});if(f==="top"){f=a.kb;var q=c.chartArea.width;R(f.ne!=null);for(var r=f.ne,v=lz(f,r,q),w=1;(f.cs===0||f.cs>w)&& v.length0&&(a.kb.ri=k.length,e=d+k[0]-e,d+=xe.apply(null,k),a.kb.Cf(new Lk(e,c.chartArea.right,d,c.chartArea.left)));e=l.colorBar||[];e.length>0&&(d+=e[0],c=new Lk(d-a.zb.ac(),c.chartArea.right,d,c.chartArea.left),a.zb.Cf(c));b.legend=a.kb.define();b.qd=a.zb.define()}]};t.pq=function(){this.V=new or(this.ja);if(this.V.Sb()<2)throw Error("Not enough columns given to draw the requested chart.");};t.Gs=function(){};t.kv=function(){var a=this.j,b=this.options.Hc("chartArea.width",a.width),c=this.options.Hc("chartArea.left",a.width),d=this.options.Hc("chartArea.right",a.width),e=this.options.Hc("chartArea.height",a.height),f=this.options.Hc("chartArea.top",a.height),g=this.options.Hc("chartArea.bottom",a.height),h=a.width,k=a.height,l=h/1.618,m=h-k*(1.618-1),n=k/1.618,p=k-h*(1.618-1);n=Math.round(n>p?n:(n+2*p)/3);d=bz(c,d,b,h,Math.round(l>m?l:(l+2*m)/3));b=d.before;c=d.after;d=d.size;e=bz(f,g,e,k,n);a.chartArea= {left:b,right:c,width:d,top:e.before,bottom:e.after,height:e.size}};var yz=function(a,b,c,d,e){xz.call(this,a,b,c,d,e);this.nd=this.ap=this.hm=this.Bc=this.ta=this.na=this.Fa=this.colors=null;this.Cj=1;this.Rf=this.nf=null;this.Fd=!1};u(yz,xz);var Py=function(a,b){R(a.Bc!=null);return a.Bc[b]};yz.prototype.ij=function(){var a=this,b;return[function(){var c=a.options;b=a.j;b.ab=Z(c,"isDiff");b.ab||b.K!=="scatter"||(b.K="function",Xg(c,1,{pointSize:7,trendlines:{pointsVisible:!1,lineWidth:2},lineWidth:0,orientation:"horizontal",domainAxis:{viewWindowMode:"pretty"}}));var d=c.Ta("tooltip.trigger",Wj);a.ml=d!=="none";d=b;var e=Set;var f=ah(c,eh,[],"focusTarget",["datum"],ak);d.Nb=new e(f);if(b.Nb.has("category")&&b.K!=="function")throw Error("Focus target category is not supported for the chosen chart type, "+ b.K);b.K==="bubble"?a.nd=new Yy(a.V,a.options,a.Z,b):(a.colors=c.O("colors",vo),zz(a));c=b.xb.bars>0||b.xb.area>0||b.xb.steppedArea>0;d=a.options.Ta("isStacked",Lo);d==null&&(d=Z(a.options,"isStacked")?"absolute":"none");b.Cd=c&&d||"none";b.gt=Z(a.options,"showRemoveSeriesButton",!1)},this.wv.bind(this),this.Gs.bind(this),function(){b.K==="histogram"&&zz(a)},this.gx.bind(this),function(){return xz.prototype.ij.call(a)}]};var zz=function(a){var b=a.j,c=a.V,d=b.K==="scatter"?function(){return"scatter"}:b.K==="histogram"?function(){return"bars"}:function(l){return Y(a.options,"series."+l+".type",b.Ni,Kj)};d=b.ab?Az(c,d,b.K):Bz(c,d);a.Rf=d.Rf;b.N=[];b.ve={};for(var e=d.Vc,f={He:0};f.He1E5||Math.abs(H)<.01)?f.format(H):g.format(H)}),k=a.j,l=0,m=k.orientation==="vertical",n=k.h.length,p={tf:0};p.tf"),x=w==="";x&&(w=q.ub.fill);x=nh(a.options,r("opacity",["dataOpacity"]),x?.5:1);var y=lh(a.options,r("pointSize",["pointSize"]),0),C=Z(a.options,r("pointsVisible",["pointsVisible"]),y>0);y<=0&&(y=6);y/=2;y>0&&(y+= 1);var D={};q.columns.data!=null&&(D.data=q.columns.data);var B=lh(a.options,r("lineWidth",["lineWidth"]),2),A=Y(a.options,r("curveType"),"none",ck),G=Z(a.options,r("visibleInLegend"),!1);w=nr(w);v=uo[v];var F=(m?a.na:a.Fa)[0],z=(m?a.Fa:a.na)[q.ma];if(F.type==="value"){p.eg=F.G;p.bp=z.G;F=b.tc(0);p.gn=q.columns.data[0];p.ji=ii;p.pm=ii;z=null;b.Eb()>0&&Ua(b.F(0,0))?(p.ji=d,p.pm=e):z={transform:function(H){return function(O){return tx(H.eg,(0,H.pm)(O))}}(p),inverse:function(H){return function(O){return(0,H.ji)(ux(H.eg,O))}}(p)};var E={min:(0,p.ji)(p.eg.dd),max:(0,p.ji)(p.eg.cd)};v=v(b.Eb(),function(H){return function(O){O=b.F(O,0);O=H.eg.aa(O);return(0,H.ji)(O)}}(p),function(H){return function(O){return H.bp.aa(b.F(O,H.gn))}}(p),{range:E,qf:z,bg:hh(a.options,r("degree"),3)});if(v!==null){z=Y(a.options,r("label"),b.tc(p.gn));F=v.rl?v.rl(F,z).Mc():v.rf;F=Hy(h,F.Uc())||"Trendline "+l;F=Y(a.options,r("title"),F);z=v.data.map(function(H){return function(O){var W=(0,H.pm)(O[0]);return[H.eg.Qe(W),H.bp.Qe(O[1])]}}(p));q.At=k.h.length;E=Og(w.color,B);Gg(E,x);var J=a.options.hj(r("lineDashStyle"));J&&J!=null&&(E.rc=J);J=Ng(w.color);Eg(J,x);var P=Y(a.options,r("labelInLegend"),F);Z(a.options,r("showR2"),!1)&&(P+="\n"+Hy(h,(new En([new In([new Kn("r"),new wn(2)]),new wn(v.r2)])).Uc()));v=a.options.O(r("tooltip"))!==!1;var M=a.options.O(r("pointShape"),{type:"circle"});q={id:q.id+"_trendline",title:F,rb:!0,data:z,dataType:q.dataType,Mb:Z(a.options,r("enableInteractivity",["enableInteractivity"]),!0),bm:v,isVisible:!0,mf:0,columns:D,As:p.tf,Ca:q.Ca,qb:null,color:w,Hi:x,ub:J,la:E,Hd:null,Ci:null,Qm:null,type:"line",kk:hh(a.options,r("zOrder"),0),lineWidth:B,yo:y,Zh:M,Es:12,Xf:A,fm:lh(a.options,r("smoothingFactor",["smoothingFactor"]),1),hk:C,points:[],Zm:[],ma:q.ma,mi:G,qj:P};k.h.push(q)}}}}},Bz=function(a,b){for(var c=[],d=[],e=null,f=null,g=0,h=[],k=new Set,l=a.Sb(),m=!1,n,p=0;p0)throw Error("Unexpected domain column (column #"+p+")");m=!0;e={columns:{},dataType:q};f={ea:null,Ca:d.length};d.push(e)}else if(r==="data"){g===0&&(f=c.length,n=b(f),e={type:n,dataType:q,columns:{}},f={ea:f,Ca:null},c.push(e),g=n==="candlesticks"?4:n==="boxplot"?5:1);g--;if(q!==e.dataType)throw Error("All data columns targeting the same axis must be of the same data type.\n Column #"+p+" is of type "+q+" but expected type is "+e.dataType);n!=="bars"&&n!=="candlesticks"&& n!=="boxplot"||k.add(p)}else if(r==="tooltip"&&e.columns[r])throw Error("Only one column with role 'tooltip' per series is allowed");r!=="domain"&&(m=!1);e.columns[r]=e.columns[r]||[];h.push({ea:f.ea,Ca:f.Ca,role:r,ci:e.columns[r].length});e.columns[r].push(p)}if(g>0)throw Error("Last domain does not have enough data columns (missing "+g+")");a=0;b=d[0].dataType;for(e=0;e0)throw Error("Unexpected domain column (column #"+k+")");f={columns:{},dataType:l};n={ea:null,Ca:e.length};e.push(f)}r!==0||m!=="data"&&m!=="old-data"||(n=d.length,p=b(n),f={type:p,dataType:l,columns:{}},n={ea:n,Ca:null},d.push(f),r=p==="candlesticks"?4:p==="boxplot"?5:m==="old-data"?2:1,p!=="bars"&&p!=="candlesticks"&&p!=="boxplot"||h.add(k));if(m==="data"||m==="old-data")if(r--,l!==f.dataType)throw Error("All data columns targeting the same axis must be of the same data type. Column #"+ (k+" is of type "+l+" but expected type is ")+f.dataType);if(m==="tooltip"&&f.columns[m])throw Error("Only one data column with role 'tooltip' per series is allowed");f.columns[m]=f.columns[m]||[];g.push({ea:n.ea,Ca:n.Ca,role:m,ci:f.columns[m].length});f.columns[m].push(k)}if(r>0)throw Error("Last domain does not have enough data columns (missing "+r+")");a=0;f=e[0].dataType;for(b=0;b0};var Cz=function(a,b,c){var d=c.type,e=c.columns,f=c.Ca,g=a.options,h="series."+b+".",k=d+".",l=e.data||e["old-data"],m=Ub(a.V,l[0]),n=a.V.tc(l[0])||"",p=d==="scatter"?0:2,q=lh(g,[h+"pointSize","pointSize"],d==="scatter"?7:0);var r=Z(g,[h+"pointsVisible","pointsVisible"],d==="line"||d==="area"||d==="scatter"?q>0:!0);q===0&&(q=d==="scatter"?7:6);q/=2;q>0&&(q+=1);b=g.O(h+"color",a.colors[(a.j.ab&&d==="scatter"?Math.floor(b/2):b)%a.colors.length]);b=nr(b);var v=null;if(d==="area"||d==="steppedArea")v= nh(g,[h+"areaOpacity","areaOpacity"]),v=Ng(b.color,v);var w=null;if(d==="candlesticks"){w=new X({stroke:b.color,strokeWidth:2,fill:b.color});var x=new X({stroke:b.color,strokeWidth:2,fill:"#fff"}),y=Z(g,"candlestick.hollowIsRising"),C=y?w:x;w={Ss:rh(g,[h+"candlestick.risingColor","candlestick.risingColor"],y?x:w),Kq:rh(g,[h+"candlestick.fallingColor","candlestick.fallingColor"],C)}}x=null;d==="boxplot"&&(x=new X({stroke:b.color,strokeWidth:2,fill:b.color}),x={sc:rh(g,[h+"boxplot.boxColor","boxplot.boxColor"],x)});p=lh(g,[h+"lineWidth","lineWidth"],p);y=Og(b.color,p);(C=g.hj([h+"lineDashStyle","lineDashStyle"]))&&C!=null&&(y.rc=C);k=lh(g,[h+"dataOpacity",k+"dataOpacity","dataOpacity"],1);C=null;if(d==="scatter"||d==="line"||d==="area")C=g.O([h+"pointShape","pointShape"],{type:"circle"}),typeof C==="string"&&(C={type:C});var D=null;if(a.j.ab&&d==="scatter"){var B=a.Oj(c);k=B?a.options.O("diff.oldData.opacity",.5):a.options.O("diff.newData.opacity",1);B&&(D=!1)}B=d==="steppedArea"?v:Ng(b.color,k);if(a.j.ab)if(d=== "bars"){var A=g.O("diff.oldData.color",wo);A=nr(A);A={background:{ub:Ng(A.color,k)}}}else d==="scatter"&&a.Oj(c)&&(r=!1);else d==="scatter"&&(d="line");var G=Gz(a,e,g,h,b),F=a.options.O(h+"tooltip")!==!1;return{id:a.V.Hh(l[0]),title:n,dataType:c.dataType,isVisible:!0,bm:F,mf:m,columns:e,Ca:f,Mb:Z(g,[h+"enableInteractivity","enableInteractivity"],!0),qb:G,color:b,Hi:k,ub:B,la:y,Hd:v,Zh:C,dg:A,Ci:w,Qm:x,type:d,kk:hh(g,h+"zOrder",0),lineWidth:p,yo:q,Es:12,Xf:Y(g,[h+"curveType","curveType"],"none",ck),fm:lh(g,[h+"smoothingFactor","smoothingFactor"],1),hk:r,points:[],Zm:[],ma:lh(g,[h+"targetAxisIndex","targetAxisIndex"],0),mi:D!=null?D:Z(g,h+"visibleInLegend",!0),qj:Y(g,h+"labelInLegend",n),Sy:Z(g,[h+"stepped","stepped"],!1)}},Gz=function(a,b,c,d,e){var f=b.interval;if(!f)return null;b={cf:[],Xg:[],wk:[],points:[],areas:[],lines:[],Ve:{}};for(var g={},h=function(x,y){return[d+"interval."+x+"."+y,d+"intervals."+y,"interval."+x+"."+y,"intervals."+y]},k=function(x,y){return h(x,y).concat([d+y,y])},l=0;l1&&b.Xg.length===0&&(b.Xg=[b.cf[0],b.cf[b.cf.length-1]]);if(b.Xg.length% 2!==0)throw Error("Stick-intervals must be defined by an even number of columns");if(b.areas.length%2!==0)throw Error("Area-intervals must be defined by an even number of columns");for(var q in g)if(g.hasOwnProperty(q)){a=lh(c,h(q,"lineWidth"));f=nh(c,h(q,"fillOpacity"));l=ph(c,h(q,"color"),"",Xd());l=bp(l,e);a=new X({stroke:l,strokeWidth:a,fill:l,fillOpacity:f});f=lh(c,h(q,"barWidth"));l=lh(c,h(q,"shortBarWidth"));m=lh(c,h(q,"boxWidth"));n=lh(c,h(q,"pointSize"));p=c.Ta(h(q,"style"),Lj);var r=Z(c,k(q,"interpolateNulls")),v=Y(c,k(q,"curveType"),"none",ck),w=lh(c,k(q,"smoothingFactor"),1);a={style:p,m:a,Zu:f,Jy:l,hv:m,gy:n,Jc:r,Xf:v,fm:w};f=g[q];for(l=0;l1?"categorypoint":"category";break b;case "line":case "scatter":case "bars":case "steppedArea":case "candlesticks":case "boxplot":d="category";break b;default:throw Error('Invalid serie type "'+d+'"');}else d="value";this.ta=new b(a,c,["domainAxis"],0,d,"maximized");e[0]=this.ta;break;case "scatter":case "bubble":this.Fa={0:new sy(a,this.options,[],0,"value","pretty")};this.na={0:new Ay(a,this.options,[],0,"value","pretty")};a.orientation==="horizontal"?(this.ta=this.Fa[0],this.Bc=this.na):(this.ta=this.na[0],this.Bc=this.Fa);break;default:throw Error("Invalid chart type");}};var Hz=function(a){var b="line scatter area steppedArea bars candlesticks boxplot".split(" "),c={};b.forEach(function(d,e){c[d]=e});a=a.j.h.reduce(function(d,e){return Math.max(d,c[e.type])},0);return b[a]};yz.prototype.gx=function(){var a=this.j;switch(a.K){case "scatter":case "bubble":if(a.pf==="string")throw Error("X values column cannot be of type string");var b=a.ak[0];if(b==="string")throw Error("Data column(s) cannot be of type string");var c=this.Fa[0],d=this.na[0];if(c.type!=="value")throw Error("The x-axis must be of type value");Jx(c,a.pf);if(d.type!=="value")throw Error("The y-axis must be of type value");Jx(d,b);break;case "function":case "histogram":b=this.ta;a.K==="histogram"&&(c=this.V.Ud(0,"histogramBuckets"),Xg(b.options,1,{ticks:c}));if(b.type==="value"){if(a.pf==="string")throw Error("Domain column cannot be of type string, it should be the X values on a continuous domain axis");Jx(b,a.pf)}Td(this.Bc,function(e,f){var g=a.ak[f];if(g==="string")throw Error("Data column(s) for axis #"+f+" cannot be of type string");Jx(e,g)},this);break;default:throw Error("Invalid chart type");}Td(this.Fa,function(e){Mx(e)});Td(this.na,function(e){Mx(e)})};var Iz=function(a){var b=a.columns.data;if(b)return b[0];a=a.columns["old-data"];R((a==null?void 0:a.length)>0);return a[0]},Jz=function(a){for(var b=a.j,c=a.V,d=a.ta,e=0;e0){p.length===1&&(p=[p[0],p[0]]);h&&(p[0]==null&&(p[0]=h.start),p[p.length-1]==null&&(p[p.length-1]=h.end));if(p[0]==null)throw Error(A+".values must not contain nulls");for(f=1;fq)throw Error(A+".minValue ("+p+") must be at' +\n ' most "+A+".maxValue ('"+q+")");(A=Qi(h,p,q))&&(f=[A.start,A.end])}A=ah(g,eh,[],"colors");A=ah(e,eh,[],"colors",A);g=e.O("one-sided-colors",Uy);e=e.O("two-sided-colors",Vy);A&&A.length!==0?A.length===1&&(A=[g[0],A[0]]):A=f&&f.length===3?e:g;A=Wy(f,A);A=new Sy(A.values,A.colors);c.Ck=A;d.setScale(c.Ck)}else if(c.Md==="string")for(d=0;dA)throw Error("sizeAxis.minSize ("+d+") must be at most sizeAxis.maxSize ("+A+")");g=e.xa("sizeAxis.minValue");h=e.xa("sizeAxis.maxValue");if(g!=null&&h!=null&&g>h)throw Error("sizeAxis.minValue ("+g+") must be at most sizeAxis.maxValue ("+ h+")");f=Qi(f,g,h);e=co(e,"sizeAxis.logScale","sizeAxis.scaleType");e=eo(e,1);d=new Xy(d,A,f,e);c.Vo=d;c.bz&&Yc(c.j.h[0].points,c.Pu,c)}},function(){var c=b.K==="histogram",d=b.xb.bars||b.xb.candlesticks||b.xb.boxplot,e=null!=b.h.find(function(f){return f.qb!=null});(d&&!c&&!a.Fd||e)&&Uz(a)},function(){b.Ea=Ud(a.Fa,function(c){return c.Sm(this.kb,this.zb)},a);b.qa=Ud(a.na,function(c){return c.Sm(this.kb,this.zb)},a);Vz(a)},this.jv.bind(this),this.iy.bind(this),function(){Qy(new Ky(a,a.options))},function(){var c=a.kb.Vd(),d=a.kb.l.fontSize,e=null;c!=="right"&&c!=="labeled"||a.na[1]!=null||(e=new Lk(b.chartArea.top,b.width-d,b.chartArea.bottom,b.chartArea.right+d));c!=="left"||a.na[0]!=null||(e=new Lk(b.chartArea.top,b.chartArea.left-d,b.chartArea.bottom,d));e&&e.right>=e.left&&a.kb.Cf(e)},this.oy.bind(this),function(){a.nd||(Ez(a,a.V),Dz(a),Wz(a))}]};yz.prototype.mv=function(){var a=this.j,b=this.Z,c=(Wd(this.Fa)||Wd(this.na)).title.l,d=Math.max(a.title.l.fontSize,c.fontSize),e=this.kb.l.fontSize,f=this.kb.Vd(),g=this.zb.l.fontSize,h=this.zb.Vd(),k=a.gi==="in"?a.title.text:"",l="",m="";if(a.uh==="in")switch(m=function(y){var C=Zd(y);C.sort(function(D,B){return D>B?1:D0?g.lines[0]:"",v=b(r,a.title.l).width;q=Math.max(q-v-Math.round(Math.max(2,d*1.618)),0);b=Zp(b,l,c,q,1);var w=b.lines.length>0?b.lines[0]:"",x=[];x.push({key:"bottom-space",min:2,va:[Infinity]});(r||w)&&x.push({key:"title",min:d+2,va:[m-2]});f==="in"&&x.push({key:"legend",min:e+2,va:[n-2]});h==="in"&&x.push({key:"colorBar",min:this.zb.ac()+2,va:[p-2]});f=Ci(x,Math.floor(a.chartArea.height/2));d=a.chartArea.top;h=f.title||[];h.length>0&&(d+=h[0],r&&(a.title.lines.push({text:r,x:a.chartArea.left+m,y:d,length:v}),a.title.fa=g.Ha?k:""),w&&(a.jj={text:l,l:c,Cc:null,lines:[],Ua:"end",Ia:"end",fa:b.Ha?l:"",anchor:null,angle:0},a.jj.lines.push({text:w,x:a.chartArea.right-m,y:d,length:q})));c=f.legend||[];c.length>0&&(d+=c[0],this.kb.Cf(new Lk(d-e,a.chartArea.right,d,a.chartArea.left)));e=f.colorBar||[];e.length>0&&(d+=e[0],a=new Lk(d-this.zb.ac(),a.chartArea.right,d,a.chartArea.left),this.zb.Cf(a))};var Lz=function(a,b){var c=a.j;c.ab?Xz(a,b):Yz(a,b,c.Cd)},Uz=function(a){var b=a.ta;if(b.G){var c=a.j.N.filter(function(){return!0}),d=Infinity,e;c.forEach(function(f){f=b.G.aa(f.data);if(f!=null&&e!=null){var g=Math.abs(f-(e||0));g>0&&(d=Math.min(d,g))}e=f},a);isFinite(d)&&(a=d/2,b.ba(b.G.dd-a),b.ba(b.G.cd+a))}},Zz=function(a,b){for(var c=a.j,d=[],e=0;e0?f.positive+=k:f.negative-=k))}}}return d},$z=function(a,b){for(var c=a.j,d=0;d=0;v.Qf=q[w];k||aA(a,r+1);v.og=function(B){return function(A){return B.Vn?A.positive:A.negative}}(v);v.et=function(B){return function(A,G){B.Vn?A.positive=G:A.negative=G}}(v);v.Ys=m[h.ud]&&(0,v.og)(m[h.ud])||1;v.Vl=function(B){return function(A){return A==null?null:A/B.Ys}}(v);w=function(B,A){return function(G,F,z){var E=null;typeof G!=="number"||isNaN(G)||(E=G+(k||g?(0,B.og)(B.Qf):0));l&&(E=(0,B.Vl)(E),z=(0,B.Vl)(z));B.Zo&&(E=B.Gf.G.aa(E),z=B.Gf.G.aa(z));A.Sj&&B.Gf.ba(E);var J;G!=null&&(J=bA(a,B.Te,A.ud,(0,B.og)(B.Qf),B.Vl,!0));F={bb:{ye:A.ud,Yg:F,from:z,to:E,Zf:n,d:p,lj:J}};G==null&&(F.Kc=!0);B.Te.type==="steppedArea"&&(J=B.Ej.length,F.bb.Is=J===0||B.Ej[J-1]==null?null:B.Ej[J-1].bb.to);cA(a,F,B.Te,B.Oh,A.ud);l&&F.Ja&&(F.Ja.content=F.Ja.content+" ("+B.tn.Sa(E-z)+")");B.Ej.push(F);typeof G!=="number"||isNaN(G)||(0,B.et)(B.Qf,(0,B.og)(B.Qf)+G)}}(v,h);var y=k?0:r,C=k||g?(0,v.og)(v.Qf):null;if(g&&!a.j.sg)for(var D= 0;D0?c.F(m-1,D):null;E=m===0||z===null&&!isNaN(z);D=mf){var g=e;e=f;f=g}for(g=0;gc&&l(),b.Zl=new Lk(e,c,f,d)):k===1?(dc&&l(),b.Zl=new Lk(d,h,c,g))};yz.prototype.oy=function(){mA(this);nA(this)};var mA=function(a){var b=a.j;Td(b.qa,function(c,d){oA(a,a.na[d],b.qa[d],a.tx)});Td(b.Ea,function(c,d){oA(a,a.Fa[d],b.Ea[d],a.lx)})},nA=function(a){var b=a.j;Td(b.qa,function(c,d){oA(a,a.na[d],c,function(){return!0})});Td(b.Ea,function(c,d){oA(a,a.Fa[d],c,function(e,f){return pA(a,f)})})},oA=function(a,b,c,d){c.text&&(c.text=c.text.filter(d.bind(a,b)))};yz.prototype.lx=function(a,b){var c=this.j;b=b.H;return b.angle?!0:(b=Dv(b))?a.hc!=="in"||(new Lk(c.chartArea.top,c.chartArea.right,c.chartArea.bottom,c.chartArea.left)).contains(b)?!0:!1:!0};var pA=function(a,b){var c=a.j,d=b.H;if(d.angle)return!0;b=Dv(d);if(!b)return!0;d=Math.ceil(d.l.fontSize/8);var e=new Lk(b.top,b.right+d,b.bottom,b.left-d),f;for(f in c.qa)if(c.qa[Number(f)]!==void 0){var g=Number(f);if(a.na[g].hc==="in"&&!((c.qa[g].text?c.qa[g].text.length:0)<1)){var h=Dv(c.qa[g].text[0].H),k=Dv(Wc(c.qa[g].text).H);if(h||k){if(h&&Mk(e,h)||k&&Mk(e,k))return!1;h?k?(g=Math.min(h.left,k.left),h=Math.max(h.right,k.right)):(g=h.left,h=h.right):(g=k.left,h=k.right);if(Math.abs(b.left-g)< d||Math.abs(b.right-h)0||b.qb.areas.length>0)&&rA(b)};yz.prototype.iy=function(){var a=this;this.j.h.forEach(function(b,c){dA(a,c)})};var rA=function(a){var b={},c=a.qb,d=c.Ve;c.xf=[];for(var e=function(r){r=d[r].style;return r==="area"||r==="line"},f=function(r,v){if(!b[r]){var w=d[r].m.clone(),x=d[r].style,y={};y.Ii=r;y.line=[];x==="area"?(Fg(w,0),y.bottom=[]):Eg(w,0);y.m=w;b[r]=y}b[r].line.push(new ni(v.left,v.top));b[r].bottom&&b[r].bottom.push(new ni(v.left+v.width,v.top+v.height))},g=function(r){var v=b[r];delete b[r];if(v&&v.line.length>1){v.bottom&&v.bottom.reverse();if(d[r].Xf!=="none"){var w=d[r].Xf==="function";r=d[r].fm;v.Zm=ti(v.line,r,w,!1,!1);v.bottom&&(v.cv=ti(v.bottom,r,w,!1,!1))}c.xf.push(v)}},h=0;h=c.je.end&&(f=c.eo);else if(!c.Do||b==null){b=c.Fx;break a}f==null&&(R(c.so!=null),b=ue(b,c.je.start,c.je.end),f=we(c.io,c.eo,(b-c.je.start)/c.Do));b=Math.round(Math.sqrt(f))}return{x:a,y:d,m:e,Bb:b,am:b}};t.xy=function(a,b){var c=sA(this,a.ma,b.d,b.t);c.Ke=tA(this,a,b);return c};t.ty=function(a,b){var c=uA(this,a,b,b.from,b.to);return c?{top:c.top,left:c.left,width:Math.max(.5,c.width),height:Math.max(.5,c.height),Ke:tA(this,a,b)}:null};t.wy=function(a,b){var c=uA(this,a,b,b.Pl,b.Ql),d=uA(this,a,b,b.bo,b.lineTo);if(!c||!d)return null;var e=vA(this,d.left,d.top),f=vA(this,c.width,c.height),g=vA(this,d.width,d.height);g.domain=2;e.domain+=(f.domain-(f.domain%2?3:2))/2;e=wA(this,e.domain,e.target);g=wA(this,g.domain,g.target);d.width=g.x;d.height=g.y;d.left=e.x;d.top=e.y;a=b.Ar?a.Ci.Kq:a.Ci.Ss;Jg(a)&&(a=a.strokeWidth/2,c.height-=2*a,c.width-=2*a,c.left+=a,c.top+=a);c.height=Math.max(c.height,2);c.width=Math.max(c.width,1);return{rect:c,line:d}};t.uy=function(a,b){var c=uA(this,a,b,b.Pl,b.Ql),d=uA(this,a,b,b.Os,b.Ql),e=uA(this,a,b,b.Pl,b.Os);b=uA(this,a,b,b.bo,b.lineTo);if(!(d&&e&&c&&b))return null;var f=vA(this,b.left,b.top),g=vA(this,c.width,c.height),h=vA(this,b.width,b.height);h.domain=2;f.domain+=(g.domain-(g.domain%2?3:2))/2;f=wA(this,f.domain,f.target);h=wA(this,h.domain,h.target);b.width=h.x;b.height=h.y;b.left=f.x;b.top=f.y;a=a.Qm.sc;Jg(a)&&(a=a.strokeWidth/2,c.height-=2*a,c.width-=2*a,c.left+=a,c.top+=a);c.height=Math.max(c.height,2);c.width=Math.max(c.width,1);return{line:b,rect:c,vk:d,lm:e}};t.zy=function(a,b){var c=Py(this,a.ma);b.from==null&&(b.from=c.G.aa(c.ha.T),b.from==null&&(b.from=0));var d=this.ta,e=b.ye;if(this.Fd||d.G){if(b.Zf==null)return null;e=Math.floor(cy(d,b.Zf));var f=Math.floor(cy(d,b.d));d.ba(b.Zf)}else{var g=d.da[e].J||0;f=d.Ad;e=Math.floor(g-d.direction*f/2);f=Math.floor(g+d.direction*f/2)}d.ba(b.d);d=c.hb(b.from);var h=c.hb(b.to);d=wA(this,e,d);g=wA(this,e,h);f=wA(this,f,h);h=[];Z(this.options,"connectSteps",!0)&&b.Is!=null&&(c=c.hb(b.Is),c=wA(this,e,c),h.push(c));h.push(g);h.push(f);return{bar:jp(S(d.x),S(d.y),S(f.x),S(f.y)),outline:h,Ke:tA(this,a,b)}};var uA=function(a,b,c,d,e){var f=a.ta,g=Py(a,b.ma);R(g!=null);R(a.nf!=null);b=a.nf;var h=g.G.aa(g.ha.T);d==null&&(d=h||0);e==null&&(e=h||0);h=e;h=Math.min(cy(g,d),cy(g,h));d=Math.max(cy(g,d),cy(g,e));g=a.j.K==="histogram"?a.mp(g.Ad,Z(a.options,"histogram.hideBucketItems"))?0:1:Math.min(1,.2*(d-h));g===0||Math.floor(h+g)Math.floor(h)?(h=Math.floor(h+g),d=Math.floor(d)):h+=g;g=hh(a.options,"diff.newData.widthFactor",.3);g=c.kx?g:1;if(a.Fd){if(c.Zf==null)return null;g= Math.floor(cy(f,c.Zf));b=Math.floor(cy(f,c.d));f.ba(c.Zf)}else c=xA(a,c),e=g*b.Yo/2,g=b.Go(c-e),b=b.Go(c+e);f.ba(f.xk(g));f.ba(f.xk(b));f=wA(a,g,h);a=wA(a,b,d);return jp(S(f.x),S(f.y),S(a.x),S(a.y))};yz.prototype.sy=function(a,b){var c=Py(this,a.ma);c=c.G.aa(c.ha.T);var d=c!=null?c:0,e=function(k){return k!=null?k:d};c=sA(this,a.ma,b.d,b.t);var f=sA(this,a.ma,b.dv,e(b.ev)),g=sA(this,a.ma,b.fv,e(b.gv)),h=sA(this,a.ma,b.sv,e(b.tv));e=sA(this,a.ma,b.uv,e(b.vv));a=tA(this,a,b);return{x:c.x,y:c.y,Mm:f.x,Nm:f.y,Om:g.x,Pm:g.y,Ek:h.x,Fk:h.y,Gk:e.x,Hk:e.y,Ke:a}};var tA=function(a,b,c){if(!c.lj)return[];var d=a.ta;b=Py(a,b.ma);R(a.nf!=null);var e=a.nf;if(c.Yg>=e.Cj||d.type!=="value"&&c.ye>=d.da.length)return[];var f=xA(a,c),g=e.Go;a.Fd?(d=cy(d,c.d)-cy(d,c.Zf),f-=d/2):d=e.Yo+e.ut;e=[];for(var h=0,k;k=c.lj[h];h++){var l=cy(b,k.Xw),m=cy(b,k.Cx),n=d*k.Qy/2,p=g(f-n);n=g(f+n);p=wA(a,p,Math.min(m,l));l=wA(a,n,Math.max(m,l));l=jp(S(p.x),S(p.y),S(l.x),S(l.y));e.push({rect:l,Ii:k.Ii,m:k.m})}return e},xA=function(a,b){var c=a.ta;R(a.nf!=null);var d=a.nf;c=c.type==="value"?cy(c,b.d):S(c.da&&c.da[b.ye]&&c.da[b.ye].J);if(a.Fd)return c;a=d.Yo;return c-d.Pv+(a+d.ut)*b.Yg+a/2},vA=function(a,b,c){R(!isNaN(b));R(!isNaN(c));switch(a.j.orientation){case "horizontal":return{domain:b,target:c};case "vertical":return{domain:c,target:b};default:throw Error("Invalid orientation.");}},wA=function(a,b,c){R(!isNaN(b));R(!isNaN(c));switch(a.j.orientation){case "horizontal":return{x:b,y:c};case "vertical":return{x:c,y:b};default:throw Error("Invalid orientation.");}},sA=function(a,b,c,d){var e=a.ta;b=Py(a,b);c=e.hb(c);d=b.hb(d);return wA(a,c,d)},eA=function(a,b){a=a.clone();Mg(a)&&a.fill!=="#ffffff"?(Hg(a,new Cg("primarydiagonalstripes",a.fill)),!Jg(a)&&b&&(a.gd(a.fill),Fg(a,1))):Jg(a)&&(a.rc="dash");return a},fA=function(a,b){a=a.clone();Fg(a,a.strokeWidth*b);return a},bA=function(a,b,c,d,e,f){var g=b.qb;if(!g)return null;var h=hA(a,b,c),k=Py(a,b.ma),l=k.Xc,m=k.G.aa.bind(k.G),n=a.V,p=[];a=function(w,x,y,C,D){D=D===void 0?"size":D;var B=g.Ve[w],A=n.F(c,w);A=l?A:m(A);x=n.F(c,x);x=l?x:m(x);A!=null&&x!=null&&(A+=d,x+=d,e&&(A=e(A),x=e(x)),l&&(A=m(A),x=m(x)),f&&(k.ba(A),k.ba(x)),B=B.m,h!=null&&(B=B.clone(),iA(B,h.view([C,""])),y=hh(h,[C+"."+D,D],y)),p.push({Cx:A,Xw:x,Qy:y,Ii:w,m:B}))};for(b=0;b1?1:0,l-n));n=l-m};h();m>f&&(f=m,g=d-f);f-=m;g+=Number(m);h();var n= Fi(10,n);m=Fi(10,m);g=Fi(10,g);f=Fi(10,f);c=c.direction;b=Fi(10,b?(c===-1?g+f:0)+-(f+m)/2:(g-m)/2);c=f+m;c=n<7&&n%2===0||c<7&&c%2===0?function(p){return Math.floor(p)+.5}:function(p){return Math.floor(p+.5)};a.nf={Cj:S(e),Pv:S(b),EB:S(f),FB:S(g),Yo:S(n),ut:S(m),Go:c}},yA=function(a){var b=a.ta,c=a.j.N;c=c.filter(function(){return!0});if(c.length===0)return 0;var d=a.Rf;if(!d||d.size===0)return 0;if(b.type==="value"){d=b.yi;for(var e=null,f=0;f0&&(d=Math.min(d,e)));e=g}return d}return Math.abs(ey(b,1)-ey(b,0))},My=function(a,b,c){var d=a.V;a=a.ta;a.type==="value"&&(b=c&&c.rb?c.data[b][0]:d.F(b,0),b=a.G.aa(b));return b};yz.prototype.mp=function(){return!1};yz.prototype.Wq=function(){return 0};var CA=function(a,b){this.od=a;this.hf=b;this.Or=this.Nr=this.Lc=this.Xb=this.sp=this.Gn=null;this.qc=T(a);var c=a.width!=b.width||a.height!=b.height;!c&&a.chartArea&&b.chartArea&&(c=a.chartArea.width!=b.chartArea.width||a.chartArea.height!=b.chartArea.height||a.chartArea.left!=b.chartArea.left||a.chartArea.top!=b.chartArea.top);this.qc.title&&c&&(this.qc.title.l.opacity=0);this.qc.Ea&&(this.qc.Ea=Ud(this.qc.Ea,T),this.Gn=Ud(a.Ea,function(d,e){return zA(a.Ea[e],b.Ea[e],this.qc.Ea[e],!0,!1,c)},this));this.qc.qa&&(this.qc.qa=Ud(this.qc.qa,T),this.sp=Ud(a.qa,function(d,e){return zA(a.qa[e],b.qa[e],this.qc.qa[e],!1,!0,c)},this));AA(this);BA(this)},zA=function(a,b,c,d,e,f){if(!a||!b)return null;var g=T(a),h=T(a);h.Dd=b.Dd;h.Wa=b.Wa;h.Za=b.Za;c.title&&f&&(c.title.l.opacity=0);if(a.type=="value"&&b.type=="value"&&a.dataType===b.dataType){a.ha&&b.ha&&(h.ha=b.ha,c.ha=T(c.ha));h.number=T(h.number);h.position=T(h.position);c.number=T(c.number);c.position=T(c.position);h.position.Ob=b.position.Ob;if(a.gridlines&& b.gridlines){h.gridlines=ld(h.gridlines);c.gridlines=ld(c.gridlines);f=h.gridlines;for(var k=c.gridlines,l=0;l=p.length?Wc(p):IA(p[q-1],p[q],.5)};a.od.ab?JA(a,m,function(p,q,r,v){return q.jg?p[q.Ie*r+v]:n(p,q.Ie*r+v)}):KA(a,m,function(p,q){return q.jg?p[q.Ie]:n(p,q.Ie)})}},FA=function(a,b,c){var d=a.od.N,e=a.hf.N;if(d&&e)if(d.length==0||e.length== 0)a.qc.N=[],KA(a,[],function(){return null});else{var f=function(l){return b(l.data)},g=[],h=[];if(d.length===e.length)for(var k=0;k0){var k=Math.ceil(e.length/b.length),l=Math.ceil(f.length/b.length);a.od.K=="function"&&(R(Math.floor(e.length/ k)===a.od.N.length),R(Math.floor(f.length/l)===a.hf.N.length));for(var m=0;m=c.top&&b<=c.bottom:!1);return(!d||(c?a>=c.left&&a<=c.right:!1))&&b},PA=function(a,b,c,d,e){a.position&&a.position.Ob&&b.position&&b.position.Ob&&(c.position.Ob=function(f){var g=a.position.Ob(f);f=b.position.Ob(f);return MA(g,f,e)});a.title&&b.title&&c.title.lines.forEach(function(f,g){f.x=MA(a.title.lines[g].x,b.title.lines[g].x,e);f.y=MA(a.title.lines[g].y,b.title.lines[g].y,e)});a.ha&&b.ha&&(c.ha.J=MA(a.ha.J,b.ha.J,e));a.gridlines&&b.gridlines&&c.gridlines.forEach(function(f,g){f.J=MA(a.gridlines[g].J,b.gridlines[g].J,e);f.isVisible=d(f.J,f.J)});a.Dd&&b.Dd&&(c.Dd=NA(a.Dd,b.Dd,e));a.Wa!=null&&b.Wa!=null&&(c.Wa=MA(a.Wa,b.Wa,e));a.Za!=null&&b.Za!=null&&(c.Za=MA(a.Za,b.Za,e));a.text&&b.text&&c.text.forEach(function(f,g){var h=a.text[g];g=b.text[g];if(f){h=h.H;g=g.H;var k=f.H;k&&k.anchor&&(k.anchor.x=MA(h.anchor.x,g.anchor.x,e),k.anchor.y=MA(h.anchor.y,g.anchor.y,e));f.H&&(h=f.H.lines.length>0,f.isVisible=d((h?f.H.lines[0].x:0)+f.H.anchor.x,(h?f.H.lines[0].y:0)+f.H.anchor.y))}})},IA=function(a,b,c){if(!a||!b)return null;var d=T(a);if(a.Kc||b.Kc)d.Kc=!0;if(a.o!==void 0||b.o!==void 0)d.o=MA(a.o||{},b.o||{},c),d.bb=MA(a.bb||{},b.bb||{},c);a.Le!==void 0&&b.Le!==void 0&&(d.Le=MA(a.Le,b.Le,c));a.fe!==void 0&&b.fe!==void 0&&(d.fe=MA(a.fe,b.fe,c));a.l!==void 0&&b.l!==void 0&& a.l!==b.l&&(d.l=T(a.l),d.l.color=Ag(a.l.color,b.l.color,1-c),d.l.opacity=MA(a.l.opacity!==void 0?a.l.opacity:1,b.l.opacity!==void 0?b.l.opacity:1,c));a.ga!=null&&b.ga!=null&&a.ga.labels[0].text===b.ga.labels[0].text?d.ga=MA(a.ga,b.ga,c):delete d.ga;return d},QA=function(a,b){var c=a.qc;if(c.Ea&&a.Gn){var d=function(v,w){return OA(v,w,c.chartArea,!0,!1)};Td(c.Ea,function(v,w){(w=a.Gn[w])&&PA(w[0],w[1],v,d,b)})}if(c.qa&&a.sp){var e=function(v,w){return OA(v,w,c.chartArea,!1,!0)};Td(c.qa,function(v,w){(w=a.sp[w])&&PA(w[0],w[1],v,e,b)})}if(a.Xb&&a.Lc){c.h=[];for(var f=0;f=n?k-1:Math.floor((q-m)/l);var r=p+1-c;Gj(f,q,r,(Number(f.F(q,r))||0)+1);r=this.ja.tc(p)||"Value";r={row:h,column:p,label:{title:g,Vf:g,Ue:r,content:this.ja.oa(h,p),lines:[{title:r,value:this.ja.oa(h,p)||0}]}};a[p-c][q].push(r)}var v=[];for(b=c;bx?1:0}),Hj(f,d-c,"histogramBucketItems",k),Yc(k,function(w,x){v[w.column][w.row]=x});for(a=c;a=0;g--)R(f),Yg(f,e.vc[g]);e=f}}else throw Error("Theme must be a theme name or an options object.");e&&c.push(e)}a=a.type.toLowerCase();Ao[a]&&c.push(Ao[a]);c.push(Bo);return c};YA.prototype.Ym=function(){var a=this,b=nv(this.ib);R(b!=null);var c=ov(this.ib);R(c!=null);var d=this.options;ZA(this,this.ja,d,b.Wi.bind(b),this.width,this.height,function(e){gB(a);e=e.De();var f=new a.Wv(d,a.L,a.dw.bind(a),e);a.Iv={};fk(a.pb);a.pb=new ks(e,a.L,a.oc,a.Ib,a.refresh.bind(a,!0),f);f=new Se(a.width,a.height);var g={fb:e.xe,fontSize:e.Od},h=e.xg,k=e.Nb,l=e.h.length,m=a.Ic?a.Ic.Xa:void 0;R(a.options!=null);R(h!=null);var n=a.options;R(a.K!=="pie");f=new xr(n,f,g,h,k,l,m);a.Ic=f;hB(a);R(c!=null);R(b!=null);R(a.K!=="pie");a.gf=new Vv(c,b);iB(a,e)||(a.C=e,jB(a),kB(a));lB(a);a.Ib.dispatchEvent("ready");a.pb.Xd()})};var lB=function(a){var b=nv(a.ib);setTimeout(function(){if(b&&b.an){var c=b.an();if(c&&a.ja){var d=vv(a.ja);Sc(c,d)}}},0)},aB=function(a,b){switch(b.type){case "line":$A(a,"function","line","horizontal");b.type=null;break;case "area":$A(a,"function","area","horizontal");b.type=null;break;case "columns":$A(a,"function","bars","horizontal");b.type=null;break;case "bars":$A(a,"function","bars","vertical");b.type=null;break;case "scatter":$A(a,"scatter");b.type=null;break;case "pie":$A(a,"pie"),b.type= null}a=a.K;a==="none"&&(a=null);var c=b.type||"none";c==="none"&&(c=null);if(!a&&!c)throw Error("Unspecified chart type.");if(a&&c&&a!==c)throw Error("Incompatible chart types.");b.type=a||c},bB=function(a,b){if(b.type==="function"){a=a.Ni;a==="none"&&(a=null);var c=b.seriesType||"none";c==="none"&&(c=null);if(a&&c&&a!==c)throw Error("Incompatible default series types.");b.seriesType=a||c}},cB=function(a){a.hAxis=a.hAxis||{};a.vAxis=a.vAxis||{};var b=a.hAxis,c=a.vAxis,d=null;switch(a.type){case "scatter":d= c;break;case "function":a.targetAxis=a.targetAxis||{},d=a.targetAxis}d&&(mB(a,"min",d,"minValue"),mB(a,"max",d,"maxValue"),mB(a,"logScale",d,"logScale"));b&&(mB(a,"logScaleX",b,"logScale"),mB(a,"titleX",b,"title"));c&&mB(a,"titleY",c,"title");a.smoothLine&&a.curveType===void 0&&(a.curveType="function");mB(a,"lineSize",a,"lineWidth");mB(a,"reverseAxis",a,"reverseCategories");a.chartArea=a.chartArea||{};mB(a,"axisBackgroundColor",a.chartArea,"backgroundColor")},dB=function(a){nB(a,"titleColor","titleFontSize","titleTextStyle");nB(a,"legendTextColor","legendFontSize","legendTextStyle");oB(a.hAxis);var b=a.hAxes||{},c;for(c in b)b.hasOwnProperty(c)&&oB(b[c]);b=a.vAxes||{};oB(a.vAxis);for(var d in b)b.hasOwnProperty(d)&&oB(b[d]);d=a.tooltip;d==null&&(d={},a.tooltip=d);nB(a,"tooltipTextColor","tooltipFontSize","tooltipTextStyle");mB(a,"tooltipTextStyle",d,"textStyle");mB(a,"tooltipText",d,"text");mB(a,"tooltipTrigger",d,"trigger");d.trigger==="hover"&&(d.trigger="focus");d=a.legend;d==null?(d={},a.legend= d):typeof d==="string"&&(b=d,d={},a.legend=d,d.position=b);mB(a,"legendTextStyle",d,"textStyle");d=a.animation;d==null?(d={},a.animation=d):typeof d==="number"&&(b=d*1E3,d={},a.animation=d,d.duration=b);mB(a,"animationEasing",d,"easing")},oB=function(a){if(a!=null){nB(a,"textColor","textFontSize","textStyle");nB(a,"titleColor","titleFontSize","titleTextStyle");a.gridlines=a.gridlines||{};var b=a.gridlines,c=a.numberOfSections;b.count===void 0&&c!==void 0&&typeof c==="number"&&(b.count=c+1);a=a.gridlineColor;b.color===void 0&&a!==void 0&&(b.color=a)}},nB=function(a,b,c,d){a[d]=a[d]||{};d=a[d];mB(a,b,d,"color");mB(a,c,d,"fontSize")},mB=function(a,b,c,d){a[b]!==void 0&&c[d]===void 0&&(c[d]=a[b])};YA.prototype.pd=function(){pB(this);eB(this);gB(this);fk(this.ib);Gk(this)};var eB=function(a){if(a.pb&&!a.pb.Pd){var b=a.pb.scheduler;b.te=Infinity;b.Hf.stop()}fk(a.pb);if(a.ib&&!a.ib.Pd){b=nv(a.ib);R(b!=null);var c=ov(a.ib);R(c!=null);a.ag=b;c.clear()}fk(a.Jd);Gk(a.oc)},gB=function(a){var b=a.ag||a.ib&&nv(a.ib);a.ag=null;b&&b.clear()},hB=function(a){Yc(a.nk,function(b){typeof b==="string"?a.Fo(b):a.No(b)});a.nk=[]};YA.prototype.No=function(a){this.Ic!=null?this.Ic.No(a):this.nk.push(a)};var qB=function(a,b){var c=new Sq;c.Rj(b);b=Uq(c);c=!1;for(var d=0;d

Firebase Cloud Messaging (FCM) Status Dashboard

Dashboard objective

This dashboard allows you to identify if there are any ongoing service disruptions or outages currently affecting FCM and to monitor FCM service statuses.

View your project's FCM metrics

You can check your project's FCM metrics in the Google Cloud console. Note that individual experiences may differ due to an app's unique infrastructure.
If you're experiencing slow sends and the status dashboard isn't reporting any service issues, your first step should be to investigate issues on your side. We recommend checking out these best practices.
Google Cloud console

Outage status


HTTP v1 API latency status

This measures the latency it takes to respond to your request to send a message. It does not measure the latency to deliver the message. If the latency status is elevated, expect a longer response time.

HTTP v1 API availability status

A measure of request success rate (non-5xx status code responses). If the availability status is degraded, expect a lower success rate.

Service level objectives (SLOs)

We have the following SLOs related to latency and availability:
  • Latency: 95% of HTTP v1 API requests responded under 350ms over a 30-day period
  • Availability: 99% of HTTP v1 API requests responded with a non-5xx status code over a 30-day period
While we don't provide an SLA, we aim to resolve SLO violations quickly. For large outages, please check the Firebase Status Dashboard for updates.

Additional Resources