Fixed bug in VML part (thanks to Alfonso Moreno).
authorDmitry Baranovskiy <dbaranovskiy@Fresh-Air.sydney.atlassian.com>
Wed, 8 Oct 2008 00:48:23 +0000 (11:48 +1100)
committerDmitry Baranovskiy <dbaranovskiy@Fresh-Air.sydney.atlassian.com>
Wed, 8 Oct 2008 00:48:23 +0000 (11:48 +1100)
Rewrite transformation part (again) for SVG.
Small code improvements.

raphael-packed.js
raphael.js

index 3a4dcb2..128eb5d 100644 (file)
@@ -1 +1,7 @@
-eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('9 1F=(F(n){9 r=F(){J r.34.2q(r,I)};r.4k="0.5.4b";r.14=n;9 C={};F 28(a,b,c,d,e,f){7.m=[[a||1,b||0,0],[c||0,d||1,0],[e||0,f||0,1],]}C.1f=C.1g=C.1w=C.1y=F(x){J x};G(n=="2r"){28.3s.2s=F(){J"4l:4m.4n.28(4o="+7.m[0][0]+", 4p="+7.m[1][0]+", 4q="+7.m[0][1]+", 4r="+7.m[1][1]+", 4s="+7.m[2][0]+", 4t="+7.m[2][1]+", 4u=\'4v 4w\', 4x=\'4y\')"};9 q=F(f,h,j){9 g=11.1p("1l:1G"),2t=g.15;2t.2a="2b";2t.1M=0;2t.1z=0;2t.12=j.12+"1v";2t.1c=j.1c+"1v";9 k=11.1p("1l:2c"),2u=k.15;2u.12=j.12+"1v";2u.1c=j.1c+"1v";k.K="";G(f["3t"]){k.4z=f["3t"]}k.2D=7.2D;k.2E=7.2E;g.17(k);j.18.17(g);9 p=1q u(k,g,j);s(p,f);G(f.1A){t(p,f.1A)}p.Q=1R;p.14="K";p.K=[];p.1a={x:0,y:0,2l:0,2m:0,Q:1R};p.2n="";p.1B=F(){7.Q=1R;J 7};p.1C=F(){7.Q=2F;J 7};p.3u=F(){7.2n="";9 a=7.K;7.K=[];1j(9 i=0,1h=a.19;i<1h;i++){G(a[i].14!="35"){7[a[i].14+"3v"].2q(7,a[i].1S)}1m{7.2d()}}};p.1T=F(x,y){9 d=7.Q?"m":"t";9 a=7.Q?j.1f:j.1w;9 b=7.Q?j.1g:j.1y;d+=P.T(a(U(x,10)))+" "+P.T(b(U(y,10)));7[0].K=7.2n+=d;7.1a.x=P.T(a(U(x,10)));7.1a.y=P.T(b(U(y,10)));7.1a.Q=7.Q;7.K.1D({14:"3w",1S:[].2Q.2R(I,0),2e:7.Q});J 7};p.1k=F(x,y){9 d=7.Q?"l":"r";9 a=7.Q?j.1f:j.1w;9 b=7.Q?j.1g:j.1y;d+=P.T(a(U(x,10)))+" "+P.T(b(U(y,10)));7[0].K=7.2n+=d;7.1a.x=P.T(a(U(x,10)));7.1a.y=P.T(b(U(y,10)));7.1a.Q=7.Q;7.K.1D({14:"3x",1S:[].2Q.2R(I,0),2e:7.Q});J 7};p.3y=F(a,b,c){G(!c){J 7.1k(a,b)}1m{9 p={};p.1f=7.Q?j.1f:j.1w;p.1g=7.Q?j.1g:j.1y;9 x=P.T(p.1f(P.T(U(a,10)*1d)/1d));9 y=P.T(p.1g(P.T(U(b,10)*1d)/1d));9 w=P.T(j.1w(P.T(U(c,10)*1d)/1d));9 d=7.Q?"c":"v";9 e=[7.1a.x+w,7.1a.y,x-w,y,x,y];d+=e.2f(" ")+" ";7.1a.x=e[4];7.1a.y=e[5];7.1a.2l=e[2];7.1a.2m=e[3];7[0].K=7.2n+=d;7.K.1D({14:"3z",1S:[].2Q.2R(I,0),2e:7.Q});J 7}};p.1n=F(){9 d=7.Q?"c":"v";9 a=7.Q?j.1f:j.1w;9 b=7.Q?j.1g:j.1y;G(I.19==6){7.1a.x=P.T(a(U(I[4],10)));7.1a.y=P.T(b(U(I[5],10)));7.1a.2l=P.T(a(U(I[2],10)));7.1a.2m=P.T(b(U(I[3],10)));d+=P.T(a(U(I[0],10)))+" "+P.T(b(U(I[1],10)))+" "+P.T(a(U(I[2],10)))+" "+P.T(b(U(I[3],10)))+" "+P.T(a(U(I[4],10)))+" "+P.T(b(U(I[5],10)))+" ";7.1a.Q=7.Q}7[0].K=7.2n+=d;7.K.1D({14:"3A",1S:[].2Q.2R(I,0),2e:7.Q});J 7};p.2v=F(r,a){9 R=.3B*r,1U=7.Q,o=7;G(1U){7.1C();1U=F(){o.1B()}}1m{1U=F(){}}9 b={l:F(){J{u:F(){o.1n(-R,0,-r,-(r-R),-r,-r)},d:F(){o.1n(-R,0,-r,r-R,-r,r)}}},r:F(){J{u:F(){o.1n(R,0,r,-(r-R),r,-r)},d:F(){o.1n(R,0,r,r-R,r,r)}}},u:F(){J{r:F(){o.1n(0,-R,-(R-r),-r,r,-r)},l:F(){o.1n(0,-R,R-r,-r,-r,-r)}}},d:F(){J{r:F(){o.1n(0,R,-(R-r),r,r,r)},l:F(){o.1n(0,R,R-r,r,-r,r)}}}};b[a.2S(0)]()[a.2S(1)]();1U();J o};p.2d=F(){7[0].K=(7.2n+="x e");J 7};G(1i h=="2g"){h=h.1Z(/([3C])/2T,",$1,").1Z(/([^,])\\-/2T,"$1,-");K=h.36(",");9 i=1,1h=K.19;37(i<1h){2U(K[i]){13"M":p.1B().1T(K[++i],K[++i]);1e;13"m":p.1C().1T(K[++i],K[++i]);1e;13"C":p.1B().1n(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);1e;13"c":p.1C().1n(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);1e;13"L":p.1B().1k(K[++i],K[++i]);1e;13"l":p.1C().1k(K[++i],K[++i]);1e;13"H":p.1B().1k(K[++i],0);1e;13"h":p.1C().1k(K[++i],0);1e;13"V":p.1B().1k(0,K[++i]);1e;13"v":p.1C().1k(0,K[++i]);1e;13"Z":13"z":p.2d();1e}i++}}J p};9 s=F(o,a){o[0].N=o[0].N||{};1j(9 b 1t a){o[0].N[b]=a[b]}a["20-3D"]&&(o[0].15.4A=a["20-3D"]);a["20-3E"]&&(o[0].15.4B=a["20-3E"]);a["20"]&&(o[0].15.20=a["20"]);a["20-2V"]&&(o[0].15.4C=a["20-2V"]);G(1i a.1u!="1N"||1i a["1b-12"]!="1N"||1i a.1s!="1N"||1i a.1b!="1N"){o=o.2c||o[0];9 c=(o.2G("1s")&&o.2G("1s")[0])||11.1p("1l:1s");G("1s-1u"1t a||"1u"1t a){c.1u=((a["1s-1u"]+1||2)-1)*((a.1u+1||2)-1)}a.1s&&(c.21=1R);G(c.21&&a.1s){c.1V=a.1s}G(a.1s=="1J"){c.21=2F}o.17(c);9 d=(o.2G("1b")&&o.2G("1b")[0])||11.1p("1l:1b");G((a.1b&&a.1b!="1J")||a["1b-12"]||a["1b-1u"]||a["1b-2H"]){d.21=1R}G(a.1b=="1J"||1i d.21=="1N"){d.21=2F}G(d.21&&a.1b){d.1V=a.1b}d.1u=((a["1b-1u"]+1||2)-1)*((a.1u+1||2)-1);d.4D=a["1b-4E"]||"3F";d.3G=a["1b-3G"]||8;d.4F={4G:"4H",3H:"3H",T:"T"}[a["1b-4I"]||"3F"];d.2V=(U(a["1b-12"],10)||1);G(a["1b-2H"]){9 e=a["1b-2H"].1Z(" ",",").36(","),38=[],3I=d.2V;1j(9 i=0,1h=e.19;i<1h;i++){9 f=e[i]/3I;G(!4J(f)){38.1D(f)}};d.4K=38.2f(" ")}o.17(d)}};9 t=F(o,a){o[0].N=o[0].N||{};o[0].N.1A=a;o=o.2c||o[0];9 b=o.2G("1s");G(b.19){b=b[0]}1m{b=11.1p("1l:1s")}G(a.1o.19){b.21=1R;b.14=(a.14.39()=="4L")?"1A":"4M";G(1i a.1o[0].1V!="1N"){b.1V=a.1o[0].1V||"#1x"}G(1i a.1o[0].1u!="1N"){b.1u=a.1o[0].1u}G(1i a.1o[a.1o.19-1].1u!="1N"){b.4N=a.1o[a.1o.19-1].1u}G(1i a.1o[a.1o.19-1].1V!="1N"){b.4O=a.1o[a.1o.19-1].1V||"#1x"}9 c="";1j(9 i=1,1h=a.1o.19-1;i<1h;i++){c+=a.1o[i].2W+" "+a.1o[i].1V;G(i!=1h-1){c+=","}};G(c){b.4P=c}G(a.1O){9 d=P.T(P.4Q((1E(a.1O[3],10)-1E(a.1O[1],10))/(1E(a.1O[2],10)-1E(a.1O[0],10)))*57.29)+4R;b.4S=d+4T}G(a.14.39()=="4U"){b.4V="0.5, 0.5";b.4W="0, 0";b.4X="1J"}}};9 u=F(g,k,l){9 m=0,4Y=0,4Z=0,3J=1;7[0]=g;7.X=0;7.Y=0;I.3a.50="51";7[0].N={};7.1r=k;7.2w=F(a){9 b=7.1r.15,2x=7[0].15;1j(9 i 1t a){7[0].N[i]=a[i]}9 c=7[0].N,x,y,w,h;2U(7.14){13"2I":x=c.22-c.r;y=c.23-c.r;w=h=c.r*2;1e;13"2J":x=c.22-c.2h;y=c.23-c.2i;w=c.2h*2;h=c.2i*2;1e;13"1W":13"2y":x=c.x;y=c.y;w=c.w;h=c.h;1e;13"1H":7.3b.v=["m",P.T(c.x),", ",P.T(c.y-2),"l",P.T(c.x)+1,", ",P.T(c.y-2)].2f("");J;3c:J}9 d=l.12/2-w/2,1z=l.1c/2-h/2;b.2a="2b";b.1M=x-d+"1v";b.1z=y-1z+"1v";7.X=x-d;7.Y=y-1z;7.W=w;7.H=h;b.12=l.12+"1v";b.1c=l.1c+"1v";2x.2a="2b";2x.1z=1z+"1v";2x.1M=d+"1v";2x.12=w+"1v";2x.1c=h+"1v"};7.3K=F(){7.1r.15.2X="1J";J 7};7.3L=F(){7.1r.15.2X="3M";J 7};7.3d=F(a){m+=a;7.1r.15.52=m;J 7};7.3e=F(x,y){7.X+=x;7.Y+=y;7.1r.15.1M=7.X+"1v";7.1r.15.1z=7.Y+"1v";J 7};7.3f=F(a,b,c,d,e,f){3g=1q 28(a,b,c,d,e,f);7.1r.15.3N=3g;J 7};7.3O=F(x,y){y=y||x;G(x!=0&&!(x==1&&y==1)){9 a=P.T(x/P.3P(x)),2Y=P.T(y/P.3P(y));G(a!=1||2Y!=1){7[0].15.3N=1q 28(a,0,0,2Y,0,0)}9 b=1E(7[0].15.12,10)*x*a;9 c=1E(7[0].15.1c,10)*y*2Y;9 d=1E(7[0].15.1M,10);9 e=1E(7[0].15.1z,10);7[0].15.1M=7.X=d+7.W/2-b/2;7[0].15.1z=7.Y=e+7.H/2-c/2;7[0].15.12=7.W=b;7[0].15.1c=7.H=c}J 7};7.2K=F(){J{x:7.1r.53,y:7.1r.54,12:7.1r.55,1c:7.1r.56}};7.3h=F(){7[0].1I.2j(7[0]);7.1r.1I.2j(7.1r);7.2c&&7.2c.1I.2j(7.2c)};7.2L=F(){G(I.19==1&&1i I[0]=="2g"){J 7[0].N[I[0]]}G(7[0].N&&I.19==1&&I[0]3Q 3R){9 a={};1j(9 i=0,1h=I[0].19;i<1h;i++){a[I[0][i]]=7[0].N[I[0][i]]};J a}G(7[0].58.39()=="1G"){9 b=7[0].2Z;7[0].N=7[0].N||{};G(I.19==2){7[0].N[I[0]]=I[1]}1m G(I.19=1||1i I[0]=="2o"){1j(9 j 1t I[0]){7[0].N[j]=I[0][j]}}1j(9 i=0,1h=b.19;i<1h;i++){7.2L.2q(1q 59(b[i],7[0],l),I)}}1m{9 c;G(I.19==2){c={};c[I[0]]=I[1]}G(I.19==1&&1i I[0]=="2o"){c=I[0]}G(c){s(7,c);7.2w(c);G(c.1A){t(7,c.1A)}G(c.1H&&7.14=="1H"){7[0].2g=c.1H}G(c.2M){7[0].2M=c.2M}}}J 7};7.3S=F(){7.1r.1I.17(7.1r);J 7};7.3T=F(){G(7.1r.1I.1K!=7.1r){7.1r.1I.30(7.1r,7.1r.1I.1K)}J 7}};9 v=F(a,x,y,r){9 g=11.1p("1l:1G");9 o=11.1p("1l:3U");g.17(o);a.18.17(g);9 b=1q u(o,g,a);s(b,{1b:"#1x",1s:"1J"});b.2w({x:x-r,y:y-r,w:r*2,h:r*2});o.N.22=x;o.N.23=y;o.N.r=r;b.14="2I";J b};9 z=F(a,x,y,w,h,r){9 g=11.1p("1l:1G");9 o=11.1p(r?"1l:5a":"1l:1W");G(r){o.5b=r/(P.2N(w,h))}g.17(o);a.18.17(g);9 b=1q u(o,g,a);s(b,{1b:"#1x"});b.2w({x:x,y:y,w:w,h:h});o.N.x=x;o.N.y=y;o.N.w=w;o.N.h=h;o.N.r=r;b.14="1W";J b};9 A=F(a,x,y,b,c){9 g=11.1p("1l:1G");9 o=11.1p("1l:3U");g.17(o);a.18.17(g);9 d=1q u(o,g,a);s(d,{1b:"#1x"});d.2w({x:x-b,y:y-c,w:b*2,h:c*2});o.N.22=x;o.N.23=y;o.N.2h=b;o.N.2i=c;d.14="2J";J d};9 B=F(a,b,x,y,w,h){9 g=11.1p("1l:1G");9 o=11.1p("1l:2y");o.5c=b;g.17(o);a.18.17(g);9 c=1q u(o,g,a);c.14="2y";c.2w({x:x,y:y,w:w,h:h});o.N.x=x;o.N.y=y;o.N.w=w;o.N.h=h;J c};9 D=F(a,x,y,b){9 g=11.1p("1l:1G"),2z=g.15;9 c=11.1p("1l:2c"),2u=c.15;9 d=11.1p("1l:K"),5d=d.15;d.v=["m",P.T(x),", ",P.T(y-2),"l",P.T(x)+1,", ",P.T(y-2)].2f("");d.5e=1R;2u.12=a.12;2u.1c=a.1c;2z.2a="2b";2z.1M=0;2z.1z=0;2z.12=a.12;2z.1c=a.1c;9 o=11.1p("1l:3b");o.2g=b;o.21=1R;o.2D=a.2D;o.2E=a.2E;c.17(o);c.17(d);g.17(c);a.18.17(g);9 e=1q u(o,g,a);e.2c=c;e.3b=d;e.14="1H";o.N.x=x;o.N.y=y;o.N.w=1;o.N.h=1;J e};9 E=F(a){9 b=11.1p("1l:1G"),2A=b.15;2A.2a="2b";2A.1M=0;2A.1z=0;2A.12=a.12;2A.1c=a.1c;G(a.18){a.18.17(b)}9 c=1q u(b,b,a);1j(9 f 1t a){G(f.2S(0)!="3V"&&1i a[f]=="F"){c[f]=(F(f){J F(){9 e=a[f].2q(a,I);b.17(e[0].1I);J e}})(f)}}c.14="1G";J c};r.34=F(){G(1i I[0]=="2g"){9 d=11.3W(I[0]);9 e=I[1];9 f=I[2]}G(1i I[0]=="2o"){9 d=I[0];9 e=I[1];9 f=I[2]}G(1i I[0]=="3X"){9 d=1,x=I[0],y=I[1],e=I[2],f=I[3]}G(!d){3Y 1q 3Z("2r 40 41 42.");}G(!11.43["1l"]){11.43.5f("1l","5g:5h-5i-5j:3i");11.5k().5l("1l\\\\:*","5m:44(#3c#2r)")}9 c=11.1p("5n"),r=C.18=11.1p("1l:1G"),1X=c.15,2O=r.15;C.12=e;C.1c=f;e=e||"5o";f=f||"5p";1X.5q="1W(0 "+e+" "+f+" 0)";1X.2a="2b";2O.12=e;2O.1c=f;r.2D=(e=="1d%"?e:U(e))+" "+(f=="1d%"?f:U(f));r.2E="0 0";9 b=11.1p("1l:1W"),2P=b.15;2P.1M=2P.1z=0;2P.12=2O.12;2P.1c=2O.1c;b.5r=b.5s="f";r.17(b);c.17(r);G(d==1){11.45.17(c);1X.2a="2b";1X.1M=x+"1v";1X.1z=y+"1v";1X.12=e;1X.1c=f;d={15:{12:e,1c:f}}}1m{1X.12=d.15.12=e;1X.1c=d.15.1c=f;G(d.1K){d.30(c,d.1K)}1m{d.17(c)}}1j(9 g 1t C){d[g]=C[g]}d.3j=F(){9 a=[];1j(9 i=0,1h=r.2Z.19;i<1h;i++){G(r.2Z[i]!=b){a.1D(r.2Z[i])}}1j(i=0,1h=a.19;i<1h;i++){r.2j(a[i])}};J d}}G(n=="2p"){28.3s.2s=F(){J"3f("+7.m[0][0]+", "+7.m[1][0]+", "+7.m[0][1]+", "+7.m[1][1]+", "+7.m[2][0]+", "+7.m[2][1]+")"};9 q=F(g,h,j){9 k=11.1P(j.1L,"K");k.O("1s","1J");G(g){1j(9 l 1t g){G(g.1A){t(k,g.1A,j)}1m{k.O(l,g[l])}}}G(j.18){j.18.17(k)}9 p=1q u(k,j);1j(9 l 1t g){p.N[l]=g[l]}p.Q=1R;p.K=[];p.1a={x:0,y:0,2l:0,2m:0};p.1B=F(){7.Q=1R;J 7};p.1C=F(){7.Q=2F;J 7};p.3u=F(){7[0].O("d","5t 0");9 a=7.K;7.K=[];1j(9 i=0,1h=a.19;i<1h;i++){G(a[i].14!="35"){7[a[i].14+"3v"].2q(7,a[i].1S)}1m{7.2d()}}};p.1T=F(x,y){9 d=7.Q?"M":"m";9 a=7.Q?j.1f:j.1w;9 b=7.Q?j.1g:j.1y;d+=a(U(x,10))+" "+b(U(y,10))+" ";9 c=7[0].2B("d")||"";7[0].O("d",c+d);7.1a.x=j.1f(U(x,10));7.1a.y=j.1g(U(y,10));7.K.1D({14:"3w",1S:I,2e:7.Q});J 7};p.1k=F(x,y){9 d=7.Q?"L":"l";9 a=7.Q?j.1f:j.1w;9 b=7.Q?j.1g:j.1y;d+=a(U(x,10))+" "+b(U(y,10))+" ";9 c=7[0].2B("d")||"";7[0].O("d",c+d);7.1a.x=j.1f(U(x,10));7.1a.y=j.1g(U(y,10));7.K.1D({14:"3x",1S:I,2e:7.Q});J 7};p.3y=F(a,b,c){G(!c){J 7.1k(a,b)}1m{9 p={};p.1f=7.Q?j.1f:j.1w;p.1g=7.Q?j.1g:j.1y;9 x=p.1f(P.T(U(a,10)*1d)/1d);9 y=p.1g(P.T(U(b,10)*1d)/1d);9 w=j.1w(P.T(U(c,10)*1d)/1d);9 d=7.Q?"C":"c";9 e=[7.1a.x+w,7.1a.y,x-w,y,x,y];1j(9 i=0,1h=e.19;i<1h;i++){d+=e[i]+" "}7.1a.x=e[4];7.1a.y=e[5];7.1a.2l=e[2];7.1a.2m=e[3];9 f=7[0].2B("d")||"";7[0].O("d",f+d);7.K.1D({14:"3z",1S:I,2e:7.Q});J 7}};p.1n=F(){9 p={};p.1f=7.Q?j.1f:j.1w;p.1g=7.Q?j.1g:j.1y;G(I.19==6){9 d=7.Q?"C":"c";1j(9 i=0,1h=I.19;i<1h;i++){d+=p[(i%2==0)?"1f":"1g"](P.T(U(I[i],10)*1d)/1d)+" "}7.1a.x=p.1f((U(I[4],10)*1d)/1d);7.1a.y=p.1g((U(I[5],10)*1d)/1d);7.1a.2l=p.1f((U(I[2],10)*1d)/1d);7.1a.2m=p.1g((U(I[3],10)*1d)/1d)}1m{G(I.19==4){9 d=7.Q?"S":"s";1j(9 i=0,1h=I.19;i<1h;i++){d+=p[i%2==0?"1f":"1g"]((U(I[i],10)*1d)/1d)+" "}}7.1a.x=p.1f((U(I[2],10)*1d)/1d);7.1a.y=p.1g((U(I[3],10)*1d)/1d);7.1a.2l=p.1f((U(I[0],10)*1d)/1d);7.1a.2m=p.1g((U(I[1],10)*1d)/1d)}9 a=7[0].2B("d")||"";7[0].O("d",a+d);7.K.1D({14:"3A",1S:I,2e:7.Q});J 7};p.2v=F(r,a){9 R=.3B*r,1U=7.Q,o=7;G(1U){7.1C();1U=F(){o.1B()}}1m{1U=F(){}}9 b={l:F(){J{u:F(){o.1n(-R,0,-r,-(r-R),-r,-r)},d:F(){o.1n(-R,0,-r,r-R,-r,r)}}},r:F(){J{u:F(){o.1n(R,0,r,-(r-R),r,-r)},d:F(){o.1n(R,0,r,r-R,r,r)}}},u:F(){J{r:F(){o.1n(0,-R,-(R-r),-r,r,-r)},l:F(){o.1n(0,-R,R-r,-r,-r,-r)}}},d:F(){J{r:F(){o.1n(0,R,-(R-r),r,r,r)},l:F(){o.1n(0,R,R-r,r,-r,r)}}}};b[a[0]]()[a[1]]();1U();J o};p.2d=F(){9 a=7[0].2B("d")||"";7[0].O("d",a+"Z ");7.K.1D({14:"35"});J 7};G(1i h=="2g"){h=h.1Z(/([3C])/2T,",$1,").1Z(/([^,])\\-/2T,"$1,-");K=h.36(",");9 i=1,1h=K.19;37(i<1h){2U(K[i]){13"M":p.1B().1T(K[++i],K[++i]);1e;13"m":p.1C().1T(K[++i],K[++i]);1e;13"C":p.1B().1n(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);1e;13"c":p.1C().1n(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);1e;13"s":p.1C().1n(K[++i],K[++i],K[++i],K[++i]);1e;13"S":p.1B().1n(K[++i],K[++i],K[++i],K[++i]);1e;13"L":p.1B().1k(K[++i],K[++i]);1e;13"l":p.1C().1k(K[++i],K[++i]);1e;13"H":p.1B().1k(K[++i],0);1e;13"h":p.1C().1k(K[++i],0);1e;13"V":p.1B().1k(0,K[++i]);1e;13"v":p.1C().1k(0,K[++i]);1e;13"z":p.2d();1e}i++}}J p};9 t=F(o,a,b){9 c=11.1P(b.1L,a.14+"5u");c.2M="5v-1A-"+b.46++;G(a.1O&&a.1O.19){c.O("5w",a.1O[0]);c.O("5x",a.1O[1]);c.O("5y",a.1O[2]);c.O("5z",a.1O[3])}b.31.17(c);1j(9 i=0,1h=a.1o.19;i<1h;i++){9 d=11.1P(b.1L,"3k");d.O("2W",a.1o[i].2W?a.1o[i].2W:(i==0)?"0%":"1d%");d.O("3k-1V",a.1o[i].1V||"#5A");G(1i a.1o[i].1u!="1N"){d.O("3k-1u",a.1o[i].1u)}c.17(d)};o.O("1s","44(#"+c.2M+")")};9 u=F(g,h){9 X=0,Y=0,5B={5C:0,x:0,y:0},3J=1,3g=5D;7[0]=g;7.N=7.N||{};7.24=[];7.3K=F(){7[0].15.2X="1J";J 7};7.3L=F(){7[0].15.2X="3M";J 7};7.3d=F(a){9 b=7.2K();7.24.1D("3d("+a+" "+(b.x+b.12/2)+" "+(b.y+b.1c/2)+")");7[0].O("32",7.24.2f(" "));J 7};7.3e=F(x,y){7.24.1D("3e("+x+","+y+")");7[0].O("32",7.24.2f(" "));J 7};7.3O=F(x,y){y=y||x;G(x!=0&&!(x==1&&y==1)){9 a=7.2K(),47=a.x*(1-x)+(a.12/2-a.12*x/2),48=a.y*(1-y)+(a.1c/2-a.1c*y/2);7.24.1D(1q 28(x,0,0,y,47,48));7[0].O("32",7.24.2f(" "))}J 7};7.3f=F(a,b,c,d,e,f){7.24.1D(1q 28(a,b,c,d,e,f));7[0].O("32",7.24.2f(" "));J 7};7.3h=F(){7[0].1I.2j(7[0])};7.2K=F(){J 7[0].2K()};7.2L=F(){G(I.19==1&&1i I[0]=="2g"){J 7[0].2B(I[0])}G(I.19==1&&I[0]3Q 3R){9 a={};1j(9 j 1t I[0]){a[I[0][j]]=7.N[I[0][j]]}J a}G(I.19==2){9 b=I[0],1Q=I[1];7[b]=1Q;7.N[b]=1Q;2U(b){13"2h":13"22":13"x":7[0].O(b,h.1f(1Q));1e;13"2i":13"23":13"y":7[0].O(b,h.1g(1Q));1e;13"12":7[0].O(b,h.1w(1Q));1e;13"1c":7[0].O(b,h.1y(1Q));1e;13"1A":t(7[0],d.1A,h);1e;13"1b-2H":7[0].O(b,1Q.1Z(" ",","));1e;13"1H":G(7.14=="1H"){7[0].2j(7[0].1K);7[0].17(11.3l(1Q))}1e;3c:9 c=b.1Z(/(\\-.)/g,F(w){J w.2k(1).49()});7[0].15[c]=1Q;7[0].O(b,1Q)}}1m G(I.19=1&&1i I[0]=="2o"){9 d=I[0];1j(9 e 1t d){7.N[e]=d[e];G(e=="1b-2H"){7[0].O(e,d[e].1Z(" ",","))}1m G(e=="1H"&&7.14=="1H"){7[0].2j(7[0].1K);7[0].17(11.3l(d[e]))}1m{9 c=e.1Z(/(\\-.)/g,F(w){J w.2k(1).49()});7[0].15[c]=d[e];7[0].O(e,d[e])}}G(d.1A){7[0].N.1A=d.1A;t(7[0],d.1A,h)}}J 7};7.3S=F(){7[0].1I.17(7[0])};7.3T=F(){G(7[0].1I.1K!=7[0]){7[0].1I.30(7[0],7[0].1I.1K)}}};9 v=F(a,x,y,r){9 b=11.1P(a.1L,"2I");b.O("22",a.1f(x));b.O("23",a.1g(y));b.O("r",r);b.O("1s","1J");b.O("1b","#1x");b.N=b.N||{};b.N.22=x;b.N.23=y;b.N.r=r;b.N.1b="#1x";G(a.18){a.18.17(b)}9 c=1q u(b,a);c.14="2I";J c};9 z=F(a,x,y,w,h,r){9 b=11.1P(a.1L,"1W");b.O("x",a.1f(x));b.O("y",a.1g(y));b.O("12",a.1w(w));b.O("1c",a.1y(h));b.N=b.N||{};b.N.x=x;b.N.y=y;b.N.12=w;b.N.1c=h;G(r){b.O("2h",r);b.O("2i",r);b.N.2h=b.N.2i=r}b.O("1s","1J");b.O("1b","#1x");b.N.1b="#1x";G(a.18){a.18.17(b)}9 c=1q u(b,a);c.14="1W";J c};9 A=F(a,x,y,b,c){9 d=11.1P(a.1L,"2J");d.O("22",a.1f(x));d.O("23",a.1g(y));d.O("2h",a.1w(b));d.O("2i",a.1y(c));d.O("1s","1J");d.O("1b","#1x");d.N=d.N||{};d.N.22=x;d.N.23=y;d.N.2h=b;d.N.2i=c;d.N.1b="#1x";G(a.18){a.18.17(d)}9 e=1q u(d,a);e.14="2J";J e};9 B=F(a,b,x,y,w,h){9 c=11.1P(a.1L,"2y");c.O("x",a.1f(x));c.O("y",a.1g(y));c.O("12",a.1w(w));c.O("1c",a.1y(h));c.5E(a.3m,"5F",b);G(a.18){a.18.17(c)}9 d=1q u(c,a);d.14="2y";J d};9 D=F(a,x,y,b){9 c=11.1P(a.1L,"1H");c.O("x",x);c.O("y",y);c.O("1H-5G","5H");c.O("1s","#1x");c.N=c.N||{};c.N.x=x;c.N.y=y;c.N.1s="#1x";G(b){c.17(11.3l(b))}G(a.18){a.18.17(c)}9 d=1q u(c,a);d.14="1H";J d};9 E=F(a){9 b=11.1P(a.1L,"g");G(a.18){a.18.17(b)}9 i=1q u(b,a);1j(9 f 1t a){G(f[0]!="3V"&&1i a[f]=="F"){i[f]=(F(f){J F(){9 e=a[f].2q(a,I);b.17(e[0]);J e}})(f)}}i.14="1G";J i};r.34=F(){G(1i I[0]=="2g"){9 a=11.3W(I[0]);9 b=I[1];9 c=I[2]}G(1i I[0]=="2o"){9 a=I[0];9 b=I[1];9 c=I[2]}G(1i I[0]=="3X"){9 a=1,x=I[0],y=I[1],b=I[2],c=I[3]}G(!a){3Y 1q 3Z("2p 40 41 42.");}C.18=11.1P(C.1L,"33");C.18.O("12",b||4a);C.12=b||4a;C.18.O("1c",c||3n);C.1c=c||3n;G(a==1){11.45.17(C.18);C.18.15.2a="2b";C.18.15.1M=x+"1v";C.18.15.1z=y+"1v"}1m{G(a.1K){a.30(C.18,a.1K)}1m{a.17(C.18)}}a={18:C.18,3j:F(){37(7.18.1K){7.18.2j(7.18.1K)}7.31=11.1P(C.1L,"31");7.46=0;7.18.17(7.31)}};1j(9 d 1t C){G(d!="5I"){a[d]=C[d]}}a.3j();J a};C.1L="4c://4d.4e.4f/5J/33";C.3m="4c://4d.4e.4f/5K/3m"}G(n=="2r"||n=="2p"){C.2I=F(x,y,r){J v(7,x,y,r)};C.1W=F(x,y,w,h,r){J z(7,x,y,w,h,r)};C.2J=F(x,y,a,b){J A(7,x,y,a,b)};C.K=F(a,b){J q(a,b,7)};C.2y=F(a,x,y,w,h){J B(7,a,x,y,w,h)};C.1H=F(x,y,a){J D(7,x,y,a)};C.1G=F(){J E(7)};C.5L=F(x,y,w,h,r){G(r&&1E(r,10)){J 7.K({1b:"#1x"}).1T(x+r,y).1k(x+w-r,y).2v(r,"5M").1k(x+w,y+h-r).2v(r,"5N").1k(x+r,y+h).2v(r,"5O").1k(x,y+r).2v(r,"5P").2d()}J 7.K({1b:"#1x"}).1T(x,y).1k(x+w,y).1k(x+w,y+h).1k(x,y+h).2d()};C.5Q=F(x,y,w,h,a,b,c){c=c||"#1x";9 d=7.1G();9 e={1b:c,"1b-12":"5R","1b-1u":.3};d.1W(x,y,w,h).2L(e);1j(9 i=1;i<b;i++){9 p=d.K(e);p.1T(x,y+i*P.T(h/b)).1k(x+w,y+i*P.T(h/b))}1j(9 i=1;i<a;i++){d.K(e).1T(x+i*P.T(w/a),y).1k(x+i*P.T(w/a),y+h)}J d};C.5S=F(a,b,c,d,w,h){9 e=(c-a)/w;9 f=(d-b)/h;7.1f=F(x){J a+x*e};7.1g=F(y){J b+y*f};7.1w=F(w){J w*e};7.1y=F(h){J h*f}};C.5T=F(){7.1f=7.1g=7.1w=7.1y=F(x){J x}};C.5U=F(){G(r.14=="2p"){9 a=C.1W(-C.12,-C.12,C.12*3,C.1c*3).2L({1b:"1J"});5V(F(){a.3h()},0)}};J r}1m{J F(){}}})((!(25.2C&&25.2C.3o==2)&&!(25.3p))?"2r":"2p");1F.14=(!(25.2C&&25.2C.3o==2)&&!(25.3p))?"2r":"2p";1F.3i=!(1F.33=(1F.14=="2p"));G(!(25.2C&&25.2C.3o==2)&&25.3p){1F.14="5W 5X";1F.3i=1F.33=2F}1F.2s=F(){J"5Y 5Z 60 "+7.14};1F.4g=F(a,c,d){G(1i a=="2o"&&"h"1t a&&"s"1t a&&"b"1t a){d=a.b;c=a.s;a=a.h}9 e,26,27;G(d==0.0){J{r:0,g:0,b:0}}1m{9 i=P.61(a*6),f=(a*6)-i,p=d*(1-c),q=d*(1-(c*f)),t=d*(1-(c*(1-f)));[F(){e=d;26=t;27=p},F(){e=q;26=d;27=p},F(){e=p;26=d;27=t},F(){e=p;26=q;27=d},F(){e=t;26=p;27=d},F(){e=d;26=p;27=q},F(){e=d;26=t;27=p},][i]()}9 h={r:e,g:26,b:27};9 r=P.T(h.r).2s(16);G(r.19==1){r="0"+r}9 g=P.T(h.g).2s(16);G(g.19==1){g="0"+g}9 b=P.T(h.b).2s(16);G(b.19==1){b="0"+b}h.4h="#"+r+g+b;J h};1F.62=F(a,b,c){G(1i a=="2o"&&"r"1t a&&"h"1t a&&"b"1t a){c=a.b;b=a.g;a=a.r}G(a.2S(0)=="#"){G(a.19==4){c=1E(a.2k(3),16);b=1E(a.2k(2,3),16);a=1E(a.2k(1,2),16)}1m{c=1E(a.2k(5),16);b=1E(a.2k(3,5),16);a=1E(a.2k(1,3),16)}}9 d=P.63(a,b,c),2N=P.2N(a,b,c),1Y,3q,4i=d;G(2N==d){J{h:0,s:0,b:d}}1m{9 e=(d-2N);3q=e/d;G(a==d){1Y=(b-c)/e}1m G(b==d){1Y=2+((c-a)/e)}1m{1Y=4+((a-b)/e)}1Y/=6;G(1Y<0){1Y+=1}G(1Y>1){1Y-=1}}J{h:1Y,s:3q,b:4i}};1F.4j=F(a){9 b=I.3a.3r=I.3a.3r||{h:0,s:1,b:a||3n};9 c=7.4g(b.h,b.s,b.b);b.h+=.1;G(b.h>1){b.h=0;b.s-=.2;G(b.s<=0){b={h:0,s:1,b:b.b}}}J c.4h};1F.4j.64=F(){7.3r=1N};',62,377,'|||||||this||var||||||||||||||||||||||||||||||||function|if||arguments|return|path|||attrs|setAttribute|Math|isAbsolute|||round|parseFloat|||||||document|width|case|type|style||appendChild|canvas|length|last|stroke|height|100|break|_getX|_getY|ii|typeof|for|lineTo|rvml|else|curveTo|dots|createElement|new|Group|fill|in|opacity|px|_getW|000|_getH|top|gradient|absolutely|relatively|push|parseInt|Raphael|group|text|parentNode|none|firstChild|svgns|left|undefined|vector|createElementNS|value|true|arg|moveTo|rollback|color|rect|cs|hue|replace|font|on|cx|cy|transformations|window|green|blue|Matrix||position|absolute|shape|andClose|pos|join|string|rx|ry|removeChild|substring|bx|by|Path|object|SVG|apply|VML|toString|gl|ol|addRoundedCorner|setBox|os|image|gs|els|getAttribute|SVGPreserveAspectRatio|coordsize|coordorigin|false|getElementsByTagName|dasharray|circle|ellipse|getBBox|attr|id|min|rs|bs|slice|call|charAt|ig|switch|weight|offset|display|diry|childNodes|insertBefore|defs|transform|svg|_create|end|split|while|dashesn|toLowerCase|callee|textpath|default|rotate|translate|matrix|tMatrix|remove|vml|clear|stop|createTextNode|xlink|200|SVG_PRESERVEASPECTRATIO_XMINYMIN|CanvasRenderingContext2D|saturation|start|prototype|class|redraw|To|move|line|cplineTo|cpline|curve|5522|mzlhvcsqta|family|size|miter|miterlimit|square|str|Scale|hide|show|block|filter|scale|abs|instanceof|Array|toFront|toBack|oval|_|getElementById|number|throw|Error|container|not|found|namespaces|url|body|gradients|dx|dy|toUpperCase|320||http|www|w3|org|hsb2rgb|hex|brightness|getColor|version|progid|DXImageTransform|Microsoft|M11|M12|M21|M22|Dx|Dy|sizingmethod|auto|expand|filtertype|bilinear|className|fontFamily|fontSize|fontWeight|joinstyle|linejoin|endcap|butt|flat|linecap|isNaN|dashstyle|linear|gradientradial|opacity2|color2|colors|atan|180|angle|90|radial|focusposition|focussize|method|RotX|RotY|name|Element|rotation|offsetLeft|offsetTop|offsetWidth|offsetHeight||tagName|item|roundrect|arcsize|src|ps|textpathok|add|urn|schemas|microsoft|com|createStyleSheet|addRule|behavior|div|320px|200px|clip|filled|stroked|M0|Gradient|raphael|x1|y1|x2|y2|fff|Rotation|deg|null|setAttributeNS|href|anchor|middle|create|2000|1999|linerect|rd|dl|lu|ur|drawGrid|1px|setGrid|clearGrid|safari|setTimeout|Canvas|only|You|browser|supports|floor|rgb2hsb|max|reset'.split('|'),0,{}))
\ No newline at end of file
+/*
+ * Raphael 0.5.4b - JavaScript Vector Library
+ *
+ * Copyright (c) 2008 Dmitry Baranovskiy (raphaeljs.com)
+ * Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) license.
+ */
+eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('9 1E=(F(n){9 r=F(){J r.38.2o(r,I)};r.4m="0.5.4b";r.18=n;9 C={};F 27(a,b,c,d,e,f){7.m=[[a||1,b||0,0],[c||0,d||1,0],[e||0,f||0,1],]}C.1f=C.1g=C.1w=C.1y=F(x){J x};G(n=="2D"){27.3u.2p=F(){J"4n:4o.4p.27(4q="+7.m[0][0]+", 4r="+7.m[1][0]+", 4s="+7.m[0][1]+", 4t="+7.m[1][1]+", 4u="+7.m[2][0]+", 4v="+7.m[2][1]+", 4w=\'4x 4y\', 4z=\'4A\')"};9 q=F(f,h,j){9 g=13.1p("1m:1H"),2q=g.15;2q.28="2a";2q.1M=0;2q.1z=0;2q.P=j.P+"1u";2q.T=j.T+"1u";9 k=13.1p("1m:2b"),2r=k.15;2r.P=j.P+"1u";2r.T=j.T+"1u";k.K="";G(f["3v"]){k.4B=f["3v"]}k.2E=7.2E;k.2F=7.2F;g.17(k);j.19.17(g);9 p=1q u(k,g,j);s(p,f);G(f.1A){t(p,f.1A)}p.U=1V;p.18="K";p.K=[];p.1b={x:0,y:0,2k:0,2l:0,U:1V};p.2m="";p.1B=F(){7.U=1V;J 7};p.1C=F(){7.U=2G;J 7};p.3w=F(){7.2m="";9 a=7.K;7.K=[];1l(9 i=0,1h=a.1a;i<1h;i++){G(a[i].18!="39"){7[a[i].18+"3x"].2o(7,a[i].1W)}1j{7.2c()}}};p.1N=F(x,y){9 d=7.U?"m":"t";9 a=7.U?j.1f:j.1w;9 b=7.U?j.1g:j.1y;d+=Q.11(a(12(x,10)))+" "+Q.11(b(12(y,10)));7[0].K=7.2m+=d;7.1b.x=Q.11(a(12(x,10)));7.1b.y=Q.11(b(12(y,10)));7.1b.U=7.U;7.K.1O({18:"3y",1W:[].2Q.2R(I,0),2d:7.U});J 7};p.1i=F(x,y){9 d=7.U?"l":"r";9 a=7.U?j.1f:j.1w;9 b=7.U?j.1g:j.1y;d+=Q.11(a(12(x,10)))+" "+Q.11(b(12(y,10)));7[0].K=7.2m+=d;7.1b.x=Q.11(a(12(x,10)));7.1b.y=Q.11(b(12(y,10)));7.1b.U=7.U;7.K.1O({18:"3z",1W:[].2Q.2R(I,0),2d:7.U});J 7};p.3A=F(a,b,c){G(!c){J 7.1i(a,b)}1j{9 p={};p.1f=7.U?j.1f:j.1w;p.1g=7.U?j.1g:j.1y;9 x=Q.11(p.1f(Q.11(12(a,10)*1d)/1d));9 y=Q.11(p.1g(Q.11(12(b,10)*1d)/1d));9 w=Q.11(j.1w(Q.11(12(c,10)*1d)/1d));9 d=7.U?"c":"v";9 e=[7.1b.x+w,7.1b.y,x-w,y,x,y];d+=e.2e(" ")+" ";7.1b.x=e[4];7.1b.y=e[5];7.1b.2k=e[2];7.1b.2l=e[3];7[0].K=7.2m+=d;7.K.1O({18:"3B",1W:[].2Q.2R(I,0),2d:7.U});J 7}};p.1n=F(){9 d=7.U?"c":"v";9 a=7.U?j.1f:j.1w;9 b=7.U?j.1g:j.1y;G(I.1a==6){7.1b.x=Q.11(a(12(I[4],10)));7.1b.y=Q.11(b(12(I[5],10)));7.1b.2k=Q.11(a(12(I[2],10)));7.1b.2l=Q.11(b(12(I[3],10)));d+=Q.11(a(12(I[0],10)))+" "+Q.11(b(12(I[1],10)))+" "+Q.11(a(12(I[2],10)))+" "+Q.11(b(12(I[3],10)))+" "+Q.11(a(12(I[4],10)))+" "+Q.11(b(12(I[5],10)))+" ";7.1b.U=7.U}7[0].K=7.2m+=d;7.K.1O({18:"3C",1W:[].2Q.2R(I,0),2d:7.U});J 7};p.2s=F(r,a){9 R=.3D*r,1X=7.U,o=7;G(1X){7.1C();1X=F(){o.1B()}}1j{1X=F(){}}9 b={l:F(){J{u:F(){o.1n(-R,0,-r,-(r-R),-r,-r)},d:F(){o.1n(-R,0,-r,r-R,-r,r)}}},r:F(){J{u:F(){o.1n(R,0,r,-(r-R),r,-r)},d:F(){o.1n(R,0,r,r-R,r,r)}}},u:F(){J{r:F(){o.1n(0,-R,-(R-r),-r,r,-r)},l:F(){o.1n(0,-R,R-r,-r,-r,-r)}}},d:F(){J{r:F(){o.1n(0,R,-(R-r),r,r,r)},l:F(){o.1n(0,R,R-r,r,-r,r)}}}};b[a.2S(0)]()[a.2S(1)]();1X();J o};p.2c=F(){7[0].K=(7.2m+="x e");J 7};G(1k h=="2f"){h=h.21(/([3E])/2T,",$1,").21(/([^,])\\-/2T,"$1,-");K=h.3a(",");9 i=1,1h=K.1a;3b(i<1h){2U(K[i]){14"M":p.1B().1N(K[++i],K[++i]);1e;14"m":p.1C().1N(K[++i],K[++i]);1e;14"C":p.1B().1n(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);1e;14"c":p.1C().1n(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);1e;14"L":p.1B().1i(K[++i],K[++i]);1e;14"l":p.1C().1i(K[++i],K[++i]);1e;14"H":p.1B().1i(K[++i],0);1e;14"h":p.1C().1i(K[++i],0);1e;14"V":p.1B().1i(0,K[++i]);1e;14"v":p.1C().1i(0,K[++i]);1e;14"Z":14"z":p.2c();1e}i++}}J p};9 s=F(o,a){o[0].N=o[0].N||{};1l(9 b 1t a){o[0].N[b]=a[b]}a["22-3F"]&&(o[0].15.4C=a["22-3F"]);a["22-3G"]&&(o[0].15.4D=a["22-3G"]);a["22"]&&(o[0].15.22=a["22"]);a["22-2V"]&&(o[0].15.4E=a["22-2V"]);G(1k a.1v!="1P"||1k a["1c-P"]!="1P"||1k a.1s!="1P"||1k a.1c!="1P"){o=o.2b||o[0];9 c=(o.2H("1s")&&o.2H("1s")[0])||13.1p("1m:1s");G("1s-1v"1t a||"1v"1t a){c.1v=((a["1s-1v"]+1||2)-1)*((a.1v+1||2)-1)}a.1s&&(c.23=1V);G(c.23&&a.1s){c.1Y=a.1s}G(a.1s=="1I"){c.23=2G}o.17(c);9 d=(o.2H("1c")&&o.2H("1c")[0])||13.1p("1m:1c");G((a.1c&&a.1c!="1I")||a["1c-P"]||a["1c-1v"]||a["1c-2I"]){d.23=1V}G(a.1c=="1I"||1k d.23=="1P"){d.23=2G}G(d.23&&a.1c){d.1Y=a.1c}d.1v=((a["1c-1v"]+1||2)-1)*((a.1v+1||2)-1);d.4F=a["1c-4G"]||"3H";d.3I=a["1c-3I"]||8;d.4H={4I:"4J",3J:"3J",11:"11"}[a["1c-4K"]||"3H"];d.2V=(12(a["1c-P"],10)||1);G(a["1c-2I"]){9 e=a["1c-2I"].21(" ",",").3a(","),3c=[],3K=d.2V;1l(9 i=0,1h=e.1a;i<1h;i++){9 f=e[i]/3K;G(!4L(f)){3c.1O(f)}};d.4M=3c.2e(" ")}o.17(d)}};9 t=F(o,a){o[0].N=o[0].N||{};o[0].N.1A=a;o=o.2b||o[0];9 b=o.2H("1s");G(b.1a){b=b[0]}1j{b=13.1p("1m:1s")}G(a.1o.1a){b.23=1V;b.18=(a.18.3d()=="4N")?"1A":"4O";G(1k a.1o[0].1Y!="1P"){b.1Y=a.1o[0].1Y||"#1x"}G(1k a.1o[0].1v!="1P"){b.1v=a.1o[0].1v}G(1k a.1o[a.1o.1a-1].1v!="1P"){b.4P=a.1o[a.1o.1a-1].1v}G(1k a.1o[a.1o.1a-1].1Y!="1P"){b.4Q=a.1o[a.1o.1a-1].1Y||"#1x"}9 c="";1l(9 i=1,1h=a.1o.1a-1;i<1h;i++){c+=a.1o[i].2W+" "+a.1o[i].1Y;G(i!=1h-1){c+=","}};G(c){b.4R=c}G(a.1Q){9 d=Q.11(Q.4S((1D(a.1Q[3],10)-1D(a.1Q[1],10))/(1D(a.1Q[2],10)-1D(a.1Q[0],10)))*57.29)+4T;b.4U=d+4V}G(a.18.3d()=="4W"){b.4X="0.5, 0.5";b.4Y="0, 0";b.4Z="1I"}}};9 u=F(g,k,l){9 m=0,50=0,51=0,52=1;7[0]=g;7.X=0;7.Y=0;I.3e.53="54";7[0].N={};7.1r=k;7.2t=F(a){9 b=7.1r.15,2u=7[0].15;1l(9 i 1t a){7[0].N[i]=a[i]}9 c=7[0].N,x,y,w,h;2U(7.18){14"2J":x=c.24-c.r;y=c.25-c.r;w=h=c.r*2;1e;14"2K":x=c.24-c.2g;y=c.25-c.2h;w=c.2g*2;h=c.2h*2;1e;14"26":14"2v":x=c.x;y=c.y;w=c.w;h=c.h;1e;14"1F":7.3f.v=["m",Q.11(c.x),", ",Q.11(c.y-2),"l",Q.11(c.x)+1,", ",Q.11(c.y-2)].2e("");J;3g:J}9 d=l.P/2-w/2,1z=l.T/2-h/2;b.28="2a";b.1M=x-d+"1u";b.1z=y-1z+"1u";7.X=x-d;7.Y=y-1z;7.W=w;7.H=h;b.P=l.P+"1u";b.T=l.T+"1u";2u.28="2a";2u.1z=1z+"1u";2u.1M=d+"1u";2u.P=w+"1u";2u.T=h+"1u"};7.3L=F(){7.1r.15.2X="1I";J 7};7.3M=F(){7.1r.15.2X="3N";J 7};7.3h=F(a){m+=a;7.1r.15.55=m;J 7};7.3i=F(x,y){7.X+=x;7.Y+=y;7.1r.15.1M=7.X+"1u";7.1r.15.1z=7.Y+"1u";J 7};7.3j=F(a,b,c,d,e,f){3k=1q 27(a,b,c,d,e,f);7.1r.15.3O=3k;J 7};7.3P=F(x,y){y=y||x;G(x!=0&&!(x==1&&y==1)){9 a=Q.11(x/Q.3Q(x)),2Y=Q.11(y/Q.3Q(y));G(a!=1||2Y!=1){7[0].15.3O=1q 27(a,0,0,2Y,0,0)}9 b=1D(7[0].15.P,10)*x*a;9 c=1D(7[0].15.T,10)*y*2Y;9 d=1D(7[0].15.1M,10);9 e=1D(7[0].15.1z,10);7[0].15.1M=7.X=d+7.W/2-b/2;7[0].15.1z=7.Y=e+7.H/2-c/2;7[0].15.P=7.W=b;7[0].15.T=7.H=c}J 7};7.2L=F(){J{x:7.1r.56,y:7.1r.58,P:7.1r.59,T:7.1r.5a}};7.3l=F(){7[0].1G.2i(7[0]);7.1r.1G.2i(7.1r);7.2b&&7.2b.1G.2i(7.2b)};7.2Z=F(){G(I.1a==1&&1k I[0]=="2f"){J 7[0].N[I[0]]}G(7[0].N&&I.1a==1&&I[0]3R 3S){9 a={};1l(9 i=0,1h=I[0].1a;i<1h;i++){a[I[0][i]]=7[0].N[I[0][i]]};J a}G(7[0].5b.3d()=="1H"){9 b=7[0].30;7[0].N=7[0].N||{};G(I.1a==2){7[0].N[I[0]]=I[1]}1j G(I.1a==1||1k I[0]=="2n"){1l(9 j 1t I[0]){7[0].N[j]=I[0][j]}}1l(9 i=0,1h=b.1a;i<1h;i++){7.2Z.2o(1q 5c(b[i],7[0],l),I)}}1j{9 c;G(I.1a==2){c={};c[I[0]]=I[1]}G(I.1a==1&&1k I[0]=="2n"){c=I[0]}G(c){s(7,c);7.2t(c);G(c.1A){t(7,c.1A)}G(c.1F&&7.18=="1F"){7[0].2f=c.1F}G(c.2M){7[0].2M=c.2M}}}J 7};7.3T=F(){7.1r.1G.17(7.1r);J 7};7.3U=F(){G(7.1r.1G.1J!=7.1r){7.1r.1G.31(7.1r,7.1r.1G.1J)}J 7}};9 v=F(a,x,y,r){9 g=13.1p("1m:1H");9 o=13.1p("1m:3V");g.17(o);a.19.17(g);9 b=1q u(o,g,a);s(b,{1c:"#1x",1s:"1I"});b.2t({x:x-r,y:y-r,w:r*2,h:r*2});o.N.24=x;o.N.25=y;o.N.r=r;b.18="2J";J b};9 z=F(a,x,y,w,h,r){9 g=13.1p("1m:1H");9 o=13.1p(r?"1m:5d":"1m:26");G(r){o.5e=r/(Q.2N(w,h))}g.17(o);a.19.17(g);9 b=1q u(o,g,a);s(b,{1c:"#1x"});b.2t({x:x,y:y,w:w,h:h});o.N.x=x;o.N.y=y;o.N.w=w;o.N.h=h;o.N.r=r;b.18="26";J b};9 A=F(a,x,y,b,c){9 g=13.1p("1m:1H");9 o=13.1p("1m:3V");g.17(o);a.19.17(g);9 d=1q u(o,g,a);s(d,{1c:"#1x"});d.2t({x:x-b,y:y-c,w:b*2,h:c*2});o.N.24=x;o.N.25=y;o.N.2g=b;o.N.2h=c;d.18="2K";J d};9 B=F(a,b,x,y,w,h){9 g=13.1p("1m:1H");9 o=13.1p("1m:2v");o.5f=b;g.17(o);a.19.17(g);9 c=1q u(o,g,a);c.18="2v";c.2t({x:x,y:y,w:w,h:h});o.N.x=x;o.N.y=y;o.N.w=w;o.N.h=h;J c};9 D=F(a,x,y,b){9 g=13.1p("1m:1H"),2w=g.15;9 c=13.1p("1m:2b"),2r=c.15;9 d=13.1p("1m:K"),5g=d.15;d.v=["m",Q.11(x),", ",Q.11(y-2),"l",Q.11(x)+1,", ",Q.11(y-2)].2e("");d.5h=1V;2r.P=a.P;2r.T=a.T;2w.28="2a";2w.1M=0;2w.1z=0;2w.P=a.P;2w.T=a.T;9 o=13.1p("1m:3f");o.2f=b;o.23=1V;o.2E=a.2E;o.2F=a.2F;c.17(o);c.17(d);g.17(c);a.19.17(g);9 e=1q u(o,g,a);e.2b=c;e.3f=d;e.18="1F";o.N.x=x;o.N.y=y;o.N.w=1;o.N.h=1;J e};9 E=F(a){9 b=13.1p("1m:1H"),2x=b.15;2x.28="2a";2x.1M=0;2x.1z=0;2x.P=a.P;2x.T=a.T;G(a.19){a.19.17(b)}9 c=1q u(b,b,a);1l(9 f 1t a){G(f.2S(0)!="3W"&&1k a[f]=="F"){c[f]=(F(f){J F(){9 e=a[f].2o(a,I);b.17(e[0].1G);J e}})(f)}}c.18="1H";J c};r.38=F(){9 d,P,T;G(1k I[0]=="2f"){d=13.3X(I[0]);P=I[1];T=I[2]}G(1k I[0]=="2n"){d=I[0];P=I[1];T=I[2]}G(1k I[0]=="3Y"){d=1;x=I[0];y=I[1];P=I[2];T=I[3]}G(!d){3Z 1q 40("2D 41 42 43.");}G(!13.44["1m"]){13.44.5i("1m","5j:5k-5l-5m:32");13.5n().5o("1m\\\\:*","5p:45(#3g#2D)")}9 c=13.1p("5q"),r=C.19=13.1p("1m:1H"),1Z=c.15,2O=r.15;C.P=P;C.T=T;P=P||"5r";T=T||"5s";1Z.5t="26(0 "+P+" "+T+" 0)";1Z.28="2a";2O.P=P;2O.T=T;r.2E=(P=="1d%"?P:12(P))+" "+(T=="1d%"?T:12(T));r.2F="0 0";9 b=13.1p("1m:26"),2P=b.15;2P.1M=2P.1z=0;2P.P=2O.P;2P.T=2O.T;b.5u=b.5v="f";r.17(b);c.17(r);G(d==1){13.46.17(c);1Z.28="2a";1Z.1M=x+"1u";1Z.1z=y+"1u";1Z.P=P;1Z.T=T;d={15:{P:P,T:T}}}1j{1Z.P=d.15.P=P;1Z.T=d.15.T=T;G(d.1J){d.31(c,d.1J)}1j{d.17(c)}}1l(9 e 1t C){d[e]=C[e]}d.3m=F(){9 a=[];1l(9 i=0,1h=r.30.1a;i<1h;i++){G(r.30[i]!=b){a.1O(r.30[i])}}1l(i=0,1h=a.1a;i<1h;i++){r.2i(a[i])}};J d}}G(n=="2y"){27.3u.2p=F(){J"3j("+7.m[0][0]+", "+7.m[1][0]+", "+7.m[0][1]+", "+7.m[1][1]+", "+7.m[2][0]+", "+7.m[2][1]+")"};9 q=F(g,h,j){9 k=13.1R(j.1K,"K");k.O("1s","1I");G(g){1l(9 l 1t g){G(g.1A){t(k,g.1A,j)}1j{k.O(l,g[l])}}}G(j.19){j.19.17(k)}9 p=1q u(k,j);1l(9 l 1t g){p.N[l]=g[l]}p.U=1V;p.K=[];p.1b={x:0,y:0,2k:0,2l:0};p.1B=F(){7.U=1V;J 7};p.1C=F(){7.U=2G;J 7};p.3w=F(){7[0].O("d","5w 0");9 a=7.K;7.K=[];1l(9 i=0,1h=a.1a;i<1h;i++){G(a[i].18!="39"){7[a[i].18+"3x"].2o(7,a[i].1W)}1j{7.2c()}}};p.1N=F(x,y){9 d=7.U?"M":"m";9 a=7.U?j.1f:j.1w;9 b=7.U?j.1g:j.1y;d+=a(12(x,10))+" "+b(12(y,10))+" ";9 c=7[0].2z("d")||"";7[0].O("d",c+d);7.1b.x=j.1f(12(x,10));7.1b.y=j.1g(12(y,10));7.K.1O({18:"3y",1W:I,2d:7.U});J 7};p.1i=F(x,y){9 d=7.U?"L":"l";9 a=7.U?j.1f:j.1w;9 b=7.U?j.1g:j.1y;d+=a(12(x,10))+" "+b(12(y,10))+" ";9 c=7[0].2z("d")||"";7[0].O("d",c+d);7.1b.x=j.1f(12(x,10));7.1b.y=j.1g(12(y,10));7.K.1O({18:"3z",1W:I,2d:7.U});J 7};p.3A=F(a,b,c){G(!c){J 7.1i(a,b)}1j{9 p={};p.1f=7.U?j.1f:j.1w;p.1g=7.U?j.1g:j.1y;9 x=p.1f(Q.11(12(a,10)*1d)/1d);9 y=p.1g(Q.11(12(b,10)*1d)/1d);9 w=j.1w(Q.11(12(c,10)*1d)/1d);9 d=7.U?"C":"c";9 e=[7.1b.x+w,7.1b.y,x-w,y,x,y];1l(9 i=0,1h=e.1a;i<1h;i++){d+=e[i]+" "}7.1b.x=e[4];7.1b.y=e[5];7.1b.2k=e[2];7.1b.2l=e[3];9 f=7[0].2z("d")||"";7[0].O("d",f+d);7.K.1O({18:"3B",1W:I,2d:7.U});J 7}};p.1n=F(){9 p={};p.1f=7.U?j.1f:j.1w;p.1g=7.U?j.1g:j.1y;G(I.1a==6){9 d=7.U?"C":"c";1l(9 i=0,1h=I.1a;i<1h;i++){d+=p[(i%2==0)?"1f":"1g"](Q.11(12(I[i],10)*1d)/1d)+" "}7.1b.x=p.1f((12(I[4],10)*1d)/1d);7.1b.y=p.1g((12(I[5],10)*1d)/1d);7.1b.2k=p.1f((12(I[2],10)*1d)/1d);7.1b.2l=p.1g((12(I[3],10)*1d)/1d)}1j{G(I.1a==4){9 d=7.U?"S":"s";1l(9 i=0,1h=I.1a;i<1h;i++){d+=p[i%2==0?"1f":"1g"]((12(I[i],10)*1d)/1d)+" "}}7.1b.x=p.1f((12(I[2],10)*1d)/1d);7.1b.y=p.1g((12(I[3],10)*1d)/1d);7.1b.2k=p.1f((12(I[0],10)*1d)/1d);7.1b.2l=p.1g((12(I[1],10)*1d)/1d)}9 a=7[0].2z("d")||"";7[0].O("d",a+d);7.K.1O({18:"3C",1W:I,2d:7.U});J 7};p.2s=F(r,a){9 R=.3D*r,1X=7.U,o=7;G(1X){7.1C();1X=F(){o.1B()}}1j{1X=F(){}}9 b={l:F(){J{u:F(){o.1n(-R,0,-r,-(r-R),-r,-r)},d:F(){o.1n(-R,0,-r,r-R,-r,r)}}},r:F(){J{u:F(){o.1n(R,0,r,-(r-R),r,-r)},d:F(){o.1n(R,0,r,r-R,r,r)}}},u:F(){J{r:F(){o.1n(0,-R,-(R-r),-r,r,-r)},l:F(){o.1n(0,-R,R-r,-r,-r,-r)}}},d:F(){J{r:F(){o.1n(0,R,-(R-r),r,r,r)},l:F(){o.1n(0,R,R-r,r,-r,r)}}}};b[a[0]]()[a[1]]();1X();J o};p.2c=F(){9 a=7[0].2z("d")||"";7[0].O("d",a+"Z ");7.K.1O({18:"39"});J 7};G(1k h=="2f"){h=h.21(/([3E])/2T,",$1,").21(/([^,])\\-/2T,"$1,-");K=h.3a(",");9 i=1,1h=K.1a;3b(i<1h){2U(K[i]){14"M":p.1B().1N(K[++i],K[++i]);1e;14"m":p.1C().1N(K[++i],K[++i]);1e;14"C":p.1B().1n(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);1e;14"c":p.1C().1n(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);1e;14"s":p.1C().1n(K[++i],K[++i],K[++i],K[++i]);1e;14"S":p.1B().1n(K[++i],K[++i],K[++i],K[++i]);1e;14"L":p.1B().1i(K[++i],K[++i]);1e;14"l":p.1C().1i(K[++i],K[++i]);1e;14"H":p.1B().1i(K[++i],0);1e;14"h":p.1C().1i(K[++i],0);1e;14"V":p.1B().1i(0,K[++i]);1e;14"v":p.1C().1i(0,K[++i]);1e;14"z":p.2c();1e}i++}}J p};9 t=F(o,a,b){9 c=13.1R(b.1K,a.18+"5x");c.2M="5y-1A-"+b.47++;G(a.1Q&&a.1Q.1a){c.O("5z",a.1Q[0]);c.O("5A",a.1Q[1]);c.O("5B",a.1Q[2]);c.O("5C",a.1Q[3])}b.33.17(c);1l(9 i=0,1h=a.1o.1a;i<1h;i++){9 d=13.1R(b.1K,"3n");d.O("2W",a.1o[i].2W?a.1o[i].2W:(i==0)?"0%":"1d%");d.O("3n-1Y",a.1o[i].1Y||"#5D");G(1k a.1o[i].1v!="1P"){d.O("3n-1v",a.1o[i].1v)}c.17(d)};o.O("1s","45(#"+c.2M+")")};9 u=F(g,h){9 X=0,Y=0,34={35:0,x:0,y:0},2A=1,2B=1,3k=5E;7[0]=g;7.N=7.N||{};7.1L=[];7.3L=F(){7[0].15.2X="1I";J 7};7.3M=F(){7[0].15.2X="3N";J 7};7.3h=F(a){9 b=7.2L();34.35+=a;G(34.35){7.1L[0]=("3h("+34.35+" "+(b.x+b.P/2)+" "+(b.y+b.T/2)+")")}1j{7.1L[0]=""}7[0].O("36",7.1L.2e(" "));J 7};7.3i=F(x,y){X+=x;Y+=y;G(X&&Y){7.1L[1]="3i("+X+","+Y+")"}1j{7.1L[1]=""}7[0].O("36",7.1L.2e(" "));J 7};7.3P=F(x,y){y=y||x;G(x!=0&&!(x==1&&y==1)){2A*=x;2B*=y;G(!(2A==1&&2B==1)){9 a=7.2L(),48=a.x*(1-2A)+(a.P/2-a.P*2A/2),49=a.y*(1-2B)+(a.T/2-a.T*2B/2);7.1L[2]=1q 27(2A,0,0,2B,48,49)}1j{7.1L[2]=""}7[0].O("36",7.1L.2e(" "))}J 7};7.3j=F(a,b,c,d,e,f){7.1L[3]=1q 27(a,b,c,d,e,f);7[0].O("36",7.1L.2e(" "));J 7};7.3l=F(){7[0].1G.2i(7[0])};7.2L=F(){J 7[0].2L()};7.2Z=F(){G(I.1a==1&&1k I[0]=="2f"){J 7[0].2z(I[0])}G(I.1a==1&&I[0]3R 3S){9 a={};1l(9 j 1t I[0]){a[I[0][j]]=7.N[I[0][j]]}J a}G(I.1a==2){9 b=I[0],1S=I[1];7[b]=1S;7.N[b]=1S;2U(b){14"2g":14"24":14"x":7[0].O(b,h.1f(1S));1e;14"2h":14"25":14"y":7[0].O(b,h.1g(1S));1e;14"P":7[0].O(b,h.1w(1S));1e;14"T":7[0].O(b,h.1y(1S));1e;14"1A":t(7[0],d.1A,h);1e;14"1c-2I":7[0].O(b,1S.21(" ",","));1e;14"1F":G(7.18=="1F"){7[0].2i(7[0].1J);7[0].17(13.3o(1S))}1e;3g:9 c=b.21(/(\\-.)/g,F(w){J w.2j(1).4a()});7[0].15[c]=1S;7[0].O(b,1S);1e}}1j G(I.1a==1&&1k I[0]=="2n"){9 d=I[0];1l(9 e 1t d){7.N[e]=d[e];G(e=="1c-2I"){7[0].O(e,d[e].21(" ",","))}1j G(e=="1F"&&7.18=="1F"){7[0].2i(7[0].1J);7[0].17(13.3o(d[e]))}1j{9 c=e.21(/(\\-.)/g,F(w){J w.2j(1).4a()});7[0].15[c]=d[e];7[0].O(e,d[e])}}G(d.1A){7[0].N.1A=d.1A;t(7[0],d.1A,h)}}J 7};7.3T=F(){7[0].1G.17(7[0])};7.3U=F(){G(7[0].1G.1J!=7[0]){7[0].1G.31(7[0],7[0].1G.1J)}}};9 v=F(a,x,y,r){9 b=13.1R(a.1K,"2J");b.O("24",a.1f(x));b.O("25",a.1g(y));b.O("r",r);b.O("1s","1I");b.O("1c","#1x");b.N=b.N||{};b.N.24=x;b.N.25=y;b.N.r=r;b.N.1c="#1x";G(a.19){a.19.17(b)}9 c=1q u(b,a);c.18="2J";J c};9 z=F(a,x,y,w,h,r){9 b=13.1R(a.1K,"26");b.O("x",a.1f(x));b.O("y",a.1g(y));b.O("P",a.1w(w));b.O("T",a.1y(h));b.N=b.N||{};b.N.x=x;b.N.y=y;b.N.P=w;b.N.T=h;G(r){b.O("2g",r);b.O("2h",r);b.N.2g=b.N.2h=r}b.O("1s","1I");b.O("1c","#1x");b.N.1c="#1x";G(a.19){a.19.17(b)}9 c=1q u(b,a);c.18="26";J c};9 A=F(a,x,y,b,c){9 d=13.1R(a.1K,"2K");d.O("24",a.1f(x));d.O("25",a.1g(y));d.O("2g",a.1w(b));d.O("2h",a.1y(c));d.O("1s","1I");d.O("1c","#1x");d.N=d.N||{};d.N.24=x;d.N.25=y;d.N.2g=b;d.N.2h=c;d.N.1c="#1x";G(a.19){a.19.17(d)}9 e=1q u(d,a);e.18="2K";J e};9 B=F(a,b,x,y,w,h){9 c=13.1R(a.1K,"2v");c.O("x",a.1f(x));c.O("y",a.1g(y));c.O("P",a.1w(w));c.O("T",a.1y(h));c.5F(a.3p,"5G",b);G(a.19){a.19.17(c)}9 d=1q u(c,a);d.18="2v";J d};9 D=F(a,x,y,b){9 c=13.1R(a.1K,"1F");c.O("x",x);c.O("y",y);c.O("1F-5H","5I");c.O("1s","#1x");c.N=c.N||{};c.N.x=x;c.N.y=y;c.N.1s="#1x";G(b){c.17(13.3o(b))}G(a.19){a.19.17(c)}9 d=1q u(c,a);d.18="1F";J d};9 E=F(a){9 b=13.1R(a.1K,"g");G(a.19){a.19.17(b)}9 i=1q u(b,a);1l(9 f 1t a){G(f[0]!="3W"&&1k a[f]=="F"){i[f]=(F(f){J F(){9 e=a[f].2o(a,I);b.17(e[0]);J e}})(f)}}i.18="1H";J i};r.38=F(){G(1k I[0]=="2f"){9 a=13.3X(I[0]);9 b=I[1];9 c=I[2]}G(1k I[0]=="2n"){9 a=I[0];9 b=I[1];9 c=I[2]}G(1k I[0]=="3Y"){9 a=1,x=I[0],y=I[1],b=I[2],c=I[3]}G(!a){3Z 1q 40("2y 41 42 43.");}C.19=13.1R(C.1K,"37");C.19.O("P",b||4c);C.P=b||4c;C.19.O("T",c||4d);C.T=c||4d;G(a==1){13.46.17(C.19);C.19.15.28="2a";C.19.15.1M=x+"1u";C.19.15.1z=y+"1u"}1j{G(a.1J){a.31(C.19,a.1J)}1j{a.17(C.19)}}a={19:C.19,3m:F(){3b(7.19.1J){7.19.2i(7.19.1J)}7.33=13.1R(C.1K,"33");7.47=0;7.19.17(7.33)}};1l(9 d 1t C){G(d!="5J"){a[d]=C[d]}}a.3m();J a};C.1K="4e://4f.4g.4h/5K/37";C.3p="4e://4f.4g.4h/5L/3p"}G(n=="2D"||n=="2y"){C.2J=F(x,y,r){J v(7,x,y,r)};C.26=F(x,y,w,h,r){J z(7,x,y,w,h,r)};C.2K=F(x,y,a,b){J A(7,x,y,a,b)};C.K=F(a,b){J q(a,b,7)};C.2v=F(a,x,y,w,h){J B(7,a,x,y,w,h)};C.1F=F(x,y,a){J D(7,x,y,a)};C.1H=F(){J E(7)};C.5M=F(x,y,w,h,r){G(r&&1D(r,10)){J 7.K({1c:"#1x"}).1N(x+r,y).1i(x+w-r,y).2s(r,"5N").1i(x+w,y+h-r).2s(r,"5O").1i(x+r,y+h).2s(r,"5P").1i(x,y+r).2s(r,"5Q").2c()}J 7.K({1c:"#1x"}).1N(x,y).1i(x+w,y).1i(x+w,y+h).1i(x,y+h).2c()};C.5R=F(x,y,w,h,a,b,c){c=c||"#1x";9 p=7.K({1c:c,"1c-P":1}).1N(x,y).1i(x+w,y).1i(x+w,y+h).1i(x,y+h).1i(x,y);1l(9 i=1;i<b;i++){p.1N(x,y+i*Q.11(h/b)).1i(x+w,y+i*Q.11(h/b))}1l(9 i=1;i<a;i++){p.1N(x+i*Q.11(w/a),y).1i(x+i*Q.11(w/a),y+h)}J p};C.5S=F(a,b,c,d,w,h){9 e=(c-a)/w;9 f=(d-b)/h;7.1f=F(x){J a+x*e};7.1g=F(y){J b+y*f};7.1w=F(w){J w*e};7.1y=F(h){J h*f}};C.5T=F(){7.1f=7.1g=7.1w=7.1y=F(x){J x}};C.5U=F(){G(r.18=="2y"){9 a=C.26(-C.P,-C.T,C.P*3,C.T*3).2Z({1c:"1I"});5V(F(){a.3l()},0)}};J r}1j{J F(){}}})((!(3q.4i&&3q.4i.5W==2))?"2D":"2y");1E.32=!(1E.37=(1E.18=="2y"));G(1E.32&&3q.5X){1E.18="5Y 5Z";1E.32=1E.37=2G}1E.2p=F(){J"60 61 62 "+7.18};1E.4j=F(a,c,d){G(1k a=="2n"&&"h"1t a&&"s"1t a&&"b"1t a){d=a.b;c=a.s;a=a.h}9 e,1T,1U;G(d==0){J{r:0,g:0,b:0,3r:"#1x"}}1j{9 i=Q.63(a*6),f=(a*6)-i,p=d*(1-c),q=d*(1-(c*f)),t=d*(1-(c*(1-f)));[F(){e=d;1T=t;1U=p},F(){e=q;1T=d;1U=p},F(){e=p;1T=d;1U=t},F(){e=p;1T=q;1U=d},F(){e=t;1T=p;1U=d},F(){e=d;1T=p;1U=q},F(){e=d;1T=t;1U=p},][i]()}9 h={r:e,g:1T,b:1U};e*=2C;1T*=2C;1U*=2C;9 r=Q.11(e).2p(16);G(r.1a==1){r="0"+r}9 g=Q.11(1T).2p(16);G(g.1a==1){g="0"+g}9 b=Q.11(1U).2p(16);G(b.1a==1){b="0"+b}h.3r="#"+r+g+b;J h};1E.64=F(a,b,c){G(1k a=="2n"&&"r"1t a&&"h"1t a&&"b"1t a){c=a.b;b=a.g;a=a.r}G(a.2S(0)=="#"){G(a.1a==4){c=1D(a.2j(3),16);b=1D(a.2j(2,3),16);a=1D(a.2j(1,2),16)}1j{c=1D(a.2j(5),16);b=1D(a.2j(3,5),16);a=1D(a.2j(1,3),16)}}G(a>1||b>1||c>1){a/=2C;b/=2C;c/=2C}9 d=Q.65(a,b,c),2N=Q.2N(a,b,c),20,3s,4k=d;G(2N==d){J{h:0,s:0,b:d}}1j{9 e=(d-2N);3s=e/d;G(a==d){20=(b-c)/e}1j G(b==d){20=2+((c-a)/e)}1j{20=4+((a-b)/e)}20/=6;G(20<0){20+=1}G(20>1){20-=1}}J{h:20,s:3s,b:4k}};1E.4l=F(a){9 b=I.3e.3t=I.3e.3t||{h:0,s:1,b:a||.66};9 c=7.4j(b.h,b.s,b.b);b.h+=.1;G(b.h>1){b.h=0;b.s-=.2;G(b.s<=0){b={h:0,s:1,b:b.b}}}J c.3r};1E.4l.67=F(){7.3t=1P};',62,380,'|||||||this||var||||||||||||||||||||||||||||||||function|if||arguments|return|path|||attrs|setAttribute|width|Math|||height|isAbsolute|||||||round|parseFloat|document|case|style||appendChild|type|canvas|length|last|stroke|100|break|_getX|_getY|ii|lineTo|else|typeof|for|rvml|curveTo|dots|createElement|new|Group|fill|in|px|opacity|_getW|000|_getH|top|gradient|absolutely|relatively|parseInt|Raphael|text|parentNode|group|none|firstChild|svgns|transformations|left|moveTo|push|undefined|vector|createElementNS|value|green|blue|true|arg|rollback|color|cs|hue|replace|font|on|cx|cy|rect|Matrix|position||absolute|shape|andClose|pos|join|string|rx|ry|removeChild|substring|bx|by|Path|object|apply|toString|gl|ol|addRoundedCorner|setBox|os|image|gs|els|SVG|getAttribute|ScaleX|ScaleY|255|VML|coordsize|coordorigin|false|getElementsByTagName|dasharray|circle|ellipse|getBBox|id|min|rs|bs|slice|call|charAt|ig|switch|weight|offset|display|diry|attr|childNodes|insertBefore|vml|defs|Rotation|deg|transform|svg|_create|end|split|while|dashesn|toLowerCase|callee|textpath|default|rotate|translate|matrix|tMatrix|remove|clear|stop|createTextNode|xlink|window|hex|saturation|start|prototype|class|redraw|To|move|line|cplineTo|cpline|curve|5522|mzlhvcsqta|family|size|miter|miterlimit|square|str|hide|show|block|filter|scale|abs|instanceof|Array|toFront|toBack|oval|_|getElementById|number|throw|Error|container|not|found|namespaces|url|body|gradients|dx|dy|toUpperCase||320|200|http|www|w3|org|SVGPreserveAspectRatio|hsb2rgb|brightness|getColor|version|progid|DXImageTransform|Microsoft|M11|M12|M21|M22|Dx|Dy|sizingmethod|auto|expand|filtertype|bilinear|className|fontFamily|fontSize|fontWeight|joinstyle|linejoin|endcap|butt|flat|linecap|isNaN|dashstyle|linear|gradientradial|opacity2|color2|colors|atan|180|angle|90|radial|focusposition|focussize|method|RotX|RotY|Scale|name|Element|rotation|offsetLeft||offsetTop|offsetWidth|offsetHeight|tagName|item|roundrect|arcsize|src|ps|textpathok|add|urn|schemas|microsoft|com|createStyleSheet|addRule|behavior|div|320px|200px|clip|filled|stroked|M0|Gradient|raphael|x1|y1|x2|y2|fff|null|setAttributeNS|href|anchor|middle|create|2000|1999|linerect|rd|dl|lu|ur|drawGrid|setGrid|clearGrid|safari|setTimeout|SVG_PRESERVEASPECTRATIO_XMINYMIN|CanvasRenderingContext2D|Canvas|only|Your|browser|supports|floor|rgb2hsb|max|75|reset'.split('|'),0,{}))
\ No newline at end of file
index 0ada7d6..0aefbde 100755 (executable)
@@ -478,7 +478,7 @@ var Raphael = (function (type) {
                         this[0].attrs = this[0].attrs || {};
                         if (arguments.length == 2) {
                             this[0].attrs[arguments[0]] = arguments[1];
-                        } else if (arguments.length = 1 || typeof arguments[0] == "object") {
+                        } else if (arguments.length == 1 || typeof arguments[0] == "object") {
                             for (var j in arguments[0]) {
                                 this[0].attrs[j] = arguments[0][j];
                             }
@@ -646,22 +646,23 @@ var Raphael = (function (type) {
             r._create = function () {
                 // container, width, height
                 // x, y, width, height
+                var container, width, height;
                 if (typeof arguments[0] == "string") {
-                    var container = document.getElementById(arguments[0]);
-                    var width = arguments[1];
-                    var height = arguments[2];
+                    container = document.getElementById(arguments[0]);
+                    width = arguments[1];
+                    height = arguments[2];
                 }
                 if (typeof arguments[0] == "object") {
-                    var container = arguments[0];
-                    var width = arguments[1];
-                    var height = arguments[2];
+                    container = arguments[0];
+                    width = arguments[1];
+                    height = arguments[2];
                 }
                 if (typeof arguments[0] == "number") {
-                    var container = 1,
-                        x = arguments[0],
-                        y = arguments[1],
-                        width = arguments[2],
-                        height = arguments[3];
+                    container = 1;
+                    x = arguments[0];
+                    y = arguments[1];
+                    width = arguments[2];
+                    height = arguments[3];
                 }
                 if (!container) {
                     throw new Error("VML container not found.");
@@ -996,11 +997,12 @@ var Raphael = (function (type) {
                 var X = 0,
                     Y = 0,
                     Rotation = {deg: 0, x: 0, y: 0},
-                    Scale = 1,
+                    ScaleX = 1,
+                    ScaleY = 1,
                     tMatrix = null;
                 this[0] = node;
                 this.attrs = this.attrs || {};
-                this.transformations = [];
+                this.transformations = []; // rotate, translate, scale, matrix
                 this.hide = function () {
                     this[0].style.display = "none";
                     return this;
@@ -1011,28 +1013,46 @@ var Raphael = (function (type) {
                 };
                 this.rotate = function (deg) {
                     var bbox = this.getBBox();
-                    this.transformations.push("rotate(" + deg + " " + (bbox.x + bbox.width / 2) + " " + (bbox.y + bbox.height / 2) + ")");
+                    Rotation.deg += deg;
+                    if (Rotation.deg) {
+                        this.transformations[0] = ("rotate(" + Rotation.deg + " " + (bbox.x + bbox.width / 2) + " " + (bbox.y + bbox.height / 2) + ")");
+                    } else {
+                        this.transformations[0] = "";
+                    }
                     this[0].setAttribute("transform", this.transformations.join(" "));
                     return this;
                 };
                 this.translate = function (x, y) {
-                    this.transformations.push("translate(" + x + "," + y + ")");
+                    X += x;
+                    Y += y;
+                    if (X && Y) {
+                        this.transformations[1] = "translate(" + X + "," + Y + ")";
+                    } else {
+                        this.transformations[1] = "";
+                    }
                     this[0].setAttribute("transform", this.transformations.join(" "));
                     return this;
                 };
                 this.scale = function (x, y) {
                     y = y || x;
                     if (x != 0 && !(x == 1 && y == 1)) {
-                        var bbox = this.getBBox(),
-                            dx = bbox.x * (1 - x) + (bbox.width / 2 - bbox.width * x / 2),
-                            dy = bbox.y * (1 - y) + (bbox.height / 2 - bbox.height * y / 2);
-                        this.transformations.push(new Matrix(x, 0, 0, y, dx, dy));
+                        ScaleX *= x;
+                        ScaleY *= y;
+                        if (!(ScaleX == 1 && ScaleY == 1)) {
+                            var bbox = this.getBBox(),
+                                dx = bbox.x * (1 - ScaleX) + (bbox.width / 2 - bbox.width * ScaleX / 2),
+                                dy = bbox.y * (1 - ScaleY) + (bbox.height / 2 - bbox.height * ScaleY / 2);
+                            this.transformations[2] = new Matrix(ScaleX, 0, 0, ScaleY, dx, dy);
+                        } else {
+                            this.transformations[2] = "";
+                        }
                         this[0].setAttribute("transform", this.transformations.join(" "));
                     }
                     return this;
                 };
+                // depricated
                 this.matrix = function (xx, xy, yx, yy, dx, dy) {
-                    this.transformations.push(new Matrix(xx, xy, yx, yy, dx, dy));
+                    this.transformations[3] = new Matrix(xx, xy, yx, yy, dx, dy);
                     this[0].setAttribute("transform", this.transformations.join(" "));
                     return this;
                 };
@@ -1094,8 +1114,9 @@ var Raphael = (function (type) {
                                 this[0].style[cssrule] = value;
                                 // Need following line for Firefox
                                 this[0].setAttribute(att, value);
+                                break;
                         }
-                    } else if (arguments.length = 1 && typeof arguments[0] == "object") {
+                    } else if (arguments.length == 1 && typeof arguments[0] == "object") {
                         var params = arguments[0];
                         for (var attr in params) {
                             this.attrs[attr] = params[attr];
@@ -1341,17 +1362,15 @@ var Raphael = (function (type) {
             };
             C.drawGrid = function (x, y, w, h, wv, hv, color) {
                 color = color || "#000";
-                var res = this.group();
-                var params = {stroke: color, "stroke-width": "1px", "stroke-opacity": .3};
-                res.rect(x, y, w, h).attr(params);
+                var p = this.path({stroke: color, "stroke-width": 1})
+                        .moveTo(x, y).lineTo(x + w, y).lineTo(x + w, y + h).lineTo(x, y + h).lineTo(x, y);
                 for (var i = 1; i < hv; i++) {
-                    var p = res.path(params);
                     p.moveTo(x, y + i * Math.round(h / hv)).lineTo(x + w, y + i * Math.round(h / hv));
                 }
                 for (var i = 1; i < wv; i++) {
-                    res.path(params).moveTo(x + i * Math.round(w / wv), y).lineTo(x + i * Math.round(w / wv), y + h);
+                    p.moveTo(x + i * Math.round(w / wv), y).lineTo(x + i * Math.round(w / wv), y + h);
                 }
-                return res;
+                return p;
             };
             C.setGrid = function (xmin, ymin, xmax, ymax, w, h) {
                 var xc = (xmax - xmin) / w;
@@ -1374,7 +1393,7 @@ var Raphael = (function (type) {
             };
             C.safari = function () {
                 if (r.type == "SVG") {
-                    var rect = C.rect(-C.width, -C.width, C.width * 3, C.height * 3).attr({stroke: "none"});
+                    var rect = C.rect(-C.width, -C.height, C.width * 3, C.height * 3).attr({stroke: "none"});
                     setTimeout(function () {rect.remove();}, 0);
                 }
             };
@@ -1383,17 +1402,16 @@ var Raphael = (function (type) {
         } else {
             return function () {};
         }
-    })((!(window.SVGPreserveAspectRatio && window.SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN == 2) && !(window.CanvasRenderingContext2D)) ? "VML" : "SVG");
+    })((!(window.SVGPreserveAspectRatio && window.SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN == 2)) ? "VML" : "SVG");
 
 
-Raphael.type = (!(window.SVGPreserveAspectRatio && window.SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN == 2) && !(window.CanvasRenderingContext2D)) ? "VML" : "SVG";
 Raphael.vml = !(Raphael.svg = (Raphael.type == "SVG"));
-if (!(window.SVGPreserveAspectRatio && window.SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN == 2) && window.CanvasRenderingContext2D) {
+if (Raphael.vml && window.CanvasRenderingContext2D) {
     Raphael.type = "Canvas only";
     Raphael.vml = Raphael.svg = false;
 }
 Raphael.toString = function () {
-    return "You browser supports " + this.type;
+    return "Your browser supports " + this.type;
 };
 Raphael.hsb2rgb = function (hue, saturation, brightness) {
     if (typeof hue == "object" && "h" in hue && "s" in hue && "b" in hue) {
@@ -1404,8 +1422,8 @@ Raphael.hsb2rgb = function (hue, saturation, brightness) {
     var red,
         green,
         blue;
-    if (brightness == 0.0) {
-        return {r: 0, g: 0, b: 0};
+    if (brightness == 0) {
+        return {r: 0, g: 0, b: 0, hex: "#000"};
     } else {
         var i = Math.floor(hue * 6),
             f = (hue * 6) - i,
@@ -1423,15 +1441,18 @@ Raphael.hsb2rgb = function (hue, saturation, brightness) {
         ][i]();
     }
     var rgb = {r: red, g: green, b: blue};
-    var r = Math.round(rgb.r).toString(16);
+    red *= 255;
+    green *= 255;
+    blue *= 255;
+    var r = Math.round(red).toString(16);
     if (r.length == 1) {
         r = "0" + r;
     }
-    var g = Math.round(rgb.g).toString(16);
+    var g = Math.round(green).toString(16);
     if (g.length == 1) {
         g = "0" + g;
     }
-    var b = Math.round(rgb.b).toString(16);
+    var b = Math.round(blue).toString(16);
     if (b.length == 1) {
         b = "0" + b;
     }
@@ -1455,6 +1476,11 @@ Raphael.rgb2hsb = function (red, green, blue) {
             red = parseInt(red.substring(1, 3), 16);
         }
     }
+    if (red > 1 || green > 1 || blue > 1) {
+        red /= 255;
+        green /= 255;
+        blue /= 255;
+    }
     var max = Math.max(red, green, blue),
         min = Math.min(red, green, blue),
         hue,
@@ -1483,7 +1509,7 @@ Raphael.rgb2hsb = function (red, green, blue) {
     return {h: hue, s: saturation, b: brightness};
 };
 Raphael.getColor = function (value) {
-    var start = arguments.callee.start = arguments.callee.start || {h: 0, s: 1, b: value || 200};
+    var start = arguments.callee.start = arguments.callee.start || {h: 0, s: 1, b: value || .75};
     var rgb = this.hsb2rgb(start.h, start.s, start.b);
     start.h += .1;
     if (start.h > 1) {