Fixed couple of bugs for IE, especially with changing attributes for x and y. Added...
authorDmitry Baranovskiy <dbaranovskiy@Fresh-Air.sydney.atlassian.com>
Wed, 1 Oct 2008 00:12:02 +0000 (10:12 +1000)
committerDmitry Baranovskiy <dbaranovskiy@Fresh-Air.sydney.atlassian.com>
Wed, 1 Oct 2008 00:12:02 +0000 (10:12 +1000)
raphael-packed.js
raphael.js

index f363e00..b27deac 100644 (file)
@@ -1 +1 @@
-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}('F 1Q(){J(F(r,m){r.49="0.5.4";9 C={};F 25(a,b,c,d,e,f){7.m=[[a||1,b||0,0],[c||0,d||1,0],[e||0,f||0,1],]}C.1e=C.1f=C.1w=C.1x=F(x){J x};I(r.2u){25.3g.2X=F(){J"4a:4b.4c.25(4d="+7.m[0][0]+", 4e="+7.m[1][0]+", 4f="+7.m[0][1]+", 4g="+7.m[1][1]+", 4h="+7.m[2][0]+", 4i="+7.m[2][1]+", 4j=\'4k 4l\', 4m=\'4n\')"};9 n=F(f,h,j){9 g=14.1q("1n:1F"),2m=g.Q;2m.26="27";2m.1A=0;2m.1u=0;2m.11=j.11+"1h";2m.18=j.18+"1h";9 k=14.1q("1n:28"),2n=k.Q;2n.11=j.11+"1h";2n.18=j.18+"1h";k.K="";I(f["3h"]){k.4o=f["3h"]}k.2v=7.2v;k.2w=7.2w;g.16(k);j.19.16(g);9 p=1r u(k,g,j);q(p,f);I(f.1y){s(p,f.1y)}p.T=1Y;p.17="K";p.K=[];p.1b={x:0,y:0,2f:0,2g:0,T:1Y};p.2h="";p.1B=F(){7.T=1Y;J 7};p.1C=F(){7.T=2G;J 7};p.3i=F(){7.2h="";9 a=7.K;7.K=[];1k(9 i=0,1i=a.1d;i<1i;i++){I(a[i].17!="2Y"){7[a[i].17+"3j"].2i(7,a[i].1R)}1v{7.2a()}}};p.1S=F(x,y){9 d=7.T?"m":"t";9 a=7.T?j.1e:j.1w;9 b=7.T?j.1f:j.1x;d+=12.15(a(U(x,10)))+" "+12.15(b(U(y,10)));7[0].K=7.2h+=d;7.1b.x=12.15(a(U(x,10)));7.1b.y=12.15(b(U(y,10)));7.1b.T=7.T;7.K.1D({17:"3k",1R:[].2H.2I(G,0),2b:7.T});J 7};p.1j=F(x,y){9 d=7.T?"l":"r";9 a=7.T?j.1e:j.1w;9 b=7.T?j.1f:j.1x;d+=12.15(a(U(x,10)))+" "+12.15(b(U(y,10)));7[0].K=7.2h+=d;7.1b.x=12.15(a(U(x,10)));7.1b.y=12.15(b(U(y,10)));7.1b.T=7.T;7.K.1D({17:"3l",1R:[].2H.2I(G,0),2b:7.T});J 7};p.3m=F(a,b,c){I(!c){J 7.1j(a,b)}1v{9 p={};p.1e=7.T?j.1e:j.1w;p.1f=7.T?j.1f:j.1x;9 x=12.15(p.1e(12.15(U(a,10)*1c)/1c));9 y=12.15(p.1f(12.15(U(b,10)*1c)/1c));9 w=12.15(j.1w(12.15(U(c,10)*1c)/1c));9 d=7.T?"c":"v";9 e=[7.1b.x+w,7.1b.y,x-w,y,x,y];d+=e.2j(" ")+" ";7.1b.x=e[4];7.1b.y=e[5];7.1b.2f=e[2];7.1b.2g=e[3];7[0].K=7.2h+=d;7.K.1D({17:"3n",1R:[].2H.2I(G,0),2b:7.T});J 7}};p.1l=F(){9 d=7.T?"c":"v";9 a=7.T?j.1e:j.1w;9 b=7.T?j.1f:j.1x;I(G.1d==6){7.1b.x=12.15(a(U(G[4],10)));7.1b.y=12.15(b(U(G[5],10)));7.1b.2f=12.15(a(U(G[2],10)));7.1b.2g=12.15(b(U(G[3],10)));d+=12.15(a(U(G[0],10)))+" "+12.15(b(U(G[1],10)))+" "+12.15(a(U(G[2],10)))+" "+12.15(b(U(G[3],10)))+" "+12.15(a(U(G[4],10)))+" "+12.15(b(U(G[5],10)))+" ";7.1b.T=7.T}7[0].K=7.2h+=d;7.K.1D({17:"3o",1R:[].2H.2I(G,0),2b:7.T});J 7};p.2o=F(r,a){9 R=.3p*r,1T=7.T,o=7;I(1T){7.1C();1T=F(){o.1B()}}1v{1T=F(){}}9 b={l:F(){J{u:F(){o.1l(-R,0,-r,-(r-R),-r,-r)},d:F(){o.1l(-R,0,-r,r-R,-r,r)}}},r:F(){J{u:F(){o.1l(R,0,r,-(r-R),r,-r)},d:F(){o.1l(R,0,r,r-R,r,r)}}},u:F(){J{r:F(){o.1l(0,-R,-(R-r),-r,r,-r)},l:F(){o.1l(0,-R,R-r,-r,-r,-r)}}},d:F(){J{r:F(){o.1l(0,R,-(R-r),r,r,r)},l:F(){o.1l(0,R,R-r,r,-r,r)}}}};b[a.2Z(0)]()[a.2Z(1)]();1T();J o};p.2a=F(){7[0].K=(7.2h+="x e");J 7};I(1m h=="1Z"){h=h.20(/([3q])/2J,",$1,").20(/([^,])\\-/2J,"$1,-");K=h.30(",");9 i=1,1i=K.1d;31(i<1i){2K(K[i]){O"M":p.1B().1S(K[++i],K[++i]);13;O"m":p.1C().1S(K[++i],K[++i]);13;O"C":p.1B().1l(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);13;O"c":p.1C().1l(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);13;O"L":p.1B().1j(K[++i],K[++i]);13;O"l":p.1C().1j(K[++i],K[++i]);13;O"H":p.1B().1j(K[++i],0);13;O"h":p.1C().1j(K[++i],0);13;O"V":p.1B().1j(0,K[++i]);13;O"v":p.1C().1j(0,K[++i]);13;O"Z":O"z":p.2a();13}i++}}J p};9 q=F(o,a){o[0].N=o[0].N||{};1k(9 b 1I a){o[0].N[b]=a[b]}a["1G-32"]&&(o[0].Q.4p=a["1G-32"]);a["1G-33"]&&(o[0].Q.4q=a["1G-33"]);a["1G"]&&(o[0].Q.1G=a["1G"]);a["1G-2x"]&&(o[0].Q.4r=a["1G-2x"]);I(1m a.1o!="21"||1m a["1a-11"]!="21"||1m a.1t!="21"||1m a.1a!="21"){o=o.28||o[0];9 c=(o.2y("1t")&&o.2y("1t")[0])||14.1q("1n:1t");I("1t-1o"1I a||"1o"1I a){c.1o=((a["1t-1o"]+1||2)-1)*((a.1o+1||2)-1)}a.1t&&(c.2k=1Y);I(c.2k){c.1U=a.1t}I(a.1t=="2c"){c.2k=2G}o.16(c);9 d=(o.2y("1a")&&o.2y("1a")[0])||14.1q("1n:1a");d.2k=!!(a.1a||a["1a-11"]||a["1a-1o"]||a["1a-2p"]);I(d.2k){d.1U=a.1a}d.1o=((a["1a-1o"]+1||2)-1)*((a.1o+1||2)-1);d.3r=a["1a-4s"]||"3s";d.3t=a["1a-3t"]||8;d.4t={4u:"4v",3u:"3u",15:"15"}[a["1a-4w"]||"3s"];d.2x=U(a["1a-11"],10)+"1h"||"3v";I(a["1a-2p"]){9 e=a["1a-2p"].20(" ",",").30(","),34=[],3w=U(d.2x,10);1k(9 i=0,1i=e.1d;i<1i;i++){9 f=e[i]/3w;I(!4x(f)){34.1D(f)}};d.4y=34.2j(" ")}o.16(d)}};9 s=F(o,a){o[0].N=o[0].N||{};o[0].N.1y=a;o=o.28||o[0];9 b=o.2y("1t");I(b.1d){b=b[0]}1v{b=14.1q("1n:1t")}I(a.1p.1d){b.2k=1Y;b.17=(a.17.35()=="4z")?"1y":"4A";I(1m a.1p[0].1U!="21"){b.1U=a.1p[0].1U||"#1z"}I(1m a.1p[0].1o!="21"){b.1o=a.1p[0].1o}I(1m a.1p[a.1p.1d-1].1o!="21"){b.4B=a.1p[a.1p.1d-1].1o}I(1m a.1p[a.1p.1d-1].1U!="21"){b.4C=a.1p[a.1p.1d-1].1U||"#1z"}9 c="";1k(9 i=1,1i=a.1p.1d-1;i<1i;i++){c+=a.1p[i].2L+" "+a.1p[i].1U;I(i!=1i-1){c+=","}};I(c){b.4D=c}I(a.1M){9 d=12.15(12.4E((22(a.1M[3],10)-22(a.1M[1],10))/(22(a.1M[2],10)-22(a.1M[0],10)))*57.29)+4F;b.4G=d+4H}I(a.17.35()=="4I"){b.4J="0.5, 0.5";b.4K="0, 0";b.4L="2c"}}};9 t=F(a,o,x,y,w,h){o.2d=o.2d||{x:x,y:y,w:w,h:h};9 b=a.11/2-o.2d.w/2,1u=a.18/2-o.2d.h/2,1J=o.1s.Q,2q=o[0].Q;1J.26="27";1J.1A=o.2d.x-b+"1h";1J.1u=o.2d.y-1u+"1h";o.X=o.2d.x-b;o.Y=o.2d.y-1u;o.W=w;o.H=h;1J.11=a.11+"1h";1J.18=a.18+"1h";2q.26="27";2q.1u=1u+"1h";2q.1A=b+"1h";2q.11=w+"1h";2q.18=h+"1h"};9 u=F(g,h,k){9 l=0,4M=0,4N=0,3x=1;7[0]=g;7.X=0;7.Y=0;G.3y.4O="4P";7[0].N={};7.1s=h;7.3z=F(){7.1s.Q.2M="2c";J 7};7.3A=F(){7.1s.Q.2M="3B";J 7};7.36=F(a){l+=a;7.1s.Q.4Q=l;J 7};7.37=F(x,y){7.X+=x;7.Y+=y;7.1s.Q.1A=7.X+"1h";7.1s.Q.1u=7.Y+"1h";J 7};7.38=F(a,b,c,d,e,f){39=1r 25(a,b,c,d,e,f);7.1s.Q.3C=39;J 7};7.3D=F(x,y){y=y||x;I(x!=0&&!(x==1&&y==1)){9 a=12.15(x/12.3E(x)),2N=12.15(y/12.3E(y));I(a!=1||2N!=1){7[0].Q.3C=1r 25(a,0,0,2N,0,0)}9 b=22(7[0].Q.11,10)*x*a;9 c=22(7[0].Q.18,10)*y*2N;9 d=22(7[0].Q.1A,10);9 e=22(7[0].Q.1u,10);7[0].Q.1A=7.X=d+7.W/2-b/2;7[0].Q.1u=7.Y=e+7.H/2-c/2;7[0].Q.11=7.W=b;7[0].Q.18=7.H=c}J 7};7.2z=F(){J{x:7.1s.4R,y:7.1s.4S,11:7.1s.4T,18:7.1s.4U}};7.3a=F(){7[0].1H.2e(7[0]);7.1s.1H.2e(7.1s);7.28&&7.28.1H.2e(7.28)};7.2A=F(){I(G.1d==1&&1m G[0]=="1Z"){J 7[0].N[G[0]]}I(7[0].N&&G.1d==1&&G[0]3F 3G){9 a={};1k(9 i=0,1i=G[0].1d;i<1i;i++){a[G[0][i]]=7[0].N[G[0][i]]};J a}I(7[0].4V.35()=="1F"){9 b=7[0].2O;7[0].N=7[0].N||{};I(G.1d==2){7[0].N[G[0]]=G[1]}1v I(G.1d=1||1m G[0]=="2B"){1k(9 j 1I G[0]){7[0].N[j]=G[0][j]}}1k(9 i=0,1i=b.1d;i<1i;i++){7.2A.2i(1r 4W(b[i],7[0],k),G)}}1v{I(G.1d==2){9 c=G[0],1g=G[1];2K(c){O"r":7[0].Q.11=7[0].Q.18=1g*2+"1h";7[0].Q.1A=k.1e(7.1N)-1g+"1h";7[0].Q.1u=k.1f(7.1O)-1g+"1h";7.r=1g;13;O"1V":7[0].Q.11=1g*2+"1h";7[0].Q.1A=k.1e(7.1N)-1g+"1h";7.1V=1g;13;O"1W":7[0].Q.18=1g*2+"1h";7[0].Q.1u=k.1f(7.1O)-1g+"1h";7.1W=1g;13;O"1N":I(7.r||7.1V){7[0].Q.1A=k.1e(1g)-(7.r||k.1w(7.1V))+"1h";7.1N=1g}13;O"x":7[0].Q.1A=k.1e(1g)+"1h";13;O"1O":I(7.r||7.1W){7[0].Q.1u=k.1f(1g)-(7.r||k.1x(7.1W))+"1h";7.1O=1g}13;O"y":7[0].Q.1u=k.1f(1g)+"1h";13;O"1t":O"1t-1o":O"3r":O"1o":O"1a":O"1a-2p":O"1a-1o":O"1a-11":9 d={};d[c]=1g;q(7,d);13;O"1G":O"1G-32":O"1G-33":O"1G-2x":O"18":O"11":7[0].Q[c]=1g;13;O"2l":7[0].2l=1g;13;O"1E":I(7.17=="1E"){7[0].1Z=1g}13;O"1y":s(7,1g)}}I(G.1d==1&&1m G[0]=="2B"){9 d=G[0];q(7,d);I(d.1y){s(7,d.1y)}I(d.1E&&7.17=="1E"){7[0].1Z=d.1E}I(d.2l){7[0].2l=d.2l}}}J 7};7.3H=F(){7.1s.1H.16(7.1s)};7.3I=F(){I(7.1s.1H.1K!=7.1s){7.1s.1H.2P(7.1s,7.1s.1H.1K)}}};9 v=F(a,x,y,r){9 g=14.1q("1n:1F");9 o=14.1q("1n:3J");g.16(o);a.19.16(g);9 b=1r u(o,g,a);q(b,{1a:"#1z"});t(a,b,x-r,y-r,r*2,r*2);o.N.1N=x;o.N.1O=y;o.N.r=r;b.17="2Q";J b};9 z=F(a,x,y,w,h,r){9 g=14.1q("1n:1F");9 o=14.1q(r?"1n:4X":"1n:23");I(r){o.4Y=r/(12.4Z(w,h))}g.16(o);a.19.16(g);9 b=1r u(o,g,a);q(b,{1a:"#1z"});t(a,b,x,y,w,h);o.N.x=x;o.N.y=y;o.N.w=w;o.N.h=h;o.N.r=r;b.17="23";J b};9 A=F(a,x,y,b,c){9 g=14.1q("1n:1F");9 o=14.1q("1n:3J");g.16(o);a.19.16(g);9 d=1r u(o,g,a);q(d,{1a:"#1z"});t(a,d,x-b,y-c,b*2,c*2);o.N.1N=x;o.N.1O=y;o.N.1V=b;o.N.1W=c;d.17="2R";J d};9 B=F(a,b,x,y,w,h){9 g=14.1q("1n:1F");9 o=14.1q("1n:2C");o.50=b;g.16(o);a.19.16(g);9 c=1r u(o,g,a);t(a,c,x,y,w,h);c.17="2C";J c};9 D=F(a,x,y,b){9 g=14.1q("1n:1F"),1J=g.Q;9 c=14.1q("1n:28"),2n=c.Q;9 d=14.1q("1n:K"),51=d.Q;d.v=["m",12.15(x),", ",12.15(y),"l",12.15(x)+1,", ",12.15(y)].2j("");d.52=1Y;2n.11=a.11;2n.18=a.18;1J.26="27";1J.1A=0;1J.1u=0;1J.11=a.11;1J.18=a.18;9 o=14.1q("1n:53");o.1Z=b;o.2k=1Y;o.2v=a.2v;o.2w=a.2w;c.16(o);c.16(d);g.16(c);a.19.16(g);9 e=1r u(o,g,a);e.28=c;e.17="1E";J e};9 E=F(a){9 b=14.1q("1n:1F"),2r=b.Q;2r.26="27";2r.1A=0;2r.1u=0;2r.11=a.11;2r.18=a.18;I(a.19){a.19.16(b)}9 c=1r u(b,b,a);1k(9 f 1I a){I(f.2Z(0)!="3K"&&1m a[f]=="F"){c[f]=(F(f){J F(){9 e=a[f].2i(a,G);b.16(e[0].1H);J e}})(f)}}c.17="1F";J c};r.2S=F(){I(1m G[0]=="1Z"){9 d=14.3L(G[0]);9 e=G[1];9 f=G[2]}I(1m G[0]=="2B"){9 d=G[0];9 e=G[1];9 f=G[2]}I(1m G[0]=="3M"){9 d=1,x=G[0],y=G[1],e=G[2],f=G[3]}I(!d){3N 1r 3O("3b 3P 3Q 3R.");}14.54.55("1n","56:58-59-5a:2u");14.5b().5c("1n\\\\:*","5d:3S(#3T#3b)");9 c=14.1q("5e"),r=C.19=14.1q("1n:1F"),1X=c.Q,2D=r.Q;C.11=e;C.18=f;e=e||"5f";f=f||"5g";1X.5h="23(0 "+e+" "+f+" 0)";1X.26="27";2D.11=e;2D.18=f;r.2v=(e=="1c%"?e:U(e))+" "+(f=="1c%"?f:U(f));r.2w="0 0";9 b=14.1q("1n:23"),2E=b.Q;2E.1A=2E.1u=0;2E.11=2D.11;2E.18=2D.18;b.5i=b.5j="f";r.16(b);c.16(r);I(d==1){14.3U.16(c);1X.26="27";1X.1A=x+"1h";1X.1u=y+"1h";1X.11=e;1X.18=f;d={Q:{11:e,18:f}}}1v{1X.11=d.Q.11=e;1X.18=d.Q.18=f;I(d.1K){d.2P(c,d.1K)}1v{d.16(c)}}1k(9 g 1I C){d[g]=C[g]}d.3c=F(){9 a=[];1k(9 i=0,1i=r.2O.1d;i<1i;i++){I(r.2O[i]!=b){a.1D(r.2O[i])}}1k(i=0,1i=a.1d;i<1i;i++){r.2e(a[i])}};J d}}I(r.2s){25.3g.2X=F(){J"38("+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 n=F(g,h,j){9 k=14.1P(j.1L,"K");k.P("1t","2c");I(g){1k(9 l 1I g){I(g.1y){s(k,g.1y,j)}1v{k.P(l,g[l])}}}I(j.19){j.19.16(k)}9 p=1r u(k,j);1k(9 l 1I g){p.N[l]=g[l]}p.T=1Y;p.K=[];p.1b={x:0,y:0,2f:0,2g:0};p.1B=F(){7.T=1Y;J 7};p.1C=F(){7.T=2G;J 7};p.3i=F(){7[0].P("d","5k 0");9 a=7.K;7.K=[];1k(9 i=0,1i=a.1d;i<1i;i++){I(a[i].17!="2Y"){7[a[i].17+"3j"].2i(7,a[i].1R)}1v{7.2a()}}};p.1S=F(x,y){9 d=7.T?"M":"m";9 a=7.T?j.1e:j.1w;9 b=7.T?j.1f:j.1x;d+=a(U(x,10))+" "+b(U(y,10))+" ";9 c=7[0].2F("d")||"";7[0].P("d",c+d);7.1b.x=j.1e(U(x,10));7.1b.y=j.1f(U(y,10));7.K.1D({17:"3k",1R:G,2b:7.T});J 7};p.1j=F(x,y){9 d=7.T?"L":"l";9 a=7.T?j.1e:j.1w;9 b=7.T?j.1f:j.1x;d+=a(U(x,10))+" "+b(U(y,10))+" ";9 c=7[0].2F("d")||"";7[0].P("d",c+d);7.1b.x=j.1e(U(x,10));7.1b.y=j.1f(U(y,10));7.K.1D({17:"3l",1R:G,2b:7.T});J 7};p.3m=F(a,b,c){I(!c){J 7.1j(a,b)}1v{9 p={};p.1e=7.T?j.1e:j.1w;p.1f=7.T?j.1f:j.1x;9 x=p.1e(12.15(U(a,10)*1c)/1c);9 y=p.1f(12.15(U(b,10)*1c)/1c);9 w=j.1w(12.15(U(c,10)*1c)/1c);9 d=7.T?"C":"c";9 e=[7.1b.x+w,7.1b.y,x-w,y,x,y];1k(9 i=0,1i=e.1d;i<1i;i++){d+=e[i]+" "}7.1b.x=e[4];7.1b.y=e[5];7.1b.2f=e[2];7.1b.2g=e[3];9 f=7[0].2F("d")||"";7[0].P("d",f+d);7.K.1D({17:"3n",1R:G,2b:7.T});J 7}};p.1l=F(){9 p={};p.1e=7.T?j.1e:j.1w;p.1f=7.T?j.1f:j.1x;I(G.1d==6){9 d=7.T?"C":"c";1k(9 i=0,1i=G.1d;i<1i;i++){d+=p[(i%2==0)?"1e":"1f"](12.15(U(G[i],10)*1c)/1c)+" "}7.1b.x=p.1e((U(G[4],10)*1c)/1c);7.1b.y=p.1f((U(G[5],10)*1c)/1c);7.1b.2f=p.1e((U(G[2],10)*1c)/1c);7.1b.2g=p.1f((U(G[3],10)*1c)/1c)}1v{I(G.1d==4){9 d=7.T?"S":"s";1k(9 i=0,1i=G.1d;i<1i;i++){d+=p[i%2==0?"1e":"1f"]((U(G[i],10)*1c)/1c)+" "}}7.1b.x=p.1e((U(G[2],10)*1c)/1c);7.1b.y=p.1f((U(G[3],10)*1c)/1c);7.1b.2f=p.1e((U(G[0],10)*1c)/1c);7.1b.2g=p.1f((U(G[1],10)*1c)/1c)}9 a=7[0].2F("d")||"";7[0].P("d",a+d);7.K.1D({17:"3o",1R:G,2b:7.T});J 7};p.2o=F(r,a){9 R=.3p*r,1T=7.T,o=7;I(1T){7.1C();1T=F(){o.1B()}}1v{1T=F(){}}9 b={l:F(){J{u:F(){o.1l(-R,0,-r,-(r-R),-r,-r)},d:F(){o.1l(-R,0,-r,r-R,-r,r)}}},r:F(){J{u:F(){o.1l(R,0,r,-(r-R),r,-r)},d:F(){o.1l(R,0,r,r-R,r,r)}}},u:F(){J{r:F(){o.1l(0,-R,-(R-r),-r,r,-r)},l:F(){o.1l(0,-R,R-r,-r,-r,-r)}}},d:F(){J{r:F(){o.1l(0,R,-(R-r),r,r,r)},l:F(){o.1l(0,R,R-r,r,-r,r)}}}};b[a[0]]()[a[1]]();1T();J o};p.2a=F(){9 a=7[0].2F("d")||"";7[0].P("d",a+"Z ");7.K.1D({17:"2Y"});J 7};I(1m h=="1Z"){h=h.20(/([3q])/2J,",$1,").20(/([^,])\\-/2J,"$1,-");K=h.30(",");9 i=1,1i=K.1d;31(i<1i){2K(K[i]){O"M":p.1B().1S(K[++i],K[++i]);13;O"m":p.1C().1S(K[++i],K[++i]);13;O"C":p.1B().1l(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);13;O"c":p.1C().1l(K[++i],K[++i],K[++i],K[++i],K[++i],K[++i]);13;O"s":p.1C().1l(K[++i],K[++i],K[++i],K[++i]);13;O"S":p.1B().1l(K[++i],K[++i],K[++i],K[++i]);13;O"L":p.1B().1j(K[++i],K[++i]);13;O"l":p.1C().1j(K[++i],K[++i]);13;O"H":p.1B().1j(K[++i],0);13;O"h":p.1C().1j(K[++i],0);13;O"V":p.1B().1j(0,K[++i]);13;O"v":p.1C().1j(0,K[++i]);13;O"z":p.2a();13}i++}}J p};9 s=F(o,a,b){9 c=14.1P(b.1L,a.17+"5l");c.2l="5m-1y-"+b.3V++;I(a.1M&&a.1M.1d){c.P("5n",a.1M[0]);c.P("5o",a.1M[1]);c.P("5p",a.1M[2]);c.P("5q",a.1M[3])}b.2T.16(c);1k(9 i=0,1i=a.1p.1d;i<1i;i++){9 d=14.1P(b.1L,"3d");d.P("2L",a.1p[i].2L?a.1p[i].2L:(i==0)?"0%":"1c%");d.P("3d-1U",a.1p[i].1U||"#5r");I(1m a.1p[i].1o!="21"){d.P("3d-1o",a.1p[i].1o)}c.16(d)};o.P("1t","3S(#"+c.2l+")")};9 u=F(g,h){9 X=0,Y=0,5s={5t:0,x:0,y:0},3x=1,39=3W;7[0]=g;7.N=7.N||{};7.24=[];7.3z=F(){7[0].Q.2M="2c";J 7};7.3A=F(){7[0].Q.2M="3B";J 7};7.36=F(a){9 b=7.2z();7.24.1D("36("+a+" "+(b.x+b.11/2)+" "+(b.y+b.18/2)+")");7[0].P("2U",7.24.2j(" "));J 7};7.37=F(x,y){7.24.1D("37("+x+","+y+")");7[0].P("2U",7.24.2j(" "));J 7};7.3D=F(x,y){y=y||x;I(x!=0&&!(x==1&&y==1)){9 a=7.2z(),3X=a.x*(1-x)+(a.11/2-a.11*x/2),3Y=a.y*(1-y)+(a.18/2-a.18*y/2);7.24.1D(1r 25(x,0,0,y,3X,3Y));7[0].P("2U",7.24.2j(" "))}J 7};7.38=F(a,b,c,d,e,f){7.24.1D(1r 25(a,b,c,d,e,f));7[0].P("2U",7.24.2j(" "));J 7};7.3a=F(){7[0].1H.2e(7[0])};7.2z=F(){J 7[0].2z()};7.2A=F(){I(G.1d==1&&1m G[0]=="1Z"){J 7.N[G[0]]}I(G.1d==1&&G[0]3F 3G){9 a={};1k(9 j 1I G[0]){a[G[0][j]]=7.N[G[0][j]]}J a}I(G.1d==2){9 b=G[0],1g=G[1];7[b]=1g;7.N[b]=1g;2K(b){O"1V":O"1N":O"x":7[0].P(b,h.1e(1g));13;O"1W":O"1O":O"y":7[0].P(b,h.1f(1g));13;O"11":7[0].P(b,h.1w(1g));13;O"18":7[0].P(b,h.1x(1g));13;O"1y":s(7[0],d.1y,h);13;O"1a-2p":7[0].P(b,1g.20(" ",","));13;O"1E":I(7.17=="1E"){7[0].2e(7[0].1K);7[0].16(14.3e(1g))}13;3T:9 c=b.20(/(\\-.)/g,F(w){J w.3Z(1).40()});7[0].Q[c]=1g;7[0].P(b,1g)}}1v I(G.1d=1&&1m G[0]=="2B"){9 d=G[0];1k(9 e 1I d){7.N[e]=d[e];I(e=="1a-2p"){7[0].P(e,d[e].20(" ",","))}1v I(e=="1E"&&7.17=="1E"){7[0].2e(7[0].1K);7[0].16(14.3e(d[e]))}1v{9 c=e.20(/(\\-.)/g,F(w){J w.3Z(1).40()});7[0].Q[c]=d[e];7[0].P(e,d[e])}}I(d.1y){7[0].N.1y=d.1y;s(7[0],d.1y,h)}}J 7};7.3H=F(){7[0].1H.16(7[0])};7.3I=F(){I(7[0].1H.1K!=7[0]){7[0].1H.2P(7[0],7[0].1H.1K)}}};9 v=F(a,x,y,r){9 b=14.1P(a.1L,"2Q");b.P("1N",a.1e(x));b.P("1O",a.1f(y));b.P("r",r);b.P("1t","2c");b.P("1a","#1z");b.N=b.N||{};b.N.1N=x;b.N.1O=y;b.N.r=r;b.N.1a="#1z";I(a.19){a.19.16(b)}9 c=1r u(b,a);c.17="2Q";J c};9 z=F(a,x,y,w,h,r){9 b=14.1P(a.1L,"23");b.P("x",a.1e(x));b.P("y",a.1f(y));b.P("11",a.1w(w));b.P("18",a.1x(h));b.N=b.N||{};b.N.x=x;b.N.y=y;b.N.11=w;b.N.18=h;I(r){b.P("1V",r);b.P("1W",r);b.N.1V=b.N.1W=r}b.P("1t","2c");b.P("1a","#1z");b.N.1a="#1z";I(a.19){a.19.16(b)}9 c=1r u(b,a);c.17="23";J c};9 A=F(a,x,y,b,c){9 d=14.1P(a.1L,"2R");d.P("1N",a.1e(x));d.P("1O",a.1f(y));d.P("1V",a.1w(b));d.P("1W",a.1x(c));d.P("1t","2c");d.P("1a","#1z");d.N=d.N||{};d.N.1N=x;d.N.1O=y;d.N.1V=b;d.N.1W=c;d.N.1a="#1z";I(a.19){a.19.16(d)}9 e=1r u(d,a);e.17="2R";J e};9 B=F(a,b,x,y,w,h){9 c=14.1P(a.1L,"2C");c.P("x",a.1e(x));c.P("y",a.1f(y));c.P("11",a.1w(w));c.P("18",a.1x(h));c.5u(a.3f,"5v",b);I(a.19){a.19.16(c)}9 d=1r u(c,a);d.17="2C";J d};9 D=F(a,x,y,b){9 c=14.1P(a.1L,"1E");c.P("x",x);c.P("y",y);c.P("1E-5w","5x");c.P("1t","#1z");c.N=c.N||{};c.N.x=x;c.N.y=y;c.N.1t="#1z";I(b){c.16(14.3e(b))}I(a.19){a.19.16(c)}9 d=1r u(c,a);d.17="1E";J d};9 E=F(a){9 b=14.1P(a.1L,"g");I(a.19){a.19.16(b)}9 i=1r u(b,a);1k(9 f 1I a){I(f[0]!="3K"&&1m a[f]=="F"){i[f]=(F(f){J F(){9 e=a[f].2i(a,G);b.16(e[0]);J e}})(f)}}i.17="1F";J i};r.2S=F(){I(1m G[0]=="1Z"){9 a=14.3L(G[0]);9 b=G[1];9 c=G[2]}I(1m G[0]=="2B"){9 a=G[0];9 b=G[1];9 c=G[2]}I(1m G[0]=="3M"){9 a=1,x=G[0],y=G[1],b=G[2],c=G[3]}I(!a){3N 1r 3O("2V 3P 3Q 3R.");}C.19=14.1P(C.1L,"2s");C.19.P("11",b||41);C.11=b||41;C.19.P("18",c||42);C.18=c||42;I(a==1){14.3U.16(C.19);C.19.Q.26="27";C.19.Q.1A=x+"1h";C.19.Q.1u=y+"1h"}1v{I(a.1K){a.2P(C.19,a.1K)}1v{a.16(C.19)}}a={19:C.19,3c:F(){31(7.19.1K){7.19.2e(7.19.1K)}7.2T=14.1P(C.1L,"2T");7.3V=0;7.19.16(7.2T)}};1k(9 d 1I C){I(d!="5y"){a[d]=C[d]}}a.3c();J a};C.1L="43://44.45.46/5z/2s";C.3f="43://44.45.46/5A/3f"}I(r.2u||r.2s){C.2Q=F(x,y,r){J v(7,x,y,r)};C.23=F(x,y,w,h,r){J z(7,x,y,w,h,r)};C.2R=F(x,y,a,b){J A(7,x,y,a,b)};C.K=F(a,b){J n(a,b,7)};C.2C=F(a,x,y,w,h){J B(7,a,x,y,w,h)};C.1E=F(x,y,a){J D(7,x,y,a)};C.1F=F(){J E(7)};C.5B=F(x,y,w,h,r){I(r&&22(r,10)){J 7.K({1a:"#1z"}).1S(x+r,y).1j(x+w-r,y).2o(r,"5C").1j(x+w,y+h-r).2o(r,"5D").1j(x+r,y+h).2o(r,"5E").1j(x,y+r).2o(r,"5F").2a()}J 7.K({1a:"#1z"}).1S(x,y).1j(x+w,y).1j(x+w,y+h).1j(x,y+h).2a()};C.5G=F(x,y,w,h,a,b,c){c=c||"#1z";9 d=7.1F();9 e={1a:c,"1a-11":"3v","1a-1o":.3};d.23(x,y,w,h).2A(e);1k(9 i=1;i<b;i++){9 p=d.K(e);p.1S(x,y+i*12.15(h/b)).1j(x+w,y+i*12.15(h/b))}1k(9 i=1;i<a;i++){d.K(e).1S(x+i*12.15(w/a),y).1j(x+i*12.15(w/a),y+h)}J d};C.5H=F(a,b,c,d,w,h){9 e=(c-a)/w;9 f=(d-b)/h;7.1e=F(x){J a+x*e};7.1f=F(y){J b+y*f};7.1w=F(w){J w*e};7.1x=F(h){J h*f}};C.5I=F(){7.1e=7.1f=7.1w=7.1x=F(x){J x}};C.5J=F(){I(r.17=="2V"){9 a=C.23(0,0,C.11,C.18).2A("1a-11",0);5K(F(){a.3a()},0)}};1Q=F(){J r.2S.2i(r,G)};J r.2S.2i(r,m)}1v{J 3W}})(G.3y,G)}1Q.17=(!(2t.2W&&2t.2W.47==2)&&!(2t.48))?"3b":"2V";1Q.2u=!(1Q.2s=(1Q.17=="2V"));I(!(2t.2W&&2t.2W.47==2)&&2t.48){1Q.17="5L 5M";1Q.2u=1Q.2s=2G}1Q.2X=F(){J"5N 5O 5P "+7.17};',62,362,'|||||||this||var||||||||||||||||||||||||||||||||function|arguments||if|return|path|||attrs|case|setAttribute|style|||isAbsolute|parseFloat|||||||width|Math|break|document|round|appendChild|type|height|canvas|stroke|last|100|length|_getX|_getY|value|px|ii|lineTo|for|curveTo|typeof|rvml|opacity|dots|createElement|new|Group|fill|top|else|_getW|_getH|gradient|000|left|absolutely|relatively|push|text|group|font|parentNode|in|gs|firstChild|svgns|vector|cx|cy|createElementNS|Raphael|arg|moveTo|rollback|color|rx|ry|cs|true|string|replace|undefined|parseInt|rect|transformations|Matrix|position|absolute|shape||andClose|pos|none|origin|removeChild|bx|by|Path|apply|join|on|id|gl|ol|addRoundedCorner|dasharray|os|els|svg|window|vml|coordsize|coordorigin|weight|getElementsByTagName|getBBox|attr|object|image|rs|bs|getAttribute|false|slice|call|ig|switch|offset|display|diry|childNodes|insertBefore|circle|ellipse|_create|defs|transform|SVG|SVGPreserveAspectRatio|toString|end|charAt|split|while|family|size|dashesn|toLowerCase|rotate|translate|matrix|tMatrix|remove|VML|clear|stop|createTextNode|xlink|prototype|class|redraw|To|move|line|cplineTo|cpline|curve|5522|mzlhvcsqta|joinstyle|miter|miterlimit|square|1px|str|Scale|callee|hide|show|block|filter|scale|abs|instanceof|Array|toFront|toBack|oval|_|getElementById|number|throw|Error|container|not|found|url|default|body|gradients|null|dx|dy|substring|toUpperCase|320|200|http|www|w3|org|SVG_PRESERVEASPECTRATIO_XMINYMIN|CanvasRenderingContext2D|version|progid|DXImageTransform|Microsoft|M11|M12|M21|M22|Dx|Dy|sizingmethod|auto|expand|filtertype|bilinear|className|fontFamily|fontSize|fontWeight|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|min|src|ps|textpathok|textpath|namespaces|add|urn||schemas|microsoft|com|createStyleSheet|addRule|behavior|div|320px|200px|clip|filled|stroked|M0|Gradient|raphael|x1|y1|x2|y2|fff|Rotation|deg|setAttributeNS|href|anchor|middle|create|2000|1999|linerect|rd|dl|lu|ur|drawGrid|setGrid|clearGrid|safari|setTimeout|Canvas|only|You|browser|supports'.split('|'),0,{}))
\ No newline at end of file
+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+"1t";2t.1c=j.1c+"1t";9 k=11.1p("1l:2c"),2u=k.15;2u.12=j.12+"1t";2u.1c=j.1c+"1t";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 1u 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.1v!="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-1v"1u a||"1v"1u a){c.1v=((a["1s-1v"]+1||2)-1)*((a.1v+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-1v"]||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.1v=((a["1b-1v"]+1||2)-1)*((a.1v+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)+"1t";G(a["1b-2H"]){9 e=a["1b-2H"].1Z(" ",",").36(","),38=[],3I=U(d.2V,10);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].1v!="1N"){b.1v=a.1o[0].1v}G(1i a.1o[a.1o.19-1].1v!="1N"){b.4N=a.1o[a.1o.19-1].1v}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 1u 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;1e;3c:J}9 d=l.12/2-w/2,1z=l.1c/2-h/2;b.2a="2b";b.1M=x-d+"1t";b.1z=y-1z+"1t";7.X=x-d;7.Y=y-1z;7.W=w;7.H=h;b.12=l.12+"1t";b.1c=l.1c+"1t";2x.2a="2b";2x.1z=1z+"1t";2x.1M=d+"1t";2x.12=w+"1t";2x.1c=h+"1t"};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+"1t";7.1r.15.1z=7.Y+"1t";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 1u 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.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;c.14="2y";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 1u 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+"1t";1X.1z=y+"1t";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 1u 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 1u 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 1u 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].1v!="1N"){d.O("3k-1v",a.1o[i].1v)}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 1u 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 1u 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 1u 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+"1t";C.18.15.1z=y+"1t"}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 1u 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-1v":.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"1u a&&"s"1u a&&"b"1u 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"1u a&&"h"1u a&&"b"1u 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|px|in|opacity|_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
index 7e9e680..c09c1b9 100755 (executable)
@@ -1,6 +1,15 @@
-function Raphael() {
-    return (function (r, args) {
-        r.version = "0.5.4";
+/*
+ * 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.
+ */
+var Raphael = (function (type) {
+        var r = function () {
+            return r._create.apply(r, arguments);
+        };
+        r.version = "0.5.4b";
+        r.type = type;
         var C = {};
         function Matrix(m11, m12, m21, m22, dx, dy) {
             this.m = [
@@ -12,7 +21,7 @@ function Raphael() {
 
         C._getX = C._getY = C._getW = C._getH = function (x) { return x; };
 
-        if (r.vml) {
+        if (type == "VML") {
             Matrix.prototype.toString = function () {
                 return "progid:DXImageTransform.Microsoft.Matrix(M11=" + this.m[0][0] +
                     ", M12=" + this.m[1][0] + ", M21=" + this.m[0][1] + ", M22=" + this.m[1][1] +
@@ -252,7 +261,7 @@ function Raphael() {
                         fill.opacity = ((params["fill-opacity"] + 1 || 2) - 1) * ((params.opacity + 1 || 2) - 1);
                     }
                     params.fill && (fill.on = true);
-                    if (fill.on) {
+                    if (fill.on && params.fill) {
                         fill.color = params.fill;
                     }
                     if (params.fill == "none") {
@@ -260,15 +269,21 @@ function Raphael() {
                     }
                     o.appendChild(fill);
                     var stroke = (o.getElementsByTagName("stroke") && o.getElementsByTagName("stroke")[0]) || document.createElement("rvml:stroke");
-                    stroke.on = !!(params.stroke || params["stroke-width"] || params["stroke-opacity"] || params["stroke-dasharray"]);
-                    if (stroke.on) {
+                    if ((params.stroke && params.stroke != "none") || params["stroke-width"] || params["stroke-opacity"] || params["stroke-dasharray"]) {
+                        stroke.on = true;
+                    }
+                    if (params.stroke == "none" || typeof stroke.on == "undefined") {
+                        stroke.on = false;
+                    }
+                    // alert(stroke.on);
+                    if (stroke.on && params.stroke) {
                         stroke.color = params.stroke;
                     }
                     stroke.opacity = ((params["stroke-opacity"] + 1 || 2) - 1) * ((params.opacity + 1 || 2) - 1);
                     stroke.joinstyle = params["stroke-linejoin"] || "miter";
                     stroke.miterlimit = params["stroke-miterlimit"] || 8;
                     stroke.endcap = {butt: "flat", square: "square", round: "round"}[params["stroke-linecap"] || "miter"];
-                    stroke.weight = parseFloat(params["stroke-width"], 10) + "px" || "1px";
+                    stroke.weight = (parseFloat(params["stroke-width"], 10) || 1) + "px";
                     if (params["stroke-dasharray"]) {
                         var dashes = params["stroke-dasharray"].replace(" ", ",").split(","),
                             dashesn = [],
@@ -330,27 +345,6 @@ function Raphael() {
                     }
                 }
             };
-            var setTheBox = function (vml, o, x, y, w, h) {
-                o.origin = o.origin || {x: x, y: y, w: w, h: h};
-                var left = vml.width / 2 - o.origin.w / 2,
-                    top = vml.height / 2 - o.origin.h / 2,
-                    gs = o.Group.style,
-                    os = o[0].style;
-                gs.position = "absolute";
-                gs.left = o.origin.x - left + "px";
-                gs.top = o.origin.y - top + "px";
-                o.X = o.origin.x - left;
-                o.Y = o.origin.y - top;
-                o.W = w;
-                o.H = h;
-                gs.width = vml.width + "px";
-                gs.height = vml.height + "px";
-                os.position = "absolute";
-                os.top = top + "px";
-                os.left = left + "px";
-                os.width = w + "px";
-                os.height = h + "px";
-            };
             var Element = function (node, group, vml) {
                 var Rotation = 0,
                     RotX = 0,
@@ -362,6 +356,56 @@ function Raphael() {
                 arguments.callee.name = "Element";
                 this[0].attrs = {};
                 this.Group = group;
+                this.setBox = function (params) {
+                    var gs = this.Group.style,
+                        os = this[0].style;
+                    for (var i in params) {
+                        this[0].attrs[i] = params[i];
+                    }
+                    var attr = this[0].attrs, x, y, w, h;
+                    switch (this.type) {
+                        case "circle": 
+                            x = attr.cx - attr.r;
+                            y = attr.cy - attr.r;
+                            w = h = attr.r * 2;
+                            break;
+                        case "ellipse":
+                            x = attr.cx - attr.rx;
+                            y = attr.cy - attr.ry;
+                            w = attr.rx * 2;
+                            h = attr.ry * 2;
+                            break;
+                        case "rect":
+                        case "image":
+                            x = attr.x;
+                            y = attr.y;
+                            w = attr.w;
+                            h = attr.h;
+                            break;
+                        case "text":
+                            this.textpath.v = ["m", Math.round(attr.x), ", ", Math.round(attr.y - 2), "l", Math.round(attr.x) + 1, ", ", Math.round(attr.y - 2)].join("");
+                            return;
+                            break;
+                        default:
+                            return;
+                    }
+                    var left = vml.width / 2 - w / 2,
+                        top = vml.height / 2 - h / 2;
+                    gs.position = "absolute";
+                    gs.left = x - left + "px";
+                    gs.top = y - top + "px";
+                    this.X = x - left;
+                    this.Y = y - top;
+                    this.W = w;
+                    this.H = h;
+                    gs.width = vml.width + "px";
+                    gs.height = vml.height + "px";
+                    os.position = "absolute";
+                    os.top = top + "px";
+                    os.left = left + "px";
+                    os.width = w + "px";
+                    os.height = h + "px";
+                };
                 this.hide = function () {
                     this.Group.style.display = "none";
                     return this;
@@ -445,79 +489,17 @@ function Raphael() {
                             this.attr.apply(new item(children[i], this[0], vml), arguments);
                         }
                     } else {
+                        var params;
                         if (arguments.length == 2) {
-                            var att = arguments[0],
-                                value = arguments[1];
-                            switch (att) {
-                                case "r":
-                                    this[0].style.width = this[0].style.height = value * 2 + "px";
-                                    this[0].style.left = vml._getX(this.cx) - value + "px";
-                                    this[0].style.top = vml._getY(this.cy) - value + "px";
-                                    this.r = value;
-                                    break;
-                                case "rx":
-                                    this[0].style.width = value * 2 + "px";
-                                    this[0].style.left = vml._getX(this.cx) - value + "px";
-                                    this.rx = value;
-                                    break;
-                                case "ry":
-                                    this[0].style.height = value * 2 + "px";
-                                    this[0].style.top = vml._getY(this.cy) - value + "px";
-                                    this.ry = value;
-                                    break;
-                                case "cx":
-                                    if (this.r || this.rx) {
-                                        this[0].style.left = vml._getX(value) - (this.r || vml._getW(this.rx)) + "px";
-                                        this.cx = value;
-                                    }
-                                    break;
-                                case "x":
-                                    this[0].style.left = vml._getX(value) + "px";
-                                    break;
-                                case "cy":
-                                    if (this.r || this.ry) {
-                                        this[0].style.top = vml._getY(value) - (this.r || vml._getH(this.ry)) + "px";
-                                        this.cy = value;
-                                    }
-                                    break;
-                                case "y":
-                                    this[0].style.top = vml._getY(value) + "px";
-                                    break;
-                                case "fill":
-                                case "fill-opacity":
-                                case "joinstyle":
-                                case "opacity":
-                                case "stroke":
-                                case "stroke-dasharray":
-                                case "stroke-opacity":
-                                case "stroke-width":
-                                    var params = {};
-                                    params[att] = value;
-                                    setFillAndStroke(this, params);
-                                    break;
-                                case "font":
-                                case "font-family":
-                                case "font-size":
-                                case "font-weight":
-                                case "height":
-                                case "width":
-                                    this[0].style[att] = value;
-                                    break;
-                                case "id":
-                                    this[0].id = value;
-                                    break;
-                                case "text":
-                                    if (this.type == "text") {
-                                        this[0].string = value;
-                                    }
-                                    break;
-                                case "gradient":
-                                    addGrdientFill(this, value);
-                            }
+                            params = {};
+                            params[arguments[0]] = arguments[1];
                         }
                         if (arguments.length == 1 && typeof arguments[0] == "object") {
-                            var params = arguments[0];
+                            params = arguments[0];
+                        }
+                        if (params) {
                             setFillAndStroke(this, params);
+                            this.setBox(params);
                             if (params.gradient) {
                                 addGrdientFill(this, params.gradient);
                             }
@@ -533,11 +515,13 @@ function Raphael() {
                 };
                 this.toFront = function () {
                     this.Group.parentNode.appendChild(this.Group);
+                    return this;
                 };
                 this.toBack = function () {
                     if (this.Group.parentNode.firstChild != this.Group) {
                         this.Group.parentNode.insertBefore(this.Group, this.Group.parentNode.firstChild);
                     }
+                    return this;
                 };
             };
             var theCircle = function (vml, x, y, r) {
@@ -546,8 +530,8 @@ function Raphael() {
                 g.appendChild(o);
                 vml.canvas.appendChild(g);
                 var res = new Element(o, g, vml);
-                setFillAndStroke(res, {stroke: "#000"});
-                setTheBox(vml, res, x - r, y - r, r * 2, r * 2);
+                setFillAndStroke(res, {stroke: "#000", fill: "none"});
+                res.setBox({x: x - r, y: y - r, w: r * 2, h: r * 2});
                 o.attrs.cx = x;
                 o.attrs.cy = y;
                 o.attrs.r = r;
@@ -564,7 +548,7 @@ function Raphael() {
                 vml.canvas.appendChild(g);
                 var res = new Element(o, g, vml);
                 setFillAndStroke(res, {stroke: "#000"});
-                setTheBox(vml, res, x, y, w, h);
+                res.setBox({x: x, y: y, w: w, h: h});
                 o.attrs.x = x;
                 o.attrs.y = y;
                 o.attrs.w = w;
@@ -580,7 +564,7 @@ function Raphael() {
                 vml.canvas.appendChild(g);
                 var res = new Element(o, g, vml);
                 setFillAndStroke(res, {stroke: "#000"});
-                setTheBox(vml, res, x - rx, y - ry, rx * 2, ry * 2);
+                res.setBox({x: x - rx, y: y - ry, w: rx * 2, h: ry * 2});
                 o.attrs.cx = x;
                 o.attrs.cy = y;
                 o.attrs.rx = rx;
@@ -595,7 +579,11 @@ function Raphael() {
                 g.appendChild(o);
                 vml.canvas.appendChild(g);
                 var res = new Element(o, g, vml);
-                setTheBox(vml, res, x, y, w, h);
+                res.setBox({x: x, y: y, w: w, h: h});
+                o.attrs.x = x;
+                o.attrs.y = y;
+                o.attrs.w = w;
+                o.attrs.h = h;
                 res.type = "image";
                 return res;
             };
@@ -604,7 +592,7 @@ function Raphael() {
                 var g = document.createElement("rvml:group"), gs = g.style;
                 var el = document.createElement("rvml:shape"), ol = el.style;
                 var path = document.createElement("rvml:path"), ps = path.style;
-                path.v = ["m", Math.round(x), ", ", Math.round(y), "l", Math.round(x) + 1, ", ", Math.round(y)].join("");
+                path.v = ["m", Math.round(x), ", ", Math.round(y - 2), "l", Math.round(x) + 1, ", ", Math.round(y - 2)].join("");
                 path.textpathok = true;
                 ol.width = vml.width;
                 ol.height = vml.height;
@@ -624,7 +612,12 @@ function Raphael() {
                 vml.canvas.appendChild(g);
                 var res = new Element(o, g, vml);
                 res.shape = el;
+                res.textpath = path;
                 res.type = "text";
+                o.attrs.x = x;
+                o.attrs.y = y;
+                o.attrs.w = 1;
+                o.attrs.h = 1;
                 return res;
             };
             var theGroup = function (vml) {
@@ -675,8 +668,10 @@ function Raphael() {
                 if (!container) {
                     throw new Error("VML container not found.");
                 }
-                document.namespaces.add("rvml","urn:schemas-microsoft-com:vml");
-                document.createStyleSheet().addRule("rvml\\:*", "behavior:url(#default#VML)");
+                if (!document.namespaces["rvml"]) {
+                    document.namespaces.add("rvml","urn:schemas-microsoft-com:vml");
+                    document.createStyleSheet().addRule("rvml\\:*", "behavior:url(#default#VML)");
+                }
                 var c = document.createElement("div"),
                     r = C.canvas = document.createElement("rvml:group"),
                     cs = c.style, rs = r.style;
@@ -738,7 +733,7 @@ function Raphael() {
                 return container;
             };
         }
-        if (r.svg) {
+        if (type == "SVG") {
             Matrix.prototype.toString = function () {
                 return "matrix(" + this.m[0][0] +
                     ", " + this.m[1][0] + ", " + this.m[0][1] + ", " + this.m[1][1] +
@@ -1051,7 +1046,7 @@ function Raphael() {
                 };
                 this.attr = function () {
                     if (arguments.length == 1 && typeof arguments[0] == "string") {
-                        return this.attrs[arguments[0]];
+                        return this[0].getAttribute(arguments[0]);
                     }
                     if (arguments.length == 1 && arguments[0] instanceof Array) {
                         var values = {};
@@ -1318,7 +1313,7 @@ function Raphael() {
             C.svgns = "http://www.w3.org/2000/svg";
             C.xlink = "http://www.w3.org/1999/xlink";
         }
-        if (r.vml || r.svg) {
+        if (type == "VML" || type == "SVG") {
             C.circle = function (x, y, r) {
                 return theCircle(this, x, y, r);
             };
@@ -1381,19 +1376,16 @@ function Raphael() {
             };
             C.safari = function () {
                 if (r.type == "SVG") {
-                    var rect = C.rect(0, 0, C.width, C.height).attr("stroke-width", 0);
+                    var rect = C.rect(-C.width, -C.width, C.width * 3, C.height * 3).attr({stroke: "none"});
                     setTimeout(function () {rect.remove();}, 0);
                 }
             };
-            Raphael = function () {
-                return r._create.apply(r, arguments);
-            };
-            return r._create.apply(r, args);
+            
+            return r;
         } else {
-            return null;
+            return function () {};
         }
-    })(arguments.callee, arguments);
-}
+    })((!(window.SVGPreserveAspectRatio && window.SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN == 2) && !(window.CanvasRenderingContext2D)) ? "VML" : "SVG");
 
 
 Raphael.type = (!(window.SVGPreserveAspectRatio && window.SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN == 2) && !(window.CanvasRenderingContext2D)) ? "VML" : "SVG";
@@ -1404,4 +1396,107 @@ if (!(window.SVGPreserveAspectRatio && window.SVGPreserveAspectRatio.SVG_PRESERV
 }
 Raphael.toString = function () {
     return "You browser supports " + this.type;
+};
+Raphael.hsb2rgb = function (hue, saturation, brightness) {
+    if (typeof hue == "object" && "h" in hue && "s" in hue && "b" in hue) {
+        brightness = hue.b;
+        saturation = hue.s;
+        hue = hue.h;
+    }
+    var red,
+        green,
+        blue;
+    if (brightness == 0.0) {
+        return {r: 0, g: 0, b: 0};
+    } else {
+        var i = Math.floor(hue * 6),
+            f = (hue * 6) - i,
+            p = brightness * (1 - saturation),
+            q = brightness * (1 - (saturation * f)),
+            t = brightness * (1 - (saturation * (1 - f)));
+        [
+            function () {red = brightness; green = t; blue = p;},
+            function () {red = q; green = brightness; blue = p;},
+            function () {red = p; green = brightness; blue = t;},
+            function () {red = p; green = q; blue = brightness;},
+            function () {red = t; green = p; blue = brightness;},
+            function () {red = brightness; green = p; blue = q;},
+            function () {red = brightness; green = t; blue = p;},
+        ][i]();
+    }
+    var rgb = {r: red, g: green, b: blue};
+    var r = Math.round(rgb.r).toString(16);
+    if (r.length == 1) {
+        r = "0" + r;
+    }
+    var g = Math.round(rgb.g).toString(16);
+    if (g.length == 1) {
+        g = "0" + g;
+    }
+    var b = Math.round(rgb.b).toString(16);
+    if (b.length == 1) {
+        b = "0" + b;
+    }
+    rgb.hex = "#" + r + g + b;
+    return rgb;
+};
+Raphael.rgb2hsb = function (red, green, blue) {
+    if (typeof red == "object" && "r" in red && "h" in red && "b" in red) {
+        blue = red.b;
+        green = red.g;
+        red = red.r;
+    }
+    if (red.charAt(0) == "#") {
+        if (red.length == 4) {
+            blue = parseInt(red.substring(3), 16);
+            green = parseInt(red.substring(2, 3), 16);
+            red = parseInt(red.substring(1, 2), 16);
+        } else {
+            blue = parseInt(red.substring(5), 16);
+            green = parseInt(red.substring(3, 5), 16);
+            red = parseInt(red.substring(1, 3), 16);
+        }
+    }
+    var max = Math.max(red, green, blue),
+        min = Math.min(red, green, blue),
+        hue,
+        saturation,
+        brightness = max;
+    if (min == max) {
+        return {h: 0, s: 0, b: max};
+    } else {
+        var delta = (max - min);
+        saturation = delta / max;
+        if (red == max) {
+            hue = (green - blue) / delta;
+        } else if (green == max) {
+            hue = 2 + ((blue - red) / delta);
+        } else {
+            hue = 4 + ((red - green) / delta);
+        }
+        hue /= 6;
+        if (hue < 0) {
+            hue += 1;
+        }
+        if (hue > 1) {
+            hue -= 1;
+        }
+    }
+    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 rgb = this.hsb2rgb(start.h, start.s, start.b);
+    start.h += .1;
+    if (start.h > 1) {
+        start.h = 0;
+        start.s -= .2;
+        if (start.s <= 0) {
+            start = {h: 0, s: 1, b: start.b};
+        }
+    }
+    return rgb.hex;
+};
+Raphael.getColor.reset = function () {
+    this.start = undefined;
 };
\ No newline at end of file