q&&r--}else{var s=(a+c)/2,t=(b+d)/2,v=(c+e)/2,x=(d+f)/2;e=(e+h)/2;f=(f+k)/2;d=(s+v)/2;c=(t+x)/2;var v=(v+e)/2,x=(x+f)/2,A=(d+v)/2,y=(c+x)/2,r=r+K.ms(a,b,s,t,d,c,A,y,l,m,n,p,q),r=r+K.ms(A,y,v,x,e,f,h,k,l,m,n,p,q)}return r},Im:function(a,b,c,d,e,f,h){if(K.mb(a,c)){var k=0;c=0;bc)return h.x=a,h.y=c,!1;h.x=a;h.y=d;return!0}if(K.mb(b, d)){a c)return h.x=c,h.y=b,!1;h.x=d;h.y=b;return!0}k=((a-e)*(a-c)+(b-f)*(b-d))/((c-a)*(c-a)+(d-b)*(d-b));if(-5E-6>k)return h.x=a,h.y=b,!1;if(1.000005 c)return l.x=a,l.y=c,!1;l.x=a;l.y=f;return!0}h=(d-b)/(c-a);if(K.mb(k,h))return K.Im(a,b,c,d,e,f,l),!1;e=(h*a-k*e+f-b)/(h-k);if(K.mb(h,0)){a c)return l.x=c,l.y=b,!1;l.x=e;l.y=b;return!0}f=h*(e-a)+b;return K.Im(a,b,c,d,e,f,l)},RJ:function(a,b,c,d,e){return K.bh(c.x,c.y,d.x,d.y,a.x,a.y,b.x,b.y,e)},zJ:function(a,b,c,d,e,f,h,k,l,m){function n(c,d){var e=(c-a)*(c-a)+(d-b)*(d-b);e (c>a?c-a:a-c)){q=1-(c-e)*(c-e)/(q*q);if(0>q)return l;q=Math.sqrt(q);d=-m*q+f;n(c,m*q+f);n(c,d)}else{c=(d-b)/(c-a);d=1/(q*q)+c*c/(m*m);k=2*c*(b-c*a)/(m*m)-2*c*f/(m*m)-2*e/(q*q);q=k*k-4*d*(2*c*a*f/(m*m)-2*b*f/(m*m)+f*f/(m*m)+e*e/(q*q)-1+(b-c*a)*(b-c*a)/(m*m));if(0>q)return l;q=Math.sqrt(q);m=(-k+q)/(2*d);n(m,c*m-c*a+b);q=(-k-q)/(2*d);n(q, c*q-c*a+b)}return l},bl:function(a,b,c,d,e,f,h,k,l){var m=1E21,n=a,p=b;if(K.bh(a,b,a,d,e,f,h,k,l)){var q=(l.x-e)*(l.x-e)+(l.y-f)*(l.y-f);q
m},ew:function(a,b,c){var d=b.x,e=b.y,f=c.x,h=c.y,k=a.left,l=a.right, m=a.top,n=a.bottom;return d===f?(f=a=0,e =m):e===h?(d =k):a.Da(b)||a.Da(c)||K.dw(k,m,l,m,d,e,f,h)||K.dw(l,m,l,n,d,e,f,h)||K.dw(l,n,k,n,d,e,f,h)||K.dw(k,n,k,m,d,e,f,h)?!0:!1},dw:function(a,b,c,d,e,f,h,k){return 0>=K.Ov(a,b,c,d,e,f)*K.Ov(a,b,c,d,h,k)&&0>=K.Ov(e,f,h,k,a,b)*K.Ov(e,f,h,k,c,d)},Ov:function(a,b,c,d,e,f){c-=a;d-=b;a=e-a;b=f-b;f=a*d-b*c;0===f&&(f=a*c+b*d,0 f&&(f=0)));return 0>f?-1:0 a&&(a+=360);360<=a&&(a-=360);return a},fD:function(a,b,c,d,e,f){var h=Math.PI;f||(d*=h/180,e*=h/180);f=d c,f=0>d,h=0,k=h=0;am;++m){b=.5*(k+l);if(b===k||b===l)break;var n=a/(b+f),p=h/(b+e),n=n*n+p*p-1;if(0 n)l=b;else break}c=f*c/(b+f)-c;d=e*d/(b+e)-d;e=Math.sqrt(c*c+d*d)}else e=Math.abs(d-b);else d=a*a-b*b,e=a*c,e a?"M"+this.va.toString()+" "+this.wa.toString()+"L"+this.F.toString()+" "+this.G.toString():"M"+this.va.toFixed(a)+" "+this.wa.toFixed(a)+"L"+this.F.toFixed(a)+" "+this.G.toFixed(a);case md:var b=new z(this.va,this.wa,0,0);b.XE(this.F,this.G,0,0);return 0>a?"M"+b.x.toString()+" "+b.y.toString()+"H"+b.right.toString()+"V"+b.bottom.toString()+"H"+b.left.toString()+"z":"M"+b.x.toFixed(a)+" "+b.y.toFixed(a)+"H"+b.right.toFixed(a)+ "V"+b.bottom.toFixed(a)+"H"+b.left.toFixed(a)+"z";case nd:b=new z(this.va,this.wa,0,0);b.XE(this.F,this.G,0,0);if(0>a){var c=b.left.toString()+" "+(b.y+b.height/2).toString(),d=b.right.toString()+" "+(b.y+b.height/2).toString();return"M"+c+"A"+(b.width/2).toString()+" "+(b.height/2).toString()+" 0 0 1 "+d+"A"+(b.width/2).toString()+" "+(b.height/2).toString()+" 0 0 1 "+c}c=b.left.toFixed(a)+" "+(b.y+b.height/2).toFixed(a);d=b.right.toFixed(a)+" "+(b.y+b.height/2).toFixed(a);return"M"+c+"A"+(b.width/ 2).toFixed(a)+" "+(b.height/2).toFixed(a)+" 0 0 1 "+d+"A"+(b.width/2).toFixed(a)+" "+(b.height/2).toFixed(a)+" 0 0 1 "+c;case ad:for(var b="",c=this.ub.n,d=c.length,e=0;e =t-1?!0:null!==l[m+1].match(/[A-Za-z]/)}function d(){m++;return l[m]}function e(){var a=new w(parseFloat(d()),parseFloat(d()));n===n.toLowerCase()&&(a.x=s.x+a.x,a.y=s.y+a.y);return a}function f(){return s=e()}function h(){return r=e()}function k(){return"c"!==p.toLowerCase()&&"s"!==p.toLowerCase()?s:new w(2*s.x-r.x,2*s.y-r.y)}void 0===b&&(b=!1);"string"!==typeof a&&u.Kd(a,"string",$c,"parse:str");a=a.replace(/,/gm," ");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm, "$1 $2");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm,"$1 $2");a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFf])([^\s])/gm,"$1 $2");a=a.replace(/([^\s])([UuBbMmZzLlHhVvCcSsQqTtAaFf])/gm,"$1 $2");a=a.replace(/([0-9])([+\-])/gm,"$1 $2");a=a.replace(/(\.[0-9]*)(\.)/gm,"$1 $2");a=a.replace(/([Aa](\s+[0-9]+){3})\s+([01])\s*([01])/gm,"$1 $3 $4 ");a=a.replace(/[\s\r\t\n]+/gm," ");a=a.replace(/^\s+|\s+$/g,"");for(var l=a.split(" "),m=-1,n="",p="",q=new w(0,0),r=new w(0,0),s=new w(0, 0),t=l.length,v=u.p(),x=!1,A=!1,y=!0;!(m>=t-1);)if(p=n,n=d(),""!==n)switch(n.toUpperCase()){case "X":y=!0;A=x=!1;break;case "M":var C=f();null===v.Tb||!0===y?(M(v,C.x,C.y,x,!1,!A),y=!1):v.moveTo(C.x,C.y);for(q=s;!c();)C=f(),v.lineTo(C.x,C.y);break;case "L":for(;!c();)C=f(),v.lineTo(C.x,C.y);break;case "H":for(;!c();)s=C=new w((n===n.toLowerCase()?s.x:0)+parseFloat(d()),s.y),v.lineTo(s.x,s.y);break;case "V":for(;!c();)s=C=new w(s.x,(n===n.toLowerCase()?s.y:0)+parseFloat(d())),v.lineTo(s.x,s.y);break; case "C":for(;!c();){var I=e(),H=h(),C=f();O(v,I.x,I.y,H.x,H.y,C.x,C.y)}break;case "S":for(;!c();)I=k(),H=h(),C=f(),O(v,I.x,I.y,H.x,H.y,C.x,C.y);break;case "Q":for(;!c();)H=h(),C=f(),td(v,H.x,H.y,C.x,C.y);break;case "T":for(;!c();)r=H=k(),C=f(),td(v,H.x,H.y,C.x,C.y);break;case "B":for(;!c();){var C=parseFloat(d()),I=parseFloat(d()),H=parseFloat(d()),T=parseFloat(d()),aa=parseFloat(d()),R=aa,N=!1;c()||(R=parseFloat(d()),c()||(N=0!==parseFloat(d())));n===n.toLowerCase()&&(H+=s.x,T+=s.y);v.arcTo(C,I, H,T,aa,R,N)}break;case "A":for(;!c();)I=Math.abs(parseFloat(d())),H=Math.abs(parseFloat(d())),T=parseFloat(d()),aa=!!parseFloat(d()),R=!!parseFloat(d()),C=f(),ud(v,I,H,T,aa,R,C.x,C.y);break;case "Z":C=v.o.ub.n[v.o.ub.length-1];P(v);s=q;break;case "F":C="";for(I=1;l[m+I];)if(null!==l[m+I].match(/[Uu]/))I++;else if(null===l[m+I].match(/[A-Za-z]/))I++;else{C=l[m+I];break}C.match(/[Mm]/)?x=!0:vd(v);break;case "U":C="";for(I=1;l[m+I];)if(null!==l[m+I].match(/[Ff]/))I++;else if(null===l[m+I].match(/[A-Za-z]/))I++; else{C=l[m+I];break}C.match(/[Mm]/)?A=!0:v.$a(!1)}q=v.o;u.q(v);if(b)for(v=q.ub.i;v.next();)C=v.value,C.Os=!0;return q};function wd(a,b){for(var c=a.length,d=u.K(),e=0;e h&&(h+=360),s.Je+=h);0>a&&(s.Je=180-s.Je,s.Qf=-s.Qf);0>d&&(s.Je=-s.Je,s.Qf=-s.Qf);s.radiusX*=Math.sqrt(a*a+c*c);void 0!==s.radiusY&&(s.radiusY*=Math.sqrt(b*b+d*d));break;case Gd:h=s.F;k=s.G;s.F=h* a+k*c+e;s.G=h*b+k*d+f;0!==b&&(h=180*Math.atan2(b,a)/Math.PI,0>h&&(h+=360),s.Qi+=h);0>a&&(s.Qi=180-s.Qi,s.fl=!s.fl);0>d&&(s.Qi=-s.Qi,s.fl=!s.fl);s.radiusX*=Math.sqrt(a*a+c*c);s.radiusY*=Math.sqrt(b*b+d*d);break;default:u.k("Unknown Segment type: "+s.type)}}}}this.Ua=!0;return this}; $c.prototype.Zr=function(a,b){var c=this.nc,d=this.uc,e=this.pb,f=this.Bb,h=Math.min(c,e),k=Math.min(d,f),c=Math.abs(e-c),d=Math.abs(f-d),f=u.K();f.x=h;f.y=k;b.ab(f);e=new bd(f.x,f.y);f.x=h+c;f.y=k;b.ab(f);e.Ha.add(new Jd(pd,f.x,f.y));f.x=h+c;f.y=k+d;b.ab(f);e.Ha.add(new Jd(pd,f.x,f.y));f.x=h;f.y=k+d;b.ab(f);e.Ha.add((new Jd(pd,f.x,f.y)).close());u.v(f);a.type=ad;a.ub.add(e);return a}; $c.prototype.Da=function(a,b,c,d){var e=a.x,f=a.y,h=this.kb.x-20;a=a.y;for(var k=0,l=0,m=0,n=0,p=0,q=0,r=this.ub.n,s=r.length,t=0;t =a)return 0;if((e>h?e-h:h-e)<(f>k?f-k:k-f)){if(e=a=0,fe)return 0}else if(e e)return 0;return 0 a||1a)return n=(a-q)/p,u.sa(c),new w(b+(e-b)*n,d+(f-d)*n);q+=p}b=e;d=f}u.sa(c);return null};u.defineProperty($c,{type:"type"},function(){return this.pa},function(a){this.pa!==a&&(u.J(this,a),this.pa=a,this.Ua=!0)});u.defineProperty($c,{va:"startX"},function(){return this.nc},function(a){this.nc!==a&&(u.J(this,a),this.nc=a,this.Ua=!0)}); u.defineProperty($c,{wa:"startY"},function(){return this.uc},function(a){this.uc!==a&&(u.J(this,a),this.uc=a,this.Ua=!0)});u.defineProperty($c,{F:"endX"},function(){return this.pb},function(a){this.pb!==a&&(u.J(this,a),this.pb=a,this.Ua=!0)});u.defineProperty($c,{G:"endY"},function(){return this.Bb},function(a){this.Bb!==a&&(u.J(this,a),this.Bb=a,this.Ua=!0)});u.defineProperty($c,{ub:"figures"},function(){return this.Zi},function(a){this.Zi!==a&&(u.J(this,a),this.Zi=a,this.Ua=!0)}); $c.prototype.add=$c.prototype.add=function(a){this.Zi.add(a);return this};u.defineProperty($c,{A:"spot1"},function(){return this.si},function(a){u.J(this,a);this.si=a.Z()});u.defineProperty($c,{B:"spot2"},function(){return this.ti},function(a){u.J(this,a);this.ti=a.Z()});u.defineProperty($c,{Cd:"defaultStretch"},function(){return this.ci},function(a){u.J(this,a);this.ci=a});u.u($c,{kb:"bounds"},function(){this.wz()&&(this.oA(),this.lg());return this.Vt}); function bd(a,b,c,d){u.gc(this);this.Ea=!1;void 0===c&&(c=!0);this.Jl=c;void 0===d&&(d=!0);this.Fn=d;this.nc=void 0!==a?a:0;this.uc=void 0!==b?b:0;this.Zn=new E(Jd);this.ev=this.Zn.U;this.Ua=!0}u.fa("PathFigure",bd);u.Nh(bd);bd.prototype.copy=function(){var a=new bd;a.Jl=this.Jl;a.Fn=this.Fn;a.nc=this.nc;a.uc=this.uc;for(var b=this.Zn.n,c=b.length,d=a.Zn,e=0;e a?"M"+this.va.toString()+" "+this.wa.toString():"M"+this.va.toFixed(a)+" "+this.wa.toFixed(a),c=this.Ha.n,d=c.length,e=0;e a&&(a+=360),this.cd=a),void 0!==d&&(this.eg=Math.max(d,0)),void 0!==e&&(this.fg=Math.max(e,0)),this.Mn=!!h,this.cn=!!k):(void 0!==d&&(this.cd=d),void 0!==e&&(this.xe=e),void 0!==f&&(a===Bd&&(f=Math.max(f,0)),this.eg=f),void 0!==h&&"number"===typeof h&&(a===Bd&&(h=Math.max(h,0)),this.fg=h));this.Bh=!1;this.Ua=!0;this.Vf=null} u.fa("PathSegment",Jd);u.Nh(Jd);Jd.prototype.copy=function(){var a=new Jd;a.pa=this.pa;a.pb=this.pb;a.Bb=this.Bb;void 0!==this.cd&&(a.cd=this.cd);void 0!==this.xe&&(a.xe=this.xe);void 0!==this.eg&&(a.eg=this.eg);void 0!==this.fg&&(a.fg=this.fg);void 0!==this.Mn&&(a.Mn=this.Mn);void 0!==this.cn&&(a.cn=this.cn);a.Bh=this.Bh;a.Ua=this.Ua;return a}; Jd.prototype.equalsApprox=Jd.prototype.De=function(a){if(!(a instanceof Jd)||this.type!==a.type||this.fw!==a.fw)return!1;switch(this.type){case yd:case pd:return K.D(this.F,a.F)&&K.D(this.G,a.G);case zd:return K.D(this.F,a.F)&&K.D(this.G,a.G)&&K.D(this.Rb,a.Rb)&&K.D(this.jc,a.jc)&&K.D(this.ef,a.ef)&&K.D(this.ff,a.ff);case Ad:return K.D(this.F,a.F)&&K.D(this.G,a.G)&&K.D(this.Rb,a.Rb)&&K.D(this.jc,a.jc);case Bd:return K.D(this.Je,a.Je)&&K.D(this.Qf,a.Qf)&&K.D(this.ma,a.ma)&&K.D(this.ya,a.ya)&&K.D(this.radiusX, a.radiusX)&&K.D(this.radiusY,a.radiusY);case Gd:return this.fl===a.fl&&this.iw===a.iw&&K.D(this.Qi,a.Qi)&&K.D(this.F,a.F)&&K.D(this.G,a.G)&&K.D(this.radiusX,a.radiusX)&&K.D(this.radiusY,a.radiusY);default:return!1}}; Jd.prototype.toString=function(a){void 0===a&&(a=-1);var b="";switch(this.type){case yd:b=0>a?"M"+this.F.toString()+" "+this.G.toString():"M"+this.F.toFixed(a)+" "+this.G.toFixed(a);break;case pd:b=0>a?"L"+this.F.toString()+" "+this.G.toString():"L"+this.F.toFixed(a)+" "+this.G.toFixed(a);break;case zd:b=0>a?"C"+this.Rb.toString()+" "+this.jc.toString()+" "+this.ef.toString()+" "+this.ff.toString()+" "+this.F.toString()+" "+this.G.toString():"C"+this.Rb.toFixed(a)+" "+this.jc.toFixed(a)+" "+this.ef.toFixed(a)+ " "+this.ff.toFixed(a)+" "+this.F.toFixed(a)+" "+this.G.toFixed(a);break;case Ad:b=0>a?"Q"+this.Rb.toString()+" "+this.jc.toString()+" "+this.F.toString()+" "+this.G.toString():"Q"+this.Rb.toFixed(a)+" "+this.jc.toFixed(a)+" "+this.F.toFixed(a)+" "+this.G.toFixed(a);break;case Bd:b=0>a?"B"+this.Je.toString()+" "+this.Qf.toString()+" "+this.ma.toString()+" "+this.ya.toString()+" "+this.radiusX:"B"+this.Je.toFixed(a)+" "+this.Qf.toFixed(a)+" "+this.ma.toFixed(a)+" "+this.ya.toFixed(a)+" "+this.radiusX; break;case Gd:b=0>a?"A"+this.radiusX.toString()+" "+this.radiusY.toString()+" "+this.Qi.toString()+" "+(this.iw?1:0)+" "+(this.fl?1:0)+" "+this.F.toString()+" "+this.G.toString():"A"+this.radiusX.toFixed(a)+" "+this.radiusY.toFixed(a)+" "+this.Qi.toFixed(a)+" "+(this.iw?1:0)+" "+(this.fl?1:0)+" "+this.F.toFixed(a)+" "+this.G.toFixed(a);break;default:b=this.type.toString()}return b+(this.Bh?"z":"")};var yd;Jd.Move=yd=u.s(Jd,"Move",0);var pd;Jd.Line=pd=u.s(Jd,"Line",1);var zd; Jd.Bezier=zd=u.s(Jd,"Bezier",2);var Ad;Jd.QuadraticBezier=Ad=u.s(Jd,"QuadraticBezier",3);var Bd;Jd.Arc=Bd=u.s(Jd,"Arc",4);var Gd;Jd.SvgArc=Gd=u.s(Jd,"SvgArc",4);Jd.prototype.freeze=function(){this.Ea=!0;return this};Jd.prototype.Ma=function(){this.Ea=!1;return this};Jd.prototype.close=Jd.prototype.close=function(){this.Bh=!0;return this}; function Hd(a,b){if(null!==a.Vf&&!1===b.Ua)return a.Vf;var c=a.radiusX,d=a.radiusY;void 0===d&&(d=c);if(0===c||0===d)return a.Vf=[],a.Vf;var e=a.cd,f=a.xe,h=K.fD(0,0,c =s?k=Math.PI:1<=s&&(k=0);!m&&0 k&&(k+=2*Math.PI);m=b>h?1:b/h;s=b>h?h/b:1;b=K.fD(0,0,b>h?b:h,p,p+k,!0);h=u.lh();h.reset();h.translate(c,d);h.rotate(a.cd,0,0);h.scale(m,s);wd(b,h);u.Ye(h);a.Vf=b;return a.Vf} u.defineProperty(Jd,{fw:"isClosed"},function(){return this.Bh},function(a){this.Bh!==a&&(this.Bh=a,this.Ua=!0)});u.defineProperty(Jd,{type:"type"},function(){return this.pa},function(a){u.J(this,a);this.pa=a;this.Ua=!0});u.defineProperty(Jd,{F:"endX"},function(){return this.pb},function(a){u.J(this,a);this.pb=a;this.Ua=!0});u.defineProperty(Jd,{G:"endY"},function(){return this.Bb},function(a){u.J(this,a);this.Bb=a;this.Ua=!0}); u.defineProperty(Jd,{Rb:"point1X"},function(){return this.cd},function(a){u.J(this,a);this.cd=a;this.Ua=!0});u.defineProperty(Jd,{jc:"point1Y"},function(){return this.xe},function(a){u.J(this,a);this.xe=a;this.Ua=!0});u.defineProperty(Jd,{ef:"point2X"},function(){return this.eg},function(a){u.J(this,a);this.eg=a;this.Ua=!0});u.defineProperty(Jd,{ff:"point2Y"},function(){return this.fg},function(a){u.J(this,a);this.fg=a;this.Ua=!0}); u.defineProperty(Jd,{ma:"centerX"},function(){return this.cd},function(a){u.J(this,a);this.cd=a;this.Ua=!0});u.defineProperty(Jd,{ya:"centerY"},function(){return this.xe},function(a){u.J(this,a);this.xe=a;this.Ua=!0});u.defineProperty(Jd,{radiusX:"radiusX"},function(){return this.eg},function(a){0>a&&u.xa(a,">= zero",Jd,"radiusX");u.J(this,a);this.eg=a;this.Ua=!0}); u.defineProperty(Jd,{radiusY:"radiusY"},function(){return this.fg},function(a){0>a&&u.xa(a,">= zero",Jd,"radiusY");u.J(this,a);this.fg=a;this.Ua=!0});u.defineProperty(Jd,{Je:"startAngle"},function(){return this.pb},function(a){this.pb!==a&&(u.J(this,a),a%=360,0>a&&(a+=360),this.pb=a,this.Ua=!0)});u.defineProperty(Jd,{Qf:"sweepAngle"},function(){return this.Bb},function(a){u.J(this,a);360a&&(a=-360);this.Bb=a;this.Ua=!0}); u.defineProperty(Jd,{fl:"isClockwiseArc"},function(){return this.cn},function(a){u.J(this,a);this.cn=a;this.Ua=!0});u.defineProperty(Jd,{iw:"isLargeArc"},function(){return this.Mn},function(a){u.J(this,a);this.Mn=a;this.Ua=!0});u.defineProperty(Jd,{Qi:"xAxisRotation"},function(){return this.cd},function(a){a%=360;0>a&&(a+=360);u.J(this,a);this.cd=a;this.Ua=!0}); function Md(){this.Y=null;this.Iy=(new w(0,0)).freeze();this.Ex=(new w(0,0)).freeze();this.St=this.Ou=0;this.Bu="";this.tv=this.hu=!1;this.du=this.Ut=0;this.Si=this.ou=this.xu=!1;this.Xp=null;this.sv=0;this.gg=this.pv=null}u.fa("InputEvent",Md); Md.prototype.copy=function(){var a=new Md;a.Y=this.Y;a.Iy.assign(this.gf);a.Ex.assign(this.da);a.Ou=this.Ou;a.St=this.St;a.Bu=this.Bu;a.hu=this.hu;a.tv=this.tv;a.Ut=this.Ut;a.du=this.du;a.xu=this.xu;a.ou=this.ou;a.Si=this.Si;a.Xp=this.Xp;a.sv=this.sv;a.pv=this.pv;a.gg=this.gg;return a}; Md.prototype.toString=function(){var a="^";0!==this.hd&&(a+="M:"+this.hd);0!==this.button&&(a+="B:"+this.button);""!==this.key&&(a+="K:"+this.key);0!==this.Te&&(a+="C:"+this.Te);0!==this.Uk&&(a+="D:"+this.Uk);this.Tc&&(a+="h");this.bubbles&&(a+="b");null!==this.da&&(a+="@"+this.da.toString());return a};u.defineProperty(Md,{g:"diagram"},function(){return this.Y},function(a){this.Y=a});u.defineProperty(Md,{gf:"viewPoint"},function(){return this.Iy},function(a){u.C(a,w,Md,"viewPoint");this.Iy.assign(a)}); u.defineProperty(Md,{da:"documentPoint"},function(){return this.Ex},function(a){u.C(a,w,Md,"documentPoint");this.Ex.assign(a)});u.defineProperty(Md,{hd:"modifiers"},function(){return this.Ou},function(a){this.Ou=a});u.defineProperty(Md,{button:"button"},function(){return this.St},function(a){this.St=a});u.defineProperty(Md,{key:"key"},function(){return this.Bu},function(a){this.Bu=a});u.defineProperty(Md,{Wk:"down"},function(){return this.hu},function(a){this.hu=a}); u.defineProperty(Md,{up:"up"},function(){return this.tv},function(a){this.tv=a});u.defineProperty(Md,{Te:"clickCount"},function(){return this.Ut},function(a){this.Ut=a});u.defineProperty(Md,{Uk:"delta"},function(){return this.du},function(a){this.du=a});u.defineProperty(Md,{Qs:"isMultiTouch"},function(){return this.xu},function(a){this.xu=a});u.defineProperty(Md,{Tc:"handled"},function(){return this.ou},function(a){this.ou=a}); u.defineProperty(Md,{bubbles:"bubbles"},function(){return this.Si},function(a){this.Si=a});u.defineProperty(Md,{event:"event"},function(){return this.Xp},function(a){this.Xp=a});u.u(Md,{jl:"isTouchEvent"},function(){var a=window.TouchEvent;return a&&this.event instanceof a?!0:(a=window.PointerEvent)&&this.event instanceof a&&"touch"===this.event.pointerType});u.defineProperty(Md,{timestamp:"timestamp"},function(){return this.sv},function(a){this.sv=a}); u.defineProperty(Md,{Dg:"targetDiagram"},function(){return this.pv},function(a){this.pv=a});u.defineProperty(Md,{pe:"targetObject"},function(){return this.gg},function(a){this.gg=a});u.defineProperty(Md,{control:"control"},function(){return 0!==(this.hd&1)},function(a){this.hd=a?this.hd|1:this.hd&-2});u.defineProperty(Md,{shift:"shift"},function(){return 0!==(this.hd&4)},function(a){this.hd=a?this.hd|4:this.hd&-5}); u.defineProperty(Md,{alt:"alt"},function(){return 0!==(this.hd&2)},function(a){this.hd=a?this.hd|2:this.hd&-3});u.defineProperty(Md,{Zs:"meta"},function(){return 0!==(this.hd&8)},function(a){this.hd=a?this.hd|8:this.hd&-9});u.defineProperty(Md,{left:"left"},function(){return 0===this.button},function(a){this.button=a?0:2});u.defineProperty(Md,{$J:"middle"},function(){return 1===this.button},function(a){this.button=a?1:0}); u.defineProperty(Md,{right:"right"},function(){return 2===this.button},function(a){this.button=a?2:0});function Nd(){this.Y=null;this.Ub="";this.Xu=this.kv=null;this.Tt=!1}u.fa("DiagramEvent",Nd);Nd.prototype.copy=function(){var a=new Nd;a.Y=this.Y;a.Ub=this.Ub;a.kv=this.kv;a.Xu=this.Xu;a.Tt=this.Tt;return a};Nd.prototype.toString=function(){var a="*"+this.name;this.cancel&&(a+="x");null!==this.iA&&(a+=":"+this.iA.toString());null!==this.Nz&&(a+="("+this.Nz.toString()+")");return a}; u.defineProperty(Nd,{g:"diagram"},function(){return this.Y},function(a){this.Y=a});u.defineProperty(Nd,{name:"name"},function(){return this.Ub},function(a){this.Ub=a});u.defineProperty(Nd,{iA:"subject"},function(){return this.kv},function(a){this.kv=a});u.defineProperty(Nd,{Nz:"parameter"},function(){return this.Xu},function(a){this.Xu=a});u.defineProperty(Nd,{cancel:"cancel"},function(){return this.Tt},function(a){this.Tt=a}); function Zd(){this.Dp=$d;this.Yl=this.Nu="";this.Yq=this.Zq=this.cr=this.dr=this.br=this.Y=this.Od=null}u.fa("ChangedEvent",Zd);var ae;Zd.Transaction=ae=u.s(Zd,"Transaction",-1);var $d;Zd.Property=$d=u.s(Zd,"Property",0);var be;Zd.Insert=be=u.s(Zd,"Insert",1);var ce;Zd.Remove=ce=u.s(Zd,"Remove",2);Zd.prototype.clear=Zd.prototype.clear=function(){this.Yq=this.Zq=this.cr=this.dr=this.br=this.Y=this.Od=null}; Zd.prototype.copy=function(){var a=new Zd;a.Od=this.Od;a.Y=this.Y;a.Dp=this.Dp;a.Nu=this.Nu;a.Yl=this.Yl;a.br=this.br;var b=this.dr;a.dr=u.Ta(b)&&"function"===typeof b.Z?b.Z():b;b=this.cr;a.cr=u.Ta(b)&&"function"===typeof b.Z?b.Z():b;b=this.Zq;a.Zq=u.Ta(b)&&"function"===typeof b.Z?b.Z():b;b=this.Yq;a.Yq=u.Ta(b)&&"function"===typeof b.Z?b.Z():b;return a}; Zd.prototype.toString=function(){var a="",a=this.Bd===ae?a+"* ":this.Bd===$d?a+(null!==this.ha?"!m":"!d"):a+((null!==this.ha?"!m":"!d")+this.Bd);this.propertyName&&"string"===typeof this.propertyName&&(a+=" "+this.propertyName);this.Lf&&this.Lf!==this.propertyName&&(a+=" "+this.Lf);a+=": ";this.Bd===ae?null!==this.oldValue&&(a+=" "+this.oldValue):(null!==this.object&&(a+=de(this.object)),null!==this.oldValue&&(a+=" old: "+de(this.oldValue)),null!==this.Ag&&(a+=" "+this.Ag),null!==this.newValue&& (a+=" new: "+de(this.newValue)),null!==this.yg&&(a+=" "+this.yg));return a};Zd.prototype.getValue=Zd.prototype.ua=function(a){return a?this.oldValue:this.newValue};Zd.prototype.getParam=function(a){return a?this.Ag:this.yg};Zd.prototype.canUndo=Zd.prototype.canUndo=function(){return null!==this.ha||null!==this.g?!0:!1};Zd.prototype.undo=Zd.prototype.undo=function(){this.canUndo()&&(null!==this.ha?this.ha.qm(this,!0):null!==this.g&&this.g.qm(this,!0))}; Zd.prototype.canRedo=Zd.prototype.canRedo=function(){return null!==this.ha||null!==this.g?!0:!1};Zd.prototype.redo=Zd.prototype.redo=function(){this.canRedo()&&(null!==this.ha?this.ha.qm(this,!1):null!==this.g&&this.g.qm(this,!1))};u.defineProperty(Zd,{ha:"model"},function(){return this.Od},function(a){this.Od=a});u.defineProperty(Zd,{g:"diagram"},function(){return this.Y},function(a){this.Y=a});u.defineProperty(Zd,{Bd:"change"},function(){return this.Dp},function(a){this.Dp=a}); u.defineProperty(Zd,{Lf:"modelChange"},function(){return this.Nu},function(a){this.Nu=a});u.defineProperty(Zd,{propertyName:"propertyName"},function(){return this.Yl},function(a){this.Yl=a});u.u(Zd,{hH:"isTransactionFinished"},function(){return this.Dp===ae&&("CommittedTransaction"===this.Yl||"FinishedUndo"===this.Yl||"FinishedRedo"===this.Yl)});u.defineProperty(Zd,{object:"object"},function(){return this.br},function(a){this.br=a}); u.defineProperty(Zd,{oldValue:"oldValue"},function(){return this.dr},function(a){this.dr=a});u.defineProperty(Zd,{Ag:"oldParam"},function(){return this.cr},function(a){this.cr=a});u.defineProperty(Zd,{newValue:"newValue"},function(){return this.Zq},function(a){this.Zq=a});u.defineProperty(Zd,{yg:"newParam"},function(){return this.Yq},function(a){this.Yq=a}); function J(a){1 =d)return"[]";var e=new Ba;e.add("[ ");c&&1 b||(u.Ai(this.nf,b),Le(this,"nodeDataArray",ce,"nodeDataArray",this,a,null,b,null),this.At(a)))}}; J.prototype.removeNodeDataCollection=function(a){if(u.isArray(a))for(var b=u.qb(a),c=0;cb&&(b=u.qb(a));u.zi(a,b,c);Le(this,"",be,"",a,null,c,null,b)};J.prototype.removeArrayItem=function(a,b){void 0===b&&(b=-1);a===this.nf&&u.k("Model.removeArrayItem should not be called on the Model.nodeDataArray");-1===b&&(b=u.qb(a)-1);var c=u.gb(a,b);u.Ai(a,b);Le(this,"",ce,"",a,c,null,b,null)}; u.defineProperty(J,{Jm:"nodeCategoryProperty"},function(){return this.$q},function(a){var b=this.$q;b!==a&&(Me(a,J,"nodeCategoryProperty"),this.$q=a,this.h("nodeCategoryProperty",b,a))});J.prototype.getCategoryForNodeData=J.prototype.gz=function(a){if(null===a)return"";var b=this.$q;if(""===b)return"";b=u.sb(a,b);if(void 0===b)return"";if("string"===typeof b)return b;u.k("getCategoryForNodeData found a non-string category for "+a+": "+b);return""}; J.prototype.setCategoryForNodeData=J.prototype.Fw=function(a,b){u.j(b,"string",J,"setCategoryForNodeData:cat");if(null!==a){var c=this.$q;if(""!==c)if(this.Ue(a)){var d=u.sb(a,c);void 0===d&&(d="");d!==b&&(u.Pa(a,c,b),Le(this,"nodeCategory",$d,c,a,d,b))}else u.Pa(a,c,b)}}; function Q(a,b){2 e||(u.Ai(d,e),this.Di(a)&&(Qe(this,b,a),Le(this,"linkLabelKeys",ce,c,a,b,null)))}else void 0!==d&&u.k(c+" property is not an Array; cannot removeLabelKeyforLinkData: "+a)}}}; u.defineProperty(Q,{Qj:"linkDataArray"},function(){return this.Dh},function(a){var b=this.Dh;if(b!==a){u.Ry(a,Q,"linkDataArray");for(var c=u.qb(a),d=0;d b)){u.Ai(this.Dh,b);Le(this,"linkDataArray",ce,"linkDataArray",this,a,null,b,null);b=this.$k(a);Qe(this,b,a);b=this.cl(a);Qe(this,b,a);var c=this.Pj(a);if(u.isArray(c))for(var d=u.qb(c),e=0;e a.Le&&u.trace("Ending transaction without having started a transaction: "+c);var d=1===a.Le;d&&b&&a.isEnabled&&a.Rc("CommittingTransaction",c,a.Ei);var e=0;if(0 a.Ji;e--)f=d.ja(e),null!== f&&f.clear(),d.jd(e),a.Zx=!0;e=a.VD;0===e&&(e=1);0 =e&&(f=d.ja(0),null!==f&&f.clear(),d.jd(0),a.Kg--);d.add(b);a.Kg++;d.freeze();f=b}a.Rc("CommittedTransaction",c,f)}else{a.gi=!0;try{a.isEnabled&&null!==f&&(f.Ns=!0,f.undo())}finally{a.Rc("RolledBackTransaction",c,f),a.gi=!1}null!==f&&f.clear()}a.cu=null;return!0}if(a.isEnabled&&!b&&null!==f){a=e;c=f.Wg;for(b=c.count-1;b>=a;b--)d=c.ja(b),null!==d&&d.undo(),c.Ma(),c.jd(b);c.freeze()}return!1} ee.prototype.canUndo=ee.prototype.canUndo=function(){if(!this.isEnabled||0 =this.Le&&!this.Mx&&(a=a.g,null!==a&&!1===a.mf||u.trace("Change not within a transaction: "+c.toString()))}}; ee.prototype.skipsEvent=function(a){if(null===a||0>a.Bd.value)return!0;a=a.object;if(a instanceof S){if(a=a.layer,null!==a&&a.Ac)return!0}else if(a instanceof we&&a.Ac)return!0;return!1};u.u(ee,{BH:"models"},function(){return this.iy.i});u.defineProperty(ee,{isEnabled:"isEnabled"},function(){return this.Ne},function(a){this.Ne=a});u.u(ee,{TE:"transactionToUndo"},function(){return 0<=this.Ji&&this.Ji<=this.history.count-1?this.history.ja(this.Ji):null}); u.u(ee,{SE:"transactionToRedo"},function(){return this.Ji b.Zg||(b.scale=a))};sa.prototype.canDecreaseZoom=function(a){void 0===a&&(a=1/this.Qw);u.ze(a,sa,"canDecreaseZoom:factor");var b=this.g;if(null===b||b.oo!==vf)return!1;a*=b.scale;return a b.Zg?!1:b.Iv}; sa.prototype.increaseZoom=function(a){void 0===a&&(a=this.Qw);u.ze(a,sa,"increaseZoom:factor");var b=this.g;null!==b&&b.oo===vf&&(a*=b.scale,a b.Zg||(b.scale=a))};sa.prototype.canIncreaseZoom=function(a){void 0===a&&(a=this.Qw);u.ze(a,sa,"canIncreaseZoom:factor");var b=this.g;if(null===b||b.oo!==vf)return!1;a*=b.scale;return a b.Zg?!1:b.Iv};sa.prototype.resetZoom=function(a){void 0===a&&(a=this.Qv);u.ze(a,sa,"resetZoom:newscale");var b=this.g;null===b||a b.Zg||(b.scale=a)}; sa.prototype.canResetZoom=function(a){void 0===a&&(a=this.Qv);u.ze(a,sa,"canResetZoom:newscale");var b=this.g;return null===b||a b.Zg?!1:b.Iv};sa.prototype.zoomToFit=function(){var a=this.g;if(null!==a){var b=a.scale,c=a.position;b!==this.FC||isNaN(this.$x)?(this.$x=b,this.zB=c.copy(),a.zoomToFit(),a.cf(),this.FC=a.scale):(a.scale=this.$x,a.position=this.zB)}};sa.prototype.canZoomToFit=function(){var a=this.g;return null===a?!1:a.Iv}; sa.prototype.collapseTree=function(a){void 0===a&&(a=null);var b=this.g;if(null===b)return!1;try{b.Wb("Collapse Tree");var c=new E(U);if(null!==a&&a.Vc)a.collapseTree(),c.add(a);else for(var d=b.selection.i;d.next();){var e=d.value;e instanceof U&&(a=e,a.Vc&&(a.collapseTree(),c.add(a)))}b.Ba("TreeCollapsed",c)}finally{b.Wd("Collapse Tree")}}; sa.prototype.canCollapseTree=function(a){void 0===a&&(a=null);var b=this.g;if(null===b||b.nb)return!1;if(null!==a){if(!a.Vc)return!1;if(0 b.targetTouches.length)return;c=b.targetTouches[0];d=b.targetTouches[1]}else if(null!==a.Df[0])c=a.Df[0],d=a.Df[1];else return;this.doCancel();if(a.zn){a.Nx=!0;a.MB=a.scale;var e=a.Ab,f=a.zb,h=a.ib.getBoundingClientRect(),k=c.clientX-e/h.width*h.left,l=c.clientY-f/h.height*h.top,c=d,d=c.clientX-e/h.width*h.left-k,f=c.clientY-f/h.height*h.top-l,f=Math.sqrt(d*d+f* f);a.iC=f;b.preventDefault();b.cancelBubble=!0}else yf(a)}}; xe.prototype.standardPinchZoomMove=function(){var a=this.g;if(null!==a){var b=a.N.event;this.doCancel();yf(a);var c=null,d=null;if(void 0!==b.targetTouches){if(2>b.targetTouches.length)return;c=b.targetTouches[0];d=b.targetTouches[1]}else if(null!==a.Df[0])c=a.Df[0],d=a.Df[1];else return;if(a.zn&&a.Nx){var e=a.Ab,f=a.zb,h=a.ib.getBoundingClientRect(),k=c,c=k.clientX-e/h.width*h.left,l=k.clientY-f/h.height*h.top,k=d,d=k.clientX-e/h.width*h.left,f=k.clientY-f/h.height*h.top,h=d-c,e=f-l,h=Math.sqrt(h* h+e*e)/a.iC,c=new w((Math.min(d,c)+Math.max(d,c))/2,(Math.min(f,l)+Math.max(f,l))/2),l=a.MB*h,d=a.Eb;l!==a.scale&&d.canResetZoom(l)&&(f=a.Sm,a.Sm=c,d.resetZoom(l),a.Sm=f);b.preventDefault();b.cancelBubble=!0}}};xe.prototype.doKeyDown=function(){var a=this.g;null!==a&&"Esc"===a.N.key&&this.doCancel()};xe.prototype.doKeyUp=function(){};xe.prototype.startTransaction=xe.prototype.Wb=function(a){void 0===a&&(a=this.name);this.zf=null;var b=this.g;return null===b?!1:b.Wb(a)}; xe.prototype.stopTransaction=xe.prototype.Uj=function(){var a=this.g;return null===a?!1:null===this.zf?a.cp():a.Wd(this.zf)}; xe.prototype.standardMouseSelect=function(){var a=this.g;if(null!==a&&a.pf){var b=a.N,c=a.As(b.da,!1);if(null!==c)if(u.Fm?b.Zs:b.control){a.Ba("ChangingSelection");for(b=c;null!==b&&!b.canSelect();)b=b.Sa;null!==b&&(b.Za=!b.Za);a.Ba("ChangedSelection")}else if(b.shift){if(!c.Za){a.Ba("ChangingSelection");for(b=c;null!==b&&!b.canSelect();)b=b.Sa;null!==b&&(b.Za=!0);a.Ba("ChangedSelection")}}else{if(!c.Za){for(b=c;null!==b&&!b.canSelect();)b=b.Sa;null!==b&&a.select(b)}}else!b.left||(u.Fm?b.Zs:b.control)|| b.shift||a.Nv()}};xe.prototype.standardMouseClick=function(a,b){void 0===a&&(a=null);void 0===b&&(b=function(a){return!a.layer.Ac});var c=this.g;if(null!==c){var d=c.N,e=c.ke(d.da,a,b);d.pe=e;zf(e,d,c)}}; function zf(a,b,c){var d=0;b.left?d=1===b.Te?1:2===b.Te?2:1:b.right&&1===b.Te&&(d=3);var e="";if(null!==a){switch(d){case 1:e="ObjectSingleClicked";break;case 2:e="ObjectDoubleClicked";break;case 3:e="ObjectContextClicked"}0!==d&&c.Ba(e,a)}else{switch(d){case 1:e="BackgroundSingleClicked";break;case 2:e="BackgroundDoubleClicked";break;case 3:e="BackgroundContextClicked"}0!==d&&c.Ba(e)}if(null!==a)for(b.Tc=!1;null!==a;){c=null;switch(d){case 1:c=a.click;break;case 2:c=a.us?a.us:a.click;break;case 3:c= a.Vy}if(null!==c&&(c(b,a),b.Tc))break;a=a.S}else{a=null;switch(d){case 1:a=c.click;break;case 2:a=c.us?c.us:c.click;break;case 3:a=c.Vy}null!==a&&a(b)}} xe.prototype.standardMouseOver=function(){var a=this.g;if(null!==a){var b=a.N;if(null!==b.g&&!0!==a.Mb.bd){var c=a.eb;a.eb=!0;var d=a.ke(b.da,null,null);b.pe=d;var e=!1;if(d!==a.fn){var f=a.fn,h=f;a.fn=d;this.doCurrentObjectChanged(f,d);for(b.Tc=!1;null!==f;){var k=f.$D;if(null!==k){if(d===f)break;if(null!==d&&d.gl(f))break;k(b,f,d);e=!0;if(b.Tc)break}f=f.S}f=h;for(b.Tc=!1;null!==d;){k=d.ZD;if(null!==k){if(f===d)break;if(null!==f&&f.gl(d))break;k(b,d,f);e=!0;if(b.Tc)break}d=d.S}d=a.fn}if(null!==d){f= d;for(k="";null!==f;){k=f.cursor;if(""!==k)break;f=f.S}a.ac=k;b.Tc=!1;for(f=d;null!==f;){k=f.Gz;if(null!==k&&(k(b,f),e=!0,b.Tc))break;f=f.S}}else a.ac="",k=a.Gz,null!==k&&(k(b),e=!0);e&&a.de();a.eb=c}}};xe.prototype.doCurrentObjectChanged=function(){}; xe.prototype.standardMouseWheel=function(){var a=this.g;if(null!==a){var b=a.N,c=b.Uk;if(0!==c&&a.Dd.I()){var d=a.Eb,e=a.tb.at;if((e===Af&&!b.shift||e===Bf&&b.control)&&(0 e||Math.abs(b.y-a.y)>d};u.u(xe,{g:"diagram"},function(){return this.Y}); u.defineProperty(xe,{name:"name"},function(){return this.Ub},function(a){u.j(a,"string",xe,"name");this.Ub=a});u.defineProperty(xe,{isEnabled:"isEnabled"},function(){return this.Ne},function(a){u.j(a,"boolean",xe,"isEnabled");this.Ne=a});u.defineProperty(xe,{oa:"isActive"},function(){return this.lB},function(a){u.j(a,"boolean",xe,"isActive");this.lB=a});u.defineProperty(xe,{zf:"transactionResult"},function(){return this.AC},function(a){null!==a&&u.j(a,"string",xe,"transactionResult");this.AC=a}); function uf(){0 e&&(e=k),l>f&&(f=l))}}Infinity===c?b.m(0,0,0,0):b.m(c,d,e-c,f-d)} function ig(a,b){if(null===a.oc){var c=a.g;if(!(null===c||b&&(c.nb||c.uf))&&null!==a.cc){var d=c.ga;d.isEnabled&&d.ND?null!==d.Ei&&0 c.ka)){var d=a.g;if(null!==d&&!d.nb&&(d=a.qi,null!==d)){var e=null,f=null;null===c.W&&(e=zg(a,c.l(0),!1),null!==e&&(f=e.T));var h=null,k=null;null===c.ca&&(h=zg(a,c.l(c.ka-1),!0),null!==h&&(k=h.T));d.isValidLink(f,e,k,h)?b?(c.kn=c.l(0).copy(),c.on=c.l(c.ka-1).copy(),c.kp=!1,c.W=f,null!==e&&(c.qg=e.Jd),c.ca=k,null!==h&&(c.mh=h.Jd)):Ag(d,f,e,k,h):Ag(d,null,null,null,null)}}}uf.prototype.doDragOver=function(){}; function Bg(a,b){var c=a.g;if(null!==c){a.Hi&&vg(a,!0);Zf(a);var d=wg(c,b,null,function(b){return!mg(a,b)}),e=c.N;e.pe=d;if(null!==d){e.Tc=!1;for(var f=d;null!==f;){var h=f.Dz;if(null!==h&&(h(e,f),e.Tc))break;f=yg(f)}}else h=c.Dz,null!==h&&h(e);if(a.oa||null!==Ef)if(a.doDropOnto(b,d),a.oa||null!==Ef)for(d=c.selection.i;d.next();)e=d.value,e instanceof U&&Cg(c,e.ba)}}uf.prototype.doDropOnto=function(){}; uf.prototype.doMouseMove=function(){if(this.oa){var a=this.g;if(null!==a&&null!==this.ts&&null!==this.cc){var b=!1,c=!1;this.mayCopy()?(b=!0,a.ac="copy",ig(this,!1),Df(this,this.oc),jg(this,this.oc,!1),$f(this,this.oc)):this.mayMove()?(c=!0,a.ac="default",cg(this),jg(this,this.cc,!0)):this.mayDragOut()?(a.ac="no-drop",ig(this,!1),jg(this,this.oc,!1)):cg(this);ng(this,a.N.da,c,b)}}}; uf.prototype.doMouseUp=function(){if(this.oa){var a=this.g;if(null!==a){var b=!1,c=this.mayCopy();c&&null!==this.oc?(cg(this),ig(this,!0),Df(this,this.oc),jg(this,this.oc,!1),$f(this,this.oc),null!==this.oc&&a.CE(this.oc.Oi())):(b=!0,cg(this),this.mayMove()&&(jg(this,this.cc,!0),this.gv=!1,ng(this,a.N.da,!0,!1),this.gv=!0));this.Tp=!0;Bg(this,a.N.da);if(this.oa){this.oc=null;if(b&&null!==this.cc)for(b=this.cc.i;b.next();){var d=b.key;d instanceof U&&(d=d.Sa,null===d||null===d.placeholder||this.cc.contains(d)|| d.aD&&d.R())}a.pc();$f(this,this.cc);this.zf=c?"Copy":"Move";a.Ba(c?"SelectionCopied":"SelectionMoved",a.selection)}this.stopTool()}}};uf.prototype.mayCopy=function(){if(!this.LD)return!1;var a=this.g;if(null===a||a.nb||a.uf||!a.mo||!a.Ij||(u.Fm?!a.N.alt:!a.N.control))return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.Gd()&&b.canCopy())return!0}return null!==this.Sc&&this.Hi&&this.Sc.canCopy()?!0:!1}; uf.prototype.mayDragOut=function(){if(!this.LD)return!1;var a=this.g;if(null===a||!a.Cv||!a.Ij||a.Nk)return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.Gd()&&b.canCopy())return!0}return null!==this.Sc&&this.Hi&&this.Sc.canCopy()?!0:!1};uf.prototype.mayMove=function(){var a=this.g;if(null===a||a.nb||!a.Nk)return!1;for(a=a.selection.i;a.next();){var b=a.value;if(b.Gd()&&b.canMove())return!0}return null!==this.Sc&&this.Hi&&this.Sc.canMove()?!0:!1};var ag=new E(uf),Ef=null,Ff=null; uf.prototype.mayDragIn=function(){var a=this.g;if(null===a||!a.MC||a.nb||a.uf||!a.mo)return!1;var b=Ef;return null===b||b.g.ha.Sk!==a.ha.Sk?!1:!0};uf.prototype.doSimulatedDragEnter=function(){if(this.mayDragIn()){var a=this.g;a.Mb.Ni();Dg(a);a=Ef;null!==a&&(a.g.ac="copy")}};uf.prototype.doSimulatedDragLeave=function(){var a=Ef;null!==a&&a.doSimulatedDragOut();this.doCancel()}; uf.prototype.doSimulatedDragOver=function(){var a=this.g;if(null!==a){var b=Ef;null!==b&&null!==b.cc&&this.mayDragIn()&&(a.ac="copy",Eg(this,b.cc.Oi(),!1),jg(this,this.oc,!1),ng(this,a.N.da,!1,!0))}}; uf.prototype.doSimulatedDrop=function(){var a=this.g;if(null!==a){var b=Ef;null!==b&&(b.Tp=!0,cg(this),this.mayDragIn()&&(this.Wb("Drop"),Eg(this,b.cc.Oi(),!0),jg(this,this.oc,!1),null!==this.oc&&a.CE(this.oc.Oi()),this.zf="ExternalCopy",Bg(this,a.N.da),a.pc(),this.oc=null,a.focus(),a.Ba("ExternalObjectsDropped",a.selection),this.Uj()))}}; function Eg(a,b,c){if(null===a.oc){var d=a.g;if(null!==d&&!d.nb&&!d.uf){d.eb=!c;d.Wm=!c;a.Tj=d.N.da;d=d.uo(b,d,!0);c=u.Sf();hg(b,c);var e=c.x+c.width/2,f=c.y+c.height/2;u.ic(c);var h=a.iv;c=new la(G);var k=u.K();for(b=b.i;b.next();){var l=b.value;if(l.Gd()&&l.canCopy()){var m=l.location,l=d.ua(l);k.m(h.x-(e-m.x),h.y-(f-m.y));l.location=k;l.qf();c.add(l,If(k))}}u.v(k);for(d=d.i;d.next();)e=d.value,e instanceof W&&e.canCopy()&&c.add(e,If());a.oc=c;Cf(a,c.Oi());null!==a.Sc&&(c=a.Sc,d=c.Nm,c.ll(a.Tj.x- (d.x+d.width/2),a.Tj.y-(d.y+d.height/2)))}}}uf.prototype.doSimulatedDragOut=function(){var a=this.g;null!==a&&(this.mayCopy()||this.mayMove()?a.ac="":a.ac="no-drop")};function Jf(a){this.point=a;this.HE=K.Wj}u.fa("DraggingInfo",Jf);function kg(a,b,c){this.Cc=a;this.info=b;this.LG=c} function Fg(){0 =d&&(d=.1);for(var e=this,f=b.zm(c,d,function(b){return e.findValidLinkablePort(b,a)},null,!0),d=Infinity,b=null,f=f.i;f.next();){var h=f.value,k=h.T;if(k instanceof U){var l=h.lb(Ib,u.K()),m=c.x-l.x,n=c.y-l.y;u.v(l);l=m*m+n*n;l c){if(null!==this.qc&&a===this.eh&&b===this.fh)return!0;var d=b.Jd;null===d&&(d="");if(a.Xv(d).count>=c)return!1}return!0}; Fg.prototype.isValidTo=function(a,b){if(null===a||null===b)return this.Ko;if(this.g.Va===this&&(null!==a.layer&&!a.layer.js||!0!==b.NE))return!1;var c=b.zI;if(Infinity>c){if(null!==this.qc&&a===this.gh&&b===this.hh)return!0;var d=b.Jd;null===d&&(d="");if(a.pg(d).count>=c)return!1}return!0};Fg.prototype.isInSameNode=function(a,b){if(null===a||null===b)return!1;if(a===b)return!0;var c=a.T,d=b.T;return null!==c&&c===d}; Fg.prototype.isLinked=function(a,b){if(null===a||null===b)return!1;var c=a.T;if(!(c instanceof U))return!1;var d=a.Jd;null===d&&(d="");var e=b.T;if(!(e instanceof U))return!1;var f=b.Jd;null===f&&(f="");for(e=e.pg(f);e.next();)if(f=e.value,f.W===c&&f.qg===d)return!0;return!1}; Fg.prototype.isValidLink=function(a,b,c,d){if(!this.isValidFrom(a,b)||!this.isValidTo(c,d)||!(null===b||null===d||(b.CG&&d.yI||!this.isInSameNode(b,d))&&(b.BG&&d.xI||!this.isLinked(b,d)))||null!==this.qc&&(null!==a&&this.isLabelDependentOnLink(a,this.qc)||null!==c&&this.isLabelDependentOnLink(c,this.qc))||null!==a&&null!==c&&(null===a.data&&null!==c.data||null!==a.data&&null===c.data)||!this.isValidCycle(a,c,this.qc))return!1;if(null!==a){var e=a.qw;if(null!==e&&!e(a,b,c,d,this.qc))return!1}if(null!== c&&(e=c.qw,null!==e&&!e(a,b,c,d,this.qc)))return!1;e=this.qw;return null!==e?e(a,b,c,d,this.qc):!0};Fg.prototype.isLabelDependentOnLink=function(a,b){if(null===a)return!1;var c=a.ce;if(null===c)return!1;if(c===b)return!0;var d=new F(U);d.add(a);return Gg(this,c,b,d)};function Gg(a,b,c,d){if(b===c)return!0;var e=b.W;if(null!==e&&e.tf&&(d.add(e),Gg(a,e.ce,c,d)))return!0;b=b.ca;return null!==b&&b.tf&&(d.add(b),Gg(a,b.ce,c,d))?!0:!1} Fg.prototype.isValidCycle=function(a,b,c){void 0===c&&(c=null);if(null===a||null===b)return this.Ko;var d=this.g.EI;if(d!==Hg){if(d===Ig){if(null!==c&&!c.Bc)return!0;for(d=b.oe;d.next();){var e=d.value;if(e!==c&&e.Bc&&e.ca===b)return!1}return!Jg(this,a,b,c,!0)}if(d===Kg){if(null!==c&&!c.Bc)return!0;for(d=a.oe;d.next();)if(e=d.value,e!==c&&e.Bc&&e.W===a)return!1;return!Jg(this,a,b,c,!0)}if(d===Lg)return a===b?a=!0:(d=new F(U),d.add(b),a=Ug(this,d,a,b,c)),!a;if(d===Vg)return!Jg(this,a,b,c,!1);if(d=== Wg)return a===b?a=!0:(d=new F(U),d.add(b),a=Xg(this,d,a,b,c)),!a}return!0};function Jg(a,b,c,d,e){if(b===c)return!0;if(null===b||null===c)return!1;for(var f=b.oe;f.next();){var h=f.value;if(h!==d&&(!e||h.Bc)&&h.ca===b&&(h=h.W,h!==b&&Jg(a,h,c,d,e)))return!0}return!1}function Ug(a,b,c,d,e){if(c===d)return!0;if(null===c||null===d||b.contains(c))return!1;b.add(c);for(var f=c.oe;f.next();){var h=f.value;if(h!==e&&h.ca===c&&(h=h.W,h!==c&&Ug(a,b,h,d,e)))return!0}return!1} function Xg(a,b,c,d,e){if(c===d)return!0;if(null===c||null===d||b.contains(c))return!1;b.add(c);for(var f=c.oe;f.next();){var h=f.value;if(h!==e){var k=h.W,h=h.ca,k=k===c?h:k;if(k!==c&&Xg(a,b,k,d,e))return!0}}return!1}u.defineProperty(Fg,{qw:"linkValidation"},function(){return this.xk},function(a){null!==a&&u.j(a,"function",Fg,"linkValidation");this.xk=a});u.defineProperty(Fg,{yw:"portTargeted"},function(){return this.YB},function(a){null!==a&&u.j(a,"function",Fg,"portTargeted");this.YB=a}); function ua(){0 b.Cs+1&&c =a.x)c=0>=a.y?c+225:1<=a.y?c+135:c+180;else if(1<=a.x)0>=a.y?c+=315:1<=a.y&&(c+=45);else if(0>=a.y)c+=270;else if(1<=a.y)c+=90;else break a;0>c?c+=360:360<=c&&(c-=360);b.cursor=22.5>c?"e-resize":67.5>c?"se-resize":112.5>c?"s-resize":157.5>c?"sw-resize":202.5>c?"w-resize":247.5>c?"nw-resize":292.5>c?"n-resize":337.5>c?"ne-resize":"e-resize"}else if(b instanceof B)for(b=b.elements;b.next();)nh(a, b.value,c)}u.defineProperty(mh,{Is:"handleArchetype"},function(){return this.pk},function(a){null!==a&&u.C(a,S,mh,"handleArchetype");this.pk=a});u.u(mh,{handle:"handle"},function(){return this.Yb});u.defineProperty(mh,{vc:"adornedObject"},function(){return this.Gb},function(a){null!==a&&u.C(a,S,mh,"adornedObject");this.Gb=a});mh.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.g;return null!==a&&!a.nb&&a.ks&&a.N.left?null!==this.findToolHandleAt(a.wc.da,this.name)?!0:!1:!1}; mh.prototype.doActivate=function(){var a=this.g;null!==a&&(this.Yb=this.findToolHandleAt(a.wc.da,this.name),null!==this.Yb&&(this.Gb=this.Yb.T.vc,this.my.set(this.Gb.T.location),this.Vu.set(this.Gb.za),this.Jx=this.computeCellSize(),this.Lx=this.computeMinSize(),this.Kx=this.computeMaxSize(),a.Ge=!0,this.KB=a.Mb.isEnabled,a.Mb.isEnabled=!1,this.Wb(this.name),this.oa=!0))};mh.prototype.doDeactivate=function(){var a=this.g;null!==a&&(this.Uj(),this.Gb=this.Yb=null,this.oa=a.Ge=!1,a.Mb.isEnabled=this.KB)}; mh.prototype.doCancel=function(){this.Gb.za=this.Vu;this.Gb.T.location=this.my;this.stopTool()};mh.prototype.doMouseMove=function(){var a=this.g;if(this.oa&&null!==a){var b=this.Lx,c=this.Kx,d=this.Jx,e=this.Gb.zD(a.N.da,u.K()),f=qh;this.Gb instanceof X&&(f=rh(this.Gb));b=this.computeResize(e,this.Yb.alignment,b,c,d,!(f===sh||f===th||a.N.shift));this.resize(b);a.cf();u.v(e)}}; mh.prototype.doMouseUp=function(){var a=this.g;if(this.oa&&null!==a){var b=this.Lx,c=this.Kx,d=this.Jx,e=this.Gb.zD(a.N.da,u.K()),f=qh;this.Gb instanceof X&&(f=rh(this.Gb));b=this.computeResize(e,this.Yb.alignment,b,c,d,!(f===sh||f===th||a.N.shift));this.resize(b);u.v(e);a.pc();this.zf=this.name;a.Ba("PartResized",this.Gb,this.Vu)}this.stopTool()}; mh.prototype.resize=function(a){if(null!==this.g){var b=this.vc,c=b.T,d=b.Zk(),e=b.Ii(),f=Math.PI*d/180,h=Math.cos(f),f=Math.sin(f),k=0 d?1:0,l=90 d?1:0,d=180 d?1:0,m=b.Ja.width,n=b.Ja.height;b.za=a.size;var p=c.position.copy();c.qf();m=b.Ja.width-m;n=b.Ja.height-n;if(0!==m||0!==n)0!==m&&(p.x+=e*((a.x+m*l)*h-(a.y+n*k)*f)),0!==n&&(p.y+=e*((a.x+m*d)*f+(a.y+n*l)*h)),c.move(p),c instanceof U&&c.Ze()}}; mh.prototype.computeResize=function(a,b,c,d,e,f){b.ne()&&(b=Ib);var h=this.vc.Ja,k=h.x,l=h.y,m=h.x+h.width,n=h.y+h.height,p=1;if(!f){var p=h.width,q=h.height;0>=p&&(p=1);0>=q&&(q=1);p=q/p}q=u.K();K.ys(a.x,a.y,k,l,e.width,e.height,q);a=h.copy();0>=b.x?0>=b.y?(a.x=Math.max(q.x,m-d.width),a.x=Math.min(a.x,m-c.width),a.width=Math.max(m-a.x,c.width),a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n-c.height),a.height=Math.max(n-a.y,c.height),f||(b=a.height/a.width,p=b.y?(a.width=Math.max(Math.min(q.x-k,d.width),c.width),a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n- c.height),a.height=Math.max(n-a.y,c.height),f||(b=a.height/a.width,p=b.y?(a.y=Math.max(q.y,n-d.height),a.y=Math.min(a.y,n-c.height),a.height=n-a.y,f||(a.width=a.height/ p,a.x=k+.5*(m-k-a.width))):1<=b.y&&(a.height=Math.max(Math.min(q.y-l,d.height),c.height),f||(a.width=a.height/p,a.x=k+.5*(m-k-a.width)));u.v(q);return a};mh.prototype.computeMinSize=function(){var a=this.vc.wg.copy(),b=this.wg;!isNaN(b.width)&&b.width>a.width&&(a.width=b.width);!isNaN(b.height)&&b.height>a.height&&(a.height=b.height);return a}; mh.prototype.computeMaxSize=function(){var a=this.vc.bf.copy(),b=this.bf;!isNaN(b.width)&&b.width a&&(a+=360));var b=Math.min(Math.abs(this.mI),180),c=Math.min(Math.abs(this.lI),b/2);!this.g.N.shift&&0b-c&&(a=(Math.floor(a/b)+1)*b));360<=a?a-=360:0>a&&(a+=360);return a};u.defineProperty(uh,{mI:"snapAngleMultiple"},function(){return this.gC},function(a){u.j(a,"number",uh,"snapAngleMultiple");this.gC=a}); u.defineProperty(uh,{lI:"snapAngleEpsilon"},function(){return this.fC},function(a){u.j(a,"number",uh,"snapAngleEpsilon");this.fC=a});u.u(uh,{gK:"originalAngle"},function(){return this.Uu});function wh(){0 e.right&&(c.x-=d.width+5);c.x e.bottom&&(c.y-=d.height+5);c.y e.right&&(c.x-=d.width+5);c.x e.bottom?c.y-(d.height+5):c.y+20;c.y a?c/2*a*a+b:-c/2*(--a*(a-2)-1)+b} Te.prototype.prepareAnimation=Te.prototype.ml=function(){this.Ne&&(this.dj&&this.Ni(),this.bd=!0,this.CA=!1)};function fi(a){a.Ne&&requestAnimationFrame(function(){!1===a.bd||a.dj||(a.Y.jm=1,gi(a.Y),a.bd=!1,a.Y.Ba("AnimationStarting"),hi(a))})}function ii(a,b,c,d,e){if(a.bd&&(!(b instanceof G)||b.HD)){var f=a.Tn;if(f.contains(b)){b=f.ua(b);a=b.start;var h=b.end;void 0===a[c]&&(a[c]=ji(d));h[c]=ji(e)}else a=new pa,h=new pa,a[c]=ji(d),h[c]=ji(e),f.add(b,new ei(a,h))}} function ji(a){return a instanceof w?a.copy():a instanceof ia?a.copy():a} function hi(a){var b;void 0===b&&(b=new pa);var c=a.Y;if(null!==c)if(0===a.Tn.count)a.dj=!1,ki(c,!1),c.cf();else{a.dj=!0;var d=b.yJ||a.oF,e=b.eK||null,f=b.fK||null,h=b.duration||a.Gx;b=a.yF;for(var k=a.Tn.i;k.next();){var l=k.value.start.position;l instanceof w&&(l.I()||l.assign(b))}a.PA=d;a.$t=e;a.au=f;a.vx=h;var m=a.nF=a.Tn;li(a);mi(a,c,m,d,0,h,null!==a.Hl&&null!==a.Gl);Dg(a.Y);ni(a);requestAnimationFrame(function(b){var e=b||+new Date,f=e+h;(function s(b){if(!1!==a.dj){b=b||+new Date;var k=b>f? h:b-e;li(a);mi(a,c,m,d,k,h,null!==a.Hl&&null!==a.Gl);a.$t&&a.$t();Dg(c);ni(a);b>f?oi(a):requestAnimationFrame(s)}})(e)})}}var pi={opacity:function(a,b,c,d,e,f){a.opacity=d(e,b,c-b,f)},position:function(a,b,c,d,e,f){e!==f?a.GE(d(e,b.x,c.x-b.x,f),d(e,b.y,c.y-b.y,f)):a.position=new w(d(e,b.x,c.x-b.x,f),d(e,b.y,c.y-b.y,f))},scale:function(a,b,c,d,e,f){a.scale=d(e,b,c-b,f)},visible:function(a,b,c,d,e,f){a.visible=e!==f?b:c}}; function li(a){if(!a.Gn){var b=a.Y;a.BC=b.eb;a.DA=b.Kw;a.EA=b.ut;b.eb=!0;b.Kw=!0;b.ut=!0;a.Gn=!0}}function ni(a){var b=a.Y;b.eb=a.BC;b.Kw=a.DA;b.ut=a.EA;a.Gn=!1}function mi(a,b,c,d,e,f,h){for(c=c.i;c.next();){var k=c.key,l=c.value,m=l.start,l=l.end,n;for(n in l)if(void 0!==pi[n])pi[n](k,m[n],l[n],d,e,f)}h&&(h=a.Hl,a=a.Gl,n=a.y-h.y,a=d(e,h.x,a.x-h.x,f),d=d(e,h.y,n,f),e=b.rz,b.rz=!0,b.position=new w(a,d),b.rz=e)} Te.prototype.stopAnimation=Te.prototype.Ni=function(){!0===this.bd&&(this.bd=!1,this.CA&&this.Y.de());this.dj&&this.Ne&&(li(this),mi(this,this.Y,this.nF,this.PA,this.vx,this.vx,null!==this.Hl&&null!==this.Gl),ni(this),oi(this))};function oi(a){a.dj=!1;a.Hl=null;a.Gl=null;a.Tn=new la(S,ei);li(a);for(var b=a.Y,c=a.Y.links;c.next();){var d=c.value;null!==d.Yn&&(d.points=d.Yn,d.Yn=null)}b.rw.clear();ki(b,!1);b.pc();b.cf();qi(b);ni(a);a.au&&a.au();a.au=null;a.$t=null;b.Ba("AnimationFinished");b.de()} function ri(a,b,c){var d=b.ba,e=c.ba,f=null;c instanceof V&&(f=c.placeholder);null!==f?(c=f.lb(xb),c.x+=f.padding.left,c.y+=f.padding.top,ii(a,b,"position",c,b.position)):ii(a,b,"position",new w(e.x+e.width/2-d.width/2,e.y+e.height/2-d.height/2),b.position);ii(a,b,"opacity",.01,b.opacity)}function si(a,b,c){a.bd&&(null===a.Hl&&b.I()&&null===a.Gl&&(a.Hl=b.copy()),a.Gl=c.copy())} u.defineProperty(Te,{isEnabled:"isEnabled"},function(){return this.Ne},function(a){u.j(a,"boolean",Te,"isEnabled");this.Ne=a});u.defineProperty(Te,{duration:"duration"},function(){return this.Gx},function(a){u.j(a,"number",Te,"duration");1>a&&u.xa(a,">= 1",Te,"duration");this.Gx=a});u.u(Te,{Xg:"isAnimating"},function(){return this.dj});u.u(Te,{KJ:"isTicking"},function(){return this.Gn});function ei(a,b){this.start=a;this.end=b} function we(){0 =a)return b;for(var c=0,d=0,e=0,f=0,h=0,k=this.Db.i;k.next();){var l=k.value;l instanceof V?e++:l instanceof U?d++:l instanceof W?f++:l instanceof lf?h++:c++}k="";0 =d.count)a=d.count;else if(d.ja(a)===b)return-1;d.Yd(a,b);b.Ks(c);d=this.g;null!==d&&(c?d.na():d.Go(b));b instanceof V&&this.Lw(b);return a}; g.Fe=function(a,b,c){if(!c&&b.layer!==this&&null!==b.layer)return b.layer.Fe(a,b,c);var d=this.Db;if(0>a||a>=d.length){if(a=d.indexOf(b),0>a)return-1}else if(d.ja(a)!==b&&(a=d.indexOf(b),0>a))return-1;b.Ls(c);d.jd(a);d=this.g;null!==d&&(c?d.na():d.Fe(b));b.Du=null;return a}; g.Lw=function(a){for(;null!==a;){if(a.layer===this){var b=a;if(0!==b.Mc.count){for(var c=-1,d=-1,e=this.Db.n,f=e.length,h=0;h d&&k.Sa===b&&(d=h,0<=c))break}!(0>d)&&d a||1=a)return b;for(var c=this.Zb.i;c.next();)b+="\n "+c.value.toString(a-1);return b};D.prototype.checkProperties=function(){return u.check(this)};D.fromDiv=function(a){var b=a;"string"===typeof a&&(b=window.document.getElementById(a));return b instanceof HTMLDivElement&&b.Y instanceof D?b.Y:null}; u.defineProperty(D,{Vk:"div"},function(){return this.Kb},function(a){null!==a&&u.C(a,HTMLDivElement,D,"div");if(this.Kb!==a){Mi=[];var b=this.Kb;null!==b?(b.Y=void 0,b.innerHTML="",null!==this.ib&&(this.ib.removeEventListener("touchstart",this.RE,!1),this.ib.removeEventListener("touchmove",this.QE,!1),this.ib.removeEventListener("touchend",this.PE,!1),this.ib.Ed.Y=null),b=this.tb,null!==b&&(b.df.each(function(a){a.cancelWaitAfter()}),b.Mf.each(function(a){a.cancelWaitAfter()}),b.Nf.each(function(a){a.cancelWaitAfter()})), b.cancelWaitAfter(),this.Va.doCancel(),this.Ig=this.ib=null,window.removeEventListener("resize",this.$E,!1),window.removeEventListener("mousemove",this.So,!0),window.removeEventListener("mousedown",this.Ro,!0),window.removeEventListener("mouseup",this.Uo,!0),window.removeEventListener("mousewheel",this.ah,!0),window.removeEventListener("DOMMouseScroll",this.ah,!0),window.removeEventListener("mouseout",this.To,!0)):this.mf=!1;this.Kb=null;if(null!==a){if(b=a.Y)b.Vk=null;Wi(this,a);this.Tz()}}}); function Zi(a){var b=a.ib;b.addEventListener("touchstart",a.RE,!1);b.addEventListener("touchmove",a.QE,!1);b.addEventListener("touchend",a.PE,!1);b.addEventListener("mousemove",a.So,!1);b.addEventListener("mousedown",a.Ro,!1);b.addEventListener("mouseup",a.Uo,!1);b.addEventListener("mousewheel",a.ah,!1);b.addEventListener("DOMMouseScroll",a.ah,!1);b.addEventListener("mouseout",a.To,!1);b.addEventListener("keydown",a.kH,!1);b.addEventListener("keyup",a.lH,!1);b.addEventListener("selectstart",function(a){a.preventDefault(); return!1},!1);b.addEventListener("contextmenu",function(a){a.preventDefault();return!1},!1);b.addEventListener("gesturechange",function(b){a.tb.Do===ai&&b.preventDefault()},!1);b.addEventListener("pointerdown",a.KH,!1);b.addEventListener("pointermove",a.MH,!1);b.addEventListener("pointerleave",a.LH,!1);window.addEventListener("resize",a.$E,!1)}function ki(a,b){a.jm=null;b&&a.hE()} D.prototype.computePixelRatio=function(){if(null!==this.jm)return this.jm;var a=this.Ig;return(window.devicePixelRatio||1)/(a.webkitBackingStorePixelRatio||a.mozBackingStorePixelRatio||a.msBackingStorePixelRatio||a.oBackingStorePixelRatio||a.backingStorePixelRatio||1)};D.prototype.doMouseMove=function(){this.Va.doMouseMove()};D.prototype.doMouseDown=function(){this.Va.doMouseDown()};D.prototype.doMouseUp=function(){this.Va.doMouseUp()};D.prototype.doMouseWheel=function(){this.Va.doMouseWheel()}; D.prototype.doKeyDown=function(){this.Va.doKeyDown()};D.prototype.doKeyUp=function(){this.Va.doKeyUp()};function gi(a){if(null!==a.ib){var b=a.Kb;if(0!==b.clientWidth&&0!==b.clientHeight){var c=a.rk?a.Ad:0,d=a.qk?a.Ad:0,e=a.of;a.of=a.computePixelRatio();a.of!==e&&(a.hq=!0,a.de());if(b.clientWidth!==a.Ab+c||b.clientHeight!==a.zb+d)a.Il=!0,a.Md=!0,b=a.Qb,null!==b&&b.kw&&b.H(),a.wd||a.de()}}}D.prototype.focus=D.prototype.focus=function(){this.ib&&this.ib.focus()}; function $i(a,b,c){void 0===b&&(b=a.Ig);void 0===c&&(c=!0);c&&(b.Ft="");b.Um="";b.Tm=""}function Ti(a){var b=new we;b.name="Background";a.es(b);b=new we;b.name="";a.es(b);b=new we;b.name="Foreground";a.es(b);b=new we;b.name="Adornment";b.Ac=!0;a.es(b);b=new we;b.name="Tool";b.Ac=!0;b.JD=!0;a.es(b);b=new we;b.name="Grid";b.pf=!1;b.Bg=!1;b.Ac=!0;a.LF(b,a.xs("Background"))} function aj(a){a.ad=new B(bj);a.ad.name="GRID";var b=new X;b.Fb="LineH";b.stroke="lightgray";b.hb=.5;b.interval=1;a.ad.add(b);b=new X;b.Fb="LineH";b.stroke="gray";b.hb=.5;b.interval=5;a.ad.add(b);b=new X;b.Fb="LineH";b.stroke="gray";b.hb=1;b.interval=10;a.ad.add(b);b=new X;b.Fb="LineV";b.stroke="lightgray";b.hb=.5;b.interval=1;a.ad.add(b);b=new X;b.Fb="LineV";b.stroke="gray";b.hb=.5;b.interval=5;a.ad.add(b);b=new X;b.Fb="LineV";b.stroke="gray";b.hb=1;b.interval=10;a.ad.add(b);b=new G;b.add(a.ad); b.wf="Grid";b.vz=!1;b.HD=!1;b.Bg=!1;b.Az="GRID";a.add(b);a.Db.remove(b);a.ad.visible=!1} D.prototype.LB=function(){if(this.Y.isEnabled){var a=this.Y;if(a.ty&&null!==a.ib){a.av=!0;var b=a.Dd,c=a.ob,d=b.width,e=c.width,f=b.height,h=c.height,k=b.right,l=c.right,m=b.bottom,n=c.bottom,p=b.x,q=c.x,b=b.y,c=c.y,r=a.scale;if(e l&&(a.position= new w(-(a.uj.scrollWidth-a.Ab)+this.scrollLeft-a.Ab/r+a.Dd.right,a.position.y))),this.cC&&a.Se&&(b n&&(a.position=new w(a.position.x,-(a.vj.scrollHeight-a.zb)+this.scrollTop-a.zb/r+a.Dd.bottom))),u.v(s),cj(a),a.av=!1,a.Il=!1,b=a.Dd,c=a.ob,k=b.right,l=c.right,m=b.bottom,n=c.bottom,p=b.x,q=c.x,b=b.y,c=c.y,e>=d&&p>=q&&k<=l&&(a.uy.style.width="1px"),h>=f&&b>=c&&m<=n&&(a.vy.style.height="1px")}}else dj(this.Y)}; D.prototype.Tu=function(){this.Y.isEnabled?this.Y.ty=!0:dj(this.Y)};D.prototype.computeBounds=D.prototype.lg=function(){0 c&&(e=c),e a.Zg&&(e=a.Zg),e):b===lj?(e=l>k?(h-a.Ad)/d:(f-a.Ad)/e,e>c&&(e=c),e a.Zg&&(e=a.Zg),e):a.scale}D.prototype.zoomToFit=D.prototype.zoomToFit=function(){this.scale=hj(this,kj)}; D.prototype.zoomToRect=function(a,b){void 0===b&&(b=kj);var c=a.width,d=a.height;if(!(0===c||0===d||isNaN(c)&&isNaN(d))){var e=1;if(b===kj||b===lj)if(isNaN(c))e=this.ob.height*this.scale/d;else if(isNaN(d))e=this.ob.width*this.scale/c;else var e=this.Ab,f=this.zb,e=b===lj?f/d>e/c?(f-(this.qk?this.Ad:0))/d:(e-(this.rk?this.Ad:0))/c:Math.min(f/d,e/c);this.scale=e;this.position=new w(a.x,a.y)}};u.defineProperty(D,{rz:null},function(){return this.sc},function(a){this.sc=a}); D.prototype.alignDocument=function(a,b){this.fi&&jj(this,this.lg());var c=this.Dd,d=this.ob,e=this.sc;this.sc=!0;this.position=new w(c.x+(a.x*c.width+a.offsetX)-(b.x*d.width-b.offsetX),c.y+(a.y*c.height+a.offsetY)-(b.y*d.height-b.offsetY));this.sc=e;this.na()}; function ij(a,b,c,d,e,f,h){var k=b.x,l=b.y;if(h||a.yE===Ni)f.pd()&&(d>c.width&&(k=c.x+(f.x*c.width+f.offsetX)-(f.x*d-f.offsetX)),e>c.height&&(l=c.y+(f.y*c.height+f.offsetY)-(f.y*e-f.offsetY))),f=a.xE,h=d-c.width,d c.left?k=c.left:k c.top?l=c.top:l b.touches.length)&&b.preventDefault();b.cancelBubble=!0;return!1} D.prototype.kH=function(a){if(!this.Y.isEnabled)return!1;var b=this.Y.Pb;nj(this.Y,this.Y,a,b,!1);b.key=String.fromCharCode(a.which);b.Wk=!0;switch(a.which){case 8:b.key="Backspace";break;case 33:b.key="PageUp";break;case 34:b.key="PageDown";break;case 35:b.key="End";break;case 36:b.key="Home";break;case 37:b.key="Left";break;case 38:b.key="Up";break;case 39:b.key="Right";break;case 40:b.key="Down";break;case 45:b.key="Insert";break;case 46:b.key="Del";break;case 48:b.key="0";break;case 187:case 61:case 107:b.key= "Add";break;case 189:case 173:case 109:b.key="Subtract";break;case 27:b.key="Esc"}this.Y.doKeyDown();return 187!==a.which&&189!==a.which&&48!==a.which&&107!==a.which&&109!==a.which&&61!==a.which&&173!==a.which||!0!==a.ctrlKey?rj(b,a):(a.cancelBubble=!0,a.preventDefault(),a.stopPropagation(),!1)}; D.prototype.lH=function(a){if(!this.Y.isEnabled)return!1;var b=this.Y.Pb;nj(this.Y,this.Y,a,b,!1);b.key=String.fromCharCode(a.which);b.up=!0;switch(a.which){case 8:b.key="Backspace";break;case 33:b.key="PageUp";break;case 34:b.key="PageDown";break;case 35:b.key="End";break;case 36:b.key="Home";break;case 37:b.key="Left";break;case 38:b.key="Up";break;case 39:b.key="Right";break;case 40:b.key="Down";break;case 45:b.key="Insert";break;case 46:b.key="Del";break;case 93:a.preventDefault()}this.Y.doKeyUp(); return rj(b,a)};D.prototype.bq=function(a){var b=this.ib;if(null===b)return new w(0,0);var c=this.Ab,d=this.zb,b=b.getBoundingClientRect(),c=a.clientX-c/b.width*b.left;a=a.clientY-d/b.height*b.top;return null!==this.Sd?(a=new w(c,a),Wa(a,this.Sd),a):new w(c,a)};function oj(a,b,c){var d=a.ib,e=a.Ab,f=a.zb,h=0,k=0;null!==d&&(d=d.getBoundingClientRect(),h=b.clientX-e/d.width*d.left,k=b.clientY-f/d.height*d.top);c.gf.m(h,k);null!==a.Sd?(b=u.fc(h,k),a.Sd.Qh(b),c.da.assign(b),u.v(b)):c.da.m(h,k)} D.prototype.invalidateDocumentBounds=D.prototype.pc=function(){this.fi||(this.fi=!0,this.de(!0))};function qi(a){a.wd||ej(a);a.fi&&jj(a,a.lg());for(a=a.Vl.i;a.next();)qi(a.value)}D.prototype.redraw=D.prototype.Tz=function(){this.sc||this.wd||(this.na(),sj(this),cj(this),this.pc(),this.cf())};D.prototype.isUpdateRequested=function(){return this.Ef}; D.prototype.delayInitialization=D.prototype.oG=function(a){void 0===a&&(a=null);var b=this.Mb,c=b.isEnabled;b.Ni();b.isEnabled=!1;Dg(this);this.mf=!1;b.isEnabled=c;null!==a&&u.setTimeout(a,1)};D.prototype.requestUpdate=D.prototype.de=function(a){void 0===a&&(a=!1);if(!0!==this.Ef&&!(this.sc||!1===a&&this.wd)){this.Ef=!0;var b=this;requestAnimationFrame(function(){b.Ef&&b.cf()})}};D.prototype.maybeUpdate=D.prototype.cf=function(){if(!this.vn||this.Ef)this.vn&&(this.vn=!1),Dg(this)}; function tj(a,b){a.sc||!a.Il||dj(a)||(b&&ej(a),gj(a,!1))} function Dg(a){if(!a.wd&&(a.Ef=!1,null!==a.Kb)){a.wd=!0;var b=a.oh,c=a.VB;if(!b.Gn&&0!==c.length){for(var d=c.n,e=d.length,f=0;f b;b++){var c=a.Yf.i;if(null===c||0===a.Yf.count)break;a.Yf=new F(S);var d=a,e=a.Yf;for(c.reset();c.next();){var f=c.value;!f.Gd()||f instanceof V||!f.Ga()||(f.hl()?(Ph(f,Infinity,Infinity),f.zc()):e.add(f))}for(c.reset();c.next();)f=c.value,f instanceof V&&f.Ga()&&zj(d,f);for(c.reset();c.next();)f=c.value,f instanceof W&&(d=f,d.Ga()&&(d.hl()?(Ph(d,Infinity,Infinity),d.zc(),d.Ys()):e.add(d)));for(c.reset();c.next();)d=c.value,d instanceof lf&&d.Ga()&&(d.hl()?(Ph(d,Infinity,Infinity),d.zc()):e.add(d))}}function zj(a,b){for(var c=u.fb(),d=u.fb(),e=b.Mc;e.next();){var f=e.value;f.Ga()&&(f instanceof V?(Aj(f)||Bj(f)||Cj(f))&&zj(a,f):f instanceof W?f.W==b||f.ca==b?d.push(f):c.push(f):(Ph(f,Infinity,Infinity),f.zc()))}for(var e=c.length,h=0;h k+1&&(n=Math.max((v- k)*C+a.Ab,n)),q+1 l+1&&(y=Math.max((p-l)*C+a.zb,y)),r+1 k+1&&(n=Math.max((v-k)*C+a.Ab,n)),q+1 l+1&&(y=Math.max((p-l)*C+a.zb,y)),r+1 k+1&&(a.uj.scrollLeft=a.position.x*C));a.mz&&a.Se&&(r+1 l+1&&(a.vj.scrollTop=a.position.y*C));h&&(a.hq=!0);m=a.Ab;c=a.zb;a.vj.style.height=c+"px";a.vj.style.width=m+(a.rk?a.Ad:0)+"px";a.uj.style.width=m+"px";a.uj.style.height=c+(a.qk?a.Ad:0)+"px";a.ty=!1;return d!==m||e!==c||a.Mb.bd?(n=a.ob,a.et(f,n,h),!1):!0} D.prototype.add=D.prototype.add=function(a){u.C(a,G,D,"add:part");var b=a.g;if(b!==this){null!==b&&u.k("Cannot add part "+a.toString()+" to "+this.toString()+". It is already a part of "+b.toString());this.Wm&&(a.wk="Tool");var c=a.wf,b=this.xs(c);null===b&&(b=this.xs(""));null===b&&u.k('Cannot add a Part when unable find a Layer named "'+c+'" and there is no default Layer');a.layer!==b&&(c=b.Go(99999999,a,a.g===this),0<=c&&this.Dc(be,"parts",b,null,a,null,c),b.Ac||this.pc(),a.H(Jj),c=a.Ss,null!== c&&c(a,null,b))}}; D.prototype.Go=function(a){if(a instanceof U){if(this.Sn.add(a),a instanceof V){var b=a.Sa;null===b?this.Ik.add(a):b.Qn.add(a);b=a.Qb;null!==b&&(b.g=this)}}else a instanceof W?this.On.add(a):a instanceof lf||this.Db.add(a);var c=this;Kj(a,function(a){Lj(c,a)});a.Ib&&a.R();b=a.data;null!==b&&(a instanceof lf||(a instanceof W?this.lk.add(b,a):this.ai.add(b,a)),Kj(a,function(a){Mj(c,a)}));!0!==Bj(a)&&!0!==Cj(a)||this.Yf.add(a);Nj(a,!0,this);Oj(a)?(a.ba.I()&&this.na(yi(a,a.ba)),this.pc()):a.Ga()&&a.ba.I()&& this.na(yi(a,a.ba));this.de()}; D.prototype.Fe=function(a){a.ns();if(a instanceof U){if(this.Sn.remove(a),a instanceof V){var b=a.Sa;null===b?this.Ik.remove(a):b.Qn.remove(a);b=a.Qb;null!==b&&(b.g=null)}}else a instanceof W?this.On.remove(a):a instanceof lf||this.Db.remove(a);var c=this;Kj(a,function(a){Pj(c,a)});b=a.data;null!==b&&(a instanceof lf||(a instanceof W?this.lk.remove(b):this.ai.remove(b)),Kj(a,function(a){Qj(c,a)}));this.Yf.remove(a);Oj(a)?(a.ba.I()&&this.na(yi(a,a.ba)),this.pc()):a.Ga()&&a.ba.I()&&this.na(yi(a,a.ba)); this.de()};D.prototype.remove=D.prototype.remove=function(a){u.C(a,G,D,"remove:part");a.Za=!1;a.Yg=!1;var b=a.layer;if(null!==b&&b.g===this){a.H(Rj);a.ym();var c=b.Fe(-1,a,!1);0<=c&&this.Dc(ce,"parts",b,a,null,c,null);c=a.Ss;null!==c&&c(a,b,null)}};D.prototype.removeParts=D.prototype.Xz=function(a,b){if(u.isArray(a))for(var c=u.qb(a),d=0;d d&&this.pc()}; D.prototype.addLayerAfter=function(a,b){Sj(this,a,b);a.Ec(this);var c=this.Zb,d=c.indexOf(a);0<=d&&(c.remove(a),null!==this.Od&&this.Dc(ce,"layers",this,a,null,d,null));for(var e=c.count,f=0;f d&&this.pc()}; D.prototype.removeLayer=function(a){u.C(a,we,D,"removeLayer:layer");a.g!==this&&u.k("Cannot remove a Layer from another Diagram: "+a+" of "+a.g);if(""!==a.name){var b=this.Zb,c=b.indexOf(a);if(b.remove(a)){for(b=a.Db.copy().i;b.next();){var d=b.value,e=d.wf;d.wf=e!==a.name?e:""}null!==this.Od&&this.Dc(ce,"layers",this,a,null,c,null);this.na();this.pc()}}};D.prototype.findLayer=D.prototype.xs=function(a){for(var b=this.nw;b.next();){var c=b.value;if(c.name===a)return c}return null}; D.prototype.addChangedListener=D.prototype.Ky=function(a){u.j(a,"function",D,"addChangedListener:listener");null===this.Ui&&(this.Ui=new E("function"));this.Ui.add(a)};D.prototype.removeChangedListener=D.prototype.Uz=function(a){u.j(a,"function",D,"removeChangedListener:listener");null!==this.Ui&&(this.Ui.remove(a),0===this.Ui.count&&(this.Ui=null))}; D.prototype.Lv=function(a){this.eb||this.ga.DD(a);a.Bd!==ae&&(this.Sh=!0);if(null!==this.Ui){var b=this.Ui,c=b.length;if(1===c)b=b.ja(0),b(a);else if(0!==c)for(var d=b.Ke(),e=0;e a.Zg&&(c=a.Zg);a.position=new w(a.Na.x+h.x/b-h.x/c,a.Na.y+h.y/b- h.y/c);a.sc=!1;a.$b=c;a.et(d,a.ob);gj(a,!1);a.na();sj(a)}}D.prototype.et=function(a,b,c){void 0===c&&(c=!1);c||sj(this);cj(this);var d=this.Qb;null===d||!d.kw||c||a.width===b.width&&a.height===b.height||d.H();d=this.Va;!0===this.Kl&&d instanceof jf&&(this.N.da=this.WE(this.N.gf),d.doMouseMove());this.oz(a,b);vj(this);this.Ba("ViewportBoundsChanged",c?u.nh:null,a)}; function vj(a,b){void 0===b&&(b=null);var c=a.ad;if(null!==c&&c.visible){for(var d=u.ul(),e=1,f=1,h=c.Aa.n,k=h.length,l=0;l n||(Zj(m.Fb)?f=f*n/K.xD(f,n):e=e*n/K.xD(e,n))}h=c.bw;d.m(f*h.width,e*h.height);h=f=l=k=0;if(null!==b)k=b.width,l=b.height,f=b.x,h=b.y;else{e=u.Sf();f=a.ob;e.m(f.x,f.y,f.width,f.height);for(h=a.Vl.i;h.next();)f=h.value.ob,f.I()&&kb(e,f.x,f.y,f.width,f.height);k=e.width;l=e.height;f=e.x;h=e.y;if(!e.I())return}c.width=k+2*d.width;c.height=l+2*d.height; e=u.K();K.ys(f,h,0,0,d.width,d.height,e);e.offset(-d.width,-d.height);u.Oj(d);c.T.location=e;u.v(e)}}D.prototype.clearSelection=D.prototype.Nv=function(){var a=0 a&&u.xa(a,">= zero",D,"linkSpacing"),this.gj=a,this.h("linkSpacing",b,a))});u.u(D,{nw:"layers"},function(){return this.Zb.i}); u.defineProperty(D,{uf:"isModelReadOnly"},function(){var a=this.Od;return null===a?!1:a.nb},function(a){var b=this.Od;null!==b&&(b.nb=a)});u.defineProperty(D,{nb:"isReadOnly"},function(){return this.vk},function(a){var b=this.vk;b!==a&&(u.j(a,"boolean",D,"isReadOnly"),this.vk=a,this.h("isReadOnly",b,a))});u.defineProperty(D,{isEnabled:"isEnabled"},function(){return this.Ne},function(a){var b=this.Ne;b!==a&&(u.j(a,"boolean",D,"isEnabled"),this.Ne=a,this.h("isEnabled",b,a))}); u.defineProperty(D,{Ny:"allowClipboard"},function(){return this.Ht},function(a){var b=this.Ht;b!==a&&(u.j(a,"boolean",D,"allowClipboard"),this.Ht=a,this.h("allowClipboard",b,a))});u.defineProperty(D,{Ij:"allowCopy"},function(){return this.Xj},function(a){var b=this.Xj;b!==a&&(u.j(a,"boolean",D,"allowCopy"),this.Xj=a,this.h("allowCopy",b,a))}); u.defineProperty(D,{mm:"allowDelete"},function(){return this.Yj},function(a){var b=this.Yj;b!==a&&(u.j(a,"boolean",D,"allowDelete"),this.Yj=a,this.h("allowDelete",b,a))});u.defineProperty(D,{Cv:"allowDragOut"},function(){return this.It},function(a){var b=this.It;b!==a&&(u.j(a,"boolean",D,"allowDragOut"),this.It=a,this.h("allowDragOut",b,a))}); u.defineProperty(D,{MC:"allowDrop"},function(){return this.Jt},function(a){var b=this.Jt;b!==a&&(u.j(a,"boolean",D,"allowDrop"),this.Jt=a,this.h("allowDrop",b,a))});u.defineProperty(D,{Gv:"allowTextEdit"},function(){return this.gk},function(a){var b=this.gk;b!==a&&(u.j(a,"boolean",D,"allowTextEdit"),this.gk=a,this.h("allowTextEdit",b,a))}); u.defineProperty(D,{Dv:"allowGroup"},function(){return this.Zj},function(a){var b=this.Zj;b!==a&&(u.j(a,"boolean",D,"allowGroup"),this.Zj=a,this.h("allowGroup",b,a))});u.defineProperty(D,{Hv:"allowUngroup"},function(){return this.hk},function(a){var b=this.hk;b!==a&&(u.j(a,"boolean",D,"allowUngroup"),this.hk=a,this.h("allowUngroup",b,a))}); u.defineProperty(D,{mo:"allowInsert"},function(){return this.Lt},function(a){var b=this.Lt;b!==a&&(u.j(a,"boolean",D,"allowInsert"),this.Lt=a,this.h("allowInsert",b,a))});u.defineProperty(D,{js:"allowLink"},function(){return this.$j},function(a){var b=this.$j;b!==a&&(u.j(a,"boolean",D,"allowLink"),this.$j=a,this.h("allowLink",b,a))}); u.defineProperty(D,{nm:"allowRelink"},function(){return this.bk},function(a){var b=this.bk;b!==a&&(u.j(a,"boolean",D,"allowRelink"),this.bk=a,this.h("allowRelink",b,a))});u.defineProperty(D,{Nk:"allowMove"},function(){return this.ak},function(a){var b=this.ak;b!==a&&(u.j(a,"boolean",D,"allowMove"),this.ak=a,this.h("allowMove",b,a))}); u.defineProperty(D,{Ev:"allowReshape"},function(){return this.ck},function(a){var b=this.ck;b!==a&&(u.j(a,"boolean",D,"allowReshape"),this.ck=a,this.h("allowReshape",b,a))});u.defineProperty(D,{ks:"allowResize"},function(){return this.dk},function(a){var b=this.dk;b!==a&&(u.j(a,"boolean",D,"allowResize"),this.dk=a,this.h("allowResize",b,a))}); u.defineProperty(D,{Fv:"allowRotate"},function(){return this.ek},function(a){var b=this.ek;b!==a&&(u.j(a,"boolean",D,"allowRotate"),this.ek=a,this.h("allowRotate",b,a))});u.defineProperty(D,{pf:"allowSelect"},function(){return this.fk},function(a){var b=this.fk;b!==a&&(u.j(a,"boolean",D,"allowSelect"),this.fk=a,this.h("allowSelect",b,a))}); u.defineProperty(D,{NC:"allowUndo"},function(){return this.Mt},function(a){var b=this.Mt;b!==a&&(u.j(a,"boolean",D,"allowUndo"),this.Mt=a,this.h("allowUndo",b,a))});u.defineProperty(D,{Iv:"allowZoom"},function(){return this.Ot},function(a){var b=this.Ot;b!==a&&(u.j(a,"boolean",D,"allowZoom"),this.Ot=a,this.h("allowZoom",b,a))}); u.defineProperty(D,{mz:"hasVerticalScrollbar"},function(){return this.ru},function(a){var b=this.ru;b!==a&&(u.j(a,"boolean",D,"hasVerticalScrollbar"),this.ru=a,sj(this),this.na(),this.h("hasVerticalScrollbar",b,a),gj(this,!1))});u.defineProperty(D,{lz:"hasHorizontalScrollbar"},function(){return this.qu},function(a){var b=this.qu;b!==a&&(u.j(a,"boolean",D,"hasHorizontalScrollbar"),this.qu=a,sj(this),this.na(),this.h("hasHorizontalScrollbar",b,a),gj(this,!1))}); u.defineProperty(D,{Re:"allowHorizontalScroll"},function(){return this.Kt},function(a){var b=this.Kt;b!==a&&(u.j(a,"boolean",D,"allowHorizontalScroll"),this.Kt=a,this.h("allowHorizontalScroll",b,a),gj(this,!1))});u.defineProperty(D,{Se:"allowVerticalScroll"},function(){return this.Nt},function(a){var b=this.Nt;b!==a&&(u.j(a,"boolean",D,"allowVerticalScroll"),this.Nt=a,this.h("allowVerticalScroll",b,a),gj(this,!1))}); u.defineProperty(D,{mt:"scrollHorizontalLineChange"},function(){return this.bv},function(a){var b=this.bv;b!==a&&(u.j(a,"number",D,"scrollHorizontalLineChange"),0>a&&u.xa(a,">= 0",D,"scrollHorizontalLineChange"),this.bv=a,this.h("scrollHorizontalLineChange",b,a))}); u.defineProperty(D,{nt:"scrollVerticalLineChange"},function(){return this.cv},function(a){var b=this.cv;b!==a&&(u.j(a,"number",D,"scrollVerticalLineChange"),0>a&&u.xa(a,">= 0",D,"scrollVerticalLineChange"),this.cv=a,this.h("scrollVerticalLineChange",b,a))});u.defineProperty(D,{N:"lastInput"},function(){return this.Pb},function(a){this.Pb=a});u.defineProperty(D,{wc:"firstInput"},function(){return this.nk},function(a){this.nk=a}); u.defineProperty(D,{ac:"currentCursor"},function(){return this.ux},function(a){""===a&&(a=this.Rp);this.ux!==a&&(u.j(a,"string",D,"currentCursor"),null!==this.ib&&(this.ux=a,this.ib.style.cursor=a,this.Kb.style.cursor=a))});u.defineProperty(D,{nJ:"defaultCursor"},function(){return this.Rp},function(a){""===a&&(a="auto");var b=this.Rp;b!==a&&(u.j(a,"string",D,"defaultCursor"),this.Rp=a,this.h("defaultCursor",b,a))}); u.defineProperty(D,{BJ:"hasGestureZoom"},function(){return this.zn},function(a){var b=this.zn;b!==a&&(u.j(a,"boolean",D,"hasGestureZoom"),this.zn=a,this.h("hasGestureZoom",b,a))});u.defineProperty(D,{click:"click"},function(){return this.Xh},function(a){var b=this.Xh;b!==a&&(null!==a&&u.j(a,"function",D,"click"),this.Xh=a,this.h("click",b,a))}); u.defineProperty(D,{us:"doubleClick"},function(){return this.di},function(a){var b=this.di;b!==a&&(null!==a&&u.j(a,"function",D,"doubleClick"),this.di=a,this.h("doubleClick",b,a))});u.defineProperty(D,{Vy:"contextClick"},function(){return this.Zh},function(a){var b=this.Zh;b!==a&&(null!==a&&u.j(a,"function",D,"contextClick"),this.Zh=a,this.h("contextClick",b,a))}); u.defineProperty(D,{Gz:"mouseOver"},function(){return this.ni},function(a){var b=this.ni;b!==a&&(null!==a&&u.j(a,"function",D,"mouseOver"),this.ni=a,this.h("mouseOver",b,a))});u.defineProperty(D,{Fz:"mouseHover"},function(){return this.mi},function(a){var b=this.mi;b!==a&&(null!==a&&u.j(a,"function",D,"mouseHover"),this.mi=a,this.h("mouseHover",b,a))}); u.defineProperty(D,{Ez:"mouseHold"},function(){return this.li},function(a){var b=this.li;b!==a&&(null!==a&&u.j(a,"function",D,"mouseHold"),this.li=a,this.h("mouseHold",b,a))});u.defineProperty(D,{EH:"mouseDragOver"},function(){return this.Pu},function(a){var b=this.Pu;b!==a&&(null!==a&&u.j(a,"function",D,"mouseDragOver"),this.Pu=a,this.h("mouseDragOver",b,a))}); u.defineProperty(D,{Dz:"mouseDrop"},function(){return this.ki},function(a){var b=this.ki;b!==a&&(null!==a&&u.j(a,"function",D,"mouseDrop"),this.ki=a,this.h("mouseDrop",b,a))});u.defineProperty(D,{mA:"toolTip"},function(){return this.ui},function(a){var b=this.ui;b!==a&&(null!==a&&u.C(a,lf,D,"toolTip"),this.ui=a,this.h("toolTip",b,a))}); u.defineProperty(D,{contextMenu:"contextMenu"},function(){return this.$h},function(a){var b=this.$h;b!==a&&(null!==a&&u.C(a,lf,D,"contextMenu"),this.$h=a,this.h("contextMenu",b,a))});u.defineProperty(D,{Eb:"commandHandler"},function(){return this.kx},function(a){var b=this.kx;b!==a&&(u.C(a,sa,D,"commandHandler"),null!==a.g&&u.k("Cannot share CommandHandlers between Diagrams: "+a.toString()),null!==b&&b.Ec(null),this.kx=a,a.Ec(this))}); u.defineProperty(D,{tb:"toolManager"},function(){return this.Gy},function(a){var b=this.Gy;b!==a&&(u.C(a,jf,D,"toolManager"),null!==a.g&&u.k("Cannot share ToolManagers between Diagrams: "+a.toString()),null!==b&&b.Ec(null),this.Gy=a,a.Ec(this))});u.defineProperty(D,{az:"defaultTool"},function(){return this.Ax},function(a){var b=this.Ax;b!==a&&(u.C(a,xe,D,"defaultTool"),this.Ax=a,this.Va===b&&(this.Va=a))}); u.defineProperty(D,{Va:"currentTool"},function(){return this.wx},function(a){var b=this.wx;if(null!==b)for(b.oa&&b.doDeactivate(),b.cancelWaitAfter(),b.doStop(),b=this.Vl.i;b.next();)b.value.na();null===a&&(a=this.az);null!==a&&(u.C(a,xe,D,"currentTool"),this.wx=a,a.Ec(this),a.doStart())});u.u(D,{selection:"selection"},function(){return this.fv}); u.defineProperty(D,{wH:"maxSelectionCount"},function(){return this.Ku},function(a){var b=this.Ku;if(b!==a)if(u.j(a,"number",D,"maxSelectionCount"),0<=a&&!isNaN(a)){if(this.Ku=a,this.h("maxSelectionCount",b,a),!this.ga.cb&&(a=this.selection.count-a,0= 0",D,"maxSelectionCount")}); u.defineProperty(D,{HH:"nodeSelectionAdornmentTemplate"},function(){return this.Ru},function(a){var b=this.Ru;b!==a&&(u.C(a,lf,D,"nodeSelectionAdornmentTemplate"),this.Ru=a,this.h("nodeSelectionAdornmentTemplate",b,a))});u.defineProperty(D,{MG:"groupSelectionAdornmentTemplate"},function(){return this.nu},function(a){var b=this.nu;b!==a&&(u.C(a,lf,D,"groupSelectionAdornmentTemplate"),this.nu=a,this.h("groupSelectionAdornmentTemplate",b,a))}); u.defineProperty(D,{sH:"linkSelectionAdornmentTemplate"},function(){return this.Fu},function(a){var b=this.Fu;b!==a&&(u.C(a,lf,D,"linkSelectionAdornmentTemplate"),this.Fu=a,this.h("linkSelectionAdornmentTemplate",b,a))});u.u(D,{cw:"highlighteds"},function(){return this.su}); u.defineProperty(D,{Sh:"isModified"},function(){var a=this.ga;return a.isEnabled?null!==a.Ei?!0:this.Wx&&this.Kg!==a.Ji:this.Wx},function(a){if(this.Wx!==a){u.j(a,"boolean",D,"isModified");this.Wx=a;var b=this.ga;!a&&b.isEnabled&&(this.Kg=b.Ji);a||ik(this)}});function ik(a){var b=a.Sh;a.DC!==b&&(a.DC=b,a.Ba("Modified"))} u.defineProperty(D,{ha:"model"},function(){return this.Od},function(a){var b=this.Od;if(b!==a){u.C(a,J,D,"model");this.Va.doCancel();null!==b&&b.ga!==a.ga&&b.ga.ND&&u.k("Do not replace a Diagram.model while a transaction is in progress.");this.Mb.Ni();this.Nv();this.mf=!1;this.vn=!0;this.Kg=-2;this.Ef=!1;var c=this.wd;this.wd=!0;this.Mb.ml();null!==b&&(b.Uz(this.GB),b instanceof Q&&jk(this,b.Qj),jk(this,b.dh));this.Od=a;a.Ky(this.FB);kk(this,a.dh);a instanceof Q&&lk(this,a.Qj);a.Uz(this.FB);a.Ky(this.GB); this.wd=c;this.sc||this.na();null!==b&&(a.ga.isEnabled=b.ga.isEnabled)}});u.defineProperty(D,{Oa:null},function(){return this.yB},function(a){this.yB=a});u.u(D,{rw:null},function(){return this.tF}); function Qi(a,b){if(b.ha===a.ha){var c=b.Bd,d=b.propertyName;if(c===ae&&"S"===d[0])if("StartingFirstTransaction"===d)c=a.tb,c.df.each(function(b){b.Ec(a)}),c.Mf.each(function(b){b.Ec(a)}),c.Nf.each(function(b){b.Ec(a)}),a.wd||a.mf||(a.eu=!0,a.vn&&(a.Ef=!0),a.oh.ml());else if("StartingUndo"===d||"StartingRedo"===d){var e=a.Mb;e.Xg&&!a.eb&&e.Ni();a.Ba("ChangingSelection")}else"StartedTransaction"===d&&(e=a.Mb,e.Xg&&!a.eb&&e.Ni(),a.Au&&e.ml());else if(a.Oa){a.Oa=!1;try{var f=b.Lf;if(""!==f)if(c===$d){if("linkFromKey"=== f){var h=b.object,k=a.og(h);if(null!==k){var l=b.newValue,m=a.Xe(l);k.W=m}}else if("linkToKey"===f)h=b.object,k=a.og(h),null!==k&&(l=b.newValue,m=a.Xe(l),k.ca=m);else if("linkFromPortId"===f){if(h=b.object,k=a.og(h),null!==k){var n=b.newValue;"string"===typeof n&&(k.qg=n)}}else if("linkToPortId"===f)h=b.object,k=a.og(h),null!==k&&(n=b.newValue,"string"===typeof n&&(k.mh=n));else if("nodeGroupKey"===f){var h=b.object,p=a.Ph(h);if(null!==p){var q=b.newValue;if(void 0!==q){var r=a.Xe(q);p.Sa=r instanceof V?r:null}else p.Sa=null}}else if("linkLabelKeys"===f){if(h=b.object,k=a.og(h),null!==k){var s=b.oldValue,t=b.newValue;if(u.isArray(s))for(var v=u.qb(s),x=0;x l)){var m=l;sk(k)&&m++;k.Fe(m);tk(k,m,l)}}}}function Mj(a,b){var c=b.hi;if(u.isArray(c)){var d=a.Nl.ua(c);if(null===d)d=[],d.push(b),a.Nl.add(c,d);else{for(c=0;c =f.length)return!1;for(var h=0;h this.scale&&(this.scale=a)):u.xa(a,"> 0",D,"minScale"))}); u.defineProperty(D,{Zg:"maxScale"},function(){return this.Ju},function(a){u.ze(a,D,"maxScale");var b=this.Ju;b!==a&&(0 0",D,"maxScale"))});u.defineProperty(D,{Sm:"zoomPoint"},function(){return this.yv},function(a){this.yv.L(a)||(u.C(a,w,D,"zoomPoint"),this.yv=a=a.Z())}); u.defineProperty(D,{Uy:"contentAlignment"},function(){return this.en},function(a){var b=this.en;b.L(a)||(u.C(a,L,D,"contentAlignment"),this.en=a=a.Z(),this.h("contentAlignment",b,a),gj(this,!1))});u.defineProperty(D,{EJ:"initialContentAlignment"},function(){return this.Bn},function(a){var b=this.Bn;b.L(a)||(u.C(a,L,D,"initialContentAlignment"),this.Bn=a=a.Z(),this.h("initialContentAlignment",b,a))}); u.defineProperty(D,{padding:"padding"},function(){return this.Pe},function(a){"number"===typeof a?a=new rb(a):u.C(a,rb,D,"padding");var b=this.Pe;b.L(a)||(this.Pe=a=a.Z(),this.pc(),this.h("padding",b,a))});u.u(D,{zg:"nodes"},function(){return this.Sn.i});u.u(D,{links:"links"},function(){return this.On.i});u.u(D,{Sj:"parts"},function(){return this.Db.i}); D.prototype.findTopLevelNodesAndLinks=function(){for(var a=new F(G),b=this.Sn.i;b.next();){var c=b.value;c.Jo&&a.add(c)}for(b=this.On.i;b.next();)c=b.value,c.Jo&&a.add(c);return a.i};D.prototype.findTopLevelGroups=function(){return this.Ik.i};u.defineProperty(D,{Qb:"layout"},function(){return this.Nd},function(a){var b=this.Nd;b!==a&&(u.C(a,Je,D,"layout"),null!==b&&(b.g=null,b.group=null),this.Nd=a,a.g=this,a.group=null,this.Pt=!0,this.h("layout",b,a),this.de())}); D.prototype.layoutDiagram=function(a){ej(this);a&&yk(this,!0);xj(this,!1)};function yk(a,b){for(var c=a.Ik.i;c.next();)Gk(a,c.value,b);null!==a.Qb&&(b?a.Qb.vf=!1:a.Qb.H())}function Gk(a,b,c){if(null!==b){for(var d=b.Qn.i;d.next();)Gk(a,d.value,c);null!==b.Qb&&(c?b.Qb.vf=!1:b.Qb.H())}} function xj(a,b){if(!a.Bx){var c=a.Qb,d=a.Au;a.Au=!0;var e=a.Oa;a.Oa=!0;try{a.Wb("Layout");for(var f=a.Ik.i;f.next();)Hk(a,f.value,b);c.vf||b&&!c.PD||(c.doLayout(a),ej(a),c.vf=!0)}finally{a.Wd("Layout"),a.Pt=!c.vf,a.Au=d,a.Oa=e}}}function Hk(a,b,c){if(null!==b){for(var d=b.Qn.i;d.next();)Hk(a,d.value,c);d=b.Qb;null===d||d.vf||c&&!d.PD||(b.ky=!b.location.I(),d.doLayout(b),b.H(Ik),d.vf=!0,zj(a,b))}} u.defineProperty(D,{qd:"isTreePathToChildren"},function(){return this.zu},function(a){var b=this.zu;if(b!==a&&(u.j(a,"boolean",D,"isTreePathToChildren"),this.zu=a,this.h("isTreePathToChildren",b,a),!this.ga.cb))for(a=this.zg;a.next();)Jk(a.value)});D.prototype.findTreeRoots=function(){for(var a=new E(U),b=this.zg;b.next();){var c=b.value;c.Jo&&null===c.Bs()&&a.add(c)}return a.i};u.defineProperty(D,{me:null},function(){return this.mB},function(a){this.mB=a}); function Oi(a){function b(a){var b=a.toLowerCase(),h=new E("function");c.add(a,h);c.add(b,h);d.add(a,a);d.add(b,a)}var c=new la("string",E),d=new la("string","string");b("AnimationStarting");b("AnimationFinished");b("BackgroundSingleClicked");b("BackgroundDoubleClicked");b("BackgroundContextClicked");b("ClipboardChanged");b("ClipboardPasted");b("DocumentBoundsChanged");b("ExternalObjectsDropped");b("InitialLayoutCompleted");b("LayoutCompleted");b("LinkDrawn");b("LinkRelinked");b("LinkReshaped");b("Modified"); b("ObjectSingleClicked");b("ObjectDoubleClicked");b("ObjectContextClicked");b("PartCreated");b("PartResized");b("PartRotated");b("SelectionMoved");b("SelectionCopied");b("SelectionDeleting");b("SelectionDeleted");b("SelectionGrouped");b("SelectionUngrouped");b("ChangingSelection");b("ChangedSelection");b("SubGraphCollapsed");b("SubGraphExpanded");b("TextEdited");b("TreeCollapsed");b("TreeExpanded");b("ViewportBoundsChanged");a.Dx=c;a.Cx=d} function ma(a,b){var c=a.Cx.ua(b);return null!==c?c:a.Cx.ua(b.toLowerCase())}function Kk(a,b){var c=a.Dx.ua(b);if(null!==c)return c;c=a.Dx.ua(b.toLowerCase());if(null!==c)return c;u.k("Unknown DiagramEvent name: "+b);return null}D.prototype.addDiagramListener=D.prototype.Ly=function(a,b){u.j(a,"string",D,"addDiagramListener:name");u.j(b,"function",D,"addDiagramListener:listener");var c=Kk(this,a);null!==c&&c.add(b)}; D.prototype.removeDiagramListener=D.prototype.lE=function(a,b){u.j(a,"string",D,"removeDiagramListener:name");u.j(b,"function",D,"addDiagramListener:listener");var c=Kk(this,a);null!==c&&c.remove(b)};D.prototype.raiseDiagramEvent=D.prototype.Ba=function(a,b,c){var d=Kk(this,a),e=new Nd;e.g=this;e.name=ma(this,a);void 0!==b&&(e.iA=b);void 0!==c&&(e.Nz=c);a=d.length;if(1===a)d=d.ja(0),d(e);else if(0!==a)for(b=d.Ke(),c=0;c=d.top&&0>=d.left&&0>=d.right&&0>=d.bottom)return c;var e=a.ob,f=a.scale,e=u.Vj(0,0,e.width*f,e.height*f),h=u.fc(0,0);if(b.x>=e.x&&b.x e.x+e.width-d.right&&(k=Math.max(a.mt,1),k|=0,h.x+=k,b.x>e.x+e.width-d.right/2&&(h.x+=k),b.x>e.x+e.width-d.right/4&&(h.x+=4*k));b.y>=e.y&&b.y e.y+e.height-d.bottom&&(k=Math.max(a.nt,1),k|=0,h.y+=k,b.y>e.y+e.height-d.bottom/2&&(h.y+=k),b.y>e.y+e.height-d.bottom/4&&(h.y+=4*k));h.De(K.Wj)||(c=new w(c.x+h.x/f,c.y+h.y/f));u.ic(e);u.v(h);return c}D.prototype.makeSVG=D.prototype.makeSvg=function(a){void 0===a&&(a=new pa);a.context="svg";a=Tk(this,a);return null!==a?a.sl:null}; D.prototype.makeImage=function(a){void 0===a&&(a=new pa);var b=(a.document||document).createElement("img");b.src=this.tH(a);return b};D.prototype.makeImageData=D.prototype.tH=function(a){void 0===a&&(a=new pa);var b=Tk(this,a);return null!==b?b.toDataURL(a.type,a.details):""};var Uk=!1; function Tk(a,b){a.Mb.Ni();a.cf();if(null===a.ib)return null;"object"!==typeof b&&u.k("properties argument must be an Object.");var c=!1,d=b.size||null,e=b.scale||null;void 0!==b.scale&&isNaN(b.scale)&&(e="NaN");var f=b.maxSize;void 0===b.maxSize&&(c=!0,f="svg"===b.context?new ia(Infinity,Infinity):new ia(2E3,2E3));var h=b.position||null,k=b.parts||null,l=void 0===b.padding?1:b.padding,m=b.background||null,n=b.omitTemporary;void 0===n&&(n=!0);var p=b.document||document,q=b.elementFinished||null,r= b.showTemporary;void 0===r&&(r=!n);n=b.showGrid;void 0===n&&(n=r);null!==d&&isNaN(d.width)&&isNaN(d.height)&&(d=null);"number"===typeof l?l=new rb(l):l instanceof rb||(l=new rb(0));l.left=Math.max(l.left,0);l.right=Math.max(l.right,0);l.top=Math.max(l.top,0);l.bottom=Math.max(l.bottom,0);a.rn=!1;$i(a);var s=new oa(null,p),t=s.getContext("2d"),v=s;if(!(d||e||k||h))return s.width=a.Ab+Math.ceil(l.left+l.right),s.height=a.zb+Math.ceil(l.top+l.bottom),"svg"===b.context&&(t=v=new Nc(s.Ed,p,q),t instanceof Nc&&(a.rn=!0)),Gj(a,t,l,new ia(s.width,s.height),a.$b,a.Na,k,m,r,n),a.rn=!0,v;var x=a.Eb.Qv,A=new w(0,0),y=a.Dd.copy();y.tI(a.padding);if(r)for(var C=!0,C=a.Zb.n,I=C.length,H=0;Hx?(e=x,h=y.width,Z=y.height):(h=f.width,Z=f.height)):(h=y.width*e,Z=y.height*e):(e=x,h=y.width,Z=y.height);null!==l?(h+=aa,Z+=C):l=new rb(0);null!==f&&(d=f.width,f=f.height,"svg"!==b.context&&c&&!Uk&&(h>d||Z>f)&&(u.trace("Diagram.makeImage(data): Diagram width or height is larger than the default max size. ("+Math.ceil(h)+"x"+Math.ceil(Z)+" vs 2000x2000) Consider increasing the max size."),Uk=!0), isNaN(d)&&(d=2E3),isNaN(f)&&(f=2E3),isFinite(d)&&(h=Math.min(h,d)),isFinite(f)&&(Z=Math.min(Z,f)));s.width=Math.ceil(h);s.height=Math.ceil(Z);"svg"===b.context&&(t=v=new Nc(s.Ed,p,q),t instanceof Nc&&(a.rn=!0));Gj(a,t,l,new ia(Math.ceil(h),Math.ceil(Z)),e,A,k,m,r,n);a.rn=!0;return v}D.inherit=function(a,b){u.j(a,"function",D,"inherit");u.j(b,"function",D,"inherit");b.AF&&u.k("Cannot inherit from "+u.sg(b));u.Ia(a,b)}; function Vi(){this.DF="63ad05bbe23a1786468a4c741b6d2";this.DF===this._tk?this.xh=!0:Vk(this,!1)} function Vk(a,b){var c="f",d=window[u.Fa("76a715b2f73f148a")][u.Fa("72ba13b5")];if(u.Fa("77bb5bb2f32603de")===window[u.Fa("76a715b2f73f148a")][u.Fa("6aba19a7ec351488")])try{a.xh=!window[u.Fa("4da118b7ec2108")]([u.Fa("5bb806bfea351a904a84515e1b6d38b6")])([u.Fa("49bc19a1e6")])([u.Fa("59bd04a1e6380fa5539b")])([u.Fa("7bb8069ae7")]===u.Fa(u.adym));if(!1===a.xh)return;a.xh=!window[u.Fa("4da118b7ec2108")]([u.Fa("5bb806bfea351a904a84515e1b6d38b6")])([u.Fa("49bc19a1e6")])([u.Fa("59bd04a1e6380fa5539b6c7a197c31bb4cfd3e")])([u.Fa("7bb8069ae7")]===u.Fa(u.adym)); if(!1===a.xh)return}catch(e){}for(var f=d[u.Fa("76ad18b4f73e")],h=d[u.Fa("73a612b6fb191d")](u.Fa("35e7"))+2;h d&&u.Fa(u.adym)!==u.Fa("7da71ca0ad381e90")&&(d=c[u.Fa("73a612b6fb191d")](u.Fa("76a715b2ef3e149757")));a.xh=!(0<=d&&d b.timeStamp-a.Ql)b.preventDefault();else if(a.Jc=a.Pb,a.Pb=c,nj(a,a,b,c,!0),c.Wk=!0,c.Te=b.detail,a.nk=c.copy(),!0===c.Xp.simulated)b.preventDefault(),b.simulated=!0;else if(Ef=null,a.doMouseDown(),1===b.button)return b.preventDefault(),!1}};a.Uo=function(b){if(a.isEnabled){a.Kl=!0;var c=a.Jc;if(u.Em){if(400>b.timeStamp-a.Ql){b.preventDefault();return}a.Ql=b.timeStamp}if(u.Em&&null!==a.Kr)a.Kr=null,b.preventDefault();else{a.Jc=a.Pb;a.Pb=c;nj(a,a,b,c,!0);c.up=!0;c.Te=b.detail;if(u.aH||u.bH)b.timeStamp- a.Ql b.touches.length&&mj(a,c);rj(c,b)}};a.QE=function(b){if(a.isEnabled){var c=a.Jc;a.Jc=a.Pb;a.Pb=c;var d=null;0 a.jr&& mj(a,c),rj(c,b))}};a.MH=function(b){if("touch"===b.pointerType&&!(2>a.jr)){var c=a.Df;c[0].pointerId===b.pointerId&&(c[0]=b);c[1].pointerId===b.pointerId&&(c[1]=b);a.isEnabled&&(c=a.Jc,a.Jc=a.Pb,a.Pb=c,qj(a,b,b,c,!0),yf(a),a.Jw(b,null,c.Dg)||(a.doMouseMove(),rj(c,b)))}};a.LH=function(b){if("touch"===b.pointerType){var c=a.WB;void 0!==c[b.pointerId]&&(a.jr--,delete c[b.pointerId],c=a.Df,null!==c[0]&&c[0].pointerId===b.pointerId&&(c[0]=null),null!==c[1]&&c[1].pointerId===b.pointerId&&(c[1]=null))}}; $i(a);Zi(a)}function Wk(a){1 a)&&u.xa(a,"0 <= loc <= 1",ga,"addColorStop:loc");u.j(b,"string",ga,"addColorStop:color");null===this.Gg&&(this.Gg=new la("number","string"));this.Gg.add(a,b);this.pa===te&&(this.type=ue);this.Hg=null}; u.defineProperty(ga,{type:"type"},function(){return this.pa},function(a){u.J(this,a);u.rb(a,ga,ga,"type");this.pa=a;this.start.ne()&&(a===ue?this.start=Db:a===ve&&(this.start=Ib));this.end.ne()&&(a===ue?this.end=Ub:a===ve&&(this.end=Ib));this.Hg=null});u.defineProperty(ga,{color:"color"},function(){return this.dn},function(a){u.J(this,a);this.dn=a;this.Hg=null});u.defineProperty(ga,{start:"start"},function(){return this.bo},function(a){u.J(this,a);u.C(a,L,ga,"start");this.bo=a.Z();this.Hg=null}); u.defineProperty(ga,{end:"end"},function(){return this.tn},function(a){u.J(this,a);u.C(a,L,ga,"end");this.tn=a.Z();this.Hg=null});u.defineProperty(ga,{vt:"startRadius"},function(){return this.jv},function(a){u.J(this,a);u.ze(a,ga,"startRadius");0>a&&u.xa(a,">= zero",ga,"startRadius");this.jv=a;this.Hg=null});u.defineProperty(ga,{vs:"endRadius"},function(){return this.ju},function(a){u.J(this,a);u.ze(a,ga,"endRadius");0>a&&u.xa(a,">= zero",ga,"endRadius");this.ju=a;this.Hg=null}); u.defineProperty(ga,{qs:"colorStops"},function(){return this.Gg},function(a){u.J(this,a);this.Gg=a;this.Hg=null});u.defineProperty(ga,{pattern:"pattern"},function(){return this.Yu},function(a){u.J(this,a);this.Yu=a;this.Hg=null}); ga.randomColor=function(a,b){void 0===a&&(a=128);void 0===b&&(b=Math.max(a,255));var c=Math.abs(b-a),d=Math.floor(a+Math.random()*c).toString(16),e=Math.floor(a+Math.random()*c).toString(16),c=Math.floor(a+Math.random()*c).toString(16);2>d.length&&(d="0"+d);2>e.length&&(e="0"+e);2>c.length&&(c="0"+c);return"#"+d+e+c};var cl=u.createElement("canvas").getContext("2d"),fa; ga.isValidColor=fa=function(a){if("black"===a)return!0;if(""===a)return!1;cl.fillStyle="#000000";var b=cl.fillStyle;cl.fillStyle=a;if(cl.fillStyle!==b)return!0;cl.fillStyle="#FFFFFF";b=cl.fillStyle;cl.fillStyle=a;return cl.fillStyle!==b}; function S(){u.gc(this);this.ea=30723;this.Ic=1;this.Rg=null;this.Ub="";this.lc=this.Jb=null;this.Na=(new w(NaN,NaN)).freeze();this.kf=(new ia(NaN,NaN)).freeze();this.nj=K.qp;this.lj=K.iF;this.Sd=new ja;this.Ym=new ja;this.yk=new ja;this.$b=this.gu=1;this.Zm=0;this.Jh=dl;this.Iq=K.pp;this.Pc=(new z(NaN,NaN,NaN,NaN)).freeze();this.Xb=(new z(NaN,NaN,NaN,NaN)).freeze();this.Hc=(new z(0,0,NaN,NaN)).freeze();this.Ur=this.Yp=this.Q=this.kr=this.lr=null;this.Vr=this.Zp=Infinity;this.xp=this.se=uc;this.yr= 0;this.tj=1;this.Ep=0;this.Wi=1;this.Cr=-Infinity;this.Br=0;this.Dr=K.Wj;this.Er=dh;this.Lp="";this.Gc=this.P=null;this.an=-1;this.Xl=this.Yh=this.Cl=this.ao=null}u.Nh(S);u.fa("GraphObject",S); S.prototype.cloneProtected=function(a){a.ea=this.ea|6144;a.Ic=this.Ic;a.Ub=this.Ub;a.Jb=this.Jb;a.lc=this.lc;a.Na.assign(this.Na);a.kf.assign(this.kf);a.nj=this.nj.Z();a.lj=this.lj.Z();a.yk=this.yk.copy();a.$b=this.$b;a.Zm=this.Zm;a.Jh=this.Jh;a.Iq=this.Iq.Z();a.Pc.assign(this.Pc);a.Xb.assign(this.Xb);a.Hc.assign(this.Hc);a.kr=this.kr;a.Q=null!==this.Q?this.Q.copy():null;a.Yp=this.Yp;a.Zp=this.Zp;a.Ur=this.Ur;a.Vr=this.Vr;a.se=this.se.Z();a.xp=this.xp.Z();a.yr=this.yr;a.tj=this.tj;a.Ep=this.Ep;a.Wi= this.Wi;a.Cr=this.Cr;a.Br=this.Br;a.Dr=this.Dr.Z();a.Er=this.Er;a.Lp=this.Lp;a.P=null!==this.P?this.P.copy():null;a.Gc=this.Gc;a.an=this.an;if(null!==this.Cl){a.Cl=u.Pk(this.Cl);for(var b=0;b k;)k+=f[n++%l],p=!p;q=!1}else k=f[n++%l];k>m&&(k=m);var r=Math.sqrt(k*k/(1+e*e));0>d&&(r=-r);b+=r;c+=e*r;p?a.lineTo(b,c):a.moveTo(b,c);m-=k;p=!p}} S.prototype.raiseChangedEvent=S.prototype.Dc=function(a,b,c,d,e,f,h){var k=this.T;null!==k&&(k.Mm(a,b,c,d,e,f,h),0!==(this.ea&1024)&&c===this&&a===$d&&ll(this,k,b))}; function ll(a,b,c){var d=a.Bo();if(null!==d)for(var e=a.Gc.i;e.next();){var f=e.value,h=null;if(null!==f.Om){h=ef(f,d,a);if(null===h)continue;f.Ow(a,h,c,null)}else if(f.yt){var k=b.g;null!==k&&f.Ow(a,k.ha.$s,c,k)}else{var l=d.data;if(null===l)continue;k=b.g;null!==k&&k.Kw||f.Ow(a,l,c,k)}null!==h&&(k=d.Wv(f.tl),null!==k&&f.YE(k,h,c))}}S.prototype.Wv=function(a){return this.an===a?this:null};S.prototype.raiseChanged=S.prototype.h=function(a,b,c){this.Dc($d,a,this,b,c)}; function ml(a,b,c,d,e){var f=a.Pc,h=a.yk;h.reset();nl(a,h,b,c,d,e);a.yk=h;f.x=b;f.y=c;f.width=d;f.height=e;h.Ps()||h.VE(f)}function ol(a,b,c,d){if(!1===a.Bg)return!1;d.multiply(a.transform);return c?a.tg(b,d):a.tm(b,d)} S.prototype.sD=function(a,b,c){if(!1===this.Bg)return!1;var d=this.Ja;b=a.Lj(b);var e=!1;c&&(e=Xa(a.x,a.y,0,0,0,d.height)a&&(a+=360));return a}; S.prototype.getDocumentScale=S.prototype.Ii=function(){if(0!==(this.ea&4096)===!1)return this.gu;var a=this.$b;return null!==this.S?a*this.S.Ii():a};S.prototype.getLocalPoint=S.prototype.zD=function(a,b){void 0===b&&(b=new w);b.assign(a);this.Ff.Qh(b);return b};S.prototype.getNearestIntersectionPoint=S.prototype.bl=function(a,b,c){return this.Eo(a.x,a.y,b.x,b.y,c)};g=S.prototype; g.Eo=function(a,b,c,d,e){var f=this.transform,h=1/(f.m11*f.m22-f.m12*f.m21),k=f.m22*h,l=-f.m12*h,m=-f.m21*h,n=f.m11*h,p=h*(f.m21*f.dy-f.m22*f.dx),q=h*(f.m12*f.dx-f.m11*f.dy);if(null!==this.om)return f=this.ba,K.bl(f.left,f.top,f.right,f.bottom,a,b,c,d,e);h=a*k+b*m+p;a=a*l+b*n+q;b=c*k+d*m+p;c=c*l+d*n+q;e.m(0,0);d=this.Ja;c=K.bl(0,0,d.width,d.height,h,a,b,c,e);e.transform(f);return c}; function Ph(a,b,c,d,e){if(!1!==Aj(a)){var f=a.margin,h=f.right+f.left,f=f.top+f.bottom;b=Math.max(b-h,0);c=Math.max(c-f,0);e=e||0;d=Math.max((d||0)-h,0);e=Math.max(e-f,0);var h=a.angle,f=0,f=a.za,k=0;a.hb&&(k=a.hb);90===h||270===h?(b=isFinite(f.height)?f.height+k:b,c=isFinite(f.width)?f.width+k:c):(b=isFinite(f.width)?f.width+k:b,c=isFinite(f.height)?f.height+k:c);var f=d||0,k=e||0,l=a instanceof B;switch(pl(a,!0)){case qh:k=f=0;l&&(c=b=Infinity);break;case cd:isFinite(b)&&b>d&&(f=b);isFinite(c)&& c>e&&(k=c);break;case fl:isFinite(b)&&b>d&&(f=b);k=0;l&&(c=Infinity);break;case el:isFinite(c)&&c>e&&(k=c),f=0,l&&(b=Infinity)}var l=a.bf,m=a.wg;f>l.width&&m.width l.height&&m.height a.height||this.ej.Oe>a.width))&&(c=!0);this.ea=c?this.ea|256:this.ea&-257;this.Xb.I()|| u.k("Non-real actualBounds has been set. Object "+this+", actualBounds: "+this.Xb.toString());this.uw(f,this.Xb);u.ic(f)};g.yi=function(){}; function ql(a,b,c,d,e){var f=a.ba;f.x=b;f.y=c;f.width=d;f.height=e;if(!a.za.I()){f=a.Pc;c=a.margin;b=c.right+c.left;var h=c.top+c.bottom;c=f.width+b;f=f.height+h;d+=b;e+=h;b=pl(a,!0);c===d&&f===e&&(b=qh);switch(b){case qh:if(c>d||f>e)uj(a,!0),Ph(a,c>d?d:c,f>e?e:f);break;case cd:uj(a,!0);Ph(a,d,e,0,0);break;case fl:uj(a,!0);Ph(a,d,f,0,0);break;case el:uj(a,!0),Ph(a,c,e,0,0)}}} g.uw=function(){rl(this,!1);var a=this.T;null!==a&&null!==a.g&&(a.dl(),this.Su(a),this.na(),a=this.T,null!==a&&(a.ot!==this&&a.sE!==this&&a.vE!==this||sl(a,!0)))};g.Su=function(a){null!==this.Jd&&sl(a,!0)}; g.We=function(a,b){if(this.visible){var c=this.opacity,d=1;if(1!==c){if(0===c)return;d=a.globalAlpha;a.globalAlpha=d*c}if(a instanceof Nc)a:{if(this.visible){var e=null,f=a.lw;if(this instanceof B&&(this.type===tl||this.type===ul))vl(this,a,b);else{var h=this.Xb;if(0!==h.width&&0!==h.height&&!isNaN(h.x)&&!isNaN(h.y)){var k=this.transform,l=this.S;0!==(this.ea&4096)===!0&&wl(this);var m=0!==(this.ea&256),n=!1;this instanceof qa&&xl(this,a);if(m){n=l.Tf()?l.Ja:l.ba;if(this.Yh)var p=this.Yh,q=p.x,r= p.y,s=p.width,p=p.height;else q=Math.max(h.x,n.x),r=Math.max(h.y,n.y),s=Math.min(h.right,n.right)-q,p=Math.min(h.bottom,n.bottom)-r;if(q>h.width+h.x||h.x>n.width+n.x||r>h.height+h.y||h.y>n.height+n.y)break a;n=!0;Uc(a,1,0,0,1,0,0);a.save();a.beginPath();a.rect(q,r,s,p);a.clip()}q=!1;if(this instanceof G&&(q=!0,!this.Ga()))break a;r=!1;s=b.Sg;this.T&&s.drawShadows&&(r=this.T.il);a.Fi.af=[1,0,0,1,0,0];null!==this.lc&&(yl(this,a,this.lc,!0,!0),this.lc instanceof ga&&this.lc.type===ve?(a.beginPath(), a.rect(h.x,h.y,h.width,h.height),zl(a,this.lc)):a.fillRect(h.x,h.y,h.width,h.height));q&&this.il&&s.drawShadows&&(Uc(a,1,0,0,1,0,0),h=this.fm,a.shadowOffsetX=h.x,a.shadowOffsetY=h.y,a.shadowColor=this.em,a.shadowBlur=this.dm/b.scale,a.$a());this instanceof B?Uc(a,k.m11,k.m12,k.m21,k.m22,k.dx,k.dy):a.Fi.af=[k.m11,k.m12,k.m21,k.m22,k.dx,k.dy];if(null!==this.Jb){var p=this.Ja,h=k=0,s=p.width,p=p.height,t=0;this instanceof X&&(p=this.Qa.kb,k=p.x,h=p.y,s=p.width,p=p.height,t=this.Ug);yl(this,a,this.Jb, !0,!1);this.Jb instanceof ga&&this.Jb.type===ve?(a.beginPath(),a.rect(k-t/2,h-t/2,s+t,p+t),zl(a,this.Jb)):a.fillRect(k-t/2,h-t/2,s+t,p+t)}s=h=k=0;r&&(null!==this.Jb||null!==this.lc||null!==l&&0!==(l.ea&512)||null!==l&&l.type===Yi&&l.If()!==this)?(Al(this,!0),k=a.shadowOffsetX,h=a.shadowOffsetY,s=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY=0,a.shadowBlur=0):Al(this,!1);this.Mj(a,b);r&&0!==(this.ea&512)===!0&&(a.shadowOffsetX=k,a.shadowOffsetY=h,a.shadowBlur=s);q&&r&&(a.shadowOffsetX=0,a.shadowOffsetY= 0,a.shadowBlur=0);m&&(a.restore(),n&&a.sf.pop(),$i(b,a));this instanceof B&&(e=a.sf.pop());q&&r&&a.sf.pop();null!==a.nD&&(null===e&&(f===a.lw?(Uc(a,1,0,0,1,0,0),e=a.sf.pop()):e=a.lw),a.nD(this,e))}}}}else{if(this instanceof B&&(this.type===tl||this.type===ul)){vl(this,a,b);1!==c&&(a.globalAlpha=d);return}q=this.Xb;if(0!==q.width&&0!==q.height&&!isNaN(q.x)&&!isNaN(q.y)){e=this.transform;f=this.S;0!==(this.ea&4096)===!0&&wl(this);l=0!==(this.ea&256);this instanceof qa&&xl(this,a);if(l){m=f.Tf()?f.Ja: f.ba;this.Yh?(h=this.Yh,n=h.x,r=h.y,k=h.width,h=h.height):(n=Math.max(q.x,m.x),r=Math.max(q.y,m.y),k=Math.min(q.right,m.right)-n,h=Math.min(q.bottom,m.bottom)-r);if(n>q.width+q.x||q.x>m.width+m.x||r>q.height+q.y||q.y>m.height+m.y){1!==c&&(a.globalAlpha=d);return}a.save();a.beginPath();a.rect(n,r,k,h);a.clip()}r=b.Sg;m=!1;if(this instanceof G){m=!0;if(!this.Ga()){1!==c&&(a.globalAlpha=d);return}this.il&&r.drawShadows&&(n=this.fm,a.shadowOffsetX=n.x*b.scale*b.of,a.shadowOffsetY=n.y*b.scale*b.of,a.shadowColor= this.em,a.shadowBlur=this.dm)}n=!1;this.T&&r.drawShadows&&(n=this.T.il);null!==this.lc&&(yl(this,a,this.lc,!0,!0),this.lc instanceof ga&&this.lc.type===ve?(a.beginPath(),a.rect(q.x,q.y,q.width,q.height),zl(a,this.lc)):a.fillRect(q.x,q.y,q.width,q.height));e.Ps()||a.transform(e.m11,e.m12,e.m21,e.m22,e.dx,e.dy);null!==this.Jb&&(h=this.Ja,r=q=0,k=h.width,h=h.height,s=0,this instanceof X&&(h=this.Qa.kb,q=h.x,r=h.y,k=h.width,h=h.height,s=this.Ug),yl(this,a,this.Jb,!0,!1),this.Jb instanceof ga&&this.Jb.type=== ve?(a.beginPath(),a.rect(q-s/2,r-s/2,k+s,h+s),zl(a,this.Jb)):a.fillRect(q-s/2,r-s/2,k+s,h+s));k=r=q=0;n&&(null!==this.Jb||null!==this.lc||null!==f&&0!==(f.ea&512)||null!==f&&(f.type===Yi||f.type===oh)&&f.If()!==this)?(Al(this,!0),q=a.shadowOffsetX,r=a.shadowOffsetY,k=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY=0,a.shadowBlur=0):Al(this,!1);this.Mj(a,b);n&&0!==(this.ea&512)===!0&&(a.shadowOffsetX=q,a.shadowOffsetY=r,a.shadowBlur=k);m&&n&&(a.shadowOffsetX=0,a.shadowOffsetY=0,a.shadowBlur=0);l?(a.restore(), this instanceof B?$i(b,a,!0):$i(b,a,!1)):e.Ps()||(f=1/(e.m11*e.m22-e.m12*e.m21),a.transform(e.m22*f,-e.m12*f,-e.m21*f,e.m11*f,f*(e.m21*e.dy-e.m22*e.dx),f*(e.m12*e.dx-e.m11*e.dy)))}}1!==c&&(a.globalAlpha=d)}}; function vl(a,b,c){var d=a.Xb;0===d.width||0===d.height||isNaN(d.x)||isNaN(d.y)||(null!==a.lc&&(yl(a,b,a.lc,!0,!0),a.lc instanceof ga&&a.lc.type===ve?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),zl(b,a.lc)):b.fillRect(d.x,d.y,d.width,d.height)),null!==a.Jb&&(yl(a,b,a.Jb,!0,!1),a.Jb instanceof ga&&a.Jb.type===ve?(b.beginPath(),b.rect(d.x,d.y,d.width,d.height),zl(b,a.Jb)):b.fillRect(d.x,d.y,d.width,d.height)),a.Mj(b,c))}g.Mj=function(){}; function zl(a,b){if(b instanceof ga&&b.type===ve&&!(a instanceof Nc)){var c=b.nx,d=b.mx;d>c?(a.scale(c/d,1),a.translate((d-c)/2,0)):c>d&&(a.scale(1,d/c),a.translate(0,(c-d)/2));a.Gt?a.clip():a.fill();d>c?(a.translate(-(d-c)/2,0),a.scale(1/(c/d),1)):c>d&&(a.translate(0,-(c-d)/2),a.scale(1,1/(d/c)))}else a.Gt?a.clip():a.fill()}function Bl(a){a.Gt||a.stroke()} function yl(a,b,c,d,e){if(null!==c){var f=1,h=1;if("string"===typeof c)d?b.Tm!==c&&(b.fillStyle=c,b.Tm=c):b.Um!==c&&(b.strokeStyle=c,b.Um=c);else if(c.type===te)c=c.color,d?b.Tm!==c&&(b.fillStyle=c,b.Tm=c):b.Um!==c&&(b.strokeStyle=c,b.Um=c);else{var k,h=a.Ja,f=h.width,h=h.height;if(e)var l=a.ba,f=l.width,h=l.height;var m=b instanceof CanvasRenderingContext2D;if(m&&(c.Hg&&c.type===bl||c.nx===f&&c.mx===h))k=c.Hg;else{var n=l=0,p=0,q=0,r=0,s=0,s=r=0;e&&(l=a.ba,f=l.width,h=l.height,r=l.x,s=l.y);l=c.start.x* f+c.start.offsetX;n=c.start.y*h+c.start.offsetY;p=c.end.x*f+c.end.offsetX;q=c.end.y*h+c.end.offsetY;l+=r;p+=r;n+=s;q+=s;c.type===ue?k=b.createLinearGradient(l,n,p,q):c.type===ve?(s=isNaN(c.vs)?Math.max(f,h)/2:c.vs,isNaN(c.vt)?(r=0,s=Math.max(f,h)/2):r=c.vt,k=b.createRadialGradient(l,n,r,p,q,s)):c.type===bl?k=b.createPattern(c.pattern,"repeat"):u.Kd(c.type,"Brush type");if(c.type!==bl&&(a=c.qs,null!==a))for(a=a.i;a.next();)k.addColorStop(a.key,a.value);m&&(c.Hg=k,c.nx=f,c.mx=h)}d?b.Tm!==k&&(b.fillStyle= k,b.Tm=k):b.Um!==k&&(b.strokeStyle=k,b.Um=k)}}}S.prototype.isContainedBy=S.prototype.gl=function(a){if(a instanceof B)a:{if(this!==a&&null!==a)for(var b=this.S;null!==b;){if(b===a){a=!0;break a}b=b.S}a=!1}else a=!1;return a};S.prototype.isVisibleObject=S.prototype.kl=function(){if(!this.visible)return!1;var a=this.S;return null!==a?a.kl():!0}; function wl(a){if(0!==(a.ea&2048)===!0){var b=a.Sd;b.reset();if(!a.Xb.I()||!a.Pc.I()){Cl(a,!1);return}b.translate(a.Xb.x,a.Xb.y);b.translate(-a.Ca.x,-a.Ca.y);var c=a.Ja;nl(a,b,c.x,c.y,c.width,c.height);Cl(a,!1);Dl(a,!0)}0!==(a.ea&4096)===!0&&(b=a.S,null===b?(a.Ym.set(a.Sd),a.gu=a.scale,Dl(a,!1)):null!==b.Ff&&(c=a.Ym,c.reset(),b.Tf()?c.multiply(b.Ym):null!==b.S&&c.multiply(b.S.Ym),c.multiply(a.Sd),a.gu=a.scale*b.gu,Dl(a,!1)))} function nl(a,b,c,d,e,f){1!==a.scale&&b.scale(a.scale);if(0!==a.angle){var h=Ib;a.$e&&a.$e.pd()&&(h=a.$e);var k=u.K();if(a instanceof G&&a.ec!==a)for(c=a.ec,d=c.Ja,k.st(d.x,d.y,d.width,d.height,h),c.yk.ab(k),k.offset(-c.Ca.x,-c.Ca.y),h=c.S;null!==h&&h!==a;)h.yk.ab(k),k.offset(-h.Ca.x,-h.Ca.y),h=h.S;else k.st(c,d,e,f,h);b.rotate(a.angle,k.x,k.y);u.v(k)}}g=S.prototype; g.R=function(a){void 0===a&&(a=!1);if(!0!==Aj(this)){uj(this,!0);rl(this,!0);var b=this.S;null!==b?a||b.R():(a=this.g,null!==a&&(a.Yf.add(this),this instanceof U&&(a.ga.cb||this.Ze(),null!==this.ce&&El(this.ce)),a.de(!0)));if(this instanceof B){if(this.pa===Yi||this.pa===ah)a=this.If(),null!==a&&a.R(!0);a=this.Aa.n;for(var b=a.length,c=0;ca?a=0:1a||1=a&&u.k("GraphObject.scale must be greater than zero"),this.$b=a,this.Lg(),this.R(),this.h("scale",b,a))});u.defineProperty(S,{angle:"angle"},function(){return this.Zm},function(a){var b=this.Zm;b!==a&&(a%=360,0>a&&(a+=360),b!==a&&(this.Zm=a,this.R(),this.Lg(),this.h("angle",b,a)))}); u.defineProperty(S,{za:"desiredSize"},function(){return this.kf},function(a){var b=this.kf;b.L(a)||(this.kf=a=a.Z(),this.R(),this instanceof X&&this.le(),this.h("desiredSize",b,a),a=this.T,null!==a&&0!==(this.ea&1024)&&(ll(this,a,"width"),ll(this,a,"height")))}); u.defineProperty(S,{width:"width"},function(){return this.kf.width},function(a){if(this.kf.width!==a){var b=this.kf;this.kf=a=(new ia(a,this.kf.height)).freeze();this.R();this instanceof X&&this.le();this.h("desiredSize",b,a);b=this.T;null!==b&&0!==(this.ea&1024)&&ll(this,b,"width")}}); u.defineProperty(S,{height:"height"},function(){return this.kf.height},function(a){if(this.kf.height!==a){var b=this.kf;this.kf=a=(new ia(this.kf.width,a)).freeze();this.R();this instanceof X&&this.le();this.h("desiredSize",b,a);b=this.T;null!==b&&0!==(this.ea&1024)&&ll(this,b,"height")}}); u.defineProperty(S,{wg:"minSize"},function(){return this.nj},function(a){var b=this.nj;b.L(a)||(a=a.copy(),isNaN(a.width)&&(a.width=0),isNaN(a.height)&&(a.height=0),a.freeze(),this.nj=a,this.R(),this.h("minSize",b,a))});u.defineProperty(S,{bf:"maxSize"},function(){return this.lj},function(a){var b=this.lj;b.L(a)||(a=a.copy(),isNaN(a.width)&&(a.width=Infinity),isNaN(a.height)&&(a.height=Infinity),a.freeze(),this.lj=a,this.R(),this.h("maxSize",b,a))});u.u(S,{Ca:"measuredBounds"},function(){return this.Pc}); u.u(S,{Ja:"naturalBounds"},function(){return this.Hc},{configurable:!0});u.defineProperty(S,{margin:"margin"},function(){return this.Iq},function(a){"number"===typeof a&&(a=new rb(a));var b=this.Iq;b.L(a)||(this.Iq=a=a.Z(),this.R(),this.h("margin",b,a))});u.u(S,{transform:null},function(){0!==(this.ea&2048)===!0&&wl(this);return this.Sd});u.u(S,{Ff:null},function(){0!==(this.ea&4096)===!0&&wl(this);return this.Ym}); u.defineProperty(S,{alignment:"alignment"},function(){return this.se},function(a){var b=this.se;b.L(a)||(a.ne()&&!a.Lc()&&u.k("alignment must be a real Spot or Spot.Default"),this.se=a=a.Z(),El(this),this.h("alignment",b,a))});u.defineProperty(S,{column:"column"},function(){return this.Ep},function(a){a=Math.round(a);var b=this.Ep;b!==a&&(0>a&&u.xa(a,">= 0",S,"column"),this.Ep=a,this.R(),this.h("column",b,a))}); u.defineProperty(S,{$F:"columnSpan"},function(){return this.Wi},function(a){a=Math.round(a);var b=this.Wi;b!==a&&(1>a&&u.xa(a,">= 1",S,"columnSpan"),this.Wi=a,this.R(),this.h("columnSpan",b,a))});u.defineProperty(S,{rc:"row"},function(){return this.yr},function(a){a=Math.round(a);var b=this.yr;b!==a&&(0>a&&u.xa(a,">= 0",S,"row"),this.yr=a,this.R(),this.h("row",b,a))}); u.defineProperty(S,{rowSpan:"rowSpan"},function(){return this.tj},function(a){a=Math.round(a);var b=this.tj;b!==a&&(1>a&&u.xa(a,">= 1",S,"rowSpan"),this.tj=a,this.R(),this.h("rowSpan",b,a))});u.defineProperty(S,{Hj:"alignmentFocus"},function(){return this.xp},function(a){var b=this.xp;b.L(a)||(a.ne()&&!a.Lc()&&u.k("alignmentFocus must be a real Spot or Spot.Default"),this.xp=a=a.Z(),this.R(),this.h("alignmentFocus",b,a))}); u.defineProperty(S,{Jd:"portId"},function(){return this.kr},function(a){var b=this.kr;if(b!==a){var c=this.T;null===c||c instanceof U||(u.k("portID being set on a Link: "+a),c=null);null!==b&&null!==c&&Ll(c,this);this.kr=a;if(null!==a&&c){c.zh=!0;null===c.Qd&&Ml(c);var d=this.Jd;null!==d&&c.Qd.add(d,this)}this.h("portId",b,a)}});function Nl(a){var b={value:null};Ol(a,b);return b.value}function Ol(a,b){var c=a.S;return null===c||!Ol(c,b)&&a.visible?(b.value=a,!1):!0} function Il(a){var b=a.T;b instanceof U&&(a=a.g,null===a||a.ga.cb||b.Ze())}u.defineProperty(S,{xb:"toSpot"},function(){return null!==this.Q?this.Q.Ej:vb},function(a){null===this.Q&&this.Ee();var b=this.Q.Ej;b.L(a)||(a=a.Z(),this.Q.Ej=a,this.h("toSpot",b,a),Il(this))}); u.defineProperty(S,{vl:"toEndSegmentLength"},function(){return null!==this.Q?this.Q.Cj:10},function(a){null===this.Q&&this.Ee();var b=this.Q.Cj;b!==a&&(0>a&&u.xa(a,">= 0",S,"toEndSegmentLength"),this.Q.Cj=a,this.h("toEndSegmentLength",b,a),Il(this))});u.defineProperty(S,{xt:"toEndSegmentDirection"},function(){return null!==this.Q?this.Q.Bj:jl},function(a){null===this.Q&&this.Ee();var b=this.Q.Bj;b!==a&&(this.Q.Bj=a,this.h("toEndSegmentDirection",b,a),Il(this))}); u.defineProperty(S,{zt:"toShortLength"},function(){return null!==this.Q?this.Q.Dj:0},function(a){null===this.Q&&this.Ee();var b=this.Q.Dj;b!==a&&(this.Q.Dj=a,this.h("toShortLength",b,a),Il(this))});u.defineProperty(S,{NE:"toLinkable"},function(){return this.Ur},function(a){var b=this.Ur;b!==a&&(this.Ur=a,this.h("toLinkable",b,a))});u.defineProperty(S,{zI:"toMaxLinks"},function(){return this.Vr},function(a){var b=this.Vr;b!==a&&(0>a&&u.xa(a,">= 0",S,"toMaxLinks"),this.Vr=a,this.h("toMaxLinks",b,a))}); u.defineProperty(S,{vb:"fromSpot"},function(){return null!==this.Q?this.Q.cj:vb},function(a){null===this.Q&&this.Ee();var b=this.Q.cj;b.L(a)||(a=a.Z(),this.Q.cj=a,this.h("fromSpot",b,a),Il(this))});u.defineProperty(S,{Yk:"fromEndSegmentLength"},function(){return null!==this.Q?this.Q.aj:10},function(a){null===this.Q&&this.Ee();var b=this.Q.aj;b!==a&&(0>a&&u.xa(a,">= 0",S,"fromEndSegmentLength"),this.Q.aj=a,this.h("fromEndSegmentLength",b,a),Il(this))}); u.defineProperty(S,{Fs:"fromEndSegmentDirection"},function(){return null!==this.Q?this.Q.$i:jl},function(a){null===this.Q&&this.Ee();var b=this.Q.$i;b!==a&&(this.Q.$i=a,this.h("fromEndSegmentDirection",b,a),Il(this))});u.defineProperty(S,{Gs:"fromShortLength"},function(){return null!==this.Q?this.Q.bj:0},function(a){null===this.Q&&this.Ee();var b=this.Q.bj;b!==a&&(this.Q.bj=a,this.h("fromShortLength",b,a),Il(this))}); u.defineProperty(S,{vD:"fromLinkable"},function(){return this.Yp},function(a){var b=this.Yp;b!==a&&(this.Yp=a,this.h("fromLinkable",b,a))});u.defineProperty(S,{DG:"fromMaxLinks"},function(){return this.Zp},function(a){var b=this.Zp;b!==a&&(0>a&&u.xa(a,">= 0",S,"fromMaxLinks"),this.Zp=a,this.h("fromMaxLinks",b,a))});u.defineProperty(S,{cursor:"cursor"},function(){return this.Lp},function(a){var b=this.Lp;b!==a&&(u.j(a,"string",S,"cursor"),this.Lp=a,this.h("cursor",b,a))}); u.defineProperty(S,{click:"click"},function(){return null!==this.P?this.P.Xh:null},function(a){null===this.P&&gl(this);var b=this.P.Xh;b!==a&&(null!==a&&u.j(a,"function",S,"click"),this.P.Xh=a,this.h("click",b,a))});u.defineProperty(S,{us:"doubleClick"},function(){return null!==this.P?this.P.di:null},function(a){null===this.P&&gl(this);var b=this.P.di;b!==a&&(null!==a&&u.j(a,"function",S,"doubleClick"),this.P.di=a,this.h("doubleClick",b,a))}); u.defineProperty(S,{Vy:"contextClick"},function(){return null!==this.P?this.P.Zh:null},function(a){null===this.P&&gl(this);var b=this.P.Zh;b!==a&&(null!==a&&u.j(a,"function",S,"contextClick"),this.P.Zh=a,this.h("contextClick",b,a))});u.defineProperty(S,{ZD:"mouseEnter"},function(){return null!==this.P?this.P.Tq:null},function(a){null===this.P&&gl(this);var b=this.P.Tq;b!==a&&(null!==a&&u.j(a,"function",S,"mouseEnter"),this.P.Tq=a,this.h("mouseEnter",b,a))}); u.defineProperty(S,{$D:"mouseLeave"},function(){return null!==this.P?this.P.Uq:null},function(a){null===this.P&&gl(this);var b=this.P.Uq;b!==a&&(null!==a&&u.j(a,"function",S,"mouseLeave"),this.P.Uq=a,this.h("mouseLeave",b,a))});u.defineProperty(S,{Gz:"mouseOver"},function(){return null!==this.P?this.P.ni:null},function(a){null===this.P&&gl(this);var b=this.P.ni;b!==a&&(null!==a&&u.j(a,"function",S,"mouseOver"),this.P.ni=a,this.h("mouseOver",b,a))}); u.defineProperty(S,{Fz:"mouseHover"},function(){return null!==this.P?this.P.mi:null},function(a){null===this.P&&gl(this);var b=this.P.mi;b!==a&&(null!==a&&u.j(a,"function",S,"mouseHover"),this.P.mi=a,this.h("mouseHover",b,a))});u.defineProperty(S,{Ez:"mouseHold"},function(){return null!==this.P?this.P.li:null},function(a){null===this.P&&gl(this);var b=this.P.li;b!==a&&(null!==a&&u.j(a,"function",S,"mouseHold"),this.P.li=a,this.h("mouseHold",b,a))}); u.defineProperty(S,{CH:"mouseDragEnter"},function(){return null!==this.P?this.P.Rq:null},function(a){null===this.P&&gl(this);var b=this.P.Rq;b!==a&&(null!==a&&u.j(a,"function",S,"mouseDragEnter"),this.P.Rq=a,this.h("mouseDragEnter",b,a))});u.defineProperty(S,{DH:"mouseDragLeave"},function(){return null!==this.P?this.P.Sq:null},function(a){null===this.P&&gl(this);var b=this.P.Sq;b!==a&&(null!==a&&u.j(a,"function",S,"mouseDragLeave"),this.P.Sq=a,this.h("mouseDragLeave",b,a))}); u.defineProperty(S,{Dz:"mouseDrop"},function(){return null!==this.P?this.P.ki:null},function(a){null===this.P&&gl(this);var b=this.P.ki;b!==a&&(null!==a&&u.j(a,"function",S,"mouseDrop"),this.P.ki=a,this.h("mouseDrop",b,a))});u.defineProperty(S,{HC:"actionDown"},function(){return null!==this.P?this.P.sp:null},function(a){null===this.P&&gl(this);var b=this.P.sp;b!==a&&(null!==a&&u.j(a,"function",S,"actionDown"),this.P.sp=a,this.h("actionDown",b,a))}); u.defineProperty(S,{IC:"actionMove"},function(){return null!==this.P?this.P.tp:null},function(a){null===this.P&&gl(this);var b=this.P.tp;b!==a&&(null!==a&&u.j(a,"function",S,"actionMove"),this.P.tp=a,this.h("actionMove",b,a))});u.defineProperty(S,{JC:"actionUp"},function(){return null!==this.P?this.P.vp:null},function(a){null===this.P&&gl(this);var b=this.P.vp;b!==a&&(null!==a&&u.j(a,"function",S,"actionUp"),this.P.vp=a,this.h("actionUp",b,a))}); u.defineProperty(S,{GC:"actionCancel"},function(){return null!==this.P?this.P.rp:null},function(a){null===this.P&&gl(this);var b=this.P.rp;b!==a&&(null!==a&&u.j(a,"function",S,"actionCancel"),this.P.rp=a,this.h("actionCancel",b,a))});u.defineProperty(S,{mA:"toolTip"},function(){return null!==this.P?this.P.ui:null},function(a){null===this.P&&gl(this);var b=this.P.ui;b!==a&&(null!==a&&u.C(a,lf,S,"toolTip"),this.P.ui=a,this.h("toolTip",b,a))}); u.defineProperty(S,{contextMenu:"contextMenu"},function(){return null!==this.P?this.P.$h:null},function(a){null===this.P&&gl(this);var b=this.P.$h;b!==a&&(null!==a&&u.C(a,lf,S,"contextMenu"),this.P.$h=a,this.h("contextMenu",b,a))});S.prototype.bind=S.prototype.bind=function(a){a.gg=this;var b=this.Bo();null!==b&&Pl(b)&&u.k("Cannot add a Binding to a template that has already been copied: "+a);null===this.Gc&&(this.Gc=new E(bf));this.Gc.add(a)}; S.prototype.findTemplateBinder=S.prototype.Bo=function(){for(var a=this instanceof B?this:this.S;null!==a;){if(null!==a.zl)return a;a=a.S}return null};S.fromSvg=S.fromSVG=function(a){return Ql(a)};S.prototype.setProperties=function(a){u.pt(this,a)};var Rl; S.make=Rl=function(a,b){var c=arguments,d=null,e=null;if("function"===typeof a)e=a;else if("string"===typeof a){var f=Sl.ua(a);"function"===typeof f?(c=u.Pk(arguments),d=f(c)):e=da[a]}null===d&&(void 0===e&&(d=window.$,void 0!==d&&void 0!==d.noop&&u.k("GraphObject.make failed to complete. Is it conflicting with another $ var? (such as jQuery)"),u.k("GraphObject.make failed to complete, it may be conflicting with another var.")),null!==e&&e.constructor||u.k("GraphObject.make requires a class function or class name, not: "+ a),d=new e);f=1;if(d instanceof D&&1 e)&&u.k("Must specify non-negative integer row for RowColumnDefinition "+ b),a.ae=!0,a.index=e):void 0!==b.column&&(e=b.column,(void 0===e||null===e||Infinity===e||isNaN(e)||0>e)&&u.k("Must specify non-negative integer column for RowColumnDefinition "+b),a.ae=!1,a.index=e);e=new pa;for(c in b)"row"!==c&&"column"!==c&&(e[c]=b[c]);u.pt(a,e)}else u.pt(a,b);else u.k('Unknown initializer "'+b+'" for object being constructed by GraphObject.make: '+a)}var Sl=new la("string","function"); S.getBuilders=function(){var a=new la("string","function"),b;for(b in Sl)if(b!==b.toLowerCase()){var c=Sl[b];"function"===typeof c&&a.add(b,c)}a.freeze();return a};var Dm;S.defineBuilder=Dm=function(a,b){u.j(a,"string",S,"defineBuilder:name");u.j(b,"function",S,"defineBuilder:func");var c=a.toLowerCase();""!==a&&"none"!==c&&a!==c||u.k("Shape.defineFigureGenerator name must not be empty or None or all-lower-case: "+a);Sl.add(a,b)};var Em; S.takeBuilderArgument=Em=function(a,b,c){void 0===c&&(c=null);var d=a[1];if("function"===typeof c?c(d):"string"===typeof d)return a.splice(1,1),d;if(void 0===b)throw Error("no "+("function"===typeof c?"satisfactory":"string")+" argument for GraphObject builder "+a[0]);return b}; Dm("Button",function(){var a=new ga(ue);a.addColorStop(0,"white");a.addColorStop(1,"lightgray");var b=new ga(ue);b.addColorStop(0,"white");b.addColorStop(1,"dodgerblue");a=Rl(B,Yi,{qz:!0},{_buttonFillNormal:a,_buttonStrokeNormal:"gray",_buttonFillOver:b,_buttonStrokeOver:"blue"},Rl(X,{name:"ButtonBorder",Fb:"Rectangle",A:new L(0,0,2.761423749153968,2.761423749153968),B:new L(1,1,-2.761423749153968,-2.761423749153968),fill:a,stroke:"gray"}));a.ZD=function(a,b){var e=b.je("ButtonBorder");if(e instanceof X){var f=b._buttonFillOver;b._buttonFillNormal=e.fill;e.fill=f;f=b._buttonStrokeOver;b._buttonStrokeNormal=e.stroke;e.stroke=f}};a.$D=function(a,b){var e=b.je("ButtonBorder");e instanceof X&&(e.fill=b._buttonFillNormal,e.stroke=b._buttonStrokeNormal)};return a}); Dm("TreeExpanderButton",function(){var a=Rl("Button",{_treeExpandedFigure:"MinusLine",_treeCollapsedFigure:"PlusLine"},Rl(X,{name:"ButtonIcon",Fb:"MinusLine",za:K.op},(new bf("figure","isTreeExpanded",function(a,c){var d=c.S;return a?d._treeExpandedFigure:d._treeCollapsedFigure})).tw()),{visible:!1},(new bf("visible","isTreeLeaf",function(a){return!a})).tw());a.click=function(a,c){var d=c.T;d instanceof lf&&(d=d.Mh);if(d instanceof U){var e=d.g;if(null!==e){e=e.Eb;if(d.Vc){if(!e.canCollapseTree(d))return}else if(!e.canExpandTree(d))return; a.Tc=!0;d.Vc?e.collapseTree(d):e.expandTree(d)}}};return a}); Dm("SubGraphExpanderButton",function(){var a=Rl("Button",{_subGraphExpandedFigure:"MinusLine",_subGraphCollapsedFigure:"PlusLine"},Rl(X,{name:"ButtonIcon",Fb:"MinusLine",za:K.op},(new bf("figure","isSubGraphExpanded",function(a,c){var d=c.S;return a?d._subGraphExpandedFigure:d._subGraphCollapsedFigure})).tw()));a.click=function(a,c){var d=c.T;d instanceof lf&&(d=d.Mh);if(d instanceof V){var e=d.g;if(null!==e){e=e.Eb;if(d.be){if(!e.canCollapseSubGraph(d))return}else if(!e.canExpandSubGraph(d))return;a.Tc= !0;d.be?e.collapseSubGraph(d):e.expandSubGraph(d)}}};return a});Dm("ContextMenuButton",function(){var a=Rl("Button");a.stretch=fl;var b=a.je("ButtonBorder");b instanceof X&&(b.Fb="Rectangle",b.A=new L(0,0,2,3),b.B=new L(1,1,-2,-2));return a}); Dm("PanelExpanderButton",function(a){var b=Em(a,"COLLAPSIBLE");a=Rl("Button",Rl(X,"TriangleUp",{za:new ia(6,4)},(new bf("figure","visible",function(a){return a?"TriangleUp":"TriangleDown"})).tw(b)));var c=a.je("ButtonBorder");c instanceof X&&(c.stroke=null,c.fill="transparent");a.click=function(a,c){var f=c.g;if(null!==f){var h=c.T.je(b);null!==h&&(f.Wb("Collapse/Expand Panel"),h.visible=!h.visible,f.Wd("Collapse/Expand Panel"))}};return a}); function hl(){this.$h=this.ui=this.rp=this.vp=this.tp=this.sp=this.ki=this.Sq=this.Rq=this.li=this.mi=this.ni=this.Uq=this.Tq=this.Zh=this.di=this.Xh=null}hl.prototype.copy=function(){var a=new hl;a.Xh=this.Xh;a.di=this.di;a.Zh=this.Zh;a.Tq=this.Tq;a.Uq=this.Uq;a.ni=this.ni;a.mi=this.mi;a.li=this.li;a.Rq=this.Rq;a.Sq=this.Sq;a.ki=this.ki;a.sp=this.sp;a.tp=this.tp;a.vp=this.vp;a.rp=this.rp;a.ui=this.ui;a.$h=this.$h;return a}; function B(a){S.call(this);void 0===a?0===arguments.length?this.pa=vh:u.k("invalid argument to Panel constructor: undefined"):(u.rb(a,B,B,"type"),this.pa=a);this.Aa=new E(S);this.Pe=K.pp;this.Mg=!1;this.pa===bj&&(this.Mg=!0);this.iq=!1;this.Op=uc;this.ci=dl;this.pa===Fl&&Fm(this);this.ko=sh;this.cq=(new ia(10,10)).freeze();this.dq=K.Wj;this.zl=this.sh=null;this.wq=NaN;this.$f=this.hi=null;this.In="category";this.Zf=null;this.wi=new z(NaN,NaN,NaN,NaN);this.im=null;this.zh=!1;this.zr=null}u.Ia(B,S); u.Nh(B);u.fa("Panel",B);function Fm(a){a.Xi=K.pp;a.vh=1;a.bi=null;a.El=null;a.uh=1;a.th=null;a.Dl=null;a.zd=[];a.sd=[];a.bm=Gm;a.Bl=Gm;a.vi=0;a.ii=0} B.prototype.cloneProtected=function(a){S.prototype.cloneProtected.call(this,a);a.pa=this.pa;a.Pe=this.Pe.Z();a.Mg=this.Mg;a.iq=this.iq;a.Op=this.Op.Z();a.ci=this.ci;if(a.pa===Fl){a.Xi=this.Xi.Z();a.vh=this.vh;a.bi=this.bi;a.El=this.El;a.uh=this.uh;a.th=this.th;a.Dl=this.Dl;var b=[];if(0 a&&u.xa(a,">= 0",B,"padding"),a=new rb(a)):(u.C(a,rb,B,"padding"),0>a.left&&u.xa(a.left,">= 0",B,"padding:value.left"),0>a.right&&u.xa(a.right,">= 0",B,"padding:value.right"),0>a.top&&u.xa(a.top,">= 0",B,"padding:value.top"),0>a.bottom&&u.xa(a.bottom,">= 0",B,"padding:value.bottom"));var b=this.Pe;b.L(a)||(this.Pe=a=a.Z(),this.R(),this.h("padding",b,a))}); u.defineProperty(B,{Tk:"defaultAlignment"},function(){return this.Op},function(a){var b=this.Op;b.L(a)||(this.Op=a=a.Z(),this.R(),this.h("defaultAlignment",b,a))});u.defineProperty(B,{Cd:"defaultStretch"},function(){return this.ci},function(a){var b=this.ci;b!==a&&(u.rb(a,S,B,"defaultStretch"),this.ci=a,this.R(),this.h("defaultStretch",b,a))}); u.defineProperty(B,{tJ:"defaultSeparatorPadding"},function(){return void 0===this.Xi?K.pp:this.Xi},function(a){if(void 0!==this.Xi){"number"===typeof a&&(a=new rb(a));var b=this.Xi;b.L(a)||(this.Xi=a=a.Z(),this.h("defaultSeparatorPadding",b,a))}}); u.defineProperty(B,{rJ:"defaultRowSeparatorStroke"},function(){return void 0===this.bi?null:this.bi},function(a){var b=this.bi;b!==a&&(null===a||"string"===typeof a||a instanceof ga)&&(a instanceof ga&&a.freeze(),this.bi=a,this.h("defaultRowSeparatorStroke",b,a))});u.defineProperty(B,{sJ:"defaultRowSeparatorStrokeWidth"},function(){return void 0===this.vh?1:this.vh},function(a){if(void 0!==this.vh){var b=this.vh;b!==a&&isFinite(a)&&0<=a&&(this.vh=a,this.h("defaultRowSeparatorStrokeWidth",b,a))}}); u.defineProperty(B,{qJ:"defaultRowSeparatorDashArray"},function(){return void 0===this.El?null:this.El},function(a){if(void 0!==this.El){var b=this.El;if(b!==a){null===a||Array.isArray(a)||u.Kd(a,"Array",B,"defaultRowSeparatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;e =c&&(c=1);var d=this.bw,e=d.width,d=d.height,f=this.Ja,h=f.width,f=f.height,k=Math.ceil(h/e),l=Math.ceil(f/d),m=this.BD;a.save();a.beginPath();a.rect(0,0,h,f);a.clip();for(var n=[],p=this.Aa.n,q=p.length,r=0;r e*s*c))break}a.stroke()}else if("LineH"===A.Fb){a.lineWidth= A.hb;yl(this,a,A.stroke,!1,!1);a.beginPath();for(I=x=Math.floor(-m.y/d);I<=x+l&&!(H=I*d+m.y,0<=H&&H<=f&&Hm(I,s,t)&&(v&&!y?kl(a,0,H,h,H,C,A.dd):(a.moveTo(0,H),a.lineTo(h,H)),2>d*s*c));I++);a.stroke()}else if("BarV"===A.Fb)for(yl(this,a,A.fill,!0,!1),A=A.width,isNaN(A)&&(A=e),I=x=Math.floor(-m.x/e);I<=x+k&&!(H=I*e+m.x,0<=H&&He*s*c));I++);else if("BarH"===A.Fb)for(yl(this,a,A.fill,!0,!1),A=A.height,isNaN(A)&&(A=d),I=x=Math.floor(-m.y/d);I<=x+l&&!(H=I*d+m.y,0<=H&& H<=f&&Hm(I,s,t)&&(a.fillRect(0,H,h,A),2>d*s*c));I++);v&&(void 0!==a.setLineDash?(a.setLineDash(u.nh),a.lineDashOffset=0):void 0!==a.webkitLineDash?(a.webkitLineDash=u.nh,a.webkitLineDashOffset=0):void 0!==a.mozDash&&(a.mozDash=null,a.mozDashOffset=0))}}a.restore();$i(b,a,!1)}else{this.pa===Fl&&(a.lineCap="butt",Im(this,a,!0,this.zd,!0),Im(this,a,!1,this.sd,!0),Jm(this,a,!0,this.zd),Jm(this,a,!1,this.sd),Im(this,a,!0,this.zd,!1),Im(this,a,!1,this.sd,!1));(c=this.KD)&&a.save();e=this.If();d=this.Aa.n; h=d.length;for(f=0;f f.height&&(m-=r-f.height):r>f.width&&(m-=r-f.width);l=l.position+m/2;b.lineWidth=m;r=a.padding;c?(l+=r.top,m=r.left,r=f.width-r.right,n&&!p?kl(b,m,l,r,l,q,0):(b.moveTo(m,l),b.lineTo(r,l))):(l+=r.left,m=r.top,r=f.height-r.bottom,n&&!p?kl(b,l,m,l,r,q,0):(b.moveTo(l,m),b.lineTo(l,r)));b.stroke();n&&(void 0!==b.setLineDash?(b.setLineDash(u.nh),b.lineDashOffset=0):void 0!==b.webkitLineDash?(b.webkitLineDash=u.nh,b.webkitLineDashOffset=0):void 0!==b.mozDash&&(b.mozDash=null,b.mozDashOffset=0))}}}} function Im(a,b,c,d,e){for(var f=d.length,h=a.ba,k=0;k m)){var n=l.mg(),p=l.gp;isNaN(p)&&(p=c?a.vh:a.uh);var q=l.fp;null===q&&(q=c?a.bi:a.th);null===q&&(p=0);n-=p;p=l.position+p;n+=l.Ra;p+n>m&&(n=m-p);0>=n||(m=a.padding,yl(a,b,l.background,!0,!1),c?b.fillRect(m.left,p+m.top,h.width-(m.left+m.right),n):b.fillRect(p+m.left,m.top,n,h.height-(m.top+m.bottom)))}}}} function Hm(a,b,c){if(0!==a%b)return!1;b=c.length;for(var d=0;dkd&&(Ac=kd),ba.Ra+=Ac,kd=Math.max(kd-Ac,0));1!==ha.Wi||Wd!==qh&&Wd!==el||(ba=this.fd(Sc),Ac=Math.max(Ze-ba.Ra,0),Ac>zc&&(Ac=zc),ba.Ra+=Ac,zc=Math.max(zc-Ac,0));rg&&ha.Ho()}}}u.sa(Rg);for(var qc=0,Xd=0,Ea=this.rs,ca=0;ca =this.lt);Pb++)ba=this.gd(ha.rc+Pb),Ee.height+=Math.max(ba.Li,isNaN(ba.Qe)?ba.Kf:Math.min(ba.Qe,ba.Kf));for(Pb=1;Pb =this.rs);Pb++)ba=this.fd(ha.column+Pb),Ee.width+=Math.max(ba.Li,isNaN(ba.Qe)?ba.Kf:Math.min(ba.Qe,ba.Kf));pb.width+=Ee.width;pb.height+=Ee.height;Ob=ha.margin;Rf=Ob.right+Ob.left;Sf=Ob.top+Ob.bottom;Ph(ha,pb.width,pb.height,qm,zi);for(var De=ha.Ca,Ze=Math.max(De.width+ Rf,0),Cd=Math.max(De.height+Sf,0),Ch=0,Pb=0;Pb =this.lt);Pb++)ba=this.gd(ha.rc+Pb),Ch+=ba.total||0;if(Ch Ed&&(ba.Ra=Math.min(ba.Kf,Ed+Dd),ba.yb!==Ed&&(Dd-=ba.yb-Ed));if(-1===ba.index-1)break;ba=this.gd(ba.index-1)}for(var Tf=0,Pb=0;Pb =this.rs);Pb++)ba=this.fd(ha.column+Pb),Tf+=ba.total||0;if(Tf Ed&&(ba.Ra=Math.min(ba.Kf,Ed+Dd),ba.yb!== Ed&&(Dd-=ba.yb-Ed));if(-1===ba.index-1)break;ba=this.fd(ba.index-1)}}u.sa(Tc);u.Oj(Ee);u.Oj(pb);for(var Uf=0,$e=0,Wd=pl(this,!0),Fd=this.za,Vf=this.bf,ne=Xd=qc=0,ld=0,Ea=this.rs,ca=0;ca Eh)Ph(Qb,Infinity,Infinity),Yd=Qb.Ca,Ge.Uh(Yd),this.Vi.add(Yd);else{var Yf=Qb.Pf,Pp=Qb.Dw,tm=Qb.Hj;tm.ne()&&(tm=Ib);var Gi=Qb.Ew,Sr=Qb.BE,Hi=0,Ii=0,fk=0;if(Yf<-Eh||Yf>=Eh){var Qp=ug.XD,Ji=ug.WD;Gi!==dh&&(fk=ug.computeAngle(Qb,Gi,Ji),Qb.angle=fk);Hi=Qp.x- af.x;Ii=Qp.y-af.y}else{var tf,Gh;if(0<=Yf)tf=Ei.ja(Yf),Gh=Yf c||p>d)this.R(),Ph(this,n>c?c:n,p>d?d:p);break;case cd:this.R(!0);Ph(this,c+r,d+s,0,0);break;case fl:this.R(!0);Ph(this,c+r,p+s,0,0);break;case el:this.R(!0),Ph(this,n+r,d+s,0,0)}}k=this.ba;k.x=a;k.y= b;k.width=c;k.height=d;var t=this.pa.Ub;switch(t){case "Position":for(var v=f.length,x=e.x-this.padding.left,A=e.y-this.padding.top,y=0;y =this.lt);ca++){var ha=this.gd(ob+ca);id.height+=ha.total}for(ca=1;ca =this.rs);ca++){var pg=this.fd(Td+ca);id.width+=pg.total}var Qg=Ud.yb+id.width,zh=Rc.yb+id.height;h.x=Qc;h.y=Ic;h.width=Qg;h.height=zh;var Sc=Qc,Ah=Ic,Sb=Qg,Rg=zh;Qc+Qg>e.width&&(Sb=Math.max(e.width-Qc,0));Ic+zh>e.height&&(Rg=Math.max(e.height-Ic,0));var Tc=Ea.alignment,je=0,Jc=0,jd=0,zc=0;if(Tc.Lc()){Tc= this.Tk;Tc.pd()||(Tc=Ib);var je=Tc.x,Jc=Tc.y,jd=Tc.offsetX,zc=Tc.offsetY,kd=Ud.alignment,Pf=Rc.alignment;kd.pd()&&(je=kd.x,jd=kd.offsetX);Pf.pd()&&(Jc=Pf.y,zc=Pf.offsetY)}else je=Tc.x,Jc=Tc.y,jd=Tc.offsetX,zc=Tc.offsetY;if(isNaN(je)||isNaN(Jc))Jc=je=.5,zc=jd=0;var ba=Be.width,ke=Be.height,Ce=Ea.margin,Uj=Ce.left+Ce.right,Vj=Ce.top+Ce.bottom,Ac=Gl(Ea,Rc,Ud,!1);!isNaN(Ea.za.width)||Ac!==cd&&Ac!==fl||(ba=Math.max(Qg-Uj,0));!isNaN(Ea.za.height)||Ac!==cd&&Ac!==el||(ke=Math.max(zh-Vj,0));var fb=Ea.bf,gb= Ea.wg,ba=Math.min(fb.width,ba),ke=Math.min(fb.height,ke),ba=Math.max(gb.width,ba),ke=Math.max(gb.height,ke),Wj=ke+Vj;h.x+=h.width*je-(ba+Uj)*je+jd+Ce.left;h.y+=h.height*Jc-Wj*Jc+zc+Ce.top;Ea.visible&&(qb(Sc,Ah,Sb,Rg,h.x,h.y,Be.width,Be.height)?Ea.zc(h.x,h.y,ba,ke):Ea.zc(h.x,h.y,ba,ke,new z(Sc,Ah,Sb,Rg)))}else{Ea.Lg();Ea.Xb.Ma();var Qf=Ea.Xb;Qf.x=Vd.type===tl?Pg:Qc;Qf.y=Vd.type===ul?Of:Ic;Qf.width=Be.width;Qf.height=Be.height;Ea.Xb.freeze();rl(Ea,!1)}}u.Oj(id);for(ob=0;ob =pb){var Uf=this.XD,$e=this.WD;Pb!==dh&&(Tf=this.computeAngle(Bc,Pb,$e),Bc.angle=Tf);Dd=Uf.x;Ed=Uf.y}else{var Fd=void 0,Vf=void 0;if(0<=Kc)Fd=me.n[Kc],Vf=Kc p.width||n.y>p.height||0>n.x+n.width||0>n.y+n.height)){n=m;m=m instanceof B?m:null;p=u.lh();p.set(h);if(null!==m?m.Nj(a,b,c,d,e,p):ol(n,a,d,p))null!== b&&(n=b(n)),null===n||null!==c&&!c(n)||e.add(n);u.Ye(p)}}}void 0===f&&u.Ye(h);return d}void 0===f&&u.Ye(h);return!1};function Um(a,b,c,d){for(var e=a.Aa.n,f=e.length;f--;){var h=e[f];if(h.visible){var k=h.ba,l=a.Ja;k.x>l.width||k.y>l.height||0>k.x+k.width||0>k.y+k.height||(h instanceof B&&Um(h,b,c,d),null!==b&&(h=b(h)),null===h||null!==c&&!c(h)||d.add(h))}}} g.zm=function(a,b,c,d,e,f){if(!1===this.Bg)return!1;void 0===c&&(c=null);void 0===d&&(d=null);var h=this.Ja,k=this.Tf(),l=k?a:Wa(u.fc(a.x,a.y),this.transform),m=k?b:Wa(u.fc(b.x,b.y),this.transform),n=l.Lj(m),p=0 s.width||r.y>s.height||0>r.x+r.width||0>r.y+r.height||(q.Tf()?(r=q.transform,Wa(k.set(a),r),Wa(l.set(b),r)):(k.set(a),l.set(b)),r=q,q=q instanceof B?q:null,null!==q?!q.zm(k,l,c,d,e,f):!r.sD(k,l,e))||(null!==c&&(r=c(r)),null===r||null!==d&&!d(r)||f.add(r))}}u.v(k);u.v(l)}return e? p:h}return!1};function Km(a){var b=a.A;if(void 0===b||b===uc)b=null;null===b&&a instanceof X&&(a=a.Qa,null!==a&&(b=a.A));null===b&&(b=xb);return b}function Lm(a){var b=a.B;if(void 0===b||b===uc)b=null;null===b&&a instanceof X&&(a=a.Qa,null!==a&&(b=a.B));null===b&&(b=Vb);return b}B.prototype.add=B.prototype.add=function(a){u.C(a,S,B,"add:element");this.Yd(this.Aa.count,a)};B.prototype.elt=B.prototype.ja=function(a){return this.Aa.ja(a)}; B.prototype.insertAt=B.prototype.Yd=function(a,b){b instanceof G&&u.k("Cannot add a Part to a Panel: "+b);if(this===b||this.gl(b))this===b&&u.k("Cannot make a Panel contain itself: "+this.toString()),u.k("Cannot make a Panel indirectly contain itself: "+this.toString()+" already contains "+b.toString());var c=b.S;null!==c&&c!==this&&u.k("Cannot add a GraphObject that already belongs to another Panel to this Panel: "+b.toString()+", already contained by "+c.toString()+", cannot be shared by this Panel: "+ this.toString());this.pa!==bj||b instanceof X||u.k("Can only add Shapes to a Grid Panel, not: "+b);b.ql(this);b.Xl=null;if(null!==this.QD){var d=b.data;null!==d&&"object"===typeof d&&(null===this.Zf&&(this.Zf=new la(Object,B)),this.Zf.add(d,b))}var e=this.Aa,d=-1;if(c===this){for(var f=-1,h=this.Aa.n,k=h.length,l=0;l =e.count&&a>=e.count)return;e.jd(f);d=f}else u.k("element "+b.toString()+" has panel "+c.toString()+" but is not contained by it.")}if(0> a||a>e.count)a=e.count;e.Yd(a,b);this.R();b.R();null!==b.Jd?this.zh=!0:b instanceof B&&!0===b.zh&&(this.zh=!0);c=this.T;null!==c&&(c.Bk=null,c.kj=NaN,this.zh&&c instanceof U&&(c.zh=!0),c.zh&&(c.Qd=null),e=this.g,null!==e&&e.ga.cb||(-1!==d&&c.Dc(ce,"elements",this,b,null,d,null),c.Dc(be,"elements",this,null,b,null,a)))};B.prototype.remove=B.prototype.remove=function(a){u.C(a,S,B,"remove:element");for(var b=this.Aa.n,c=b.length,d=-1,e=0;e a&&u.xa(a,">= 0",B,"getRowDefinition:idx");a=Math.round(a);var b=this.zd;if(void 0===b[a]){var c=new Se;c.ql(this);c.ae=!0;c.index=a;b[a]=c}return b[a]};B.prototype.removeRowDefinition=B.prototype.oE=function(a){0>a&&u.xa(a,">= 0",B,"removeRowDefinition:idx");a=Math.round(a);var b=this.zd;this.Dc(ce,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.R()};u.u(B,{rs:"columnCount"},function(){return void 0===this.sd?0:this.sd.length}); B.prototype.getColumnDefinition=B.prototype.fd=function(a){0>a&&u.xa(a,">= 0",B,"getColumnDefinition:idx");a=Math.round(a);var b=this.sd;if(void 0===b[a]){var c=new Se;c.ql(this);c.ae=!1;c.index=a;b[a]=c}return b[a]};B.prototype.removeColumnDefinition=B.prototype.kE=function(a){0>a&&u.xa(a,">= 0",B,"removeColumnDefinition:idx");a=Math.round(a);var b=this.sd;this.Dc(ce,"coldefs",this,b[a],null,a,null);b[a]&&delete b[a];this.R()}; u.defineProperty(B,{bI:"rowSizing"},function(){return void 0===this.bm?Gm:this.bm},function(a){if(void 0!==this.bm){var b=this.bm;b!==a&&(a!==Gm&&a!==Nm&&u.k("rowSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None"),this.bm=a,this.R(),this.h("rowSizing",b,a))}}); u.defineProperty(B,{ZF:"columnSizing"},function(){return void 0===this.Bl?Gm:this.Bl},function(a){if(void 0!==this.Bl){var b=this.Bl;b!==a&&(a!==Gm&&a!==Nm&&u.k("columnSizing must be RowColumnDefinition.ProportionalExtra or RowColumnDefinition.None"),this.Bl=a,this.R(),this.h("columnSizing",b,a))}}); u.defineProperty(B,{DK:"topIndex"},function(){return void 0===this.vi?0:this.vi},function(a){if(void 0!==this.vi){var b=this.vi;b!==a&&((!isFinite(a)||0>a)&&u.k("topIndex must be greater than zero and a real number. Was "+a),this.vi=a,this.R(),this.h("topIndex",b,a))}}); u.defineProperty(B,{QJ:"leftIndex"},function(){return void 0===this.ii?0:this.ii},function(a){if(void 0!==this.ii){var b=this.ii;b!==a&&((!isFinite(a)||0>a)&&u.k("leftIndex must be greater than zero and a real number. Was "+a),this.ii=a,this.R(),this.h("leftIndex",b,a))}});B.prototype.findRowForLocalY=function(a){if(0>a)return-1;if(this.type!==Fl)return NaN;for(var b=0,c=this.zd,d=c.length,e=this.vi;e a)return-1;if(this.type!==Fl)return NaN;for(var b=0,c=this.sd,d=c.length,e=this.ii;e a;)this.Fe(a);a=this.QD;if(null!==a)for(var b=u.qb(a),c=0;cc)){var d=a.getCategoryForItemData(b,c),d=a.findTemplateForItemData(b,c,d);if(null!==d){nf(d);d=d.copy();"object"===typeof b&&(null===a.Zf&&(a.Zf=new la(Object,B)),a.Zf.add(b,d));var e=c;sk(a)&&e++;a.Yd(e,d);tk(a,e,c);d.data=b}}} function tk(a,b,c){for(a=a.Aa;b a&&u.xa(a,">= 0",Se,"height"),this.Qe=a,this.Ra=this.yb,null!==this.S&&this.S.R(),this.Rc("height",b,a))});u.defineProperty(Se,{width:"width"},function(){return this.Qe},function(a){var b=this.Qe;b!==a&&(0>a&&u.xa(a,">= 0",Se,"width"),this.Qe=a,this.Ra=this.yb,null!==this.S&&this.S.R(),this.Rc("width",b,a))}); u.defineProperty(Se,{Li:"minimum"},function(){return this.oj},function(a){var b=this.oj;b!==a&&((0>a||!isFinite(a))&&u.xa(a,">= 0",Se,"minimum"),this.oj=a,this.Ra=this.yb,null!==this.S&&this.S.R(),this.Rc("minimum",b,a))});u.defineProperty(Se,{Kf:"maximum"},function(){return this.mj},function(a){var b=this.mj;b!==a&&(0>a&&u.xa(a,">= 0",Se,"maximum"),this.mj=a,this.Ra=this.yb,null!==this.S&&this.S.R(),this.Rc("maximum",b,a))}); u.defineProperty(Se,{alignment:"alignment"},function(){return this.se},function(a){var b=this.se;b.L(a)||(this.se=a.Z(),null!==this.S&&this.S.R(),this.Rc("alignment",b,a))});u.defineProperty(Se,{stretch:"stretch"},function(){return this.Jh},function(a){var b=this.Jh;b!==a&&(this.Jh=a,null!==this.S&&this.S.R(),this.Rc("stretch",b,a))}); u.defineProperty(Se,{DE:"separatorPadding"},function(){return this.wj},function(a){"number"===typeof a&&(a=new rb(a));var b=this.wj;null!==a&&null!==b&&b.L(a)||(null!==a&&(a=a.Z()),this.wj=a,null!==this.S&&this.S.R(),this.Rc("separatorPadding",b,a))});u.defineProperty(Se,{fp:"separatorStroke"},function(){return this.Ir},function(a){var b=this.Ir;b!==a&&(null===a||"string"===typeof a||a instanceof ga)&&(a instanceof ga&&a.freeze(),this.Ir=a,null!==this.S&&this.S.R(),this.Rc("separatorStroke",b,a))}); u.defineProperty(Se,{gp:"separatorStrokeWidth"},function(){return this.Jr},function(a){var b=this.Jr;b!==a&&(this.Jr=a,null!==this.S&&this.S.R(),this.Rc("separatorStrokeWidth",b,a))}); u.defineProperty(Se,{gI:"separatorDashArray"},function(){return this.Fh},function(a){var b=this.Fh;if(b!==a){null===a||Array.isArray(a)||u.Kd(a,"Array",Se,"separatorDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;e e)){for(var k=c[0],l=c[1],p=0,q=0,r=0,s=m=0,t=q=0,v=u.fb(),x=2;x t){u.sa(v);return}e>m?(A= e-m,e=m):A=0;var y=Math.sqrt(e*e/(1+r*r));0>p&&(y=-y);k+=y;l+=r*y;a.translate(k,l);a.rotate(s);a.translate(-(h/2),-(f/2));0===A&&d.Mj(a,b);a.translate(h/2,f/2);a.rotate(-s);a.translate(-k,-l);t-=e;m-=e;if(0!==A){q++;if(q===v.length){u.sa(v);return}m=v[q];p=m[0];s=m[1];r=m[2];m=m[3];e=A}}u.sa(v)}} X.prototype.Mj=function(a,b){if(null!==this.yc||null!==this.kd){null!==this.kd&&yl(this,a,this.kd,!0,!1);null!==this.yc&&yl(this,a,this.yc,!1,!1);var c=this.Ug;if(0===c){var d=this.T;d instanceof lf&&d.type===ah&&d.vc instanceof X&&(c=d.vc.hb)}a.lineWidth=c;a.lineJoin=this.fo;a.lineCap=this.eo;a.miterLimit=this.hm;var e=!1;this.T&&b.Sg.drawShadows&&(e=this.T.il);var f=!0;null!==this.yc&&null===this.kd&&(f=!1);var d=!1,h=!0,k=this.hA;null!==k&&(d=!0,void 0!==a.setLineDash?(a.setLineDash(k),a.lineDashOffset= this.dd):void 0!==a.webkitLineDash?(a.webkitLineDash=k,a.webkitLineDashOffset=this.dd):void 0!==a.mozDash?(a.mozDash=k,a.mozDashOffset=this.dd):h=!1);var l=this.Qa;if(null!==l){if(l.pa===dd)a.beginPath(),d&&!h?kl(a,l.nc,l.uc,l.pb,l.Bb,k,this.dd):(a.moveTo(l.nc,l.uc),a.lineTo(l.pb,l.Bb)),null!==this.kd&&zl(a,this.kd),0!==c&&null!==this.yc&&Bl(a);else if(l.pa===md){var m=l.nc,n=l.uc,p=l.pb,q=l.Bb,l=Math.min(m,p),r=Math.min(n,q),m=Math.abs(p-m),n=Math.abs(q-n);null!==this.kd&&(a.beginPath(),a.rect(l, r,m,n),zl(a,this.kd));if(null!==this.yc){var s=p=0,t=0;f&&e&&(p=a.shadowOffsetX,s=a.shadowOffsetY,t=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY=0,a.shadowBlur=0);d&&!h?(h=u.fb(),h.push(l),h.push(r),h.push(l+m),h.push(r),h.push(l+m),h.push(r+n),h.push(l),h.push(r+n),h.push(l),h.push(r),a.beginPath(),$m(a,h,k,this.dd),Bl(a),u.sa(h)):0!==c&&(a.beginPath(),a.rect(l,r,m,n),Bl(a));f&&e&&(a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=t)}}else if(l.pa===nd)m=l.nc,n=l.uc,p=l.pb,q=l.Bb,l=Math.abs(p-m)/ 2,r=Math.abs(q-n)/2,m=Math.min(m,p)+l,n=Math.min(n,q)+r,a.beginPath(),a.moveTo(m,n-r),a.bezierCurveTo(m+K.ta*l,n-r,m+l,n-K.ta*r,m+l,n),a.bezierCurveTo(m+l,n+K.ta*r,m+K.ta*l,n+r,m,n+r),a.bezierCurveTo(m-K.ta*l,n+r,m-l,n+K.ta*r,m-l,n),a.bezierCurveTo(m-l,n-K.ta*r,m-K.ta*l,n-r,m,n-r),a.closePath(),null!==this.kd&&zl(a,this.kd),d&&!h&&(h=u.fb(),K.ye(m,n-r,m+K.ta*l,n-r,m+l,n-K.ta*r,m+l,n,.5,h),K.ye(m+l,n,m+l,n+K.ta*r,m+K.ta*l,n+r,m,n+r,.5,h),K.ye(m,n+r,m-K.ta*l,n+r,m-l,n+K.ta*r,m-l,n,.5,h),K.ye(m-l,n, m-l,n-K.ta*r,m-K.ta*l,n-r,m,n-r,.5,h),a.beginPath(),$m(a,h,k,this.dd),u.sa(h)),0!==c&&null!==this.yc&&(t=s=p=0,f&&e&&(p=a.shadowOffsetX,s=a.shadowOffsetY,t=a.shadowBlur,a.shadowOffsetX=0,a.shadowOffsetY=0,a.shadowBlur=0),Bl(a),f&&e&&(a.shadowOffsetX=p,a.shadowOffsetY=s,a.shadowBlur=t));else if(l.pa===ad){r=l.Zi;n=r.length;for(q=0;q x.Qf);else{var v=Hd(x,m),A=v.length;if(0===A){a.lineTo(x.ma,x.ya);break}for(var y=0;ye))if(h=b[0],k=b[1],4===e)kl(a,h,k,b[2],b[3],c,d);else{a.moveTo(h,k);for(var n=0,p=0,q=0,r=p=l=0,s=u.fb(),t=2;t r&&(e=r);e>l?(v=e-l,e=l):v=0;var x=Math.sqrt(e*e/ (1+q*q));0>n&&(x=-x);h+=x;k+=q*x;m?a.lineTo(h,k):a.moveTo(h,k);r-=e;l-=e;if(0!==v){p++;if(p===s.length){u.sa(s);return}l=s[p];n=l[0];q=l[1];l=l[2];e=v}else m=!m}u.sa(s)}}X.prototype.getDocumentPoint=X.prototype.lb=function(a,b){void 0===b&&(b=new w);a.ne()&&u.k("getDocumentPoint:s Spot must be real: "+a.toString());var c=this.Ja,d=this.hb;b.m(a.x*(c.width+d)-d/2+c.x+a.offsetX,a.y*(c.height+d)-d/2+c.y+a.offsetY);this.Ff.ab(b);return b}; X.prototype.Jj=function(a,b){var c=this.Qa;if(null===c||null===this.fill&&null===this.stroke)return!1;var d=c.kb,e=this.hb/2;c.type!==dd||b||(e+=2);var f=u.Sf();f.assign(d);f.Jf(e+2,e+2);if(!f.Da(a))return u.ic(f),!1;d=e+1E-4;if(c.type===dd){if(null===this.stroke)return!1;d=(c.F-c.va)*(a.x-c.va)+(c.G-c.wa)*(a.y-c.wa);if(0>(c.va-c.F)*(a.x-c.F)+(c.wa-c.G)*(a.y-c.G)||0>d)return!1;u.ic(f);return K.rd(c.va,c.wa,c.F,c.G,e,a.x,a.y)}if(c.type===md){var h=c.va,k=c.wa,l=c.F,m=c.G,c=Math.min(h,l),n=Math.min(k, m),h=Math.abs(l-h),k=Math.abs(m-k);f.x=c;f.y=n;f.width=h;f.height=k;if(null===this.fill){f.Jf(-d,-d);if(f.Da(a))return u.ic(f),!1;f.Jf(d,d)}null!==this.stroke&&f.Jf(e,e);e=f.Da(a);u.ic(f);return e}if(c.type===nd){h=c.va;k=c.wa;l=c.F;m=c.G;c=Math.min(h,l);n=Math.min(k,m);h=Math.abs(l-h);k=Math.abs(m-k);h/=2;k/=2;c=a.x-(c+h);n=a.y-(n+k);if(null===this.fill){h-=d;k-=d;if(0>=h||0>=k||1>=c*c/(h*h)+n*n/(k*k))return u.ic(f),!1;h+=d;k+=d}null!==this.stroke&&(h+=e,k+=e);u.ic(f);return 0>=h||0>=k?!1:1>=c*c/ (h*h)+n*n/(k*k)}if(c.type===ad)return u.ic(f),null===this.fill?Ld(c,a.x,a.y,e):c.Da(a,e,1 =this.hb)n=K.bh(p.nc,p.uc,p.pb,p.Bb,f,h,k,l,e);else{var r=0,s=0;p.nc===p.pb?(r=m,s=0):(b=(p.Bb-p.uc)/(p.pb-p.nc),s=m/Math.sqrt(1+b*b),r=s*b);d=u.fb();b=new w;K.bh(p.nc+ r,p.uc+s,p.pb+r,p.Bb+s,f,h,k,l,b)&&d.push(b);b=new w;K.bh(p.nc-r,p.uc-s,p.pb-r,p.Bb-s,f,h,k,l,b)&&d.push(b);b=new w;K.bh(p.nc+r,p.uc+s,p.nc-r,p.uc-s,f,h,k,l,b)&&d.push(b);b=new w;K.bh(p.pb+r,p.Bb+s,p.pb-r,p.Bb-s,f,h,k,l,b)&&d.push(b);b=d.length;if(0===b)return u.sa(d),!1;n=!0;s=Infinity;for(r=0;rMath.abs(c)){n=h-b-c*(f-d);if(0>a*a*c*c+v*v-n*n){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(a*a*c*c+v*v-n*n);k=(-(a*a*c*n)+a*v*m)/(v*v+a*a*c*c)+d;a=(-(a*a*c*n)-a*v*m)/(v*v+a*a*c*c)+d;l=c*(k-d)+n+b;b=c*(a-d)+n+b;d=Math.abs((f-k)*(f-k))+Math.abs((h-l)*(h-l));h=Math.abs((f-a)*(f-a))+Math.abs((h-b)* (h-b));d k){e.x=NaN;e.y=NaN;n=!1;break a}m=Math.sqrt(k);l=b+m;b-=m;d=Math.abs(l-h);h=Math.abs(b-h);d c?a-c:c-a)<(b>d?b-d:d-b)?(e=b e||K.mb(l.y,e))&&(l.ye||K.mb(l.x,e))&&(l.x=h&&d<=a}a =h&&f<=a} X.prototype.sD=function(a,b,c){function d(a,b){for(var c=a.length,d=0;d e)return!0;return!1}if(c&&null!==this.fill&&this.Jj(a,!0))return!0;var e=a.Lj(b);b=e;1.5 =e||Ya(b,f,0,-p)>=e||Ya(b,f,0,p)>=e||Ya(b,f,n,0)>=e?!1:!0}else if(f.type=== ad){h=f.kb;k=h.x;l=h.y;m=h.x+h.width;h=h.y+h.height;if(a.x>m&&a.x h&&a.y e&&Xa(a.x,a.y,k,l,m,l)>e&&Xa(a.x,a.y,m,h,k,h)>e&&Xa(a.x,a.y,m,h,m,l)>e)return!1;b=Math.sqrt(e);if(c){if(null===this.fill?Ld(f,a.x,a.y,b):f.Da(a,b,!0))return!0}else{c=f.ub;for(b=0;b e)return!1;l=k.Ha.n;m=l.length;for(h=0;h e)return!1;break;case zd:f=u.fb();K.ye(n,p,q.Rb,q.jc, q.ef,q.ff,q.F,q.G,.8,f);n=d(f,a);u.sa(f);if(n)return!1;n=q.F;p=q.G;if(a.yo(n,p)>e)return!1;break;case Ad:f=u.fb();K.Zo(n,p,q.Rb,q.jc,q.F,q.G,.8,f);n=d(f,a);u.sa(f);if(n)return!1;n=q.F;p=q.G;if(a.yo(n,p)>e)return!1;break;case Bd:case Gd:var r=q.type===Bd?Hd(q,k):Id(q,k,n,p),s=r.length;if(0===s){n=q.ma;p=q.ya;if(a.yo(n,p)>e)return!1;break}q=null;f=u.fb();for(b=0;b = 0",X,"strokeWidth:value")});u.defineProperty(X,{qI:"strokeCap"},function(){return this.eo},function(a){var b=this.eo;b!==a&&("string"!==typeof a||"butt"!==a&&"round"!==a&&"square"!==a?u.xa(a,'"butt", "round", or "square"',X,"strokeCap"):(this.eo=a,this.na(),this.h("strokeCap",b,a)))}); u.defineProperty(X,{yK:"strokeJoin"},function(){return this.fo},function(a){var b=this.fo;b!==a&&("string"!==typeof a||"miter"!==a&&"bevel"!==a&&"round"!==a?u.xa(a,'"miter", "bevel", or "round"',X,"strokeJoin"):(this.fo=a,this.na(),this.h("strokeJoin",b,a)))});u.defineProperty(X,{zK:"strokeMiterLimit"},function(){return this.hm},function(a){var b=this.hm;if(b!==a)if(0 0",X,"strokeWidth:value")}); u.defineProperty(X,{hA:"strokeDashArray"},function(){return this.gm},function(a){var b=this.gm;if(b!==a){null===a||Array.isArray(a)||u.Kd(a,"Array",X,"strokeDashArray:value");if(null!==a){for(var c=a.length,d=0,e=0;em*k*k&&(h=!0);b.Ig!==a&&(h=!1);!1===b.aw("textGreeking")&&(h=!1);for(var m=this.yj,k=this.zj,l=this.ve,n=0;n c&&(p=c);var f=f+m,r=q,q=a,s=f,t=c, v=d,x=0;h?("start"===this.Rd||"left"===this.Rd?x=0:"end"===this.Rd||"right"===this.Rd?x=t-p:"center"===this.Rd?x=(t-p)/2:u.k("textAlign must be start, end, left, right, or center"),q.fillRect(0+x,s+.25*v,p,1)):("start"===this.Rd||"left"===this.Rd?x=0:"end"===this.Rd||"right"===this.Rd?x=t:"center"===this.Rd?x=t/2:u.k("textAlign must be start, end, left, right, or center"),q.fillText(r,0+x,s+v-.25*v),r=v/20|0,0===r&&(r=1),"end"===this.Rd||"right"===this.Rd?x-=p:"center"===this.Rd&&(x-=p/2),this.Ml&& (q.beginPath(),q.lineWidth=r,q.moveTo(0+x,s+v-.2*v),q.lineTo(0+x+p,s+v-.2*v),q.stroke()),this.Ll&&(q.beginPath(),q.lineWidth=r,s=s+v-v/2.2|0,0!==r%2&&(s+=.5),q.moveTo(0+x,s),q.lineTo(0+x+p,s),q.stroke()));f+=d+k}}}; qa.prototype.Qo=function(a,b,c,d){this.Cu=a;var e=this.ej;e.reset();var f=0,h=0;if(isNaN(this.za.width)){f=this.ie.replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(0===f.length)f=0;else if(this.jw){for(var k=h=0,l=!1;!l;){var m=f.indexOf("\n",k);-1===m&&(m=f.length,l=!0);k=wn(f.substr(k,m-k).replace(/^\s+|\s+$/g,""),this.Jg);k>h&&(h=k);k=m+1}f=h}else h=f.indexOf("\n",0),0<=h&&(f=f.substr(0,h)),f=k=wn(f,this.Jg);f=Math.min(f,a/this.scale);f=Math.max(8,f)}else f=this.za.width;null!==this.S&&(f=Math.min(f, this.S.bf.width),f=Math.max(f,this.S.wg.width));h=un(this,f,e);m=h=isNaN(this.za.height)?Math.min(h,b/this.scale):this.za.height;if(0!==e.Oe&&1!==e.te.length&&this.Ek===sn&&(b=this.Jg,l=this.Ek===sn?xn(b):0,k=this.yj+this.zj,k=Math.max(0,vn(this)+k),m=Math.max(Math.floor(m/k)-1,0),!(m+1>=e.te.length))){k=e.te[m];for(a=Math.max(1,a-l);wn(k,b)>a&&1 =a.ji)return new ia(0,l);if(a.km===qn){c.xi=1;f=wn(b,k);if(0===h||f<=d)return c.Oe=f,c.hf.push(c.Oe),c.te.push(b),new ia(f,l);var m=yn(b);b=b.substr(m.length);for(var n=yn(b),f=wn(m+n,k);0 d&&1 d;){n=1;f=wn(m.substr(0,n),k);for(h=0;f<=d;)n++,h=f,f=wn(m.substr(0,n),k);1===n?(c.hf[a.ve+p]=f,e=Math.max(e,f)):(c.hf[a.ve+p]=h,e=Math.max(e,h));n--;1>n&&(n=1);c.te[a.ve+p]=m.substr(0,n);p++;m=m.substr(n);if(a.ve+p>a.ji)break}n=yn(b);for(f=wn(m+n,k);0 a.ji))break}c.xi=Math.min(a.ji,p);c.Oe=Math.max(c.Oe,e);return new ia(c.Oe,l*c.xi)}function yn(a){for(var b=a.length,c=0;c=b?a:a.substr(0,c)}function wn(a,b){on!==b&&(on=pn.font=b);return pn.measureText(a).width} function vn(a){if(null!==a.wn)return a.wn;var b=a.Jg;on!==b&&(on=pn.font=b);var c=0;void 0!==jn[b]&&5E3>kn?c=jn[b]:(c=1.3*pn.measureText("M").width,jn[b]=c,kn++);return a.wn=c}function xn(a){on!==a&&(on=pn.font=a);var b=0;void 0!==ln[a]&&5E3>mn?b=ln[a]:(b=pn.measureText(nn).width,ln[a]=b,mn++);return b} function un(a,b,c){var d=a.ie.replace(/\r\n/g,"\n").replace(/\r/g,"\n"),e=a.yj+a.zj,e=Math.max(0,vn(a)+e);if(0===d.length)return c.Oe=0,a.ve=1,e;if(!a.jw){var f=d.indexOf("\n",0);0<=f&&(d=d.substr(0,f))}for(var f=0,h=a.ve=0,k=-1,l=!1;!l;)k=d.indexOf("\n",h),-1===k&&(k=d.length,l=!0),h<=k&&(h=d.substr(h,k-h),a.km!==qn?(c.xi=0,h=tn(a,h,c,b),f+=h.height,a.ve+=c.xi):(tn(a,h,c,b),f+=e,a.ve++),a.ve===a.ji&&(l=!0)),h=k+1;return a.Iu=f} u.defineProperty(qa,{kA:"textValidation"},function(){return this.Hk},function(a){var b=this.Hk;b!==a&&(null!==a&&u.j(a,"function",qa,"textValidation"),this.Hk=a,this.h("textValidation",b,a))});u.defineProperty(qa,{vK:"spacingAbove"},function(){return this.yj},function(a){var b=this.yj;b!==a&&(this.yj=a,this.h("spacingAbove",b,a))});u.defineProperty(qa,{wK:"spacingBelow"},function(){return this.zj},function(a){var b=this.zj;b!==a&&(this.zj=a,this.h("spacingBelow",b,a))}); u.defineProperty(qa,{YJ:"maxLines"},function(){return this.ji},function(a){var b=this.ji;b!==a&&(a=Math.floor(a),0>=a&&u.xa(a,"> 0",qa,"maxLines"),this.ji=a,this.h("maxLines",b,a),this.R())});u.u(qa,{ZJ:"metrics"},function(){return this.ej});function hn(){this.Oe=this.xi=0;this.hf=[];this.te=[]}hn.prototype.reset=function(){this.Oe=this.xi=0;this.hf=[];this.te=[]};hn.prototype.ss=function(a){this.xi=a.xi;this.Oe=a.Oe;this.hf=u.Pk(a.hf);this.te=u.Pk(a.te)};u.u(hn,{cJ:"arrSize"},function(){return this.hf}); u.u(hn,{dJ:"arrText"},function(){return this.te});u.u(hn,{XJ:"maxLineWidth"},function(){return this.Oe});function Ri(){S.call(this);this.Me=null;this.Nr="";this.xj=(new z(NaN,NaN,NaN,NaN)).freeze();this.An=cd;this.Sr=this.Aj=this.lf=null;this.Tx=!1;this.$n=null;this.JB=0}u.Ia(Ri,S);u.fa("Picture",Ri);var zn=new pa,An=0,Mi=[]; function Bn(){var a=Mi;if(0===a.length)for(var b=window.document.getElementsByTagName("canvas"),c=b.length,d=0;d r.no.length&&(Gn(r,4,l,m),Gn(r,16, l,m));for(var l=r.no,m=l.length,q=l[0],t=0;t e;e++)a.lineTo(d[e].x*b,d[e].y*c); u.sa(d);P(a);b=a.o;b.A=new L(.2,.22);b.B=new L(.8,.9);u.q(a);return b},DataTransmission:"Hexagon",Hexagon:function(a,b,c){var d=K.Qk(6);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;6>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a);b=a.o;b.A=new L(.07,.25);b.B=new L(.93,.75);u.q(a);return b},Heptagon:function(a,b,c){var d=K.Qk(7);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;7>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a);b=a.o;b.A=new L(.2,.15);b.B=new L(.8,.85);u.q(a);return b},Octagon:function(a, b,c){var d=K.Qk(8);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;8>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a);b=a.o;b.A=new L(.15,.15);b.B=new L(.85,.85);u.q(a);return b},Nonagon:function(a,b,c){var d=K.Qk(9);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;9>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a);b=a.o;b.A=new L(.17,.13);b.B=new L(.82,.82);u.q(a);return b},Decagon:function(a,b,c){var d=K.Qk(10);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;10>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a); b=a.o;b.A=new L(.16,.16);b.B=new L(.84,.84);u.q(a);return b},Dodecagon:function(a,b,c){var d=K.Qk(12);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;12>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a);b=a.o;b.A=new L(.16,.16);b.B=new L(.84,.84);u.q(a);return b},FivePointedStar:function(a,b,c){var d=K.xm(5);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;10>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a);b=a.o;b.A=new L(.312,.383);b.B=new L(.693,.765);u.q(a);return b},SixPointedStar:function(a,b,c){var d= K.xm(6);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;12>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a);b=a.o;b.A=new L(.17,.251);b.B=new L(.833,.755);u.q(a);return b},SevenPointedStar:function(a,b,c){var d=K.xm(7);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;14>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a);b=a.o;b.A=new L(.363,.361);b.B=new L(.641,.709);u.q(a);return b},EightPointedStar:function(a,b,c){var d=K.xm(8);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;16>e;e++)a.lineTo(d[e].x*b,d[e].y* c);u.sa(d);P(a);b=a.o;b.A=new L(.252,.255);b.B=new L(.75,.75);u.q(a);return b},NinePointedStar:function(a,b,c){var d=K.xm(9);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;18>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a);b=a.o;b.A=new L(.355,.361);b.B=new L(.645,.651);u.q(a);return b},TenPointedStar:function(a,b,c){var d=K.xm(10);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;20>e;e++)a.lineTo(d[e].x*b,d[e].y*c);u.sa(d);P(a);b=a.o;b.A=new L(.281,.261);b.B=new L(.723,.748);u.q(a);return b},FivePointedBurst:function(a, b,c){var d=K.vo(5);a=u.p();M(a,d[0].x*b,d[0].y*c,!0);for(var e=1;e a&&(a=.15);var d=u.p(),e=.2*K.ta;M(d,0,.2*c,!0);O(d,0,(.2-e)*c,(.2-e)*b, 0,.2*b,0);d.lineTo(.8*b,0);O(d,(.8+e)*b,0,1*b,(.2-e)*c,1*b,.2*c);d.lineTo(1*b,.8*c);O(d,1*b,(.8+e)*c,(.8+e)*b,1*c,.8*b,1*c);d.lineTo(.2*b,1*c);O(d,(.2-e)*b,1*c,0,(.8+e)*c,0,.8*c);d.lineTo(0,.2*c);M(d,0,a*c,!1);d.lineTo(1*b,a*c);d.$a(!1);b=d.o;b.A=new L(0,a);b.B=new L(1,1-a);u.q(d);return b},DividedProcess:function(a,b,c){a=a?a.xc:NaN;if(isNaN(a)||.1>a)a=.1;var d=u.p();M(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);P(d);M(d,0,a*c,!1);d.lineTo(1*b,a*c);d.$a(!1);b=d.o;b.A=new L(0,a);b.B= Vb;u.q(d);return b},Document:function(a,b,c){c/=.8;a=u.p();M(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);O(a,.5*b,.4*c,.5*b,1*c,0,.7*c);P(a);b=a.o;b.A=xb;b.B=new L(1,.6);u.q(a);return b},ExternalOrganization:function(a,b,c){a=a?a.xc:NaN;if(isNaN(a)||.2>a)a=.2;var d=u.p();M(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);P(d);M(d,a*b,0,!1);d.lineTo(0,a*c);d.moveTo(1*b,a*c);d.lineTo((1-a)*b,0);d.moveTo(0,(1-a)*c);d.lineTo(a*b,1*c);d.moveTo((1-a)*b,1*c);d.lineTo(1*b,(1- a)*c);d.$a(!1);b=d.o;b.A=new L(a/2,a/2);b.B=new L(1-a/2,1-a/2);u.q(d);return b},ExternalProcess:function(a,b,c){a=u.p();M(a,.5*b,0,!0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,.5*c);P(a);M(a,.1*b,.4*c,!1);a.lineTo(.1*b,.6*c);a.moveTo(.9*b,.6*c);a.lineTo(.9*b,.4*c);a.moveTo(.6*b,.1*c);a.lineTo(.4*b,.1*c);a.moveTo(.4*b,.9*c);a.lineTo(.6*b,.9*c);a.$a(!1);b=a.o;b.A=new L(.25,.25);b.B=new L(.75,.75);u.q(a);return b},File:function(a,b,c){a=u.p();M(a,0,0,!0);a.lineTo(.75*b,0);a.lineTo(1*b,.25*c); a.lineTo(1*b,1*c);a.lineTo(0,1*c);P(a);M(a,.75*b,0,!1);a.lineTo(.75*b,.25*c);a.lineTo(1*b,.25*c);a.$a(!1);b=a.o;b.A=new L(0,.25);b.B=Vb;u.q(a);return b},Interrupt:function(a,b,c){a=u.p();M(a,1*b,.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);M(a,1*b,.5*c,!1);a.lineTo(1*b,1*c);M(a,1*b,.5*c,!1);a.lineTo(1*b,0);b=a.o;b.A=new L(0,.25);b.B=new L(.5,.75);u.q(a);return b},InternalStorage:function(a,b,c){var d=a?a.xc:NaN;a=a?a.ft:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.1);var e=u.p();M(e,0,0,!0);e.lineTo(1* b,0);e.lineTo(1*b,1*c);e.lineTo(0,1*c);P(e);M(e,d*b,0,!1);e.lineTo(d*b,1*c);e.moveTo(0,a*c);e.lineTo(1*b,a*c);e.$a(!1);b=e.o;b.A=new L(d,a);b.B=Vb;u.q(e);return b},Junction:function(a,b,c){a=u.p();var d=1/Math.SQRT2,e=(1-1/Math.SQRT2)/2,f=.5*K.ta;M(a,1*b,.5*c,!0);O(a,1*b,(.5+f)*c,(.5+f)*b,1*c,.5*b,1*c);O(a,(.5-f)*b,1*c,0,(.5+f)*c,0,.5*c);O(a,0,(.5-f)*c,(.5-f)*b,0,.5*b,0);O(a,(.5+f)*b,0,1*b,(.5-f)*c,1*b,.5*c);M(a,(e+d)*b,(e+d)*c,!1);a.lineTo(e*b,e*c);a.moveTo(e*b,(e+d)*c);a.lineTo((e+d)*b,e*c);a.$a(!1); b=a.o;b.Cd=sh;u.q(a);return b},LinedDocument:function(a,b,c){c/=.8;a=u.p();M(a,0,.7*c,!0);a.lineTo(0,0);a.lineTo(1*b,0);a.lineTo(1*b,.7*c);O(a,.5*b,.4*c,.5*b,1*c,0,.7*c);P(a);M(a,.1*b,0,!1);a.lineTo(.1*b,.75*c);a.$a(!1);b=a.o;b.A=new L(.1,0);b.B=new L(1,.6);u.q(a);return b},LoopLimit:function(a,b,c){a=u.p();M(a,0,1*c,!0);a.lineTo(0,.25*c);a.lineTo(.25*b,0);a.lineTo(.75*b,0);a.lineTo(1*b,.25*c);a.lineTo(1*b,1*c);P(a);b=a.o;b.A=new L(0,.25);b.B=Vb;u.q(a);return b},SequentialData:"MagneticTape",MagneticTape:function(a, b,c){a=u.p();var d=.5*K.ta;M(a,.5*b,1*c,!0);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+d)*c,(.5+d)*b,.9*c,.6*b,.9*c);a.lineTo(1*b,.9*c);a.lineTo(1*b,1*c);a.lineTo(.5*b,1*c);b=a.o;b.A=new L(.15,.15);b.B=new L(.85,.8);u.q(a);return b},ManualInput:function(a,b,c){a=u.p();M(a,1*b,0,!0);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.25*c);P(a);b=a.o;b.A=new L(0,.25);b.B=Vb;u.q(a);return b},MessageFromUser:function(a,b,c){a=a?a.xc: NaN;isNaN(a)&&(a=.7);var d=u.p();M(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(a*b,.5*c);d.lineTo(1*b,1*c);d.lineTo(0,1*c);P(d);b=d.o;b.A=xb;b.B=new L(a,1);u.q(d);return b},MicroformProcessing:function(a,b,c){a=a?a.xc:NaN;isNaN(a)&&(a=.25);var d=u.p();M(d,0,0,!0);d.lineTo(.5*b,a*c);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(.5*b,(1-a)*c);d.lineTo(0,1*c);P(d);b=d.o;b.A=new L(0,a);b.B=new L(1,1-a);u.q(d);return b},MicroformRecording:function(a,b,c){a=u.p();M(a,0,0,!0);a.lineTo(.75*b,.25*c);a.lineTo(1*b,.15* c);a.lineTo(1*b,.85*c);a.lineTo(.75*b,.75*c);a.lineTo(0,1*c);P(a);b=a.o;b.A=new L(0,.25);b.B=new L(1,.75);u.q(a);return b},MultiDocument:function(a,b,c){c/=.8;a=u.p();M(a,b,0,!0);a.lineTo(b,.5*c);O(a,.96*b,.47*c,.93*b,.45*c,.9*b,.44*c);a.lineTo(.9*b,.6*c);O(a,.86*b,.57*c,.83*b,.55*c,.8*b,.54*c);a.lineTo(.8*b,.7*c);O(a,.4*b,.4*c,.4*b,1*c,0,.7*c);a.lineTo(0,.2*c);a.lineTo(.1*b,.2*c);a.lineTo(.1*b,.1*c);a.lineTo(.2*b,.1*c);a.lineTo(.2*b,0);P(a);M(a,.1*b,.2*c,!1);a.lineTo(.8*b,.2*c);a.lineTo(.8*b,.54* c);a.moveTo(.2*b,.1*c);a.lineTo(.9*b,.1*c);a.lineTo(.9*b,.44*c);a.$a(!1);b=a.o;b.A=new L(0,.25);b.B=new L(.8,.77);u.q(a);return b},MultiProcess:function(a,b,c){a=u.p();M(a,.1*b,.1*c,!0);a.lineTo(.2*b,.1*c);a.lineTo(.2*b,0);a.lineTo(1*b,0);a.lineTo(1*b,.8*c);a.lineTo(.9*b,.8*c);a.lineTo(.9*b,.9*c);a.lineTo(.8*b,.9*c);a.lineTo(.8*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.2*c);a.lineTo(.1*b,.2*c);P(a);M(a,.2*b,.1*c,!1);a.lineTo(.9*b,.1*c);a.lineTo(.9*b,.8*c);a.moveTo(.1*b,.2*c);a.lineTo(.8*b,.2*c);a.lineTo(.8* b,.9*c);a.$a(!1);b=a.o;b.A=new L(0,.2);b.B=new L(.8,1);u.q(a);return b},OfflineStorage:function(a,b,c){a=a?a.xc:NaN;isNaN(a)&&(a=.1);var d=1-a,e=u.p();M(e,0,0,!0);e.lineTo(1*b,0);e.lineTo(.5*b,1*c);P(e);M(e,.5*a*b,a*c,!1);e.lineTo((1-.5*a)*b,a*c);e.$a(!1);b=e.o;b.A=new L(d/4+.5*a,a);b.B=new L(3*d/4+.5*a,a+.5*d);u.q(e);return b},OffPageConnector:function(a,b,c){a=u.p();M(a,0,0,!0);a.lineTo(.75*b,0);a.lineTo(1*b,.5*c);a.lineTo(.75*b,1*c);a.lineTo(0,1*c);P(a);b=a.o;b.A=xb;b.B=new L(.75,1);u.q(a);return b}, Or:function(a,b,c){a=u.p();var d=.5*K.ta;M(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);M(a,1*b,.5*c,!1);a.lineTo(0,.5*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,0);a.$a(!1);b=a.o;b.Cd=sh;u.q(a);return b},PaperTape:function(a,b,c){c/=.8;a=u.p();M(a,0,.7*c,!0);a.lineTo(0,.3*c);O(a,.5*b,.6*c,.5*b,0,1*b,.3*c);a.lineTo(1*b,.7*c);O(a,.5*b,.4*c,.5*b,1*c,0,.7*c);P(a);b=a.o;b.A=new L(0,.49);b.B= new L(1,.75);u.q(a);return b},PrimitiveFromCall:function(a,b,c){var d=a?a.xc:NaN;a=a?a.ft:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=u.p();M(e,0,0,!0);e.lineTo(1*b,0);e.lineTo((1-a)*b,.5*c);e.lineTo(1*b,1*c);e.lineTo(0,1*c);P(e);b=e.o;b.A=new L(d,0);b.B=new L(1-a,1);u.q(e);return b},PrimitiveToCall:function(a,b,c){var d=a?a.xc:NaN;a=a?a.ft:NaN;isNaN(d)&&(d=.1);isNaN(a)&&(a=.3);var e=u.p();M(e,0,0,!0);e.lineTo((1-a)*b,0);e.lineTo(1*b,.5*c);e.lineTo((1-a)*b,1*c);e.lineTo(0,1*c);P(e);b=e.o;b.A=new L(d, 0);b.B=new L(1-a,1);u.q(e);return b},Subroutine:"Procedure",Procedure:function(a,b,c){a=a?a.xc:NaN;isNaN(a)&&(a=.1);var d=u.p();M(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);P(d);M(d,(1-a)*b,0,!1);d.lineTo((1-a)*b,1*c);d.moveTo(a*b,0);d.lineTo(a*b,1*c);d.$a(!1);b=d.o;b.A=new L(a,0);b.B=new L(1-a,1);u.q(d);return b},Process:function(a,b,c){a=a?a.xc:NaN;isNaN(a)&&(a=.1);var d=u.p();M(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(0,1*c);P(d);M(d,a*b,0,!1);d.lineTo(a*b,1*c);d.$a(!1); b=d.o;b.A=new L(a,0);b.B=Vb;u.q(d);return b},Sort:function(a,b,c){a=u.p();M(a,.5*b,0,!0);a.lineTo(1*b,.5*c);a.lineTo(.5*b,1*c);a.lineTo(0,.5*c);P(a);M(a,0,.5*c,!1);a.lineTo(1*b,.5*c);a.$a(!1);b=a.o;b.A=new L(.25,.25);b.B=new L(.75,.5);u.q(a);return b},Start:function(a,b,c){a=u.p();M(a,.25*b,0,!0);M(a,.25*b,0,!0);a.arcTo(270,180,.75*b,.5*c,.25*b,.5*c);a.arcTo(90,180,.25*b,.5*c,.25*b,.5*c);M(a,.25*b,0,!1);a.lineTo(.25*b,1*c);a.moveTo(.75*b,0);a.lineTo(.75*b,1*c);a.$a(!1);b=a.o;b.A=new L(.25,0);b.B= new L(.75,1);u.q(a);return b},Terminator:function(a,b,c){a=u.p();M(a,.25*b,0,!0);a.arcTo(270,180,.75*b,.5*c,.25*b,.5*c);a.arcTo(90,180,.25*b,.5*c,.25*b,.5*c);b=a.o;b.A=new L(.23,0);b.B=new L(.77,1);u.q(a);return b},TransmittalTape:function(a,b,c){a=a?a.xc:NaN;isNaN(a)&&(a=.1);var d=u.p();M(d,0,0,!0);d.lineTo(1*b,0);d.lineTo(1*b,1*c);d.lineTo(.75*b,(1-a)*c);d.lineTo(0,(1-a)*c);P(d);b=d.o;b.A=xb;b.B=new L(1,1-a);u.q(d);return b},AndGate:function(a,b,c){a=u.p();var d=.5*K.ta;M(a,0,0,!0);a.lineTo(.5* b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);a.lineTo(0,1*c);P(a);b=a.o;b.A=xb;b.B=new L(.55,1);u.q(a);return b},Buffer:function(a,b,c){a=u.p();M(a,0,0,!0);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);P(a);b=a.o;b.A=new L(0,.25);b.B=new L(.5,.75);u.q(a);return b},Clock:function(a,b,c){a=u.p();var d=.5*K.ta;M(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c); M(a,1*b,.5*c,!1);a.lineTo(1*b,.5*c);M(a,.8*b,.75*c,!1);a.lineTo(.8*b,.25*c);a.lineTo(.6*b,.25*c);a.lineTo(.6*b,.75*c);a.lineTo(.4*b,.75*c);a.lineTo(.4*b,.25*c);a.lineTo(.2*b,.25*c);a.lineTo(.2*b,.75*c);a.$a(!1);b=a.o;b.Cd=sh;u.q(a);return b},Ground:function(a,b,c){a=u.p();M(a,.5*b,0,!1);a.lineTo(.5*b,.4*c);a.moveTo(.2*b,.6*c);a.lineTo(.8*b,.6*c);a.moveTo(.3*b,.8*c);a.lineTo(.7*b,.8*c);a.moveTo(.4*b,1*c);a.lineTo(.6*b,1*c);b=a.o;u.q(a);return b},Inverter:function(a,b,c){a=u.p();var d=.1*K.ta;M(a,.8* b,.5*c,!0);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.8*b,.5*c);M(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.9+d)*b,.6*c,.9*b,.6*c);O(a,(.9-d)*b,.6*c,.8*b,(.5+d)*c,.8*b,.5*c);O(a,.8*b,(.5-d)*c,(.9-d)*b,.4*c,.9*b,.4*c);O(a,(.9+d)*b,.4*c,1*b,(.5-d)*c,1*b,.5*c);b=a.o;b.A=new L(0,.25);b.B=new L(.4,.75);u.q(a);return b},NandGate:function(a,b,c){a=u.p();var d=K.ta,e=.5*d,f=.4*d,d=.1*d;M(a,.8*b,.5*c,!0);O(a,.8*b,(.5+f)*c,(.4+e)*b,1*c,.4*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(.4*b,0);O(a,(.4+e)*b,0,.8*b,(.5-f)* c,.8*b,.5*c);M(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.9+d)*b,.6*c,.9*b,.6*c);O(a,(.9-d)*b,.6*c,.8*b,(.5+d)*c,.8*b,.5*c);O(a,.8*b,(.5-d)*c,(.9-d)*b,.4*c,.9*b,.4*c);O(a,(.9+d)*b,.4*c,1*b,(.5-d)*c,1*b,.5*c);b=a.o;b.A=new L(0,.05);b.B=new L(.55,.95);u.q(a);return b},NorGate:function(a,b,c){a=u.p();var d=K.ta,e=.5,f=d*e,h=0,k=.5;M(a,.8*b,.5*c,!0);O(a,.7*b,(k+f)*c,(h+f)*b,(k+e)*c,0,1*c);O(a,.25*b,.75*c,.25*b,.25*c,0,0);O(a,(h+f)*b,(k-e)*c,.7*b,(k-f)*c,.8*b,.5*c);e=.1;f=.1*d;h=.9;k=.5;M(a,(h-e)*b,k*c,!0);O(a, (h-e)*b,(k-f)*c,(h-f)*b,(k-e)*c,h*b,(k-e)*c);O(a,(h+f)*b,(k-e)*c,(h+e)*b,(k-f)*c,(h+e)*b,k*c);O(a,(h+e)*b,(k+f)*c,(h+f)*b,(k+e)*c,h*b,(k+e)*c);O(a,(h-f)*b,(k+e)*c,(h-e)*b,(k+f)*c,(h-e)*b,k*c);b=a.o;b.A=new L(.2,.25);b.B=new L(.6,.75);u.q(a);return b},OrGate:function(a,b,c){a=u.p();var d=.5*K.ta;M(a,0,0,!0);O(a,(0+d+d)*b,0*c,.8*b,(.5-d)*c,1*b,.5*c);O(a,.8*b,(.5+d)*c,(0+d+d)*b,1*c,0,1*c);O(a,.25*b,.75*c,.25*b,.25*c,0,0);P(a);b=a.o;b.A=new L(.2,.25);b.B=new L(.75,.75);u.q(a);return b},XnorGate:function(a, b,c){a=u.p();var d=K.ta,e=.5,f=d*e,h=.2,k=.5;M(a,.1*b,0,!1);O(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);M(a,.8*b,.5*c,!0);O(a,.7*b,(k+f)*c,(h+f)*b,(k+e)*c,.2*b,1*c);O(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);O(a,(h+f)*b,(k-e)*c,.7*b,(k-f)*c,.8*b,.5*c);e=.1;f=.1*d;h=.9;k=.5;M(a,(h-e)*b,k*c,!0);O(a,(h-e)*b,(k-f)*c,(h-f)*b,(k-e)*c,h*b,(k-e)*c);O(a,(h+f)*b,(k-e)*c,(h+e)*b,(k-f)*c,(h+e)*b,k*c);O(a,(h+e)*b,(k+f)*c,(h+f)*b,(k+e)*c,h*b,(k+e)*c);O(a,(h-f)*b,(k+e)*c,(h-e)*b,(k+f)*c,(h-e)*b,k*c);b=a.o;b.A=new L(.4,.25); b.B=new L(.65,.75);u.q(a);return b},XorGate:function(a,b,c){a=u.p();var d=.5*K.ta;M(a,.1*b,0,!1);O(a,.35*b,.25*c,.35*b,.75*c,.1*b,1*c);M(a,.2*b,0,!0);O(a,(.2+d)*b,0*c,.9*b,(.5-d)*c,1*b,.5*c);O(a,.9*b,(.5+d)*c,(.2+d)*b,1*c,.2*b,1*c);O(a,.45*b,.75*c,.45*b,.25*c,.2*b,0);P(a);b=a.o;b.A=new L(.4,.25);b.B=new L(.8,.75);u.q(a);return b},Capacitor:function(a,b,c){a=u.p();M(a,0,0,!1);a.lineTo(0,1*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.o;u.q(a);return b},Resistor:function(a,b,c){a=u.p();M(a,0,.5*c,!1);a.lineTo(.1* b,0);a.lineTo(.2*b,1*c);a.lineTo(.3*b,0);a.lineTo(.4*b,1*c);a.lineTo(.5*b,0);a.lineTo(.6*b,1*c);a.lineTo(.7*b,.5*c);b=a.o;u.q(a);return b},Inductor:function(a,b,c){a=u.p();var d=.1*K.ta,e=.1;M(a,(e-.5*d)*b,c,!1);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.3;O(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.5;O(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.7;O(a,(e+.1)*b,0,(e+d)*b,c,e*b,c);O(a,(e-d)*b,c,(e-.1)*b,0,(e+.1)*b,0);e=.9;O(a,(e+.1)*b,0,(e+d)*b,c, (e+.5*d)*b,c);b=a.o;u.q(a);return b},ACvoltageSource:function(a,b,c){a=u.p();var d=.5*K.ta;M(a,0*b,.5*c,!1);O(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);O(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b,.5*c);a.moveTo(.1*b,.5*c);O(a,.5*b,0*c,.5*b,1*c,.9*b,.5*c);b=a.o;b.Cd=sh;u.q(a);return b},DCvoltageSource:function(a,b,c){a=u.p();M(a,0,.75*c,!1);a.lineTo(0,.25*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.o;u.q(a);return b},Diode:function(a,b, c){a=u.p();M(a,1*b,0,!1);a.lineTo(1*b,.5*c);a.lineTo(0,1*c);a.lineTo(0,0);a.lineTo(1*b,.5*c);a.lineTo(1*b,1*c);b=a.o;b.A=new L(0,.25);b.B=new L(.5,.75);u.q(a);return b},Wifi:function(a,b,c){var d=b,e=c;b*=.38;c*=.6;a=u.p();var f=K.ta,h=.8*f,k=.8,l=0,m=.5,d=(d-b)/2,e=(e-c)/2;M(a,l*b+d,(m+k)*c+e,!0);O(a,(l-h)*b+d,(m+k)*c+e,(l-k)*b+d,(m+h)*c+e,(l-k)*b+d,m*c+e);O(a,(l-k)*b+d,(m-h)*c+e,(l-h)*b+d,(m-k)*c+e,l*b+d,(m-k)*c+e);O(a,l*b+d,(m-k)*c+e,(l-k+.5*h)*b+d,(m-h)*c+e,(l-k+.5*h)*b+d,m*c+e);O(a,(l-k+.5*h)* b+d,(m+h)*c+e,l*b+d,(m+k)*c+e,l*b+d,(m+k)*c+e);P(a);h=.4*f;k=.4;l=.2;m=.5;M(a,l*b+d,(m+k)*c+e,!0);O(a,(l-h)*b+d,(m+k)*c+e,(l-k)*b+d,(m+h)*c+e,(l-k)*b+d,m*c+e);O(a,(l-k)*b+d,(m-h)*c+e,(l-h)*b+d,(m-k)*c+e,l*b+d,(m-k)*c+e);O(a,l*b+d,(m-k)*c+e,(l-k+.5*h)*b+d,(m-h)*c+e,(l-k+.5*h)*b+d,m*c+e);O(a,(l-k+.5*h)*b+d,(m+h)*c+e,l*b+d,(m+k)*c+e,l*b+d,(m+k)*c+e);P(a);h=.2*f;k=.2;m=l=.5;M(a,(l-k)*b+d,m*c+e,!0);O(a,(l-k)*b+d,(m-h)*c+e,(l-h)*b+d,(m-k)*c+e,l*b+d,(m-k)*c+e);O(a,(l+h)*b+d,(m-k)*c+e,(l+k)*b+d,(m-h)*c+e, (l+k)*b+d,m*c+e);O(a,(l+k)*b+d,(m+h)*c+e,(l+h)*b+d,(m+k)*c+e,l*b+d,(m+k)*c+e);O(a,(l-h)*b+d,(m+k)*c+e,(l-k)*b+d,(m+h)*c+e,(l-k)*b+d,m*c+e);h=.4*f;k=.4;l=.8;m=.5;M(a,l*b+d,(m-k)*c+e,!0);O(a,(l+h)*b+d,(m-k)*c+e,(l+k)*b+d,(m-h)*c+e,(l+k)*b+d,m*c+e);O(a,(l+k)*b+d,(m+h)*c+e,(l+h)*b+d,(m+k)*c+e,l*b+d,(m+k)*c+e);O(a,l*b+d,(m+k)*c+e,(l+k-.5*h)*b+d,(m+h)*c+e,(l+k-.5*h)*b+d,m*c+e);O(a,(l+k-.5*h)*b+d,(m-h)*c+e,l*b+d,(m-k)*c+e,l*b+d,(m-k)*c+e);P(a);h=.8*f;k=.8;l=1;m=.5;M(a,l*b+d,(m-k)*c+e,!0);O(a,(l+h)*b+d,(m- k)*c+e,(l+k)*b+d,(m-h)*c+e,(l+k)*b+d,m*c+e);O(a,(l+k)*b+d,(m+h)*c+e,(l+h)*b+d,(m+k)*c+e,l*b+d,(m+k)*c+e);O(a,l*b+d,(m+k)*c+e,(l+k-.5*h)*b+d,(m+h)*c+e,(l+k-.5*h)*b+d,m*c+e);O(a,(l+k-.5*h)*b+d,(m-h)*c+e,l*b+d,(m-k)*c+e,l*b+d,(m-k)*c+e);P(a);b=a.o;u.q(a);return b},Email:function(a,b,c){a=u.p();M(a,0,0,!0);a.lineTo(1*b,0);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,0);P(a);M(a,0,0,!1);a.lineTo(.5*b,.6*c);a.lineTo(1*b,0);a.moveTo(0,1*c);a.lineTo(.45*b,.54*c);a.moveTo(1*b,1*c);a.lineTo(.55*b,.54*c);a.$a(!1); b=a.o;u.q(a);return b},Ethernet:function(a,b,c){a=u.p();M(a,.35*b,0,!0);a.lineTo(.65*b,0);a.lineTo(.65*b,.4*c);a.lineTo(.35*b,.4*c);a.lineTo(.35*b,0);P(a);M(a,.1*b,1*c,!0,!0);a.lineTo(.4*b,1*c);a.lineTo(.4*b,.6*c);a.lineTo(.1*b,.6*c);a.lineTo(.1*b,1*c);P(a);M(a,.6*b,1*c,!0,!0);a.lineTo(.9*b,1*c);a.lineTo(.9*b,.6*c);a.lineTo(.6*b,.6*c);a.lineTo(.6*b,1*c);P(a);M(a,0,.5*c,!1);a.lineTo(1*b,.5*c);a.moveTo(.5*b,.5*c);a.lineTo(.5*b,.4*c);a.moveTo(.75*b,.5*c);a.lineTo(.75*b,.6*c);a.moveTo(.25*b,.5*c);a.lineTo(.25* b,.6*c);a.$a(!1);b=a.o;u.q(a);return b},Power:function(a,b,c){a=u.p();var d=K.ta,e=.4*d,f=.4,h=u.K(),k=u.K(),l=u.K(),m=u.K();K.Bi(.5,.5-f,.5+e,.5-f,.5+f,.5-e,.5+f,.5,.5,h,h,k,l,m);var n=u.fc(k.x,k.y);M(a,k.x*b,k.y*c,!0);O(a,l.x*b,l.y*c,m.x*b,m.y*c,(.5+f)*b,.5*c);O(a,(.5+f)*b,(.5+e)*c,(.5+e)*b,(.5+f)*c,.5*b,(.5+f)*c);O(a,(.5-e)*b,(.5+f)*c,(.5-f)*b,(.5+e)*c,(.5-f)*b,.5*c);K.Bi(.5-f,.5,.5-f,.5-e,.5-e,.5-f,.5,.5-f,.5,l,m,k,h,h);O(a,l.x*b,l.y*c,m.x*b,m.y*c,k.x*b,k.y*c);e=.3*d;f=.3;K.Bi(.5-f,.5,.5-f,.5- e,.5-e,.5-f,.5,.5-f,.5,l,m,k,h,h);a.lineTo(k.x*b,k.y*c);O(a,m.x*b,m.y*c,l.x*b,l.y*c,(.5-f)*b,.5*c);O(a,(.5-f)*b,(.5+e)*c,(.5-e)*b,(.5+f)*c,.5*b,(.5+f)*c);O(a,(.5+e)*b,(.5+f)*c,(.5+f)*b,(.5+e)*c,(.5+f)*b,.5*c);K.Bi(.5,.5-f,.5+e,.5-f,.5+f,.5-e,.5+f,.5,.5,h,h,k,l,m);O(a,m.x*b,m.y*c,l.x*b,l.y*c,k.x*b,k.y*c);P(a);M(a,.45*b,0,!0);a.lineTo(.45*b,.5*c);a.lineTo(.55*b,.5*c);a.lineTo(.55*b,0);P(a);u.v(h);u.v(k);u.v(l);u.v(m);u.v(n);b=a.o;b.A=new L(.25,.55);b.B=new L(.75,.8);u.q(a);return b},Fallout:function(a, b,c){a=u.p();var d=.5*K.ta;M(a,0*b,.5*c,!0);O(a,0*b,(.5-d)*c,(.5-d)*b,0*c,.5*b,0*c);O(a,(.5+d)*b,0*c,1*b,(.5-d)*c,1*b,.5*c);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0*b,(.5+d)*c,0*b,.5*c);var e=d=0;M(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);d=.4;e=0;P(a);M(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);d=.2;e=-.3;P(a);M(a,(.3+d)*b,(.8+e)*c,!0,!0);a.lineTo((.5+ d)*b,(.5+e)*c);a.lineTo((.1+d)*b,(.5+e)*c);a.lineTo((.3+d)*b,(.8+e)*c);P(a);b=a.o;b.Cd=sh;u.q(a);return b},IrritationHazard:function(a,b,c){a=u.p();M(a,.2*b,0*c,!0);a.lineTo(.5*b,.3*c);a.lineTo(.8*b,0*c);a.lineTo(1*b,.2*c);a.lineTo(.7*b,.5*c);a.lineTo(1*b,.8*c);a.lineTo(.8*b,1*c);a.lineTo(.5*b,.7*c);a.lineTo(.2*b,1*c);a.lineTo(0*b,.8*c);a.lineTo(.3*b,.5*c);a.lineTo(0*b,.2*c);P(a);b=a.o;b.A=new L(.3,.3);b.B=new L(.7,.7);u.q(a);return b},ElectricalHazard:function(a,b,c){a=u.p();M(a,.37*b,0*c,!0);a.lineTo(.5* b,.11*c);a.lineTo(.77*b,.04*c);a.lineTo(.33*b,.49*c);a.lineTo(1*b,.37*c);a.lineTo(.63*b,.86*c);a.lineTo(.77*b,.91*c);a.lineTo(.34*b,1*c);a.lineTo(.34*b,.78*c);a.lineTo(.44*b,.8*c);a.lineTo(.65*b,.56*c);a.lineTo(0*b,.68*c);P(a);b=a.o;u.q(a);return b},FireHazard:function(a,b,c){a=u.p();M(a,.1*b,1*c,!0);O(a,-.25*b,.63*c,.45*b,.44*c,.29*b,0*c);O(a,.48*b,.17*c,.54*b,.35*c,.51*b,.42*c);O(a,.59*b,.29*c,.58*b,.28*c,.59*b,.18*c);O(a,.8*b,.34*c,.88*b,.43*c,.75*b,.6*c);O(a,.87*b,.48*c,.88*b,.43*c,.88*b,.31* c);O(a,1.17*b,.76*c,.82*b,.8*c,.9*b,1*c);P(a);b=a.o;b.A=new L(.05,.645);b.B=new L(.884,.908);u.q(a);return b},BpmnActivityLoop:function(a,b,c){a=u.p();var d=4*(Math.SQRT2-1)/3*.5;M(a,.65*b,1*c,!1);O(a,(1-d+0)*b,1*c,1*b,(.5+d+0)*c,1*b,.5*c);O(a,1*b,(.5-d+0)*c,(.5+d+0)*b,0*c,.5*b,0*c);O(a,(.5-d+0)*b,0*c,0*b,(.5-d+0)*c,0*b,.5*c);O(a,0*b,(.5+d+0)*c,(.5-d+0)*b,1*c,.35*b,.98*c);a.moveTo(.25*b,.8*c);a.lineTo(.35*b,1*c);a.lineTo(.1*b,1*c);b=a.o;u.q(a);return b},BpmnActivityParallel:function(a,b,c){a=u.p(); M(a,0,0,!1);a.lineTo(0,1*c);a.moveTo(.5*b,0);a.lineTo(.5*b,1*c);a.moveTo(1*b,0);a.lineTo(1*b,1*c);b=a.o;u.q(a);return b},BpmnActivitySequential:function(a,b,c){a=u.p();M(a,0,0,!1);a.lineTo(1*b,0);a.moveTo(0,.5*c);a.lineTo(1*b,.5*c);a.moveTo(0,1*c);a.lineTo(1*b,1*c);b=a.o;u.q(a);return b},BpmnActivityAdHoc:function(a,b,c){a=u.p();M(a,0,0,!1);M(a,1*b,1*c,!1);M(a,0,.5*c,!1);O(a,.2*b,.35*c,.3*b,.35*c,.5*b,.5*c);O(a,.7*b,.65*c,.8*b,.65*c,1*b,.5*c);b=a.o;u.q(a);return b},BpmnActivityCompensation:function(a, b,c){a=u.p();M(a,0,.5*c,!0);a.lineTo(.5*b,0);a.lineTo(.5*b,.5*c);a.lineTo(1*b,1*c);a.lineTo(1*b,0);a.lineTo(.5*b,.5*c);a.lineTo(.5*b,1*c);P(a);b=a.o;u.q(a);return b},BpmnTaskMessage:function(a,b,c){a=u.p();M(a,0,.2*c,!0);a.lineTo(1*b,.2*c);a.lineTo(1*b,.8*c);a.lineTo(0,.8*c);a.lineTo(0,.8*c);P(a);M(a,0,.2*c,!1);a.lineTo(.5*b,.5*c);a.lineTo(1*b,.2*c);a.$a(!1);b=a.o;u.q(a);return b},BpmnTaskScript:function(a,b,c){a=u.p();M(a,.7*b,1*c,!0);a.lineTo(.3*b,1*c);O(a,.6*b,.5*c,0,.5*c,.3*b,0);a.lineTo(.7*b, 0);O(a,.4*b,.5*c,1*b,.5*c,.7*b,1*c);P(a);M(a,.45*b,.73*c,!1);a.lineTo(.7*b,.73*c);a.moveTo(.38*b,.5*c);a.lineTo(.63*b,.5*c);a.moveTo(.31*b,.27*c);a.lineTo(.56*b,.27*c);a.$a(!1);b=a.o;u.q(a);return b},BpmnTaskUser:function(a,b,c){a=u.p();M(a,0,0,!1);M(a,.335*b,(1-.555)*c,!0);a.lineTo(.335*b,.595*c);a.lineTo(.665*b,.595*c);a.lineTo(.665*b,(1-.555)*c);O(a,.88*b,.46*c,.98*b,.54*c,1*b,.68*c);a.lineTo(1*b,1*c);a.lineTo(0,1*c);a.lineTo(0,.68*c);O(a,.02*b,.54*c,.12*b,.46*c,.335*b,(1-.555)*c);a.lineTo(.365* b,.405*c);var d=.5-.285,e=Math.PI/4,f=4*(1-Math.cos(e))/(3*Math.sin(e)),e=f*d,f=f*d;O(a,(.5-(e+d)/2)*b,(d+(d+f)/2)*c,(.5-d)*b,(d+f)*c,(.5-d)*b,d*c);O(a,(.5-d)*b,(d-f)*c,(.5-e)*b,(d-d)*c,.5*b,(d-d)*c);O(a,(.5+e)*b,(d-d)*c,(.5+d)*b,(d-f)*c,(.5+d)*b,d*c);O(a,(.5+d)*b,(d+f)*c,(.5+(e+d)/2)*b,(d+(d+f)/2)*c,.635*b,.405*c);a.lineTo(.635*b,.405*c);a.lineTo(.665*b,(1-.555)*c);a.lineTo(.665*b,.595*c);a.lineTo(.335*b,.595*c);M(a,.2*b,1*c,!1);a.lineTo(.2*b,.8*c);M(a,.8*b,1*c,!1);a.lineTo(.8*b,.8*c);b=a.o;u.q(a); return b},BpmnEventConditional:function(a,b,c){a=u.p();M(a,.1*b,0,!0);a.lineTo(.9*b,0);a.lineTo(.9*b,1*c);a.lineTo(.1*b,1*c);P(a);M(a,.2*b,.2*c,!1);a.lineTo(.8*b,.2*c);a.moveTo(.2*b,.4*c);a.lineTo(.8*b,.4*c);a.moveTo(.2*b,.6*c);a.lineTo(.8*b,.6*c);a.moveTo(.2*b,.8*c);a.lineTo(.8*b,.8*c);a.$a(!1);b=a.o;u.q(a);return b},BpmnEventError:function(a,b,c){a=u.p();M(a,0,1*c,!0);a.lineTo(.33*b,0);a.lineTo(.66*b,.5*c);a.lineTo(1*b,0);a.lineTo(.66*b,1*c);a.lineTo(.33*b,.5*c);P(a);b=a.o;u.q(a);return b},BpmnEventEscalation:function(a, b,c){a=u.p();M(a,0,0,!1);M(a,1*b,1*c,!1);M(a,.1*b,1*c,!0);a.lineTo(.5*b,0);a.lineTo(.9*b,1*c);a.lineTo(.5*b,.5*c);P(a);b=a.o;u.q(a);return b},BpmnEventTimer:function(a,b,c){a=u.p();var d=.5*K.ta;M(a,1*b,.5*c,!0);O(a,1*b,(.5+d)*c,(.5+d)*b,1*c,.5*b,1*c);O(a,(.5-d)*b,1*c,0,(.5+d)*c,0,.5*c);O(a,0,(.5-d)*c,(.5-d)*b,0,.5*b,0);O(a,(.5+d)*b,0,1*b,(.5-d)*c,1*b,.5*c);M(a,.5*b,0,!1);a.lineTo(.5*b,.15*c);a.moveTo(.5*b,1*c);a.lineTo(.5*b,.85*c);a.moveTo(0,.5*c);a.lineTo(.15*b,.5*c);a.moveTo(1*b,.5*c);a.lineTo(.85* b,.5*c);a.moveTo(.5*b,.5*c);a.lineTo(.58*b,.1*c);a.moveTo(.5*b,.5*c);a.lineTo(.78*b,.54*c);a.$a(!1);b=a.o;b.Cd=sh;u.q(a);return b}};for(var In in K.rg)K.rg[In.toLowerCase()]=In; K.Jv={"":"",Standard:"F1 m 0,0 l 8,4 -8,4 2,-4 z",Backward:"F1 m 8,0 l -2,4 2,4 -8,-4 z",Triangle:"F1 m 0,0 l 8,4.62 -8,4.62 z",BackwardTriangle:"F1 m 8,4 l 0,4 -8,-4 8,-4 0,4 z",Boomerang:"F1 m 0,0 l 8,4 -8,4 4,-4 -4,-4 z",BackwardBoomerang:"F1 m 8,0 l -8,4 8,4 -4,-4 4,-4 z",SidewaysV:"m 0,0 l 8,4 -8,4 0,-1 6,-3 -6,-3 0,-1 z",BackwardV:"m 8,0 l -8,4 8,4 0,-1 -6,-3 6,-3 0,-1 z",OpenTriangle:"m 0,0 l 8,4 -8,4",BackwardOpenTriangle:"m 8,0 l -8,4 8,4",OpenTriangleLine:"m 0,0 l 8,4 -8,4 m 8.5,0 l 0,-8", BackwardOpenTriangleLine:"m 8,0 l -8,4 8,4 m -8.5,0 l 0,-8",OpenTriangleTop:"m 0,0 l 8,4 m 0,4",BackwardOpenTriangleTop:"m 8,0 l -8,4 m 0,4",OpenTriangleBottom:"m 0,8 l 8,-4",BackwardOpenTriangleBottom:"m 0,4 l 8,4",HalfTriangleTop:"F1 m 0,0 l 0,4 8,0 z m 0,8",BackwardHalfTriangleTop:"F1 m 8,0 l 0,4 -8,0 z m 0,8",HalfTriangleBottom:"F1 m 0,4 l 0,4 8,-4 z",BackwardHalfTriangleBottom:"F1 m 8,4 l 0,4 -8,-4 z",ForwardSemiCircle:"m 4,0 b 270 180 0 4 4",BackwardSemiCircle:"m 4,8 b 90 180 0 -4 4",Feather:"m 0,0 l 3,4 -3,4", BackwardFeather:"m 3,0 l -3,4 3,4",DoubleFeathers:"m 0,0 l 3,4 -3,4 m 3,-8 l 3,4 -3,4",BackwardDoubleFeathers:"m 3,0 l -3,4 3,4 m 3,-8 l -3,4 3,4",TripleFeathers:"m 0,0 l 3,4 -3,4 m 3,-8 l 3,4 -3,4 m 3,-8 l 3,4 -3,4",BackwardTripleFeathers:"m 3,0 l -3,4 3,4 m 3,-8 l -3,4 3,4 m 3,-8 l -3,4 3,4",ForwardSlash:"m 0,8 l 5,-8",BackSlash:"m 0,0 l 5,8",DoubleForwardSlash:"m 0,8 l 4,-8 m -2,8 l 4,-8",DoubleBackSlash:"m 0,0 l 4,8 m -2,-8 l 4,8",TripleForwardSlash:"m 0,8 l 4,-8 m -2,8 l 4,-8 m -2,8 l 4,-8", TripleBackSlash:"m 0,0 l 4,8 m -2,-8 l 4,8 m -2,-8 l 4,8",Fork:"m 0,4 l 8,0 m -8,0 l 8,-4 m -8,4 l 8,4",BackwardFork:"m 8,4 l -8,0 m 8,0 l -8,-4 m 8,4 l -8,4",LineFork:"m 0,0 l 0,8 m 0,-4 l 8,0 m -8,0 l 8,-4 m -8,4 l 8,4",BackwardLineFork:"m 8,4 l -8,0 m 8,0 l -8,-4 m 8,4 l -8,4 m 8,-8 l 0,8",CircleFork:"F1 m 6,4 b 0 360 -3 0 3 z m 0,0 l 6,0 m -6,0 l 6,-4 m -6,4 l 6,4",BackwardCircleFork:"F1 m 0,4 l 6,0 m -6,-4 l 6,4 m -6,4 l 6,-4 m 6,0 b 0 360 -3 0 3",CircleLineFork:"F1 m 6,4 b 0 360 -3 0 3 z m 1,-4 l 0,8 m 0,-4 l 6,0 m -6,0 l 6,-4 m -6,4 l 6,4", BackwardCircleLineFork:"F1 m 0,4 l 6,0 m -6,-4 l 6,4 m -6,4 l 6,-4 m 0,-4 l 0,8 m 7,-4 b 0 360 -3 0 3",Circle:"F1 m 8,4 b 0 360 -4 0 4 z",Block:"F1 m 0,0 l 0,8 8,0 0,-8 z",StretchedDiamond:"F1 m 0,3 l 5,-3 5,3 -5,3 -5,-3 z",Diamond:"F1 m 0,4 l 4,-4 4,4 -4,4 -4,-4 z",Chevron:"F1 m 0,0 l 5,0 3,4 -3,4 -5,0 3,-4 -3,-4 z",StretchedChevron:"F1 m 0,0 l 8,0 3,4 -3,4 -8,0 3,-4 -3,-4 z",NormalArrow:"F1 m 0,2 l 4,0 0,-2 4,4 -4,4 0,-2 -4,0 z",X:"m 0,0 l 8,8 m 0,-8 l -8,8",TailedNormalArrow:"F1 m 0,0 l 2,0 1,2 3,0 0,-2 2,4 -2,4 0,-2 -3,0 -1,2 -2,0 1,-4 -1,-4 z", DoubleTriangle:"F1 m 0,0 l 4,4 -4,4 0,-8 z m 4,0 l 4,4 -4,4 0,-8 z",BigEndArrow:"F1 m 0,0 l 5,2 0,-2 3,4 -3,4 0,-2 -5,2 0,-8 z",ConcaveTailArrow:"F1 m 0,2 h 4 v -2 l 4,4 -4,4 v -2 h -4 l 2,-2 -2,-2 z",RoundedTriangle:"F1 m 0,1 a 1,1 0 0 1 1,-1 l 7,3 a 0.5,1 0 0 1 0,2 l -7,3 a 1,1 0 0 1 -1,-1 l 0,-6 z",SimpleArrow:"F1 m 1,2 l -1,-2 2,0 1,2 -1,2 -2,0 1,-2 5,0 0,-2 2,2 -2,2 0,-2 z",AccelerationArrow:"F1 m 0,0 l 0,8 0.2,0 0,-8 -0.2,0 z m 2,0 l 0,8 1,0 0,-8 -1,0 z m 3,0 l 2,0 2,4 -2,4 -2,0 0,-8 z",BoxArrow:"F1 m 0,0 l 4,0 0,2 2,0 0,-2 2,4 -2,4 0,-2 -2,0 0,2 -4,0 0,-8 z", TriangleLine:"F1 m 8,4 l -8,-4 0,8 8,-4 z m 0.5,4 l 0,-8",CircleEndedArrow:"F1 m 10,4 l -2,-3 0,2 -2,0 0,2 2,0 0,2 2,-3 z m -4,0 b 0 360 -3 0 3 z",DynamicWidthArrow:"F1 m 0,3 l 2,0 2,-1 2,-2 2,4 -2,4 -2,-2 -2,-1 -2,0 0,-2 z",EquilibriumArrow:"m 0,3 l 8,0 -3,-3 m 3,5 l -8,0 3,3",FastForward:"F1 m 0,0 l 3.5,4 0,-4 3.5,4 0,-4 1,0 0,8 -1,0 0,-4 -3.5,4 0,-4 -3.5,4 0,-8 z",Kite:"F1 m 0,4 l 2,-4 6,4 -6,4 -2,-4 z",HalfArrowTop:"F1 m 0,0 l 4,4 4,0 -8,-4 z m 0,8",HalfArrowBottom:"F1 m 0,8 l 4,-4 4,0 -8,4 z", OpposingDirectionDoubleArrow:"F1 m 0,4 l 2,-4 0,2 4,0 0,-2 2,4 -2,4 0,-2 -4,0 0,2 -2,-4 z",PartialDoubleTriangle:"F1 m 0,0 4,3 0,-3 4,4 -4,4 0,-3 -4,3 0,-8 z",LineCircle:"F1 m 0,0 l 0,8 m 7 -4 b 0 360 -3 0 3 z",DoubleLineCircle:"F1 m 0,0 l 0,8 m 2,-8 l 0,8 m 7 -4 b 0 360 -3 0 3 z",TripleLineCircle:"F1 m 0,0 l 0,8 m 2,-8 l 0,8 m 2,-8 l 0,8 m 7 -4 b 0 360 -3 0 3 z",CircleLine:"F1 m 6 4 b 0 360 -3 0 3 z m 1,-4 l 0,8",DiamondCircle:"F1 m 8,4 l -4,4 -4,-4 4,-4 4,4 m 8,0 b 0 360 -4 0 4 z",PlusCircle:"F1 m 8,4 b 0 360 -4 0 4 l -8 0 z m -4 -4 l 0 8", OpenRightTriangleTop:"m 8,0 l 0,4 -8,0 m 0,4",OpenRightTriangleBottom:"m 8,8 l 0,-4 -8,0",Line:"m 0,0 l 0,8",DoubleLine:"m 0,0 l 0,8 m 2,0 l 0,-8",TripleLine:"m 0,0 l 0,8 m 2,0 l 0,-8 m 2,0 l 0,8",PentagonArrow:"F1 m 8,4 l -4,-4 -4,0 0,8 4,0 4,-4 z"};K.jI=function(){if(null!==K.Jv){for(var a in K.Jv){var b=sd(K.Jv[a],!1);K.Ri[a]=b;a.toLowerCase()!==a&&(K.Ri[a.toLowerCase()]=a)}K.Jv=null}}; K.UC=function(a){K.jI();var b=K.Ri[a];if(void 0===b){b=a.toLowerCase();if("none"===b)return"None";b=K.Ri[b]}return"string"===typeof b?b:b instanceof $c?a:null}; function G(a){0===arguments.length?B.call(this):B.call(this,a);this.O=311807;this.wk=this.Wh="";this.wr=this.tr=this.Fr=this.zq=null;this.Hr="";this.Vh=this.Gr=this.cm=null;this.vr="";this.Wn=null;this.ur=(new ia(NaN,NaN)).freeze();this.xr="";this.Xn=null;this.ie="";this.Du=this.Ip=this.kk=null;this.Og=(new w(NaN,NaN)).freeze();this.Gq="";this.zk=null;this.Hq=xb;this.Qq=K.eF;this.Jq=K.dF;this.Sp=null;this.Aq=Jn;this.fm=(new w(6,6)).freeze();this.em="gray";this.dm=4;this.BB=-1;this.pF=new z;this.Bk= null;this.kj=NaN}u.Ia(G,B);u.fa("Part",G);G.prototype.cloneProtected=function(a){B.prototype.cloneProtected.call(this,a);a.O=this.O&-4097|49152;a.Wh=this.Wh;a.wk=this.wk;a.zq=this.zq;a.Fr=this.Fr;a.tr=this.tr;a.wr=this.wr;a.Hr=this.Hr;a.Gr=this.Gr;a.Vh=null;a.vr=this.vr;a.ur.assign(this.ur);a.xr=this.xr;a.ie=this.ie;a.Ip=this.Ip;a.Og.assign(this.Og);a.Gq=this.Gq;a.Hq=this.Hq.Z();a.Qq=this.Qq.Z();a.Jq=this.Jq.Z();a.Sp=this.Sp;a.Aq=this.Aq;a.fm.assign(this.fm);a.em=this.em;a.dm=this.dm}; G.prototype.Oh=function(a){B.prototype.Oh.call(this,a);a.dl();a.cm=null;a.Wn=null;a.Xn=null;a.zk=null;a.Bk=null};G.prototype.toString=function(){var a=u.sg(Object.getPrototypeOf(this))+"#"+u.Uc(this);null!==this.data&&(a+="("+de(this.data)+")");return a};G.LayoutNone=0;var Jj;G.LayoutAdded=Jj=1;var Rj;G.LayoutRemoved=Rj=2;G.LayoutShown=4;G.LayoutHidden=8;G.LayoutNodeSized=16;var Ik;G.LayoutGroupLayout=Ik=32;G.LayoutNodeReplaced=64;var Jn;G.LayoutStandard=Jn=Jj|Rj|28|Ik|64;G.LayoutAll=16777215; G.prototype.Mm=function(a,b,c,d,e,f,h){var k=this.g;null!==k&&(a===be&&"elements"===b?e instanceof B?Kj(e,function(a){Mj(k,a);Lj(k,a)}):e instanceof Ri&&uk(k,e):a===ce&&"elements"===b&&(e instanceof B?Kj(e,function(a){Qj(k,a);Pj(k,a)}):e instanceof Ri&&vk(k,e)),k.Dc(a,b,c,d,e,f,h))};G.prototype.updateTargetBindings=G.prototype.Ob=function(a){B.prototype.Ob.call(this,a);if(null!==this.data){a=this.Aa.n;for(var b=a.length,c=0;ck&&a.y>l&&a.right k&&b.y>l&&b.right =c.wH)){this.O^=4096;var d=!1;if(null!==c){d=c.eb;c.eb=!0;var e=c.selection;e.Ma();a?e.add(this):e.remove(this);e.freeze()}this.h("isSelected",b,a);this.Zd();a=this.fI;null!==a&&a(this);null!==c&&(c.de(),c.eb=d)}}}); u.defineProperty(G,{Yg:"isHighlighted"},function(){return 0!==(this.O&524288)},function(a){var b=0!==(this.O&524288);if(b!==a){this.O^=524288;var c=this.g;null!==c&&(c=c.cw,c.Ma(),a?c.add(this):c.remove(this),c.freeze());this.h("isHighlighted",b,a);this.na()}});u.defineProperty(G,{il:"isShadowed"},function(){return 0!==(this.O&8192)},function(a){var b=0!==(this.O&8192);b!==a&&(this.O^=8192,this.h("isShadowed",b,a),this.na())});function Cj(a){return 0!==(a.O&32768)} function Ln(a,b){a.O=b?a.O|32768:a.O&-32769}function sl(a,b){a.O=b?a.O|65536:a.O&-65537}function ti(a){return 0!==(a.O&131072)}G.prototype.xf=function(a){this.O=a?this.O|131072:this.O&-131073};function Rn(a,b){a.O=b?a.O|1048576:a.O&-1048577}u.defineProperty(G,{HD:"isAnimated"},function(){return 0!==(this.O&262144)},function(a){var b=0!==(this.O&262144);b!==a&&(this.O^=262144,this.h("isAnimated",b,a))}); u.defineProperty(G,{$z:"selectionObjectName"},function(){return this.Hr},function(a){var b=this.Hr;b!==a&&(this.Hr=a,this.cm=null,this.h("selectionObjectName",b,a))});u.defineProperty(G,{eI:"selectionAdornmentTemplate"},function(){return this.Fr},function(a){var b=this.Fr;b!==a&&(this instanceof W&&(a.type=ah),this.Fr=a,this.h("selectionAdornmentTemplate",b,a))}); u.u(G,{ot:"selectionObject"},function(){if(null===this.cm){var a=this.$z;null!==a&&""!==a?(a=this.je(a),this.cm=null!==a?a:this):this instanceof W?(a=this.path,this.cm=null!==a?a:this):this.cm=this}return this.cm});u.defineProperty(G,{fI:"selectionChanged"},function(){return this.Gr},function(a){var b=this.Gr;b!==a&&(null!==a&&u.j(a,"function",G,"selectionChanged"),this.Gr=a,this.h("selectionChanged",b,a))}); u.defineProperty(G,{rE:"resizeAdornmentTemplate"},function(){return this.tr},function(a){var b=this.tr;b!==a&&(this.tr=a,this.h("resizeAdornmentTemplate",b,a))});u.defineProperty(G,{tE:"resizeObjectName"},function(){return this.vr},function(a){var b=this.vr;b!==a&&(this.vr=a,this.Wn=null,this.h("resizeObjectName",b,a))});u.u(G,{sE:"resizeObject"},function(){if(null===this.Wn){var a=this.tE;null!==a&&""!==a?(a=this.je(a),this.Wn=null!==a?a:this):this.Wn=this}return this.Wn}); u.defineProperty(G,{VH:"resizeCellSize"},function(){return this.ur},function(a){var b=this.ur;b.L(a)||(this.ur=a=a.Z(),this.h("resizeCellSize",b,a))});u.defineProperty(G,{YH:"rotateAdornmentTemplate"},function(){return this.wr},function(a){var b=this.wr;b!==a&&(this.wr=a,this.h("rotateAdornmentTemplate",b,a))});u.defineProperty(G,{ZH:"rotateObjectName"},function(){return this.xr},function(a){var b=this.xr;b!==a&&(this.xr=a,this.Xn=null,this.h("rotateObjectName",b,a))}); u.u(G,{vE:"rotateObject"},function(){if(null===this.Xn){var a=this.ZH;null!==a&&""!==a?(a=this.je(a),this.Xn=null!==a?a:this):this.Xn=this}return this.Xn});u.defineProperty(G,{text:"text"},function(){return this.ie},function(a){var b=this.ie;b!==a&&(this.ie=a,this.h("text",b,a))}); u.defineProperty(G,{Sa:"containingGroup"},function(){return this.kk},function(a){if(this.Gd()){var b=this.kk;if(b!==a){null===a||this!==a&&!a.Rh(this)||(this===a&&u.k("Cannot make a Group a member of itself: "+this.toString()),u.k("Cannot make a Group indirectly contain itself: "+this.toString()+" already contains "+a.toString()));this.H(Rj);var c=this.g;null!==b?Sn(b,this):this instanceof V&&null!==c&&c.Ik.remove(this);this.kk=a;null!==a?Tn(a,this):this instanceof V&&null!==c&&c.Ik.add(this);this.H(Jj); if(null!==c){var d=this.data,e=c.ha;null!==d&&e instanceof Q&&e.Hw(d,e.wb(null!==a?a.data:null))}d=this.bD;null!==d&&(e=!0,null!==c&&(e=c.Oa,c.Oa=!0),d(this,b,a),null!==c&&(c.Oa=e));if(this instanceof V)for(c=new F(G),kf(c,this,!0,0,!0),c=c.i;c.next();)if(d=c.value,d instanceof U)for(d=d.oe;d.next();)xk(d.value);if(this instanceof U)for(d=this.oe;d.next();)xk(d.value);this.h("containingGroup",b,a);null!==a&&a.Lw()}}else u.k("cannot set the Part.containingGroup of a Link or Adornment")});g=G.prototype; g.dl=function(){var a=this.Sa;null!==a&&(a.R(),null!==a.Ib&&a.Ib.R(),a.Ze())};g.na=function(){var a=this.g;null!==a&&!Bj(this)&&!Cj(this)&&this.Ga()&&this.Xb.I()&&a.na(yi(this,this.Xb))};g.Ks=function(a){var b=this.kk;null===b||a||Tn(b,this)};g.Ls=function(a){var b=this.kk;null===b||a||Sn(b,this)};g.ym=function(){var a=this.data;if(null!==a){var b=this.g;null!==b&&(b=b.ha,null!==b&&b.Wz(a))}}; u.defineProperty(G,{bD:"containingGroupChanged"},function(){return this.Ip},function(a){var b=this.Ip;b!==a&&(null!==a&&u.j(a,"function",G,"containingGroupChanged"),this.Ip=a,this.h("containingGroupChanged",b,a))});G.prototype.findSubGraphLevel=function(){return Un(this,this)};function Un(a,b){var c=b.Sa;return null!==c?1+Un(a,c):b instanceof U&&(c=b.ce,null!==c)?Un(a,c):0}G.prototype.findTopLevelPart=function(){return Vn(this,this)}; function Vn(a,b){var c=b.Sa;return null!==c?Vn(a,c):b instanceof U&&(c=b.ce,null!==c)?Vn(a,c):b}u.u(G,{Jo:"isTopLevel"},function(){return null!==this.Sa||this instanceof U&&this.tf?!1:!0});G.prototype.isMemberOf=G.prototype.Rh=function(a){return a instanceof V?Wn(this,this,a):!1};function Wn(a,b,c){if(b===c||null===c)return!1;var d=b.Sa;return null===d||d!==c&&!Wn(a,d,c)?b instanceof U&&(b=b.ce,null!==b)?Wn(a,b,c):!1:!0} G.prototype.findCommonContainingGroup=G.prototype.yG=function(a){if(null===a)return null;if(this===a)return this.Sa;for(var b=this;null!==b;)b instanceof V&&Rn(b,!0),b=b.Sa;for(var c=null,b=a;null!==b;){if(0!==(b.O&1048576)){c=b;break}b=b.Sa}for(b=this;null!==b;)b instanceof V&&Rn(b,!1),b=b.Sa;return c};u.defineProperty(G,{nH:"layoutConditions"},function(){return this.Aq},function(a){var b=this.Aq;b!==a&&(this.Aq=a,this.h("layoutConditions",b,a))}); G.prototype.canLayout=function(){if(!this.OD||!this.Ga())return!1;var a=this.layer;return null!==a&&a.Ac||this instanceof U&&this.tf?!1:!0};G.prototype.invalidateLayout=G.prototype.H=function(a){void 0===a&&(a=16777215);var b;this.OD&&0!==(a&this.nH)?(b=this.layer,null!==b&&b.Ac||this instanceof U&&this.tf?b=!1:(b=this.g,b=null!==b&&b.ga.cb?!1:!0)):b=!1;if(b)if(b=this.kk,null!==b){var c=b.Qb;null!==c?c.H():b.H(a)}else a=this.g,null!==a&&(c=a.Qb,null!==c&&c.H())}; function Oj(a){if(!a.Ga())return!1;a=a.layer;return null!==a&&a.Ac?!1:!0}u.defineProperty(G,{mD:"dragComputation"},function(){return this.Sp},function(a){var b=this.Sp;b!==a&&(null!==a&&u.j(a,"function",G,"dragComputation"),this.Sp=a,this.h("dragComputation",b,a))});u.defineProperty(G,{kI:"shadowOffset"},function(){return this.fm},function(a){var b=this.fm;b.L(a)||(this.fm=a=a.Z(),this.na(),this.h("shadowOffset",b,a))}); u.defineProperty(G,{shadowColor:"shadowColor"},function(){return this.em},function(a){var b=this.em;b!==a&&(this.em=a,this.na(),this.h("shadowColor",b,a))});u.defineProperty(G,{shadowBlur:"shadowBlur"},function(){return this.dm},function(a){var b=this.dm;b!==a&&(this.dm=a,this.na(),this.h("shadowBlur",b,a))});function lf(a){0===arguments.length?G.call(this,vh):G.call(this,a);this.wf="Adornment";this.Gb=null;this.O&=-257;this.Og=new w(NaN,NaN);this.Vi=new E(z);this.Ib=null}u.Ia(lf,G); u.fa("Adornment",lf);lf.prototype.toString=function(){var a=this.Mh;return"Adornment("+this.Kc+")"+(null!==a?a.toString():"")};lf.prototype.updateRelationshipsFromData=function(){};lf.prototype.Ys=function(){var a=this.vc.T,b=this.vc;if(a instanceof W&&b instanceof X){var c=a.path,b=c.Qa;a.Ys();for(var b=c.Qa,a=this.Aa.n,c=a.length,d=0;d a&&(a=1);var b=this.g;if(null!==b&&!b.me){var c=b.Mb;0!==b.ga.Le&&c.ml();b.me=!0;var c=b.qd,d=new F(U);d.add(this);jo(this,d,c,a,this.Vc);b.me=!1}}; function jo(a,b,c,d,e){if(1 a&&(a=2);var b=this.g;if(null!==b&&!b.me){var c=b.Mb;0!==b.ga.Le&&c.ml();b.me=!0;var d=b.qd,e=new F(U);e.add(this);lo(this,e,d,a,this.Vc,c,this);b.me=!1}}; function lo(a,b,c,d,e,f,h){for(var k=c?a.Xv():a.pg();k.next();){var l=k.value;l.Bc&&(e||l.ig||l.Vb(),l=l.iz(a),null!==l&&l!==a&&!b.contains(l)&&(b.add(l),e||(l.He(!0),l.dl(),ri(f,l,h)),2 a&&(a-=180);break;case ro:a=K.dt(c+90);90a&&(a-=180);break;case so:a=K.dt(c-90);90a&&(a-=180);break;case to:a=K.dt(c);if(45a||225a)return 0;90a&&(a-=180)}return K.dt(a)}; u.defineProperty(W,{W:"fromNode"},function(){return this.Xf},function(a){var b=this.Xf;if(b!==a){var c=this.od;null!==b&&(this.hg!==b&&fo(b,this,c),uo(this),this.H(Rj));this.Xf=a;this.ei=null;this.Vb();var d=this.g;if(null!==d){var e=this.data,f=d.ha;if(null!==e)if(f instanceof Q){var h=null!==a?a.data:null;f.Gw(e,f.wb(h))}else f instanceof qe&&(h=null!==a?a.data:null,d.qd?f.kh(e,f.wb(h)):(null!==b&&f.kh(b.data,void 0),f.kh(h,f.wb(null!==this.hg?this.hg.data:null))))}e=this.od;f=this.wD;null!==f&& (h=!0,null!==d&&(h=d.Oa,d.Oa=!0),f(this,c,e),null!==d&&(d.Oa=h));null!==a&&(this.hg!==a&&eo(a,this,e),vo(this),this.H(Jj));this.h("fromNode",b,a);xk(this)}}); u.defineProperty(W,{qg:"fromPortId"},function(){return this.yh},function(a){var b=this.yh;if(b!==a){var c=this.od;null!==c&&co(this.W,c);uo(this);this.yh=a;var d=this.od;null!==d&&co(this.W,d);var e=this.g;if(null!==e){var f=this.data,h=e.ha;null!==f&&h instanceof Q&&h.bA(f,a)}c!==d&&(this.ei=null,this.Vb(),f=this.wD,null!==f&&(h=!0,null!==e&&(h=e.Oa,e.Oa=!0),f(this,c,d),null!==e&&(e.Oa=h)));vo(this);this.h("fromPortId",b,a)}});u.u(W,{od:"fromPort"},function(){var a=this.Xf;return null===a?null:a.Xk(this.yh)}); u.defineProperty(W,{wD:"fromPortChanged"},function(){return this.$p},function(a){var b=this.$p;b!==a&&(null!==a&&u.j(a,"function",W,"fromPortChanged"),this.$p=a,this.h("fromPortChanged",b,a))}); u.defineProperty(W,{ca:"toNode"},function(){return this.hg},function(a){var b=this.hg;if(b!==a){var c=this.fe;null!==b&&(this.Xf!==b&&fo(b,this,c),uo(this),this.H(Rj));this.hg=a;this.ei=null;this.Vb();var d=this.g;if(null!==d){var e=this.data,f=d.ha;if(null!==e)if(f instanceof Q){var h=null!==a?a.data:null;f.Iw(e,f.wb(h))}else f instanceof qe&&(h=null!==a?a.data:null,d.qd?(null!==b&&f.kh(b.data,void 0),f.kh(h,f.wb(null!==this.Xf?this.Xf.data:null))):f.kh(e,f.wb(h)))}e=this.fe;f=this.OE;null!==f&& (h=!0,null!==d&&(h=d.Oa,d.Oa=!0),f(this,c,e),null!==d&&(d.Oa=h));null!==a&&(this.Xf!==a&&eo(a,this,e),vo(this),this.H(Jj));this.h("toNode",b,a);xk(this)}}); u.defineProperty(W,{mh:"toPortId"},function(){return this.Kh},function(a){var b=this.Kh;if(b!==a){var c=this.fe;null!==c&&co(this.ca,c);uo(this);this.Kh=a;var d=this.fe;null!==d&&co(this.ca,d);var e=this.g;if(null!==e){var f=this.data,h=e.ha;null!==f&&h instanceof Q&&h.fA(f,a)}c!==d&&(this.ei=null,this.Vb(),f=this.OE,null!==f&&(h=!0,null!==e&&(h=e.Oa,e.Oa=!0),f(this,c,d),null!==e&&(e.Oa=h)));vo(this);this.h("toPortId",b,a)}});u.u(W,{fe:"toPort"},function(){var a=this.hg;return null===a?null:a.Xk(this.Kh)}); u.defineProperty(W,{OE:"toPortChanged"},function(){return this.Wr},function(a){var b=this.Wr;b!==a&&(null!==a&&u.j(a,"function",W,"toPortChanged"),this.Wr=a,this.h("toPortChanged",b,a))});u.defineProperty(W,{vb:"fromSpot"},function(){return null!==this.Q?this.Q.cj:uc},function(a){null===this.Q&&this.Ee();var b=this.Q.cj;b.L(a)||(a=a.Z(),this.Q.cj=a,this.h("fromSpot",b,a),this.Vb())}); u.defineProperty(W,{Yk:"fromEndSegmentLength"},function(){return null!==this.Q?this.Q.aj:NaN},function(a){null===this.Q&&this.Ee();var b=this.Q.aj;b!==a&&(0>a&&u.xa(a,">= 0",W,"fromEndSegmentLength"),this.Q.aj=a,this.h("fromEndSegmentLength",b,a),this.Vb())});u.defineProperty(W,{Fs:"fromEndSegmentDirection"},function(){return null!==this.Q?this.Q.$i:Yn},function(a){null===this.Q&&this.Ee();var b=this.Q.$i;b!==a&&(this.Q.$i=a,this.h("fromEndSegmentDirection",b,a),this.Vb())}); u.defineProperty(W,{Gs:"fromShortLength"},function(){return null!==this.Q?this.Q.bj:NaN},function(a){null===this.Q&&this.Ee();var b=this.Q.bj;b!==a&&(this.Q.bj=a,this.h("fromShortLength",b,a),this.Vb())});u.defineProperty(W,{xb:"toSpot"},function(){return null!==this.Q?this.Q.Ej:uc},function(a){null===this.Q&&this.Ee();var b=this.Q.Ej;b.L(a)||(a=a.Z(),this.Q.Ej=a,this.h("toSpot",b,a),this.Vb())}); u.defineProperty(W,{vl:"toEndSegmentLength"},function(){return null!==this.Q?this.Q.Cj:NaN},function(a){null===this.Q&&this.Ee();var b=this.Q.Cj;b!==a&&(0>a&&u.xa(a,">= 0",W,"toEndSegmentLength"),this.Q.Cj=a,this.h("toEndSegmentLength",b,a),this.Vb())});u.defineProperty(W,{xt:"toEndSegmentDirection"},function(){return null!==this.Q?this.Q.Bj:Yn},function(a){null===this.Q&&this.Ee();var b=this.Q.Bj;b!==a&&(this.Q.Bj=a,this.h("toEndSegmentDirection",b,a),this.Vb())}); u.defineProperty(W,{zt:"toShortLength"},function(){return null!==this.Q?this.Q.Dj:NaN},function(a){null===this.Q&&this.Ee();var b=this.Q.Dj;b!==a&&(this.Q.Dj=a,this.h("toShortLength",b,a),this.Vb())});function xk(a){var b=a.W,c=a.ca;null!==b?null!==c?wo(a,b.yG(c)):wo(a,null):wo(a,null)}function wo(a,b){var c=a.kk;if(c!==b){null!==c&&Sn(c,a);a.kk=b;null!==b&&Tn(b,a);var d=a.bD;if(null!==d){var e=!0,f=a.g;null!==f&&(e=f.Oa,f.Oa=!0);d(a,c,b);null!==f&&(f.Oa=e)}!a.ig||a.oC!==c&&a.qC!==c||a.Vb()}} W.prototype.dl=function(){var a=this.Sa;null!==a&&this.W!==a&&this.ca!==a&&G.prototype.dl.call(this)};W.prototype.getOtherNode=W.prototype.iz=function(a){var b=this.W;return a===b?this.ca:b};W.prototype.getOtherPort=function(a){var b=this.od;return a===b?this.fe:b};u.u(W,{HJ:"isLabeledLink"},function(){return null===this.ue?!1:0 =d&&(h=d-1);var l=this.l(h-1),f=this.l(h);K.po(e.x,e.y,k.x,k.y,l.x,l.y,f.x,f.y,.5,a);b=Math.min(f.x,b);c=Math.min(f.y,c);e=f}else for(e=this.l(0),f=this.l(1),b=Math.min(e.x,f.x),c=Math.min(e.y,f.y),a.m(e.x,e.y,0,0),a.Pi(f),h=2;h c&&(c=-c)):K.mb(c.y,d.y)?(c=d.x-c.x,0>c&&(c=-c)):c=Math.sqrt(c.Lj(d)),f.push(c),e+=c;for(d=h=c=0;c e/2)break;c+=d;h++}u.sa(f);b=this.l(h);f=this.l(h+1);b.x===f.x?b.y>f.y?a.m(b.x,b.y-(e/2-c)):a.m(b.x,b.y+(e/2-c)):b.y===f.y?b.x>f.x?a.m(b.x-(e/2-c),b.y):a.m(b.x+(e/2-c),b.y):(e=(e/2-c)/d,a.m(b.x+e*(f.x-b.x),b.y+e*(f.y-b.y)));return a};u.u(W,{WD:"midAngle"},function(){this.updateRoute();return this.computeMidAngle()}); W.prototype.computeMidAngle=function(){var a=this.ka;if(2>a)return NaN;if(this.computeCurve()===kh&&4<=a&&!this.dc){var b=(a-1)/3|0,c=3*(b/2|0);if(1===b%2){var c=Math.floor(c),a=this.l(c),b=this.l(c+1),d=this.l(c+2),c=this.l(c+3);return K.TF(a.x,a.y,b.x,b.y,d.x,d.y,c.x,c.y)}if(0 e?a.Gi(b):b.Gi(d)}; u.defineProperty(W,{points:"points"},function(){return this.Qc},function(a){var b=this.Qc;if(b!==a){var c=null;if(Array.isArray(a)){var d=0===a.length%2;if(d)for(var e=0;e p&&(t-=180));0>t?t+=360:360<=t&&(t-=360);k&&(v+=Math.abs(p));0===t?r=v:90===t?s=v:180===t?r=-v:270===t?s=-v:(r=v*Math.cos(t*Math.PI/180),s=v*Math.sin(t*Math.PI/180));if(f.ne()&&k){var x=c.lb(Ib,u.K()),A=u.fc(x.x+1E3*r,x.y+1E3*s);this.getLinkPointFromPoint(b,c,x,A,!0,q);u.v(x);u.v(A)}}var v=this.getLinkPoint(d,e,h,!1,l,b,c),y=0,C=0,I=0;if(l||h!==vb||k)x= this.computeEndSegmentLength(d,e,h,!1),I=this.getLinkDirection(d,e,v,h,!1,l,b,c),k&&(I+=l?0:30,0>p&&(I+=180)),0>I?I+=360:360<=I&&(I-=360),k&&(x+=Math.abs(p)),0===I?y=x:90===I?C=x:180===I?y=-x:270===I?C=-x:(y=x*Math.cos(I*Math.PI/180),C=x*Math.sin(I*Math.PI/180)),h.ne()&&k&&(x=e.lb(Ib,u.K()),A=u.fc(x.x+1E3*y,x.y+1E3*C),this.getLinkPointFromPoint(d,e,x,A,!1,v),u.v(x),u.v(A));e=q;if(l||f!==vb||k)e=new w(q.x+r,q.y+s);c=v;if(l||h!==vb||k)c=new w(v.x+y,v.y+C);!n&&!l&&f===vb&&3k&&(m=-m),r=(0>h?-1:1)*m+q,s=l*(r-q)+t),q=a.x+2*f/3,t=a.y+2*h/3,v=q,y=t,K.D(h,0)?y=0 h?-1:1)*m+q,y=l*(v-q)+t),this.to(),this.Lh(a),this.Lk(r,s),this.Lk(v,y),this.Lh(n),this.yf(0, this.getLinkPoint(b,c,vb,!0,!1,d,e)),this.yf(3,this.getLinkPoint(d,e,vb,!1,!1,b,c))):(a=d,d=this.getLinkPoint(b,c,vb,!0,!1,a,e),e=this.getLinkPoint(a,e,vb,!1,!1,b,c),this.hasCurviness()?(h=e.x-d.x,b=e.y-d.y,c=this.computeCurviness(),a=d.x+h/2,n=d.y+b/2,f=a,k=n,K.D(b,0)?k=0 c&&(f=-f),f=(0>b?-1:1)*f+a,k=h*(f-a)+n),this.Lh(d),this.Lk(f,k)):this.Lh(d),this.Lh(e)));return!0}; function Co(a,b){Math.abs(b.x-a.x)>Math.abs(b.y-a.y)?(b.x=b.x>=a.x?a.x+9E9:a.x-9E9,b.y=a.y):(b.y=b.y>=a.y?a.y+9E9:a.y-9E9,b.x=a.x);return b} W.prototype.getLinkPointFromPoint=function(a,b,c,d,e,f){void 0===f&&(f=new w);if(null===a||null===b)return f.assign(c),f;a.Ga()||(e=a.findVisibleNode(),null!==e&&e!==a&&(b=e.port));var h=e=0,k=0,l=0;a=null;e=b.S;null===e||e.Tf()||(e=e.S);if(null===e)e=d.x,h=d.y,k=c.x,l=c.y;else{a=e.Ff;e=1/(a.m11*a.m22-a.m12*a.m21);var k=a.m22*e,l=-a.m12*e,m=-a.m21*e,n=a.m11*e,p=e*(a.m21*a.dy-a.m22*a.dx),q=e*(a.m12*a.dx-a.m11*a.dy);e=d.x*k+d.y*m+p;h=d.x*l+d.y*n+q;k=c.x*k+c.y*m+p;l=c.x*l+c.y*n+q}b.Eo(e,h,k,l,f);null!== a&&f.transform(a);return f};function Do(a,b){var c=b.lr;null===c&&(c=new Eo,c.port=b,c.Cc=b.T,b.lr=c);return Fo(c,a)} W.prototype.getLinkPoint=function(a,b,c,d,e,f,h,k){void 0===k&&(k=new w);if(c.pd())return b.lb(c,k),k;if(c.Io()&&(c=Do(this,b),null!==c)){k.assign(c.No);if(e&&this.Bw===mo){var l=Do(this,h);if(c.wm =m.x&&a.x<=m.x+m.width?k.x=a.x:a.y>=m.y&&a.y<=m.y+m.height&&(k.y=a.y);u.v(c);u.v(l)}}return k}f=b.lb(Ib,u.K());l=c=null;this.ka>(e?6:2)?(l=d?this.l(1):this.l(this.ka-2),e&&(l=Co(f,l.copy()))): (c=u.K(),l=h.lb(Ib,c),e&&(l=Co(f,l)));this.getLinkPointFromPoint(a,b,f,l,d,k);u.v(f);null!==c&&u.v(c);return k}; W.prototype.getLinkDirection=function(a,b,c,d,e,f,h,k){a:if(d.pd())c=d.x>d.y?d.x>1-d.y?0:d.x<1-d.y?270:315:d.x 1-d.y?90:d.x<1-d.y?180:135:.5>d.x?225:.5 (f?6:2)?(n=e?this.l(1):this.l(this.ka-2),n=f?Co(l,n.copy()):c):(m=u.K(),n=k.lb(Ib,m));c=0;c=Math.abs(n.x-l.x)>Math.abs(n.y-l.y)?n.x>= l.x?0:180:n.y>=l.y?90:270;u.v(l);null!==m&&u.v(m)}d.ne()&&h.Rh(a)&&(c+=180,360<=c&&(c-=360));a=Yn;a=e?this.Fs:this.xt;a===Yn&&(a=e?b.Fs:b.xt);switch(a){case Zn:b=b.Zk();c+=b;360<=c&&(c-=360);break;case Yn:case jl:b=b.Zk();if(0===b)break;45<=b&&135>b?c+=90:135<=b&&225>b?c+=180:225<=b&&315>b&&(c+=270);360<=c&&(c-=360)}return c}; W.prototype.computeEndSegmentLength=function(a,b,c,d){if(null!==b&&c.Io()&&(a=Do(this,b),null!==a))return a.Tv;a=NaN;a=d?this.Yk:this.vl;null!==b&&isNaN(a)&&(a=d?b.Yk:b.vl);isNaN(a)&&(a=10);return a};W.prototype.computeSpot=function(a){return a?Ao(this,this.od):Bo(this,this.fe)};function Ao(a,b){if(null===b)return Ib;var c=a.vb;c.Lc()&&(void 0===b&&(b=a.od),null!==b&&(c=b.vb));return c===uc?vb:c} function Bo(a,b){if(null===b)return Ib;var c=a.xb;c.Lc()&&(void 0===b&&(b=a.fe),null!==b&&(c=b.xb));return c===uc?vb:c}W.prototype.computeOtherPoint=function(a,b){var c=b.lb(Ib),d;d=b.lr;d=null!==d?Fo(d,this):null;null!==d&&(c=d.No);return c};W.prototype.computeShortLength=function(a){return a?Go(this):Ho(this)};function Go(a){var b=a.Gs;isNaN(b)&&(a=a.od,null!==a&&(b=a.Gs));return isNaN(b)?0:b}function Ho(a){var b=a.zt;isNaN(b)&&(a=a.fe,null!==a&&(b=a.zt));return isNaN(b)?0:b} W.prototype.Nj=function(a,b,c,d,e,f){if(!1===this.Bg)return!1;void 0===b&&(b=null);void 0===c&&(c=null);var h=f;void 0===f&&(h=u.lh(),h.reset());h.multiply(this.transform);if(this.tm(a,h))return Um(this,b,c,e),void 0===f&&u.Ye(h),!0;if(this.tg(a,h)){var k=!1;if(!this.Mg)for(var l=this.Aa.n,m=l.length;m--;){var n=l[m];if(n.visible||n===this.ec){var p=n.ba,q=this.Ja;if(!(p.x>q.width||p.y>q.height||0>p.x+p.width||0>p.y+p.height)){p=u.lh();p.set(h);if(n instanceof B)k=n.Nj(a,b,c,d,e,p);else if(this.path=== n){var k=n,r=a,s=d,q=p;if(!1===k.Bg)k=!1;else if(q.multiply(k.transform),s)b:{var t=r,v=q;if(k.tm(t,v))k=!0;else{if(void 0===v&&(v=k.transform,t.Kj(k.ba))){k=!0;break b}var q=t.left,r=t.right,s=t.top,t=t.bottom,x=u.K(),A=u.K(),y=u.K(),C=u.lh();C.set(v);C.aE(k.transform);C.pz();A.x=r;A.y=s;A.transform(C);x.x=q;x.y=s;x.transform(C);v=!1;cn(k,x,A,y)?v=!0:(x.x=r,x.y=t,x.transform(C),cn(k,x,A,y)?v=!0:(A.x=q,A.y=t,A.transform(C),cn(k,x,A,y)?v=!0:(x.x=q,x.y=s,x.transform(C),cn(k,x,A,y)&&(v=!0))));u.Ye(C); u.v(x);u.v(A);u.v(y);k=v}}else k=k.tm(r,q)}else k=ol(n,a,d,p);k&&(null!==b&&(n=b(n)),n&&(null===c||c(n))&&e.add(n));u.Ye(p)}}}void 0===f&&u.Ye(h);return k||null!==this.background||null!==this.om}void 0===f&&u.Ye(h);return!1};u.u(W,{dc:"isOrthogonal"},function(){return 2===(this.Zl.value&2)});u.u(W,{el:"isAvoiding"},function(){return 4===(this.Zl.value&4)});W.prototype.computeCurve=function(){if(null===this.ei){var a=this.od,b=this.dc;this.ei=null!==a&&a===this.fe&&!b}return this.ei?kh:this.Ve}; W.prototype.computeCorner=function(){if(this.Ve===kh)return 0;var a=this.Zy;if(isNaN(a)||0>a)a=10;return a};W.prototype.computeCurviness=function(){var a=this.Pv;if(isNaN(a)){var b=this.jf;if(0!==b){var a=10,c=this.g;null!==c&&(a=c.pw);c=Math.abs(b);a=a/2+((c-1)/2|0)*a;0===c%2&&(a=-a);0>b&&(a=-a)}else a=10}return a};W.prototype.computeThickness=function(){var a=this.path;return null!==a?Math.max(a.hb,1):1};W.prototype.hasCurviness=function(){return!isNaN(this.Pv)||0!==this.jf&&!this.dc}; W.prototype.adjustPoints=function(a,b,c,d){var e=this.gs;if(this.dc){if(e===Vl)return!1;e===Wl&&(e=Ul)}switch(e){case Vl:var f=this.l(a),h=this.l(c);if(!f.L(b)||!h.L(d)){var e=f.x,f=f.y,k=h.x-e,l=h.y-f,m=Math.sqrt(k*k+l*l);if(!K.D(m,0)){var n=0;K.D(k,0)?n=0>l?-Math.PI/2:Math.PI/2:(n=Math.atan(l/Math.abs(k)),0>k&&(n=Math.PI-n));var h=b.x,p=b.y,l=d.x-h,q=d.y-p,r=Math.sqrt(l*l+q*q),k=0;K.D(l,0)?k=0>q?-Math.PI/2:Math.PI/2:(k=Math.atan(q/Math.abs(l)),0>l&&(k=Math.PI-k));m=r/m;n=k-n;this.yf(a,b);for(a+= 1;a l?-Math.PI/2:Math.PI/2:(q=Math.atan(l/Math.abs(k)),0>k&&(q=Math.PI-q)),k=q+n,b*=m,this.V(a,h+b*Math.cos(k),p+b*Math.sin(k)));this.yf(c,d)}}return!0;case Wl:f=this.l(a);p=this.l(c);if(!f.L(b)||!p.L(d)){var e=f.x,f=f.y,h=p.x,p=p.y,m=(h-e)*(h-e)+(p-f)*(p-f),k=b.x,n=b.y,l=d.x,q=d.y,r=0,s=1,r=0!==l-k?(q-n)/(l-k):9E9;0!==r&&(s=Math.sqrt(1+1/(r*r)));this.yf(a,b);for(a+=1;a b?0:45<=b&&135>b?90:135<=b&&225>b?180:270;d=-45<=d&&45>d?0:45<=d&&135>d?90:135<=d&&225>d?180:270;var h=e.ba.copy(),k=f.ba.copy();if(h.I()&&k.I()){h.Jf(8,8);k.Jf(8,8);h.Pi(a);k.Pi(c);var l,m;if(0===b)if(c.x>a.x||270===d&&c.y a.x||90===d&&c.y>a.y&&k.right>a.x)l=new w(c.x,a.y),m=new w(c.x,(a.y+c.y)/2),180===d?(l.x=this.computeMidOrthoPosition(a.x,c.x,!1),m.x=l.x,m.y=c.y):270===d&&c.y a.y?(l.x=a.x k.bottom)?this.computeMidOrthoPosition(a.x,c.x,!1):k.right,m.x=l.x,m.y=c.y):0===d&&a.x k.top&&a.y h.bottom)180===d&&(k.Da(a)||h.Da(c))?l.y=this.computeMidOrthoPosition(a.y,c.y,!0):c.y a.y&&(180===d||270===d)&&(l.y=this.computeMidOrthoPosition(h.bottom,Math.min(c.y,k.top),!0)),m.x=c.x,m.y=l.y;if(l.y>h.top&&l.y =h.left&&c.x<=a.x||a.x<=k.right&&a.x>=c.x){if(90===d||270===d)l=new w(Math.max((a.x+c.x)/2,a.x),a.y),m=new w(l.x,c.y)}else l.y=270===d||(0===d||180===d)&&c.y a.y&&k.left a.y?(l.x=a.x>k.right?this.computeMidOrthoPosition(a.x,k.right,!1):a.x>k.left&&(270===d&&a.y k.bottom)?this.computeMidOrthoPosition(a.x,c.x,!1):k.left,m.x=l.x,m.y=c.y):180===d&&a.x>k.right&&a.y>k.top&&a.y h.bottom)0===d&&(k.Da(a)||h.Da(c))?l.y=this.computeMidOrthoPosition(a.y,c.y,!0):c.y a.y&&(0===d||270===d)&&(l.y=this.computeMidOrthoPosition(h.bottom,Math.min(c.y,k.top),!0)),m.x=c.x,m.y=l.y;if(l.y>h.top&&l.y =a.x||a.x>=k.left&&a.x<=c.x){if(90===d||270===d)l=new w(Math.min((a.x+c.x)/2,a.x),a.y),m=new w(l.x,c.y)}else l.y=270=== d||(0===d||180===d)&&c.y a.y||180===d&&c.x a.y||0===d&&c.x>a.x&&k.bottom>a.y)l=new w(a.x,c.y),m=new w((a.x+c.x)/2,c.y),270===d?(l.y=this.computeMidOrthoPosition(a.y,c.y,!0),m.x=c.x,m.y=l.y):180===d&&c.x a.x?(l.y=a.y k.right)? this.computeMidOrthoPosition(a.y,c.y,!0):k.bottom,m.x=c.x,m.y=l.y):90===d&&a.y k.left&&a.x h.right)270===d&&(k.Da(a)||h.Da(c))?l.x=this.computeMidOrthoPosition(a.x,c.x,!1):c.x a.x&&(270===d||180===d)&&(l.x=this.computeMidOrthoPosition(h.right, Math.min(c.x,k.left),!1)),m.x=l.x,m.y=c.y;if(l.x>h.left&&l.x =h.top&&c.y<=a.y||a.y<=k.bottom&&a.y>=c.y){if(0===d||180===d)l=new w(a.x,Math.max((a.y+c.y)/2,a.y)),m=new w(c.x,l.y)}else l.x=180===d||(90===d||270===d)&&c.x a.x&&k.top =a.x?(l.y=a.y>k.bottom?this.computeMidOrthoPosition(a.y,k.bottom,!0):a.y>k.top&&(180===d&&a.x k.right)?this.computeMidOrthoPosition(a.y,c.y,!0):k.top,m.x=c.x,m.y=l.y):270===d&&a.y>k.bottom&&a.x>k.left&&a.x h.right)90===d&&(k.Da(a)||h.Da(c))?l.x=this.computeMidOrthoPosition(a.x, c.x,!1):c.x a.x&&(90===d||180===d)&&(l.x=this.computeMidOrthoPosition(h.right,Math.min(c.x,k.left),!1)),m.x=l.x,m.y=c.y;if(l.x>h.left&&l.x =a.y||a.y>=k.top&&a.y<=c.y){if(0===d||180===d)l=new w(a.x,Math.min((a.y+c.y)/2,a.y)),m=new w(c.x,l.y)}else l.x=180===d||(90===d||270===d)&&c.x k&&0!==Jo(e,c.x,c.y)){Ko(this,e,c.x,c.y,d,!0);d=this.l(2);if(4>this.ka)0===b||180===b?(d.x=a.x,d.y=c.y):(d.x=c.x,d.y=a.y),this.V(2,d.x,d.y),this.w(3,d.x,d.y);else if(c=this.l(3),0===b|| 180===b)K.D(d.x,c.x)?(b=0===b?Math.max(d.x,a.x):Math.min(d.x,a.x),this.V(2,b,a.y),this.V(3,b,c.y)):K.D(d.y,c.y)?(Math.abs(a.y-d.y)<=e.qo/2&&(this.V(2,d.x,a.y),this.V(3,c.x,a.y)),this.w(2,d.x,a.y)):this.V(2,a.x,d.y);else if(90===b||270===b)K.D(d.y,c.y)?(b=90===b?Math.max(d.y,a.y):Math.min(d.y,a.y),this.V(2,a.x,b),this.V(3,c.x,b)):K.D(d.x,c.x)?(Math.abs(a.x-d.x)<=e.so/2&&(this.V(2,a.x,d.y),this.V(3,a.x,c.y)),this.w(2,a.x,d.y)):this.V(2,d.x,a.y);a=!0}else a=!1}else a=!1;a||(this.Lh(l),this.Lh(m))}}; W.prototype.computeMidOrthoPosition=function(a,b){if(this.hasCurviness()){var c=this.computeCurviness();return(a+b)/2+c}return(a+b)/2};function gg(a){if(!a.el)return!1;var b=a.points.n,c=b.length;if(4>c)return!1;a=Lk(a.g,!0,a.Sa,null);for(var d=1;d a){var b=new $c(ad),c=new bd(0,0);b.ub.add(c);return b}var d=!1,b=this.g;null!==b&&0!==b.ga.Le&&xo(this)&&(d=!0);var c=b=0,e=this.l(0).copy(),f=e.copy(),b=this.Qc.n,h=this.computeCurve();if(h===kh&&3<=a&&!K.mb(this.ip,0))if(3===a)var k=this.l(1),b=Math.min(e.x,k.x),c=Math.min(e.y,k.y),k=this.l(2),b=Math.min(b,k.x),c=Math.min(c,k.y);else{if(this.dc)for(k=0;k=a&& (k=a-1),b=this.l(k),f.x=Math.min(b.x,f.x),f.y=Math.min(b.y,f.y);b=f.x;c=f.y}else{for(k=0;kx?r>q?(t.x=A-C,t.y=q-C,v.x=A+s,v.y=q+s):(t.x= A-C,t.y=q+C,v.x=A+s,v.y=q-s):r>q?(t.x=A+C,t.y=q-C,v.x=A-s,v.y=q+s):(t.x=A+C,t.y=q+C,v.x=A-s,v.y=q-s));K.mb(x,A)&&K.mb(q,r)&&(q>p?(y>A?(t.x=A-C,t.y=q-C,v.x=A+s):(t.x=A+C,t.y=q-C,v.x=A-s),v.y=q+s):(y>A?(t.x=A-C,t.y=q+C,v.x=A+s):(t.x=A+C,t.y=q+C,v.x=A-s),v.y=q-s));if(K.mb(x,A)&&K.mb(A,y)||K.mb(p,q)&&K.mb(q,r))x=.5*(x+y),p=.5*(p+r),t.x=x,t.y=p,v.x=x,v.y=p;1===k?(e.x=.5*(d.x+m.x),e.y=.5*(d.y+m.y)):2===k&&K.mb(d.x,this.l(0).x)&&K.mb(d.y,this.l(0).y)&&(e.x=.5*(d.x+m.x),e.y=.5*(d.y+m.y));O(l,e.x-b,e.y-c, h.x-b,h.y-c,m.x-b,m.y-c);f.set(h);e.set(a);d=m}}k=d.x;d=d.y;f=this.l(this.ka-1);k=.5*(k+f.x);d=.5*(d+f.y);O(l,a.x-b,a.y-c,k-b,d-c,f.x-b,f.y-c)}else for(k=3;k=a&&(k=a-1),f=this.l(k-1),e=this.l(k),k===a-1&&0!==Ho(this)&&(e=e.copy(),Lo(this,e,!1,K.Wj)),O(l,d.x-b,d.y-c,f.x-b,f.y-c,e.x-b,e.y-c);else{f=u.K();f.assign(this.l(0));for(k=1;k=a-1){f!==t&&(0!==Ho(this)&&(t=t.copy(),Lo(this,t,!1,K.Wj)),Oo(this,l,-b,-c,f,t,d));break}k=Mo(this,t, k+1,k n.x?t.x-s:t.x+s,C=v.y>t.y?t.y+A:t.y-A,Oo(this,e,h,m,n,new w(q,y),p),td(e,t.x+h,t.y+m,r+h,C+m),x.m(r,C))):K.D(n.x,t.x)&&K.D(t.y,v.y)?(s=this.computeCorner(),A=Math.min(s,Math.abs(t.y-n.y)/2),A=s=Math.min(A,Math.abs(v.x-t.x)/2),K.D(s,0)?(Oo(this,e,h,m,n,t,p),x.assign(t)): (q=t.x,C=y=t.y,y=t.y>n.y?t.y-A:t.y+A,r=v.x>t.x?t.x+s:t.x-s,Oo(this,e,h,m,n,new w(q,y),p),td(e,t.x+h,t.y+m,r+h,C+m),x.m(r,C))):(Oo(this,e,h,m,n,t,p),x.assign(t))}u.v(f)}b=l.o;u.q(l)}return b};function No(a,b,c,d){a=c-a;if(isNaN(a)||Infinity===a||-Infinity===a)return NaN;0>a&&(a=-a);b=d-b;if(isNaN(b)||Infinity===b||-Infinity===b)return NaN;0>b&&(b=-b);return K.mb(a,0)?b:K.mb(b,0)?a:Math.sqrt(a*a+b*b)} function Lo(a,b,c,d){var e=a.ka;if(!(2>e))if(c){var f=a.l(1);c=f.x-d.x;d=f.y-d.y;f=No(b.x,b.y,c,d);0!==f&&(e=2===e?.5*f:f,a=Go(a),a>e&&(a=e),c=a*(c-b.x)/f,a=a*(d-b.y)/f,b.x+=c,b.y+=a)}else f=a.l(e-2),c=f.x-d.x,d=f.y-d.y,f=No(b.x,b.y,c,d),0!==f&&(e=2===e?.5*f:f,a=Ho(a),a>e&&(a=e),c=a*(b.x-c)/f,a=a*(b.y-d)/f,b.x-=c,b.y-=a)} function Mo(a,b,c,d){for(var e=a.ka,f=b;K.mb(b.x,f.x)&&K.mb(b.y,f.y);){if(c>=e)return e-1;f=a.l(c++)}if(!K.mb(b.x,f.x)&&!K.mb(b.y,f.y))return c-1;for(var h=f;K.mb(b.x,f.x)&&K.mb(f.x,h.x)&&(!d||(b.y>=f.y?f.y>=h.y:f.y<=h.y))||K.mb(b.y,f.y)&&K.mb(f.y,h.y)&&(!d||(b.x>=f.x?f.x>=h.x:f.x<=h.x));){if(c>=e)return e-1;h=a.l(c++)}return c-2} function Oo(a,b,c,d,e,f,h){if(!h&&xo(a)){h=[];var k=0;a.Ga()&&(k=Po(a,e,f,h));var l=e.x,l=e.y;if(0 p-10)m--,p=Math.max(q-5,f.x);else break;q=f.y-10+d;n=p+c;p=f.y+d;a.Ve===ch?M(b,n,p,!1,!1):O(b,l,q,n,q,n,p)}else if(K.D(e.x,f.x))if(e.y p-10)m--,p=Math.max(q-5,f.y);else break;q=f.x-10+c;n=f.x+c;p+=d;a.Ve===ch?M(b,n,p,!1,!1):O(b,q,l,q,p,n,p)}}b.lineTo(f.x+c,f.y+d)} function Po(a,b,c,d){var e=a.g;if(null===e||b.L(c))return 0;for(e=e.nw;e.next();){var f=e.value;if(null!==f&&f.visible)for(var f=f.Db.n,h=f.length,k=0;k h.x&&n.x>m.x||m.x h.y&&n.y>m.y||m.y t&&Math.min(h,x) q&&!K.D(h,x)){n.x=t;n.y=q;n=!0;break a}}else if(!K.D(q,s)&&K.D(h,x)&&Math.min(q, s)h&&Math.min(t,v) p&&!K.D(t,v)){n.x=p;n.y=h;n=!0;break a}n.x=0;n.y=0;n=!1}n&&(e?c.push(k.x):c.push(k.y));h=m}u.v(k)}u.u(W,{Cs:"firstPickIndex"},function(){return 2>=this.ka?0:this.dc||Ao(this)!==vb?1:0});u.u(W,{mw:"lastPickIndex"},function(){var a=this.ka;return 0===a?0:2>=a?a-1:this.dc||Bo(this)!==vb?a-2:a-1});function xo(a){a=a.Ve;return a===bh||a===ch}function zo(a,b){if(b||xo(a)){var c=a.g;null===c||c.Fl.contains(a)||null===a.qy||c.Fl.add(a,a.qy)}} function eh(a,b){var c=a.layer;if(null!==c&&c.visible&&!c.Ac){var d=c.g;if(null!==d)for(var e=!1,d=d.nw;d.next();){var f=d.value;if(f.visible)if(f===c)for(var e=!0,h=!1,f=f.Db.n,k=f.length,l=0;l
b.links.count)1===b.links.count&&(c=b.links.n[0],c.bn=null,c.jf=0,c.Vb()),c=b.Wo,null!==b&&null!==c.ph&&c.ph.remove(b),c=b.bt,null!==b&&null!==c.ph&&c.ph.remove(b);else for(c=Math.abs(c),a=0===c%2,b=b.links.i;b.next();){var d=b.value,e=Math.abs(d.jf),f=0===e%2;e>c&&a===f&&(d.jf=0 =a.width||0>=a.height)){var b=a.y,c=a.x+a.width,d=a.y+a.height;this.bg=Math.floor((a.x-this.ge)/this.ge)*this.ge;this.cg=Math.floor((b-this.he)/this.he)*this.he;this.Kq=Math.ceil((c+2*this.ge)/this.ge)*this.ge;this.Lq=Math.ceil((d+2*this.he)/this.he)*this.he;a=1+(Math.ceil((this.Kq-this.bg)/this.ge)|0);b=1+(Math.ceil((this.Lq-this.cg)/this.he)|0);if(null===this.mc||this.io this.Kq||a+c