0.6.2 Fixed IE bug with getting translation attributes. Added new methods insertBefor...
authorDmitry Baranovskiy <dbaranovskiy@Fresh-Air.sydney.atlassian.com>
Thu, 15 Jan 2009 00:42:26 +0000 (11:42 +1100)
committerDmitry Baranovskiy <dbaranovskiy@Fresh-Air.sydney.atlassian.com>
Thu, 15 Jan 2009 00:42:26 +0000 (11:42 +1100)
README.markdown
raphael-packed.js
raphael.js
reference.html

index faea9e4..c7a0afe 100644 (file)
@@ -169,6 +169,16 @@ Linearly changes attribute from current to specified in given amount of millisec
     var c = paper.circle(10, 10, 10);
     c.animate({cx: 20, r: 20}, 2000);
 
+#### stop
+
+Stops current animation of the element
+
+##### Usage
+
+    var c = paper.circle(10, 10, 10);
+    c.animate({cx: 20, r: 20}, 2000);
+    document.body.onclick = function () { c.stop(); };
+
 #### getBBox
 
 Returns dimensions of given element.
@@ -196,6 +206,26 @@ Moves element to back in hierarchy.
     var c = paper.circle(10, 10, 10);
     c.toBack();
     
+#### insertBefore
+
+Inserts current object before the given one
+
+##### Usage
+
+    var r = paper.rect(10, 10, 10, 10);
+    var c = paper.circle(10, 10, 10);
+    c.insertBefore(r);
+    
+#### insertAfter
+
+Inserts current object after the given one
+
+##### Usage
+
+    var c = paper.circle(10, 10, 10);
+    var r = paper.rect(10, 10, 10, 10);
+    c.insertAfter(r);
+    
 ### Graphic Primitives
 
 #### circle
@@ -378,14 +408,14 @@ Draws quarter of circle form current point.
 
 Possible dir values
 
-* lu: left up
-* ld: left down
-* ru: right up
-* rd: right down
-* ur: up right
-* ul: up left
-* dr: down right
-* dl: down left
+* “lu”: left up
+* “ld”: left down
+* “ru”: right up
+* “rd”: right down
+* “ur”: up right
+* “ul”: up left
+* “dr”: down right
+* “dl”: down left
 
 ##### Usage
 
@@ -403,4 +433,4 @@ Closes the path.
 
 http://www.opensource.org/licenses/mit-license.php
 
-Copyright (c) 2008 Dmitry Baranovskiy (http://raphaeljs.com)
\ No newline at end of file
+Copyright © 2008 – 2009 Dmitry Baranovskiy (http://raphaeljs.com)
\ No newline at end of file
index 3f38450..0797eed 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * Raphael 0.6.1 - JavaScript Vector Library
+ * Raphael 0.6.2 - JavaScript Vector Library
  *
- * Copyright (c) 2008 Dmitry Baranovskiy (http://raphaeljs.com)
+ * Copyright (c) 2008 – 2009 Dmitry Baranovskiy (http://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}('J 1r=(O(n){J r=O(){11 r.45.2C(r,P)};r.4v="0.6.1";r.1n=n;J q={1v:0,1w:0,1t:"#4z","1t-1F":1,21:\'6V "4D"\',"21-47":\'"4D"\',"21-3x":"16",2D:0,1b:0,1F:1,1e:"48,0",r:0,2S:0,2c:0,26:0,2w:"1 1",1f:"#1P","1f-2I":"","1f-3Y":"3j","1f-49":"3j","1f-4a":0,"1f-1F":1,"1f-17":1,2N:"0 0",17:0,x:0,y:0},3N={1v:"1K",1w:"1K",1t:"3O","1t-1F":"1K","21-3x":"1K",1b:"1K",1F:"1K",1e:"1e",r:"1K",2S:"1K",2c:"1K",26:"1K",2w:"3P",1f:"3O","1f-1F":"1K","1f-17":"1K",2N:"3P",17:"1K",x:"1K",y:"1K"},C={};K(n=="3r"){J u=O(i,j,l){J g=1h.1C("1y:2e"),34=g.1s;34.2A="2B";34.22=0;34.1B=0;34.17=l.17+"1G";34.1b=l.1b+"1G";J m=1h.1C("1y:2K"),3b=m.1s;3b.17=l.17+"1G";3b.1b=l.1b+"1G";m.1e="";K(i["4N"]){m.66=i["4N"]}m.3s=9.3s;m.3v=9.3v;g.1j(m);l.1i.1j(g);J p=1H A(m,g,l);p.18=1V;p.1n="1e";p.1e=[];p.13={x:0,y:0,1S:0,1M:0,18:1V};p.2x="";p.3f=O(){9.18=1V;11 9};p.3J=O(){9.18=31;11 9};p.3g=O(x,y){J d=9.18?"m":"t";d+=15.1c(19(x,10))+" "+15.1c(19(y,10));9.1O.1e=9.2x+=d;9.13.x=(9.18?0:9.13.x)+19(x,10);9.13.y=(9.18?0:9.13.y)+19(y,10);9.13.18=9.18;9.N.1e+=(9.18?"M":"m")+[x,y];11 9};p.25=O(x,y){J d=9.18?"l":"r";d+=15.1c(19(x,10))+" "+15.1c(19(y,10));9[0].1e=9.2x+=d;9.13.x=(9.18?0:9.13.x)+19(x,10);9.13.y=(9.18?0:9.13.y)+19(y,10);9.13.18=9.18;9.N.1e+=(9.18?"L":"l")+[x,y];11 9};p.4l=O(a,b,c,e,f,g){f=(9.18?0:9.13.x)+f;g=(9.18?0:9.13.y)+g;J h=9.13.x,3k=9.13.y,x=(h-f)/2,y=(3k-g)/2,k=(c==e?-1:1)*15.5s(15.4o(a*a*b*b-a*a*y*y-b*b*x*x)/(a*a*y*y+b*b*x*x)),1v=k*a*y/b+(h+f)/2,1w=k*-b*x/a+(3k+g)/2,d=e?(9.18?"5r":"5q"):(9.18?"5p":"5o"),22=15.1c(1v-a),1B=15.1c(1w-b);d+=[22,1B,15.1c(22+a*2),15.1c(1B+b*2),15.1c(h),15.1c(3k),15.1c(19(f,10)),15.1c(19(g,10))].1z(", ");9.1O.1e=9.2x+=d;9.13.x=(9.18?0:9.13.x)+19(f,10);9.13.y=(9.18?0:9.13.y)+19(g,10);9.13.18=9.18;9.N.1e+=(9.18?"A":"a")+[a,b,0,c,e,f,g];11 9};p.5d=O(a,b,c){K(!c){11 9.25(a,b)}1k{J x=15.1c(15.1c(19(a,10)*2p)/2p),y=15.1c(15.1c(19(b,10)*2p)/2p),w=15.1c(15.1c(19(c,10)*2p)/2p),d=9.18?"c":"v",1p=[15.1c(9.13.x)+w,15.1c(9.13.y),x-w,y,x,y],5e=[9.13.x+c,9.13.y,a-c,b,a,b];d+=1p.1z(" ")+" ";9.13.x=(9.18?0:9.13.x)+1p[4];9.13.y=(9.18?0:9.13.y)+1p[5];9.13.1S=1p[2];9.13.1M=1p[3];9.1O.1e=9.2x+=d;9.N.1e+=(9.18?"C":"c")+5e;11 9}};p.1J=O(){J d=9.18?"c":"v";K(P.14==6){9.13.1S=(9.18?0:9.13.x)+19(P[2],10);9.13.1M=(9.18?0:9.13.y)+19(P[3],10);9.13.x=(9.18?0:9.13.x)+19(P[4],10);9.13.y=(9.18?0:9.13.y)+19(P[5],10);d+=[15.1c(19(P[0],10)),15.1c(19(P[1],10)),15.1c(19(P[2],10)),15.1c(19(P[3],10)),15.1c(19(P[4],10)),15.1c(19(P[5],10))].1z(" ")+" ";9.13.18=9.18;9.N.1e+=(9.18?"C":"c")+3e.1u.2v.30(P,0,P.14)}K(P.14==4){J a=9.13.x*2-9.13.1S;J b=9.13.y*2-9.13.1M;9.13.1S=(9.18?0:9.13.x)+19(P[0],10);9.13.1M=(9.18?0:9.13.y)+19(P[1],10);9.13.x=(9.18?0:9.13.x)+19(P[2],10);9.13.y=(9.18?0:9.13.y)+19(P[3],10);d+=[15.1c(a),15.1c(b),15.1c(19(P[0],10)),15.1c(19(P[1],10)),15.1c(19(P[2],10)),15.1c(19(P[3],10))].1z(" ")+" ";9.N.1e+=(9.18?"S":"s")+3e.1u.2v.30(P,0,P.14)}9.1O.1e=9.2x+=d;11 9};p.3Z=O(){J d="5N";K(P.14==4){9.13.36=(9.18?0:9.13.x)+19(P[0],10);9.13.35=(9.18?0:9.13.y)+19(P[1],10);9.13.x=(9.18?0:9.13.x)+19(P[2],10);9.13.y=(9.18?0:9.13.y)+19(P[3],10);d+=[15.1c(9.13.36),15.1c(9.13.35),15.1c(9.13.x),15.1c(9.13.y)].1z(" ")+" ";9.13.18=9.18;9.N.1e+=(9.18?"Q":"q")+3e.1u.2v.30(P,0,P.14)}K(P.14==2){9.13.36=9.13.x*2-9.13.36;9.13.35=9.13.y*2-9.13.35;9.13.x=(9.18?0:9.13.x)+19(P[2],10);9.13.y=(9.18?0:9.13.y)+19(P[3],10);d+=[15.1c(9.13.36),15.1c(9.13.35),15.1c(9.13.x),15.1c(9.13.y)].1z(" ")+" ";9.N.1e+=(9.18?"T":"t")+3e.1u.2v.30(P,0,P.14)}9.1O.1e=9.2x+=d;9.1e.2j({1n:"5Z",60:[].62.30(P,0),63:9.18});11 9};p.4R=O(r,a){J R=.4P*r,2q=9.18,o=9;K(2q){9.3J();2q=O(){o.3f()}}1k{2q=O(){}}J b={l:O(){11{u:O(){o.1J(-R,0,-r,-(r-R),-r,-r)},d:O(){o.1J(-R,0,-r,r-R,-r,r)}}},r:O(){11{u:O(){o.1J(R,0,r,-(r-R),r,-r)},d:O(){o.1J(R,0,r,r-R,r,r)}}},u:O(){11{r:O(){o.1J(0,-R,-(R-r),-r,r,-r)},l:O(){o.1J(0,-R,R-r,-r,-r,-r)}}},d:O(){11{r:O(){o.1J(0,R,-(R-r),r,r,r)},l:O(){o.1J(0,R,R-r,r,-r,r)}}}};b[a.3S(0)]()[a.3S(1)]();2q();11 o};p.4q=O(){9.1O.1e=(9.2x+="x e");9.N.1e+="z";11 9};K(1q j=="28"){p.3f();p.N.1e="";C.3A(p,j)}p.2H();v(p,i);K(i.2D){z(p,i.2D)}11 p};J v=O(o,a){J s=o[0].1s;o.N=o.N||{};1l(J b 1A a){o.N[b]=a[b]}K(a.1e&&o.1n=="1e"){o.2x="";o.1e=[];C.3A(o,a.1e)}K(a.2S!=6U){o.1U.1s.2S=a.2S}K(a.2N){J c=a.2N.2u(/[, ]+/);o.2Z(c[0],c[1])}K(a.2w){J c=a.2w.2u(/[, ]+/);o.2w(c[0],c[1])}a["21-47"]&&(s.6X=a["21-47"]);a["21-3x"]&&(s.70=a["21-3x"]);a["21"]&&(s.21=a["21"]);a["21-41"]&&(s.72=a["21-41"]);K(1q a.1F!="1L"||1q a["1f-17"]!="1L"||1q a.1t!="1L"||1q a.1f!="1L"){o=o.2K||o.1O;J d=(o.3y("1t")&&o.3y("1t")[0])||1h.1C("1y:1t");K("1t-1F"1A a||"1F"1A a){d.1F=((a["1t-1F"]+1||2)-1)*((a.1F+1||2)-1)}K(a.1t){d.2o=1V}K(d.2o==1L||a.1t=="1Z"){d.2o=31}K(d.2o&&a.1t){J e=a.1t.4s(/^3a\\(([^\\)]+)\\)$/i);K(e){d.3T=e[1];d.1n="6y"}1k{d.2r=a.1t;d.3T="";d.1n="6e"}}o.1j(d);J f=(o.3y("1f")&&o.3y("1f")[0])||1h.1C("1y:1f");K((a.1f&&a.1f!="1Z")||a["1f-17"]||a["1f-1F"]||a["1f-2I"]){f.2o=1V}K(a.1f=="1Z"||1q f.2o=="1L"){f.2o=31}K(f.2o&&a.1f){f.2r=a.1f}f.1F=((a["1f-1F"]+1||2)-1)*((a.1F+1||2)-1);a["1f-49"]&&(f.64=a["1f-49"]||"4W");f.4a=a["1f-4a"]||8;a["1f-3Y"]&&(f.5S={3j:"5M",4p:"4p",1c:"1c"}[a["1f-3Y"]]||"4W");a["1f-17"]&&(f.41=(19(a["1f-17"],10)||1)*12/16);K(a["1f-2I"]){J g={"-":"5x",".":"5A","-.":"5C","-..":"5G",". ":"5H","- ":"5T","--":"5U","- .":"6b","--.":"6c","--..":"6d"};f.6u=g[a["1f-2I"]]||""}o.1j(f)}};J z=O(o,a){o.N=o.N||{};o.N.2D=a;o=o.2K||o[0];J b=o.3y("1t");K(b.14){b=b[0]}1k{b=1h.1C("1y:1t")}K(a.1I.14){b.2o=1V;b.5f="1Z";b.1n=(a.1n.2T()=="6D")?"2D":"6N";K(1q a.1I[0].2r!="1L"){b.2r=a.1I[0].2r||"#1P"}K(1q a.1I[a.1I.14-1].2r!="1L"){b.6T=a.1I[a.1I.14-1].2r||"#1P"}J c=[];1l(J i=0,1o=a.1I.14;i<1o;i++){K(a.1I[i].3p){c.2j(a.1I[i].3p+" "+a.1I[i].2r)}};J d=a.1I[0].1F||1;J e=a.1I[a.1I.14-1].1F||1;K(c){b.7a.7b=c.1z(",");e+=d;d=e-d;e-=d}b.1a("1F",d);b.1a("71",e);K(a.2f){J f=15.1c(15.7d((19(a.2f[3],10)-19(a.2f[1],10))/(19(a.2f[2],10)-19(a.2f[0],10)))*57.29)||0;b.6C=6x-f}K(a.1n.2T()=="5Y"){b.6v="2p%";b.74="0.5 0.5"}}};J A=O(a,b,c){J d=0,78=0,5J=0,7c=1;9[0]=a;9.1O=a;9.X=0;9.Y=0;9.N={};9.1U=b;9.1X=c;9.1m={2U:0,2W:0,2g:0,2z:1,2G:1}};A.1u.3H=O(a,b){K(a==1L){11 9.1m.2g}K(b){9.1m.2g=a}1k{9.1m.2g+=a}9.1U.1s.2S=9.1m.2g;11 9};A.1u.2H=O(a){J b=9.1U.1s,2J=9[0].1s;1l(J i 1A a){9.N[i]=a[i]}J c=9.N,x,y,w,h;2b(9.1n){1d"2O":x=c.1v-c.r;y=c.1w-c.r;w=h=c.r*2;1g;1d"32":x=c.1v-c.2c;y=c.1w-c.26;w=c.2c*2;h=c.26*2;1g;1d"2h":1d"2y":x=c.x;y=c.y;w=c.17||0;h=c.1b||0;1g;1d"2d":9.4r.v=["m",15.1c(c.x),", ",15.1c(c.y-2),"l",15.1c(c.x)+1,", ",15.1c(c.y-2)].1z("");11;1d"1e":K(!9.N.1e){x=y=w=h=0}1k{J d=1r.3K(9.N.1e),x=d.x;y=d.y;w=d.17;h=d.1b}1g;2F:x=0;y=0;w=9.1X.17;h=9.1X.1b;1g}K(9.1n=="1e"){J e=15.1c(9.1X.17/2-w/2-x),1B=15.1c(9.1X.1b/2-h/2-y);b.22=-e+"1G";b.1B=-1B+"1G";9.X=e;9.Y=1B;9.W=w;9.H=h;2J.1B=1B+"1G";2J.22=e+"1G"}1k{J e=9.1X.17/2-w/2,1B=9.1X.1b/2-h/2;b.2A="2B";b.22=x-e+"1G";b.1B=y-1B+"1G";9.X=x-e;9.Y=y-1B;9.W=w;9.H=h;b.17=9.1X.17+"1G";b.1b=9.1X.1b+"1G";2J.2A="2B";2J.1B=1B+"1G";2J.22=e+"1G";2J.17=w+"1G";2J.1b=h+"1G"}};A.1u.4A=O(){9.1U.1s.3Q="1Z";11 9};A.1u.4B=O(){9.1U.1s.3Q="4C";11 9};A.1u.2Z=O(x,y){K(x==1L&&y==1L){11{x:9.1m.2U,y:9.1m.2W}}9.1m.2U+=+x;9.1m.2W+=+y;K(9.1n=="1e"){J a=9.N.1e;a=1r.3l(a);a[0][1]+=+x;a[0][2]+=+y;9.1p({1e:a.1z(" ")})}9.2H({x:9.1m.2U,y:9.1m.2W});11 9};A.1u.3o=O(){11{x:9.X,y:9.Y,17:9.W,1b:9.H}};A.1u.3n=O(){9[0].1Q.2s(9[0]);9.1U.1Q.2s(9.1U);9.2K&&9.2K.1Q.2s(9.2K)};A.1u.1p=O(){K(P.14==1&&1q P[0]=="28"){11 9.N[P[0]]}K(9.N&&P.14==1&&P[0]4E 3e){J a={};1l(J i=0,1o=P[0].14;i<1o;i++){a[P[0][i]]=9.N[P[0][i]]};11 a}K(9[0].6F.2T()=="2e"){J b=9[0].3m;9.N=9.N||{};K(P.14==2){9.N[P[0]]=P[1]}1k K(P.14==1||1q P[0]=="2Q"){1l(J j 1A P[0]){9.N[j]=P[0][j]}}1l(J i=0,1o=b.14;i<1o;i++){9.1p.2C(1H 6B(b[i],9[0],9.1X),P)}}1k{J c;K(P.14==2){c={};c[P[0]]=P[1]}K(P.14==1&&1q P[0]=="2Q"){c=P[0]}K(c){v(9,c);9.2H(c);K(c.2D){z(9,c.2D)}K(c.2d&&9.1n=="2d"){9[0].28=c.2d}K(c.2L){9[0].2L=c.2L}}}11 9};A.1u.4H=O(){9.1U.1Q.1j(9.1U);11 9};A.1u.4I=O(){K(9.1U.1Q.2i!=9.1U){9.1U.1Q.3L(9.1U,9.1U.1Q.2i)}11 9};J B=O(a,x,y,r){J g=1h.1C("1y:2e");J o=1h.1C("1y:4K");g.1j(o);a.1i.1j(g);J b=1H A(o,g,a);v(b,{1f:"#1P",1t:"1Z"});b.2H({x:x-r,y:y-r,17:r*2,1b:r*2});b.N.1v=x;b.N.1w=y;b.N.r=r;b.1n="2O";11 b};J D=O(a,x,y,w,h,r){J g=1h.1C("1y:2e");J o=1h.1C(r?"1y:67":"1y:2h");K(r){o.65=r/(15.33(w,h))}g.1j(o);a.1i.1j(g);J b=1H A(o,g,a);v(b,{1f:"#1P"});b.2H({x:x,y:y,17:w,1b:h});b.N.x=x;b.N.y=y;b.N.w=w;b.N.h=h;b.N.r=r;b.1n="2h";11 b};J E=O(a,x,y,b,c){J g=1h.1C("1y:2e");J o=1h.1C("1y:4K");g.1j(o);a.1i.1j(g);J d=1H A(o,g,a);v(d,{1f:"#1P"});d.2H({x:x-b,y:y-c,17:b*2,1b:c*2});d.N.1v=x;d.N.1w=y;d.N.2c=b;d.N.26=c;d.1n="32";11 d};J F=O(a,b,x,y,w,h){J g=1h.1C("1y:2e");J o=1h.1C("1y:2y");o.3T=b;g.1j(o);a.1i.1j(g);J c=1H A(o,g,a);c.1n="2y";c.2H({x:x,y:y,17:w,1b:h});c.N.x=x;c.N.y=y;c.N.w=w;c.N.h=h;11 c};J G=O(a,x,y,b){J g=1h.1C("1y:2e"),3i=g.1s;J c=1h.1C("1y:2K"),3b=c.1s;J d=1h.1C("1y:1e"),5R=d.1s;d.v=["m",15.1c(x),", ",15.1c(y-2),"l",15.1c(x)+1,", ",15.1c(y-2)].1z("");d.5P=1V;3b.17=a.17;3b.1b=a.1b;3i.2A="2B";3i.22=0;3i.1B=0;3i.17=a.17;3i.1b=a.1b;J o=1h.1C("1y:4r");o.28=b;o.2o=1V;o.3s=a.3s;o.3v=a.3v;c.1j(o);c.1j(d);g.1j(c);a.1i.1j(g);J e=1H A(o,g,a);e.2K=c;e.4r=d;e.1n="2d";e.N.x=x;e.N.y=y;e.N.w=1;e.N.h=1;v(e,{1f:"1Z",1t:"#1P"});11 e};J H=O(a){J b=1h.1C("1y:2e"),38=b.1s;38.2A="2B";38.22=0;38.1B=0;38.17=a.17;38.1b=a.1b;K(a.1i){a.1i.1j(b)}J c=1H A(b,b,a);1l(J f 1A a){K(f.3S(0)!="1m"&&1q a[f]=="O"){c[f]=(O(f){11 O(){J e=a[f].2C(a,P);b.1j(e[0].1Q);11 e}})(f)}}c.1n="2e";11 c};r.45=O(){J d,17,1b;K(1q P[0]=="28"){d=1h.52(P[0]);17=P[1];1b=P[2]}K(1q P[0]=="2Q"){d=P[0];17=P[1];1b=P[2]}K(1q P[0]=="1K"){d=1;x=P[0];y=P[1];17=P[2];1b=P[3]}K(!d){53 1H 56("3r 58 59 5a.");}K(!1h.4t["1y"]){1h.4t.5z("1y","5m:5g-6z-5h:1X");1h.5i().5j("1y\\\\:*","5k:3a(#2F#3r)")}J c=1h.1C("5l"),r=C.1i=1h.1C("1y:2e"),2n=c.1s,3t=r.1s;C.17=17;C.1b=1b;17=17||"5n";1b=1b||"5t";2n.5u="2h(0 "+17+" "+1b+" 0)";2n.2A="2B";3t.17=17;3t.1b=1b;r.3s=(17=="2p%"?17:19(17))+" "+(1b=="2p%"?1b:19(1b));r.3v="0 0";J b=1h.1C("1y:2h"),3q=b.1s;3q.22=3q.1B=0;3q.17=3t.17;3q.1b=3t.1b;b.5v=b.5w="f";r.1j(b);c.1j(r);K(d==1){1h.40.1j(c);2n.2A="2B";2n.22=x+"1G";2n.1B=y+"1G";2n.17=17;2n.1b=1b;d={1s:{17:17,1b:1b}}}1k{2n.17=d.1s.17=17;2n.1b=d.1s.1b=1b;K(d.2i){d.3L(c,d.2i)}1k{d.1j(c)}}1l(J e 1A C){d[e]=C[e]}d.4n=O(){J a=[];1l(J i=0,1o=r.3m.14;i<1o;i++){K(r.3m[i]!=b){a.2j(r.3m[i])}}1l(i=0,1o=a.14;i<1o;i++){r.2s(a[i])}};11 d};C.3n=O(){C.1i.1Q.1Q.2s(C.1i.1Q)}}K(n=="3h"){J u=O(g,h,j){J k=1h.24(j.23,"1e");k.1a("1t","1Z");K(j.1i){j.1i.1j(k)}J p=1H A(k,j);p.18=1V;p.1n="1e";p.13={x:0,y:0,1S:0,1M:0};p.3f=O(){9.18=1V;11 9};p.3J=O(){9.18=31;11 9};p.3g=O(x,y){J d=9.18?"M":"m";d+=19(x,10).1N(3)+" "+19(y,10).1N(3)+" ";J a=9[0].2X("d")||"";(a=="48,0")&&(a="");9[0].1a("d",a+d);9.13.x=(9.18?0:9.13.x)+19(x,10);9.13.y=(9.18?0:9.13.y)+19(y,10);9.N.1e=a+d;11 9};p.25=O(x,y){9.13.x=(9.18?0:9.13.x)+19(x,10);9.13.y=(9.18?0:9.13.y)+19(y,10);J d=9.18?"L":"l";d+=19(x,10).1N(3)+" "+19(y,10).1N(3)+" ";J a=9[0].2X("d")||"";9[0].1a("d",a+d);9.N.1e=a+d;11 9};p.4l=O(a,b,c,e,x,y){J d=9.18?"A":"a";d+=[19(a,10).1N(3),19(b,10).1N(3),0,c,e,19(x,10).1N(3),19(y,10).1N(3)].1z(" ");J f=9[0].2X("d")||"";9[0].1a("d",f+d);9.13.x=19(x,10);9.13.y=19(y,10);9.N.1e=f+d;11 9};p.5d=O(a,b,c){K(!c){11 9.25(a,b)}1k{J p={};J x=19(a,10);J y=19(b,10);J w=19(c,10);J d=9.18?"C":"c";J e=[+9.13.x+w,+9.13.y,x-w,y,x,y];1l(J i=0,1o=e.14;i<1o;i++){d+=e[i].1N(3)+" "}9.13.x=(9.18?0:9.13.x)+e[4];9.13.y=(9.18?0:9.13.y)+e[5];9.13.1S=e[2];9.13.1M=e[3];J f=9[0].2X("d")||"";9[0].1a("d",f+d);9.N.1e=f+d;11 9}};p.1J=O(){J p={},3U=[0,1,2,3,"s",5,"c"];J d=3U[P.14];K(9.18){d=d.2Y()}1l(J i=0,1o=P.14;i<1o;i++){d+=19(P[i],10).1N(3)+" "}9.13.x=(9.18?0:9.13.x)+19(P[P.14-2],10);9.13.y=(9.18?0:9.13.y)+19(P[P.14-1],10);9.13.1S=19(P[P.14-4],10);9.13.1M=19(P[P.14-3],10);J a=9.1O.2X("d")||"";9.1O.1a("d",a+d);9.N.1e=a+d;11 9};p.3Z=O(){J p={},3U=[0,1,"t",3,"q"];J d=3U[P.14];K(9.18){d=d.2Y()}1l(J i=0,1o=P.14;i<1o;i++){d+=19(P[i],10).1N(3)+" "}9.13.x=(9.18?0:9.13.x)+19(P[P.14-2],10);9.13.y=(9.18?0:9.13.y)+19(P[P.14-1],10);K(P.14!=2){9.13.36=19(P[P.14-4],10);9.13.35=19(P[P.14-3],10)}J a=9.1O.2X("d")||"";9.1O.1a("d",a+d);9.N.1e=a+d;11 9};p.4R=O(r,a){J R=.4P*r,2q=9.18,o=9;K(2q){9.3J();2q=O(){o.3f()}}1k{2q=O(){}}J b={l:O(){11{u:O(){o.1J(-R,0,-r,-(r-R),-r,-r)},d:O(){o.1J(-R,0,-r,r-R,-r,r)}}},r:O(){11{u:O(){o.1J(R,0,r,-(r-R),r,-r)},d:O(){o.1J(R,0,r,r-R,r,r)}}},u:O(){11{r:O(){o.1J(0,-R,-(R-r),-r,r,-r)},l:O(){o.1J(0,-R,R-r,-r,-r,-r)}}},d:O(){11{r:O(){o.1J(0,R,-(R-r),r,r,r)},l:O(){o.1J(0,R,R-r,r,-r,r)}}}};b[a[0]]()[a[1]]();2q();11 o};p.4q=O(){J a=9[0].2X("d")||"";9[0].1a("d",a+"Z ");9.N.1e=a+"Z ";11 9};K(1q h=="28"){p.N.1e=h;p.3f();C.3A(p,h)}K(g){v(p,g)}11 p};J z=O(o,a,b){J c=1h.24(b.23,a.1n+"5y");c.2L="5c-2D-"+b.4m++;K(a.2f&&a.2f.14){c.1a("5B",a.2f[0]);c.1a("3k",a.2f[1]);c.1a("5D",a.2f[2]);c.1a("5E",a.2f[3])}b.3z.1j(c);1l(J i=0,1o=a.1I.14;i<1o;i++){J d=1h.24(b.23,"3I");d.1a("3p",a.1I[i].3p?a.1I[i].3p:(i==0)?"0%":"2p%");d.1a("3I-2r",a.1I[i].2r||"#4z");K(1q a.1I[i].1F!="1L"){d.1a("3I-1F",a.1I[i].1F)}c.1j(d)};o.1a("1t","3a(#"+c.2L+")")};J I=O(o){K(o.3B){J a=o.1O.3o();o.3B.1a("5F","2Z("+[a.x,a.y].1z(",")+")")}};J v=O(o,c){J d={"-":[3,1],".":[1,1],"-.":[3,1,1,1],"-..":[3,1,1,1,1,1],". ":[1,3],"- ":[4,3],"--":[8,3],"- .":[4,3,1,3],"--.":[8,3,1,3],"--..":[8,3,1,3,1,3]},4k=O(o,a){a=d[a.2M().2T()];K(a){J b=o.N["1f-17"]||"1",3j={1c:b,4p:b,3j:0}[o.N["1f-3Y"]]||0,4j=[];1l(J i=0,1o=a.14;i<1o;i++){4j.2j(a[i]*b+((i%2)?1:-1)*3j)}a=4j.1z(",");o[0].1a("1f-2I",a)}};1l(J e 1A c){J f=c[e];o.N[e]=f;2b(e){1d"1e":K(o.1n=="1e"){o[0].1a("d","48,0");C.3A(o,f)}1d"2c":1d"1v":1d"x":o[0].1a(e,f);I(o);1g;1d"26":1d"1w":1d"y":o[0].1a(e,f);I(o);1g;1d"17":o[0].1a(e,f);1g;1d"1b":o[0].1a(e,f);1g;1d"2D":z(o[0],f,o.2k);1g;1d"1f-17":o[0].1s.5I=f;o[0].1a(e,f);K(o.N["1f-2I"]){4k(o,o.N["1f-2I"])}1g;1d"1f-2I":4k(o,f);1g;1d"2d":K(o.1n=="2d"){o[0].3m.14&&o[0].2s(o[0].2i);o[0].1j(1h.5b(f))}1g;1d"2S":o.3H(f,1V);1g;1d"2N":J g=f.2u(/[, ]+/);o.2Z(g[0],g[1]);1g;1d"2w":J g=f.2u(/[, ]+/);o.2w(g[0],g[1]);1g;1d"1t":J h=f.4s(/^3a\\(([^\\)]+)\\)$/i);K(h){J j=1h.24(o.2k.23,"3B");J k=1h.24(o.2k.23,"2y");j.2L="5c-3B-"+o.2k.4m++;j.1a("x",0);j.1a("y",0);j.1a("5K","5L");k.1a("x",0);k.1a("y",0);k.54(o.2k.3G,"51",h[1]);j.1j(k);J l=1h.1C("5O");l.1s.2A="2B";l.1s.1B="-50";l.1s.22="-50";l.5Q=O(){j.1a("17",9.4Z);j.1a("1b",9.4Y);k.1a("17",9.4Z);k.1a("1b",9.4Y);1h.40.2s(9);C.3d()};1h.40.1j(l);l.3T=h[1];o.2k.3z.1j(j);o[0].1s.1t="3a(#"+j.2L+")";o[0].1a("1t","3a(#"+j.2L+")");o.3B=j;I(o);1g}2F:J m=e.4i(/(\\-.)/g,O(w){11 w.1T(1).2Y()});o[0].1s[m]=f;o[0].1a(e,f);1g}}};J A=O(a,b){J X=0,Y=0;9[0]=a;9.1O=a;9.2k=b;9.N=9.N||{};9.2t=[];9.1m={2U:0,2W:0,2g:{3c:0,x:0,y:0},2z:1,2G:1}};A.1u.2Z=O(x,y){K(x==1L&&y==1L){11{x:9.1m.2U,y:9.1m.2W}}9.1m.2U+=+x;9.1m.2W+=+y;2b(9.1n){1d"2O":1d"32":9.1p({1v:9.N.1v+x,1w:9.N.1w+y});1g;1d"2h":1d"2y":1d"2d":9.1p({x:9.N.x+x,y:9.N.y+y});1g;1d"1e":J a=1r.3l(9.N.1e);a[0][1]+=+x;a[0][2]+=+y;9.1p({1e:a.1z(" ")});1g}11 9};A.1u.3H=O(a,b){K(a==1L){11 9.1m.2g.3c}J c=9.3o();K(b){9.1m.2g.3c=a}1k{9.1m.2g.3c+=a}K(9.1m.2g.3c){9.2t[0]=("3H("+9.1m.2g.3c+" "+(c.x+c.17/2)+" "+(c.y+c.1b/2)+")")}1k{9.2t[0]=""}9[0].1a("4h",9.2t.1z(" "));11 9};A.1u.4A=O(){9[0].1s.3Q="1Z";11 9};A.1u.4B=O(){9[0].1s.3Q="4C";11 9};A.1u.3n=O(){9[0].1Q.2s(9[0])};A.1u.3o=O(){11 9[0].3o()};A.1u.1p=O(){K(P.14==1&&1q P[0]=="28"){K(P[0]=="2N"){11 9.2Z()}11 9.N[P[0]]}K(P.14==1&&P[0]4E 3e){J a={};1l(J j 1A P[0]){a[P[0][j]]=9.N[P[0][j]]}11 a}K(P.14==2){J b={};b[P[0]]=P[1];v(9,b)}1k K(P.14==1&&1q P[0]=="2Q"){v(9,P[0])}11 9};A.1u.4H=O(){9[0].1Q.1j(9[0]);11 9};A.1u.4I=O(){K(9[0].1Q.2i!=9[0]){9[0].1Q.3L(9[0],9[0].1Q.2i)}11 9};J B=O(a,x,y,r){J b=1h.24(a.23,"2O");b.1a("1v",x);b.1a("1w",y);b.1a("r",r);b.1a("1t","1Z");b.1a("1f","#1P");K(a.1i){a.1i.1j(b)}J c=1H A(b,a);c.N=c.N||{};c.N.1v=x;c.N.1w=y;c.N.r=r;c.N.1f="#1P";c.1n="2O";11 c};J D=O(a,x,y,w,h,r){J b=1h.24(a.23,"2h");b.1a("x",x);b.1a("y",y);b.1a("17",w);b.1a("1b",h);K(r){b.1a("2c",r);b.1a("26",r)}b.1a("1t","1Z");b.1a("1f","#1P");K(a.1i){a.1i.1j(b)}J c=1H A(b,a);c.N=c.N||{};c.N.x=x;c.N.y=y;c.N.17=w;c.N.1b=h;c.N.1f="#1P";K(r){c.N.2c=c.N.26=r}c.1n="2h";11 c};J E=O(a,x,y,b,c){J d=1h.24(a.23,"32");d.1a("1v",x);d.1a("1w",y);d.1a("2c",b);d.1a("26",c);d.1a("1t","1Z");d.1a("1f","#1P");K(a.1i){a.1i.1j(d)}J e=1H A(d,a);e.N=e.N||{};e.N.1v=x;e.N.1w=y;e.N.2c=b;e.N.26=c;e.N.1f="#1P";e.1n="32";11 e};J F=O(a,b,x,y,w,h){J c=1h.24(a.23,"2y");c.1a("x",x);c.1a("y",y);c.1a("17",w);c.1a("1b",h);c.1a("5V","1Z");c.54(a.3G,"51",b);K(a.1i){a.1i.1j(c)}J d=1H A(c,a);d.N=d.N||{};d.N.x=x;d.N.y=y;d.N.17=w;d.N.1b=h;d.1n="2y";11 d};J G=O(a,x,y,b){J c=1h.24(a.23,"2d");c.1a("x",x);c.1a("y",y);c.1a("2d-5W","5X");c.1a("1t","#1P");K(b){c.1j(1h.5b(b))}K(a.1i){a.1i.1j(c)}J d=1H A(c,a);d.N=d.N||{};d.N.x=x;d.N.y=y;d.N.1t="#1P";d.1n="2d";11 d};J H=O(a){J b=1h.24(a.23,"g");K(a.1i){a.1i.1j(b)}J i=1H A(b,a);1l(J f 1A a){K(f[0]!="1m"&&1q a[f]=="O"){i[f]=(O(f){11 O(){J e=a[f].2C(a,P);b.1j(e[0]);11 e}})(f)}}i.1n="2e";11 i};r.45=O(){K(1q P[0]=="28"){J a=1h.52(P[0]);J b=P[1];J c=P[2]}K(1q P[0]=="2Q"){J a=P[0];J b=P[1];J c=P[2]}K(1q P[0]=="1K"){J a=1,x=P[0],y=P[1],b=P[2],c=P[3]}K(!a){53 1H 56("3h 58 59 5a.");}C.1i=1h.24(C.23,"2k");C.1i.1a("17",b||4X);C.17=b||4X;C.1i.1a("1b",c||4V);C.1b=c||4V;K(a==1){1h.40.1j(C.1i);C.1i.1s.2A="2B";C.1i.1s.22=x+"1G";C.1i.1s.1B=y+"1G"}1k{K(a.2i){a.3L(C.1i,a.2i)}1k{a.1j(C.1i)}}a={1i:C.1i,4n:O(){4U(9.1i.2i){9.1i.2s(9.1i.2i)}9.3z=1h.24(C.23,"3z");9.4m=0;9.1i.1j(9.3z)}};1l(J d 1A C){K(d!="61"){a[d]=C[d]}}a.4n();11 a};C.3n=O(){C.1i.1Q.2s(C.1i)};C.23="4T://4S.4Q.4O/68/2k";C.3G="4T://4S.4Q.4O/69/3G"}K(n=="3r"||n=="3h"){C.2O=O(x,y,r){11 B(9,x,y,r)};C.2h=O(x,y,w,h,r){11 D(9,x,y,w,h,r)};C.32=O(x,y,a,b){11 E(9,x,y,a,b)};C.1e=O(a,b){11 u(a,b,9)};C.2y=O(a,x,y,w,h){11 F(9,a,x,y,w,h)};C.2d=O(x,y,a){11 G(9,x,y,a)};C.2e=O(){11 H(9)};C.6a=O(x,y,w,h,a,b,c){c=c||"#1P";J p=9.1e({1f:c,"1f-17":1}).3g(x,y).25(x+w,y).25(x+w,y+h).25(x,y+h).25(x,y),4g=h/b,4f=w/a;1l(J i=1;i<b;i++){p.3g(x,y+i*4g).25(x+w,y+i*4g)}1l(J i=1;i<a;i++){p.3g(x+i*4f,y).25(x+i*4f,y+h)}11 p};C.3d=O(){K(r.1n=="3h"){J a=C.2h(-C.17,-C.1b,C.17*3,C.1b*3).1p({1f:"1Z"});4e(O(){a.3n()},0)}};A.1u.3I=O(){3V(9.39)};A.1u.2w=O(x,y){K(x==1L&&y==1L){11{x:9.1m.2z,y:9.1m.2G}}y=y||x;J a,2V,1v,1w;K(x!=0&&!(x==1&&y==1)){J b=15.1c(x/15.4o(x)),27=15.1c(y/15.4o(y)),s=9.1O.1s;a=9.1p("x");2V=9.1p("y");1v=9.1p("1v");1w=9.1p("1w");K(b!=1||27!=1){K(9.2t){9.2t[2]="2w("+[b,27]+")";9.1O.1a("4h",9.2t.1z(" "));a=(b<0)?-9.1p("x")-9.N.17*x*b/9.1m.2z:9.1p("x");2V=(27<0)?-9.1p("y")-9.N.1b*y*27/9.1m.2G:9.1p("y");1v=9.1p("1v")*b;1w=9.1p("1w")*27}1k{s.4M="6f:6g.6h.6i(6j="+b+", 6k=0, 6l=0, 6m="+27+", 6n=0, 6o=0, 6p=\'6q 6r\', 6s=\'6t\')"}}1k{K(9.2t){9.2t[2]="";9.1O.1a("4h",9.2t.1z(" "))}1k{s.4M=""}}2b(9.1n){1d"2h":1d"2y":9.1p({17:9.N.17*x*b/9.1m.2z,1b:9.N.1b*y*27/9.1m.2G,x:a,y:2V});1g;1d"2O":1d"32":9.1p({2c:9.N.2c*x*b/9.1m.2z,26:9.N.26*y*27/9.1m.2G,r:9.N.r*x*27/9.1m.2z,1v:1v,1w:1w});1g;1d"1e":J c=1r.3l(1r.2P(9.1p("1e"))),4d=1V,2R=1r.3K(9.N.1e),a=-2R.17*(x-1)/2,2V=-2R.1b*(y-1)/2;1l(J i=0,1o=c.14;i<1o;i++){K(c[i][0].2Y()=="M"&&4d){4L}1k{4d=31}K(c[i][0].2Y()=="A"){c[i][c[i].14-2]*=x*b;c[i][c[i].14-1]*=y*27}1k{1l(J j=1,1Y=c[i].14;j<1Y;j++){c[i][j]*=(j%2)?x*b/9.1m.2z:y*27/9.1m.2G}}}J d=1r.3K(c),a=2R.x+2R.17/2-d.x-d.17/2,2V=2R.y+2R.1b/2-d.y-d.1b/2;c=1r.3l(c);c[0][1]+=a;c[0][2]+=2V;9.1p({1e:c.1z(" ")})}}9.1m.2z=x;9.1m.2G=y;11 9};A.1u.6w=O(c,d,e){3V(9.39);J f={},2E={},1R={},t={x:0,y:0};1l(J g 1A c){K(g 1A 3N){f[g]=9.1p(g);K(1q f[g]=="1L"){f[g]=q[g]}2E[g]=c[g];2b(3N[g]){1d"1K":1R[g]=(2E[g]-f[g])/d;1g;1d"3O":f[g]=1r.4c(f[g]);J h=1r.4c(2E[g]);1R[g]={r:(h.r-f[g].r)/d,g:(h.g-f[g].g)/d,b:(h.b-f[g].b)/d};1g;1d"1e":J k=1r.4J(f[g],2E[g]);f[g]=k[0];2E[g]=k[1];1R[g]=[];1l(J i=0,1o=f[g].14;i<1o;i++){1R[g][i]=[0];1l(J j=1,1Y=f[g][i].14;j<1Y;j++){1R[g][i][j]=(2E[g][i][j]-f[g][i][j])/d}}1g;1d"3P":J l=c[g].2u(/[, ]+/);K(g=="2N"){f[g]=[0,0];1R[g]=[l[0]/d,l[1]/d]}1k{f[g]=f[g].2u(/[, ]+/);1R[g]=[(l[0]-f[g][0])/d,(l[1]-f[g][0])/d]}2E[g]=l}}}J m=1H 3C(),3F=0,2a=9;(O(){J a=(1H 3C()).3E()-m.3E(),3D={},1W;K(a<d){1l(J b 1A f){2b(3N[b]){1d"1K":1W=+f[b]+a*1R[b];1g;1d"3O":1W="4b("+[15.1c(f[b].r+a*1R[b].r),15.1c(f[b].g+a*1R[b].g),15.1c(f[b].b+a*1R[b].b)].1z(",")+")";1g;1d"1e":1W=[];1l(J i=0,1o=f[b].14;i<1o;i++){1W[i]=[f[b][i][0]];1l(J j=1,1Y=f[b][i].14;j<1Y;j++){1W[i][j]=f[b][i][j]+a*1R[b][i][j]}1W[i]=1W[i].1z(" ")}1W=1W.1z(" ");1g;1d"3P":K(b=="2N"){J x=1R[b][0]*(a-3F),y=1R[b][1]*(a-3F);t.x+=x;t.y+=y;1W=[x,y].1z(" ")}1k{1W=[+f[b][0]+a*1R[b][0],+f[b][1]+a*1R[b][1]].1z(" ")}1g}K(b=="21-3x"){3D[b]=1W+"1G"}1k{3D[b]=1W}}2a.1p(3D);2a.39=4e(P.3w,0);C.3d()}1k{K(t.x||t.y){2a.2Z(-t.x,-t.y)}2a.1p(c);3V(2a.39);C.3d();(1q e=="O")&&e.30(2a)}3F=a})();11 9};A.1u.6A=O(x,y,d,e){3V(9.39);K("1v"1A 9.N||"x"1A 9.N){J f=("1v"1A 9.N),X=9.N.1v||9.N.x,Y=9.N.1w||9.N.y;K(x==X&&y==Y){11 9}J g=y-Y,4G=x-X;J h=1H 3C(),2a=9;(O(){J a=(1H 3C()).3E()-h.3E();K(a<d){J b=X+a*4G/d;J c=Y+a*g/d;2a.1p(f?{1v:b,1w:c}:{x:b,y:c});2a.39=4e(P.3w,1);C.3d()}1k{2a.1p(f?{1v:x,1w:y}:{x:x,y:y});C.3d();e&&e.30(2a)}})()}11 9};C.3A=O(p,g){J h={M:O(x,y){9.3g(x,y)},C:O(a,b,c,d,e,f){9.1J(a,b,c,d,e,f)},Q:O(a,b,c,d){9.3Z(a,b,c,d)},T:O(x,y){9.3Z(x,y)},S:O(a,b,c,d){p.1J(a,b,c,d)},L:O(x,y){p.25(x,y)},H:O(x){9.25(x,9.13.y)},V:O(y){9.25(9.13.x,y)},A:O(a,b,c,d,e,x,y){9.4l(a,b,d,e,x,y)},Z:O(){9.4q()}};g=1r.3u(g);1l(J i=0,1o=g.14;i<1o;i++){J b=g[i].6E();h[b].2C(p,g[i])}};11 r}1k{11 O(){}}})((!4F.6G)?"3r":"3h");1r.1X=!(1r.2k=(1r.1n=="3h"));K(1r.1X&&4F.6H){1r.1n="6I 6J";1r.1X=1r.2k=31}1r.2M=O(){11"6K 6L 6M "+9.1n+".\\6O 6P 6Q "+6R("6S%6W%20")+9.4v};1r.3M=O(a,c,d){K(1q a=="2Q"&&"h"1A a&&"s"1A a&&"b"1A a){d=a.b;c=a.s;a=a.h}J e,1E,1D;K(d==0){11{r:0,g:0,b:0,3R:"#1P"}}1k{J i=15.6Y(a*6),f=(a*6)-i,p=d*(1-c),q=d*(1-(c*f)),t=d*(1-(c*(1-f)));[O(){e=d;1E=t;1D=p},O(){e=q;1E=d;1D=p},O(){e=p;1E=d;1D=t},O(){e=p;1E=q;1D=d},O(){e=t;1E=p;1D=d},O(){e=d;1E=p;1D=q},O(){e=d;1E=t;1D=p}][i]()}J h={r:e,g:1E,b:1D};e*=37;1E*=37;1D*=37;J r=15.1c(e).2M(16);K(r.14==1){r="0"+r}J g=15.1c(1E).2M(16);K(g.14==1){g="0"+g}J b=15.1c(1D).2M(16);K(b.14==1){b="0"+b}h.3R="#"+r+g+b;11 h};1r.6Z=O(a,b,c){K(1q a=="2Q"&&"r"1A a&&"g"1A a&&"b"1A a){c=a.b;b=a.g;a=a.r}K(1q a=="28"&&a.3S(0)=="#"){K(a.14==4){c=1x(a.1T(3),16);b=1x(a.1T(2,3),16);a=1x(a.1T(1,2),16)}1k{c=1x(a.1T(5),16);b=1x(a.1T(3,5),16);a=1x(a.1T(1,3),16)}}K(a>1||b>1||c>1){a/=37;b/=37;c/=37}J d=15.3W(a,b,c),33=15.33(a,b,c),2l,46,4y=d;K(33==d){11{h:0,s:0,b:d}}1k{J e=(d-33);46=e/d;K(a==d){2l=(b-c)/e}1k K(b==d){2l=2+((c-a)/e)}1k{2l=4+((a-b)/e)}2l/=6;K(2l<0){2l+=1}K(2l>1){2l-=1}}11{h:2l,s:46,b:4y}};1r.4c=O(a){J c,1E,1D,d=a.4s(/^\\s*((#[a-f\\d]{6})|(#[a-f\\d]{3})|4b\\(\\s*(\\d+,\\s*\\d+,\\s*\\d+)\\s*\\)|4b\\(\\s*(\\d+%,\\s*\\d+%,\\s*\\d+%)\\s*\\)|4x\\(\\s*(\\d+,\\s*\\d+,\\s*\\d+)\\s*\\)|4x\\(\\s*(\\d+%,\\s*\\d+%,\\s*\\d+%)\\s*\\))\\s*$/i);K(d){K(d[2]){1D=1x(d[2].1T(5),16);1E=1x(d[2].1T(3,5),16);c=1x(d[2].1T(1,3),16)}K(d[3]){1D=1x(d[3].1T(3)+d[3].1T(3),16);1E=1x(d[3].1T(2,3)+d[3].1T(2,3),16);c=1x(d[3].1T(1,2)+d[3].1T(1,2),16)}K(d[4]){d=d[4].2u(/\\s*,\\s*/);c=1x(d[0],10);1E=1x(d[1],10);1D=1x(d[2],10)}K(d[5]){d=d[5].2u(/\\s*,\\s*/);c=1x(d[0],10)*2.55;1E=1x(d[1],10)*2.55;1D=1x(d[2],10)*2.55}K(d[6]){d=d[6].2u(/\\s*,\\s*/);c=1x(d[0],10);1E=1x(d[1],10);1D=1x(d[2],10);11 9.3M(c,1E,1D)}K(d[7]){d=d[7].2u(/\\s*,\\s*/);c=1x(d[0],10)*2.55;1E=1x(d[1],10)*2.55;1D=1x(d[2],10)*2.55;11 9.3M(c,1E,1D)}J d={r:c,g:1E,b:1D};J r=15.1c(c).2M(16);(r.14==1)&&(r="0"+r);J g=15.1c(1E).2M(16);(g.14==1)&&(g="0"+g);J b=15.1c(1D).2M(16);(b.14==1)&&(b="0"+b);d.3R="#"+r+g+b;11 d}};1r.4w=O(a){J b=P.3w.2m=P.3w.2m||{h:0,s:1,b:a||.75};J c=9.3M(b.h,b.s,b.b);b.h+=.73;K(b.h>1){b.h=0;b.s-=.2;K(b.s<=0){P.3w.2m={h:0,s:1,b:b.b}}}11 c.3R};1r.4w.76=O(){9.2m=1L};1r.2P=O(e){J f={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0};J g=[];e.4i(/([77])\\s*((-?\\d*\\.?\\d*\\s*,?\\s*)+)/4u,O(a,b,c){J d=[],3X=b.2T();c.4i(/(-?\\d*\\.?\\d*)\\s*,?\\s*/4u,O(a,b){b&&d.2j(+b)});4U(d.14>=f[3X]){g.2j([b].79(d.2v(0,f[3X])));K(!f[3X]){1g}}});11 g};1r.3K=O(a){J b=a;K(1q a=="28"){b=9.2P(a)}b=9.3u(b);J x=[],y=[],14=0;1l(J i=0,1o=b.14;i<1o;i++){2b(b[i][0]){1d"Z":1g;1d"A":x.2j(b[i][b[i].14-2]);y.2j(b[i][b[i].14-1]);1g;2F:1l(J j=1,1Y=b[i].14;j<1Y;j++){K(j%2){x.2j(b[i][j])}1k{y.2j(b[i][j])}}}}J c=15.33.2C(15,x),44=15.33.2C(15,y);11{x:c,y:44,17:15.3W.2C(15,x)-c,1b:15.3W.2C(15,y)-44,X:x,Y:y}};1r.3l=O(a){J b=[];K(1q a=="28"){a=9.2P(a)}J x=0,y=0,2m=0;K(a[0][0]=="M"){x=a[0][1];y=a[0][2];2m++;b.2j(a[0])}1l(J i=2m,1o=a.14;i<1o;i++){b[i]=[];K(a[i][0]!=a[i][0].2T()){b[i][0]=a[i][0].2T();2b(b[i][0]){1d"a":b[i][1]=a[i][1];b[i][2]=a[i][2];b[i][3]=0;b[i][4]=a[i][4];b[i][5]=a[i][5];b[i][6]=+(a[i][6]-x).1N(3);b[i][7]=+(a[i][7]-y).1N(3);1g;1d"v":b[i][1]=+(a[i][1]-y).1N(3);1g;2F:1l(J j=1,1Y=a[i].14;j<1Y;j++){b[i][j]=+(a[i][j]-((j%2)?x:y)).1N(3)}}}1k{b[i]=a[i]}2b(b[i][0]){1d"z":1g;1d"h":x+=b[i][b[i].14-1];1g;1d"v":y+=b[i][b[i].14-1];1g;2F:x+=b[i][b[i].14-2];y+=b[i][b[i].14-1]}}11 b};1r.3u=O(a){J b=[];K(1q a=="28"){a=9.2P(a)}J x=0,y=0,2m=0;K(a[0][0]=="M"){x=+a[0][1];y=+a[0][2];2m++;b[0]=a[0]}1l(J i=2m,1o=a.14;i<1o;i++){b[i]=[];K(a[i][0]!=a[i][0].2Y()){b[i][0]=a[i][0].2Y();2b(b[i][0]){1d"A":b[i][1]=a[i][1];b[i][2]=a[i][2];b[i][3]=0;b[i][4]=a[i][4];b[i][5]=a[i][5];b[i][6]=+(a[i][6]+x).1N(3);b[i][7]=+(a[i][7]+y).1N(3);1g;1d"V":b[i][1]=+a[i][1]+y;1g;2F:1l(J j=1,1Y=a[i].14;j<1Y;j++){b[i][j]=+a[i][j]+((j%2)?x:y)}}}1k{b[i]=a[i]}2b(b[i][0]){1d"Z":1g;1d"H":x=b[i][1];1g;1d"V":y=b[i][1];1g;2F:x=b[i][b[i].14-2];y=b[i][b[i].14-1]}}11 b};1r.4J=O(e,f){J g=[9.3u(9.2P(e)),9.3u(9.2P(f))],N=[{x:0,y:0,1S:0,1M:0,X:0,Y:0},{x:0,y:0,1S:0,1M:0,X:0,Y:0}],43=O(a,d){K(!a){11["U"]}2b(a[0]){1d"M":d.X=a[1];d.Y=a[2];1g;1d"S":J b=d.x+(d.x-(d.1S||d.x));J c=d.y+(d.y-(d.1M||d.y));a=["C",b,c,a[1],a[2],a[3],a[4]];1g;1d"T":J b=d.x+(d.x-(d.1S||d.x));J c=d.y+(d.y-(d.1M||d.y));a=["Q",b,c,a[1],a[2]];1g;1d"H":a=["L",a[1],d.y];1g;1d"V":a=["L",d.x,a[1]];1g;1d"Z":a=["L",d.X,d.Y];1g}11 a},42=O(a,b,i){K(g[a][i][0]=="M"&&g[b][i][0]!="M"){g[b].2v(i,0,["M",N[b].x,N[b].y]);N[a].1S=g[a][i][g[a][i].14-4]||0;N[a].1M=g[a][i][g[a][i].14-3]||0;N[a].x=g[a][i][g[a][i].14-2];N[a].y=g[a][i][g[a][i].14-1];11 1V}1k K(g[a][i][0]=="L"&&g[b][i][0]=="C"){g[a][i]=["C",N[a].x,N[a].y,g[a][i][1],g[a][i][2],g[a][i][1],g[a][i][2]]}1k K(g[a][i][0]=="L"&&g[b][i][0]=="Q"){g[a][i]=["Q",g[a][i][1],g[a][i][2],g[a][i][1],g[a][i][2]]}1k K(g[a][i][0]=="Q"&&g[b][i][0]=="C"){J x=g[b][i][g[b][i].14-2];J y=g[b][i][g[b][i].14-1];g[b].2v(i+1,0,["Q",x,y,x,y]);g[a].2v(i,0,["C",N[a].x,N[a].y,N[a].x,N[a].y,N[a].x,N[a].y]);i++;N[b].1S=g[b][i][g[b][i].14-4]||0;N[b].1M=g[b][i][g[b][i].14-3]||0;N[b].x=g[b][i][g[b][i].14-2];N[b].y=g[b][i][g[b][i].14-1];11 1V}1k K(g[a][i][0]=="A"&&g[b][i][0]=="C"){J x=g[b][i][g[b][i].14-2];J y=g[b][i][g[b][i].14-1];g[b].2v(i+1,0,["A",0,0,g[a][i][3],g[a][i][4],g[a][i][5],x,y]);g[a].2v(i,0,["C",N[a].x,N[a].y,N[a].x,N[a].y,N[a].x,N[a].y]);i++;N[b].1S=g[b][i][g[b][i].14-4]||0;N[b].1M=g[b][i][g[b][i].14-3]||0;N[b].x=g[b][i][g[b][i].14-2];N[b].y=g[b][i][g[b][i].14-1];11 1V}1k K(g[a][i][0]=="U"){g[a][i][0]=g[b][i][0];1l(J j=1,1Y=g[b][i].14;j<1Y;j++){g[a][i][j]=(j%2)?N[a].x:N[a].y}}11 31};1l(J i=0;i<15.3W(g[0].14,g[1].14);i++){g[0][i]=43(g[0][i],N[0]);g[1][i]=43(g[1][i],N[1]);K(g[0][i][0]!=g[1][i][0]&&(42(0,1,i)||42(1,0,i))){4L}N[0].1S=g[0][i][g[0][i].14-4]||0;N[0].1M=g[0][i][g[0][i].14-3]||0;N[0].x=g[0][i][g[0][i].14-2];N[0].y=g[0][i][g[0][i].14-1];N[1].1S=g[1][i][g[1][i].14-4]||0;N[1].1M=g[1][i][g[1][i].14-3]||0;N[1].x=g[1][i][g[1][i].14-2];N[1].y=g[1][i][g[1][i].14-1]}11 g};',62,448,'|||||||||this||||||||||||||||||||||||||||||||||||var|if|||attrs|function|arguments||||||||||||return||last|length|Math||width|isAbsolute|parseFloat|setAttribute|height|round|case|path|stroke|break|document|canvas|appendChild|else|for|_|type|ii|attr|typeof|Raphael|style|fill|prototype|cx|cy|parseInt|rvml|join|in|top|createElement|blue|green|opacity|px|new|dots|curveTo|number|undefined|by|toFixed|node|000|parentNode|diff|bx|substring|Group|true|now|vml|jj|none||font|left|svgns|createElementNS|lineTo|ry|diry|string||that|switch|rx|text|group|vector|rt|rect|firstChild|push|svg|hue|start|cs|on|100|rollback|color|removeChild|transformations|split|splice|scale|Path|image|sx|position|absolute|apply|gradient|to|default|sy|setBox|dasharray|os|shape|id|toString|translation|circle|parsePathString|object|dim|rotation|toLowerCase|tx|dy|ty|getAttribute|toUpperCase|translate|call|false|ellipse|min|gl|qy|qx|255|els|animation_in_progress|url|ol|deg|safari|Array|absolutely|moveTo|SVG|gs|butt|y1|pathToRelative|childNodes|remove|getBBox|offset|bs|VML|coordsize|rs|pathToAbsolute|coordorigin|callee|size|getElementsByTagName|defs|pathfinder|pattern|Date|set|getTime|prev|xlink|rotate|stop|relatively|pathDimensions|insertBefore|hsb2rgb|availableAnimAttrs|colour|csv|display|hex|charAt|src|command|clearTimeout|max|name|linecap|qcurveTo|body|weight|edgeCases|processPath|miny|_create|saturation|family|M0|linejoin|miterlimit|rgb|getRGB|skip|setTimeout|columnWidth|rowHeight|transform|replace|dashes|addDashes|arcTo|gradients|clear|abs|square|andClose|textpath|match|namespaces|ig|version|getColor|hsb|brightness|fff|hide|show|block|Arial|instanceof|window|dx|toFront|toBack|pathEqualiser|oval|continue|filter|class|org|5522|w3|addRoundedCorner|www|http|while|200|miter|320|offsetHeight|offsetWidth|9999em|href|getElementById|throw|setAttributeNS||Error||container|not|found|createTextNode|raphael|cplineTo|svgattr|method|schemas|com|createStyleSheet|addRule|behavior|div|urn|320px|ar|at|wr|wa|sqrt|200px|clip|filled|stroked|shortdash|Gradient|add|shortdot|x1|shortdashdot|x2|y2|patternTransform|shortdashdotdot|dot|strokeWidth|RotY|patternUnits|userSpaceOnUse|flat|qb|img|textpathok|onload|ps|endcap|dash|longdash|preserveAspectRatio|anchor|middle|radial|qcurve|arg|create|slice|pos|joinstyle|arcsize|className|roundrect|2000|1999|drawGrid|dashdot|longdashdot|longdashdotdot|solid|progid|DXImageTransform|Microsoft|Matrix|M11|M12|M21|M22|Dx|Dy|sizingmethod|auto|expand|filtertype|bilinear|dashstyle|focus|animate|270|tile|microsoft|animateTo|item|angle|linear|shift|tagName|SVGAngle|CanvasRenderingContext2D|Canvas|only|Your|browser|supports|gradientTitle|nYou|are|running|unescape|Rapha|color2|null|16px|EBl|fontFamily|floor|rgb2hsb|fontSize|opacity2|fontWeight|075|focusposition||reset|achlmqstvz|RotX|concat|colors|value|Scale|atan'.split('|'),0,{}))
+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}('J 1r=(N(n){J r=N(){11 r.44.2z(r,P)};r.5a="0.6.2";r.1p=n;J q={1E:0,1D:0,1u:"#4X","1u-1B":1,1X:\'6U "4W"\',"1X-4a":\'"4W"\',"1X-3A":"16",2v:0,1b:0,1B:1,1e:"4b,0",r:0,2U:0,26:0,2c:0,2w:"1 1",1g:"#1P","1g-2E":"","1g-3y":"3c","1g-4c":"3c","1g-4d":0,"1g-1B":1,"1g-17":1,2C:"0 0",17:0,x:0,y:0},3W={1E:"1M",1D:"1M",1u:"3X","1u-1B":"1M","1X-3A":"1M",1b:"1M",1B:"1M",1e:"1e",r:"1M",2U:"1M",26:"1M",2c:"1M",2w:"3B",1g:"3X","1g-1B":"1M","1g-17":"1M",2C:"3B",17:"1M",x:"1M",y:"1M"},C={};K(n=="3x"){J u=N(i,j,l){J g=1i.1z("1x:2e"),3h=g.1t;3h.2D="2y";3h.1Z=0;3h.1C=0;3h.17=l.17+"1G";3h.1b=l.1b+"1G";J m=1i.1z("1x:2I"),3f=m.1t;3f.17=l.17+"1G";3f.1b=l.1b+"1G";m.1e="";K(i["4s"]){m.66=i["4s"]}m.3j=9.3j;m.3w=9.3w;g.1j(m);l.1l.1j(g);J p=1L A(m,g,l);p.18=1V;p.1p="1e";p.1e=[];p.13={x:0,y:0,1Q:0,1R:0,18:1V};p.2A="";p.3e=N(){9.18=1V;11 9};p.3F=N(){9.18=2W;11 9};p.3b=N(x,y){J d=9.18?"m":"t";d+=15.1c(19(x,10))+" "+15.1c(19(y,10));9.1f.1e=9.2A+=d;9.13.x=(9.18?0:9.13.x)+19(x,10);9.13.y=(9.18?0:9.13.y)+19(y,10);9.13.18=9.18;9.O.1e+=(9.18?"M":"m")+[x,y];11 9};p.25=N(x,y){J d=9.18?"l":"r";d+=15.1c(19(x,10))+" "+15.1c(19(y,10));9[0].1e=9.2A+=d;9.13.x=(9.18?0:9.13.x)+19(x,10);9.13.y=(9.18?0:9.13.y)+19(y,10);9.13.18=9.18;9.O.1e+=(9.18?"L":"l")+[x,y];11 9};p.46=N(a,b,c,e,f,g){f=(9.18?0:9.13.x)+f;g=(9.18?0:9.13.y)+g;J h=9.13.x,3l=9.13.y,x=(h-f)/2,y=(3l-g)/2,k=(c==e?-1:1)*15.5u(15.40(a*a*b*b-a*a*y*y-b*b*x*x)/(a*a*y*y+b*b*x*x)),1E=k*a*y/b+(h+f)/2,1D=k*-b*x/a+(3l+g)/2,d=e?(9.18?"5s":"5r"):(9.18?"5q":"5p"),1Z=15.1c(1E-a),1C=15.1c(1D-b);d+=[1Z,1C,15.1c(1Z+a*2),15.1c(1C+b*2),15.1c(h),15.1c(3l),15.1c(19(f,10)),15.1c(19(g,10))].1y(", ");9.1f.1e=9.2A+=d;9.13.x=(9.18?0:9.13.x)+19(f,10);9.13.y=(9.18?0:9.13.y)+19(g,10);9.13.18=9.18;9.O.1e+=(9.18?"A":"a")+[a,b,0,c,e,f,g];11 9};p.5d=N(a,b,c){K(!c){11 9.25(a,b)}1k{J x=15.1c(15.1c(19(a,10)*2s)/2s),y=15.1c(15.1c(19(b,10)*2s)/2s),w=15.1c(15.1c(19(c,10)*2s)/2s),d=9.18?"c":"v",1s=[15.1c(9.13.x)+w,15.1c(9.13.y),x-w,y,x,y],5e=[9.13.x+c,9.13.y,a-c,b,a,b];d+=1s.1y(" ")+" ";9.13.x=(9.18?0:9.13.x)+1s[4];9.13.y=(9.18?0:9.13.y)+1s[5];9.13.1Q=1s[2];9.13.1R=1s[3];9.1f.1e=9.2A+=d;9.O.1e+=(9.18?"C":"c")+5e;11 9}};p.1J=N(){J d=9.18?"c":"v";K(P.14==6){9.13.1Q=(9.18?0:9.13.x)+19(P[2],10);9.13.1R=(9.18?0:9.13.y)+19(P[3],10);9.13.x=(9.18?0:9.13.x)+19(P[4],10);9.13.y=(9.18?0:9.13.y)+19(P[5],10);d+=[15.1c(19(P[0],10)),15.1c(19(P[1],10)),15.1c(19(P[2],10)),15.1c(19(P[3],10)),15.1c(19(P[4],10)),15.1c(19(P[5],10))].1y(" ")+" ";9.13.18=9.18;9.O.1e+=(9.18?"C":"c")+3i.1v.2l.3a(P,0,P.14)}K(P.14==4){J a=9.13.x*2-9.13.1Q;J b=9.13.y*2-9.13.1R;9.13.1Q=(9.18?0:9.13.x)+19(P[0],10);9.13.1R=(9.18?0:9.13.y)+19(P[1],10);9.13.x=(9.18?0:9.13.x)+19(P[2],10);9.13.y=(9.18?0:9.13.y)+19(P[3],10);d+=[15.1c(a),15.1c(b),15.1c(19(P[0],10)),15.1c(19(P[1],10)),15.1c(19(P[2],10)),15.1c(19(P[3],10))].1y(" ")+" ";9.O.1e+=(9.18?"S":"s")+3i.1v.2l.3a(P,0,P.14)}9.1f.1e=9.2A+=d;11 9};p.3C=N(){J d="5D";K(P.14==4){9.13.39=(9.18?0:9.13.x)+19(P[0],10);9.13.38=(9.18?0:9.13.y)+19(P[1],10);9.13.x=(9.18?0:9.13.x)+19(P[2],10);9.13.y=(9.18?0:9.13.y)+19(P[3],10);d+=[15.1c(9.13.39),15.1c(9.13.38),15.1c(9.13.x),15.1c(9.13.y)].1y(" ")+" ";9.13.18=9.18;9.O.1e+=(9.18?"Q":"q")+3i.1v.2l.3a(P,0,P.14)}K(P.14==2){9.13.39=9.13.x*2-9.13.39;9.13.38=9.13.y*2-9.13.38;9.13.x=(9.18?0:9.13.x)+19(P[2],10);9.13.y=(9.18?0:9.13.y)+19(P[3],10);d+=[15.1c(9.13.39),15.1c(9.13.38),15.1c(9.13.x),15.1c(9.13.y)].1y(" ")+" ";9.O.1e+=(9.18?"T":"t")+3i.1v.2l.3a(P,0,P.14)}9.1f.1e=9.2A+=d;9.1e.2j({1p:"5E",5F:[].5H.3a(P,0),5K:9.18});11 9};p.4T=N(r,a){J R=.4R*r,2n=9.18,o=9;K(2n){9.3F();2n=N(){o.3e()}}1k{2n=N(){}}J b={l:N(){11{u:N(){o.1J(-R,0,-r,-(r-R),-r,-r)},d:N(){o.1J(-R,0,-r,r-R,-r,r)}}},r:N(){11{u:N(){o.1J(R,0,r,-(r-R),r,-r)},d:N(){o.1J(R,0,r,r-R,r,r)}}},u:N(){11{r:N(){o.1J(0,-R,-(R-r),-r,r,-r)},l:N(){o.1J(0,-R,R-r,-r,-r,-r)}}},d:N(){11{r:N(){o.1J(0,R,-(R-r),r,r,r)},l:N(){o.1J(0,R,R-r,r,-r,r)}}}};b[a.3G(0)]()[a.3G(1)]();2n();11 o};p.4f=N(){9.1f.1e=(9.2A+="x e");9.O.1e+="z";11 9};K(1q j=="2d"){p.3e();p.O.1e="";C.3m(p,j)}p.2N();v(p,i);K(i.2v){z(p,i.2v)}11 p};J v=N(o,a){J s=o[0].1t;o.O=o.O||{};1m(J b 1I a){o.O[b]=a[b]}K(a.1e&&o.1p=="1e"){o.2A="";o.1e=[];C.3m(o,a.1e)}K(a.2U!=5R){o.1W.1t.2U=a.2U}K(a.2C){J c=a.2C.2u(/[, ]+/);o.2M(c[0],c[1])}K(a.2w){J c=a.2w.2u(/[, ]+/);o.2w(c[0],c[1])}a["1X-4a"]&&(s.5X=a["1X-4a"]);a["1X-3A"]&&(s.5Y=a["1X-3A"]);a["1X"]&&(s.1X=a["1X"]);a["1X-3Y"]&&(s.60=a["1X-3Y"]);K(1q a.1B!="1N"||1q a["1g-17"]!="1N"||1q a.1u!="1N"||1q a.1g!="1N"){o=o.2I||o.1f;J d=(o.3r("1u")&&o.3r("1u")[0])||1i.1z("1x:1u");K("1u-1B"1I a||"1B"1I a){d.1B=((a["1u-1B"]+1||2)-1)*((a.1B+1||2)-1)}K(a.1u){d.2k=1V}K(d.2k==1N||a.1u=="23"){d.2k=2W}K(d.2k&&a.1u){J e=a.1u.4n(/^36\\(([^\\)]+)\\)$/i);K(e){d.3D=e[1];d.1p="61"}1k{d.2t=a.1u;d.3D="";d.1p="67"}}o.1j(d);J f=(o.3r("1g")&&o.3r("1g")[0])||1i.1z("1x:1g");K((a.1g&&a.1g!="23")||a["1g-17"]||a["1g-1B"]||a["1g-2E"]){f.2k=1V}K(a.1g=="23"||1q f.2k=="1N"){f.2k=2W}K(f.2k&&a.1g){f.2t=a.1g}f.1B=((a["1g-1B"]+1||2)-1)*((a.1B+1||2)-1);a["1g-4c"]&&(f.68=a["1g-4c"]||"4t");f.4d=a["1g-4d"]||8;a["1g-3y"]&&(f.6a={3c:"6b",4j:"4j",1c:"1c"}[a["1g-3y"]]||"4t");a["1g-17"]&&(f.3Y=(19(a["1g-17"],10)||1)*12/16);K(a["1g-2E"]){J g={"-":"6r",".":"6s","-.":"6u","-..":"6v",". ":"6w","- ":"6x","--":"6y","- .":"6A","--.":"6B","--..":"6C"};f.6E=g[a["1g-2E"]]||""}o.1j(f)}};J z=N(o,a){o.O=o.O||{};o.O.2v=a;o=o.2I||o[0];J b=o.3r("1u");K(b.14){b=b[0]}1k{b=1i.1z("1x:1u")}K(a.1H.14){b.2k=1V;b.6S="23";b.1p=(a.1p.31()=="6X")?"2v":"70";K(1q a.1H[0].2t!="1N"){b.2t=a.1H[0].2t||"#1P"}K(1q a.1H[a.1H.14-1].2t!="1N"){b.71=a.1H[a.1H.14-1].2t||"#1P"}J c=[];1m(J i=0,1o=a.1H.14;i<1o;i++){K(a.1H[i].3k){c.2j(a.1H[i].3k+" "+a.1H[i].2t)}};J d=a.1H[0].1B||1;J e=a.1H[a.1H.14-1].1B||1;K(c){b.76.79=c.1y(",");e+=d;d=e-d;e-=d}b.1a("1B",d);b.1a("7c",e);K(a.2f){J f=15.1c(15.7e((19(a.2f[3],10)-19(a.2f[1],10))/(19(a.2f[2],10)-19(a.2f[0],10)))*57.29)||0;b.7d=7a-f}K(a.1p.31()=="73"){b.72="2s%";b.6T="0.5 0.5"}}};J A=N(a,b,c){J d=0,6M=0,69=0,62=1;9[0]=a;9.1f=a;9.X=0;9.Y=0;9.O={};9.1W=b;9.1T=c;9.1n={30:0,2X:0,2g:0,2B:1,2K:1}};A.1v.3I=N(a,b){K(a==1N){11 9.1n.2g}K(b){9.1n.2g=a}1k{9.1n.2g+=a}9.1W.1t.2U=9.1n.2g;11 9};A.1v.2N=N(a){J b=9.1W.1t,2L=9[0].1t;1m(J i 1I a){9.O[i]=a[i]}J c=9.O,x,y,w,h;27(9.1p){1d"2P":x=c.1E-c.r;y=c.1D-c.r;w=h=c.r*2;1h;1d"2Q":x=c.1E-c.26;y=c.1D-c.2c;w=c.26*2;h=c.2c*2;1h;1d"2h":1d"2x":x=c.x;y=c.y;w=c.17||0;h=c.1b||0;1h;1d"2b":9.4p.v=["m",15.1c(c.x),", ",15.1c(c.y-2),"l",15.1c(c.x)+1,", ",15.1c(c.y-2)].1y("");11;1d"1e":K(!9.O.1e){x=0;y=0;w=9.1T.17;h=9.1T.1b}1k{J d=1r.3E(9.O.1e),x=d.x;y=d.y;w=d.17;h=d.1b}1h;2H:x=0;y=0;w=9.1T.17;h=9.1T.1b;1h}K(9.1p=="1e"){J e=15.1c(9.1T.17/2-w/2-x),1C=15.1c(9.1T.1b/2-h/2-y);b.1Z=-e+"1G";b.1C=-1C+"1G";9.X=e;9.Y=1C;9.W=w;9.H=h;2L.1C=1C+"1G";2L.1Z=e+"1G"}1k{J e=9.1T.17/2-w/2,1C=9.1T.1b/2-h/2;b.2D="2y";b.1Z=x-e+"1G";b.1C=y-1C+"1G";9.X=x-e;9.Y=y-1C;9.W=w;9.H=h;b.17=9.1T.17+"1G";b.1b=9.1T.1b+"1G";2L.2D="2y";2L.1C=1C+"1G";2L.1Z=e+"1G";2L.17=w+"1G";2L.1b=h+"1G"}};A.1v.4u=N(){9.1W.1t.3J="23";11 9};A.1v.4v=N(){9.1W.1t.3J="4w";11 9};A.1v.2M=N(x,y){K(x==1N&&y==1N){11{x:9.1n.30,y:9.1n.2X}}9.1n.30+=+x;9.1n.2X+=+y;K(9.1p=="1e"){J a=9.O.1e;a=1r.3q(a);a[0][1]+=+x;a[0][2]+=+y;9.1s({1e:a.1y(" ")})}9.2N({x:9.1n.30,y:9.1n.2X});11 9};A.1v.3p=N(){11{x:9.X,y:9.Y,17:9.W,1b:9.H}};A.1v.3o=N(){9[0].1K.2m(9[0]);9.1W.1K.2m(9.1W);9.2I&&9.2I.1K.2m(9.2I)};A.1v.1s=N(){K(P.14==1&&1q P[0]=="2d"){K(P[0]=="2C"){11 9.2M()}11 9.O[P[0]]}K(9.O&&P.14==1&&P[0]4x 3i){J a={};1m(J i=0,1o=P[0].14;i<1o;i++){a[P[0][i]]=9.O[P[0][i]]};11 a}K(9[0].5W.31()=="2e"){J b=9[0].3z;9.O=9.O||{};K(P.14==2){9.O[P[0]]=P[1]}1k K(P.14==1||1q P[0]=="34"){1m(J j 1I P[0]){9.O[j]=P[0][j]}}1m(J i=0,1o=b.14;i<1o;i++){9.1s.2z(1L 5S(b[i],9[0],9.1T),P)}}1k{J c;K(P.14==2){c={};c[P[0]]=P[1]}K(P.14==1&&1q P[0]=="34"){c=P[0]}K(c){v(9,c);9.2N(c);K(c.2v){z(9,c.2v)}K(c.2b&&9.1p=="2b"){9[0].2d=c.2b}K(c.2F){9[0].2F=c.2F}}}11 9};A.1v.4E=N(){9.1W.1K.1j(9.1W);11 9};A.1v.4G=N(){K(9.1W.1K.2i!=9.1W){9.1W.1K.2T(9.1W,9.1W.1K.2i)}11 9};J B=N(a,x,y,r){J g=1i.1z("1x:2e");J o=1i.1z("1x:4I");g.1j(o);a.1l.1j(g);J b=1L A(o,g,a);v(b,{1g:"#1P",1u:"23"});b.2N({x:x-r,y:y-r,17:r*2,1b:r*2});b.O.1E=x;b.O.1D=y;b.O.r=r;b.1p="2P";11 b};J D=N(a,x,y,w,h,r){J g=1i.1z("1x:2e");J o=1i.1z(r?"1x:5Q":"1x:2h");K(r){o.5P=r/(15.2Z(w,h))}g.1j(o);a.1l.1j(g);J b=1L A(o,g,a);v(b,{1g:"#1P"});b.2N({x:x,y:y,17:w,1b:h});b.O.x=x;b.O.y=y;b.O.w=w;b.O.h=h;b.O.r=r;b.1p="2h";11 b};J E=N(a,x,y,b,c){J g=1i.1z("1x:2e");J o=1i.1z("1x:4I");g.1j(o);a.1l.1j(g);J d=1L A(o,g,a);v(d,{1g:"#1P"});d.2N({x:x-b,y:y-c,17:b*2,1b:c*2});d.O.1E=x;d.O.1D=y;d.O.26=b;d.O.2c=c;d.1p="2Q";11 d};J F=N(a,b,x,y,w,h){J g=1i.1z("1x:2e");J o=1i.1z("1x:2x");o.3D=b;g.1j(o);a.1l.1j(g);J c=1L A(o,g,a);c.1p="2x";c.2N({x:x,y:y,17:w,1b:h});c.O.x=x;c.O.y=y;c.O.w=w;c.O.h=h;11 c};J G=N(a,x,y,b){J g=1i.1z("1x:2e"),35=g.1t;J c=1i.1z("1x:2I"),3f=c.1t;J d=1i.1z("1x:1e"),5N=d.1t;d.v=["m",15.1c(x),", ",15.1c(y-2),"l",15.1c(x)+1,", ",15.1c(y-2)].1y("");d.5L=1V;3f.17=a.17;3f.1b=a.1b;35.2D="2y";35.1Z=0;35.1C=0;35.17=a.17;35.1b=a.1b;J o=1i.1z("1x:4p");o.2d=b;o.2k=1V;o.3j=a.3j;o.3w=a.3w;c.1j(o);c.1j(d);g.1j(c);a.1l.1j(g);J e=1L A(o,g,a);e.2I=c;e.4p=d;e.1p="2b";e.O.x=x;e.O.y=y;e.O.w=1;e.O.h=1;v(e,{1g:"23",1u:"#1P"});11 e};J H=N(a){J b=1i.1z("1x:2e"),37=b.1t;37.2D="2y";37.1Z=0;37.1C=0;37.17=a.17;37.1b=a.1b;K(a.1l){a.1l.1j(b)}J c=1L A(b,b,a);1m(J f 1I a){K(f.3G(0)!="1n"&&1q a[f]=="N"){c[f]=(N(f){11 N(){J e=a[f].2z(a,P);b.1j(e[0].1K);11 e}})(f)}}c.1p="2e";11 c};r.44=N(){J d,17,1b;K(1q P[0]=="2d"){d=1i.4Y(P[0]);17=P[1];1b=P[2]}K(1q P[0]=="34"){d=P[0];17=P[1];1b=P[2]}K(1q P[0]=="1M"){d=1;x=P[0];y=P[1];17=P[2];1b=P[3]}K(!d){50 1L 51("3x 52 54 56.");}K(!1i.59["1x"]){1i.59.5y("1x","5f:5v-5t-5n:1T");1i.5h().5x("1x\\\\:*","5g:36(#2H#3x)")}J c=1i.1z("5i"),r=C.1l=1i.1z("1x:2e"),2r=c.1t,3v=r.1t;C.17=17;C.1b=1b;17=17||"5j";1b=1b||"5k";2r.5l="2h(0 "+17+" "+1b+" 0)";2r.2D="2y";3v.17=17;3v.1b=1b;r.3j=(17=="2s%"?17:19(17))+" "+(1b=="2s%"?1b:19(1b));r.3w="0 0";J b=1i.1z("1x:2h"),3s=b.1t;3s.1Z=3s.1C=0;3s.17=3v.17;3s.1b=3v.1b;b.5m=b.5o="f";r.1j(b);c.1j(r);K(d==1){1i.3M.1j(c);2r.2D="2y";2r.1Z=x+"1G";2r.1C=y+"1G";2r.17=17;2r.1b=1b;d={1t:{17:17,1b:1b}}}1k{2r.17=d.1t.17=17;2r.1b=d.1t.1b=1b;K(d.2i){d.2T(c,d.2i)}1k{d.1j(c)}}1m(J e 1I C){d[e]=C[e]}d.43=N(){J a=[];1m(J i=0,1o=r.3z.14;i<1o;i++){K(r.3z[i]!=b){a.2j(r.3z[i])}}1m(i=0,1o=a.14;i<1o;i++){r.2m(a[i])}};11 d};C.3o=N(){C.1l.1K.1K.2m(C.1l.1K)}}K(n=="32"){J u=N(g,h,j){J k=1i.24(j.1Y,"1e");k.1a("1u","23");K(j.1l){j.1l.1j(k)}J p=1L A(k,j);p.18=1V;p.1p="1e";p.13={x:0,y:0,1Q:0,1R:0};p.3e=N(){9.18=1V;11 9};p.3F=N(){9.18=2W;11 9};p.3b=N(x,y){J d=9.18?"M":"m";d+=19(x,10).1O(3)+" "+19(y,10).1O(3)+" ";J a=9[0].2S("d")||"";(a=="4b,0")&&(a="");9[0].1a("d",a+d);9.13.x=(9.18?0:9.13.x)+19(x,10);9.13.y=(9.18?0:9.13.y)+19(y,10);9.O.1e=a+d;11 9};p.25=N(x,y){9.13.x=(9.18?0:9.13.x)+19(x,10);9.13.y=(9.18?0:9.13.y)+19(y,10);J d=9.18?"L":"l";d+=19(x,10).1O(3)+" "+19(y,10).1O(3)+" ";J a=9[0].2S("d")||"";9[0].1a("d",a+d);9.O.1e=a+d;11 9};p.46=N(a,b,c,e,x,y){J d=9.18?"A":"a";d+=[19(a,10).1O(3),19(b,10).1O(3),0,c,e,19(x,10).1O(3),19(y,10).1O(3)].1y(" ");J f=9[0].2S("d")||"";9[0].1a("d",f+d);9.13.x=19(x,10);9.13.y=19(y,10);9.O.1e=f+d;11 9};p.5d=N(a,b,c){K(!c){11 9.25(a,b)}1k{J p={};J x=19(a,10);J y=19(b,10);J w=19(c,10);J d=9.18?"C":"c";J e=[+9.13.x+w,+9.13.y,x-w,y,x,y];1m(J i=0,1o=e.14;i<1o;i++){d+=e[i].1O(3)+" "}9.13.x=(9.18?0:9.13.x)+e[4];9.13.y=(9.18?0:9.13.y)+e[5];9.13.1Q=e[2];9.13.1R=e[3];J f=9[0].2S("d")||"";9[0].1a("d",f+d);9.O.1e=f+d;11 9}};p.1J=N(){J p={},3R=[0,1,2,3,"s",5,"c"];J d=3R[P.14];K(9.18){d=d.2R()}1m(J i=0,1o=P.14;i<1o;i++){d+=19(P[i],10).1O(3)+" "}9.13.x=(9.18?0:9.13.x)+19(P[P.14-2],10);9.13.y=(9.18?0:9.13.y)+19(P[P.14-1],10);9.13.1Q=19(P[P.14-4],10);9.13.1R=19(P[P.14-3],10);J a=9.1f.2S("d")||"";9.1f.1a("d",a+d);9.O.1e=a+d;11 9};p.3C=N(){J p={},3R=[0,1,"t",3,"q"];J d=3R[P.14];K(9.18){d=d.2R()}1m(J i=0,1o=P.14;i<1o;i++){d+=19(P[i],10).1O(3)+" "}9.13.x=(9.18?0:9.13.x)+19(P[P.14-2],10);9.13.y=(9.18?0:9.13.y)+19(P[P.14-1],10);K(P.14!=2){9.13.39=19(P[P.14-4],10);9.13.38=19(P[P.14-3],10)}J a=9.1f.2S("d")||"";9.1f.1a("d",a+d);9.O.1e=a+d;11 9};p.4T=N(r,a){J R=.4R*r,2n=9.18,o=9;K(2n){9.3F();2n=N(){o.3e()}}1k{2n=N(){}}J b={l:N(){11{u:N(){o.1J(-R,0,-r,-(r-R),-r,-r)},d:N(){o.1J(-R,0,-r,r-R,-r,r)}}},r:N(){11{u:N(){o.1J(R,0,r,-(r-R),r,-r)},d:N(){o.1J(R,0,r,r-R,r,r)}}},u:N(){11{r:N(){o.1J(0,-R,-(R-r),-r,r,-r)},l:N(){o.1J(0,-R,R-r,-r,-r,-r)}}},d:N(){11{r:N(){o.1J(0,R,-(R-r),r,r,r)},l:N(){o.1J(0,R,R-r,r,-r,r)}}}};b[a[0]]()[a[1]]();2n();11 o};p.4f=N(){J a=9[0].2S("d")||"";9[0].1a("d",a+"Z ");9.O.1e=a+"Z ";11 9};K(1q h=="2d"){p.O.1e=h;p.3e();C.3m(p,h)}K(g){v(p,g)}11 p};J z=N(o,a,b){J c=1i.24(b.1Y,a.1p+"5w");c.2F="5b-2v-"+b.45++;K(a.2f&&a.2f.14){c.1a("5z",a.2f[0]);c.1a("3l",a.2f[1]);c.1a("5A",a.2f[2]);c.1a("5B",a.2f[3])}b.3n.1j(c);1m(J i=0,1o=a.1H.14;i<1o;i++){J d=1i.24(b.1Y,"3N");d.1a("3k",a.1H[i].3k?a.1H[i].3k:(i==0)?"0%":"2s%");d.1a("3N-2t",a.1H[i].2t||"#4X");K(1q a.1H[i].1B!="1N"){d.1a("3N-1B",a.1H[i].1B)}c.1j(d)};o.1a("1u","36(#"+c.2F+")")};J I=N(o){K(o.3t){J a=o.1f.3p();o.3t.1a("5C","2M("+[a.x,a.y].1y(",")+")")}};J v=N(o,c){J d={"-":[3,1],".":[1,1],"-.":[3,1,1,1],"-..":[3,1,1,1,1,1],". ":[1,3],"- ":[4,3],"--":[8,3],"- .":[4,3,1,3],"--.":[8,3,1,3],"--..":[8,3,1,3,1,3]},48=N(o,a){a=d[a.2J().31()];K(a){J b=o.O["1g-17"]||"1",3c={1c:b,4j:b,3c:0}[o.O["1g-3y"]||c["1g-3y"]]||0,49=[];1m(J i=0,1o=a.14;i<1o;i++){49.2j(a[i]*b+((i%2)?1:-1)*3c)}a=49.1y(",");o.1f.1a("1g-2E",a)}};1m(J e 1I c){J f=c[e];o.O[e]=f;27(e){1d"1e":K(o.1p=="1e"){o.1f.1a("d","4b,0");C.3m(o,f)}1d"26":1d"1E":1d"x":o.1f.1a(e,f);I(o);1h;1d"2c":1d"1D":1d"y":o.1f.1a(e,f);I(o);1h;1d"17":o.1f.1a(e,f);1h;1d"1b":o.1f.1a(e,f);1h;1d"2v":z(o.1f,f,o.28);1h;1d"1g-17":o.1f.1t.5G=f;o.1f.1a(e,f);K(o.O["1g-2E"]){48(o,o.O["1g-2E"])}1h;1d"1g-2E":48(o,f);1h;1d"2b":K(o.1p=="2b"){o.1f.3z.14&&o.1f.2m(o.1f.2i);o.1f.1j(1i.4V(f))}1h;1d"2U":o.3I(f,1V);1h;1d"2C":J g=f.2u(/[, ]+/);o.2M(g[0],g[1]);1h;1d"2w":J g=f.2u(/[, ]+/);o.2w(g[0],g[1]);1h;1d"1u":J h=f.4n(/^36\\(([^\\)]+)\\)$/i);K(h){J j=1i.24(o.28.1Y,"3t");J k=1i.24(o.28.1Y,"2x");j.2F="5b-3t-"+o.28.45++;j.1a("x",0);j.1a("y",0);j.1a("5I","5J");k.1a("x",0);k.1a("y",0);k.4U(o.28.3O,"4S",h[1]);j.1j(k);J l=1i.1z("5M");l.1t.2D="2y";l.1t.1C="-4Q";l.1t.1Z="-4Q";l.5O=N(){j.1a("17",9.4L);j.1a("1b",9.4K);k.1a("17",9.4L);k.1a("1b",9.4K);1i.3M.2m(9);C.3H()};1i.3M.1j(l);l.3D=h[1];o.28.3n.1j(j);o.1f.1t.1u="36(#"+j.2F+")";o.1f.1a("1u","36(#"+j.2F+")");o.3t=j;I(o);1h}2H:J m=e.4i(/(\\-.)/g,N(w){11 w.1U(1).2R()});o.1f.1t[m]=f;o.1f.1a(e,f);1h}}};J A=N(a,b){J X=0,Y=0;9[0]=a;9.1f=a;9.28=b;9.O=9.O||{};9.2o=[];9.1n={30:0,2X:0,2g:{3d:0,x:0,y:0},2B:1,2K:1}};A.1v.2M=N(x,y){K(x==1N&&y==1N){11{x:9.1n.30,y:9.1n.2X}}9.1n.30+=+x;9.1n.2X+=+y;27(9.1p){1d"2P":1d"2Q":9.1s({1E:9.O.1E+x,1D:9.O.1D+y});1h;1d"2h":1d"2x":1d"2b":9.1s({x:9.O.x+x,y:9.O.y+y});1h;1d"1e":J a=1r.3q(9.O.1e);a[0][1]+=+x;a[0][2]+=+y;9.1s({1e:a.1y(" ")});1h}11 9};A.1v.3I=N(a,b){K(a==1N){11 9.1n.2g.3d}J c=9.3p();K(b){9.1n.2g.3d=a}1k{9.1n.2g.3d+=a}K(9.1n.2g.3d){9.2o[0]=("3I("+9.1n.2g.3d+" "+(c.x+c.17/2)+" "+(c.y+c.1b/2)+")")}1k{9.2o[0]=""}9.1f.1a("4l",9.2o.1y(" "));11 9};A.1v.4u=N(){9.1f.1t.3J="23";11 9};A.1v.4v=N(){9.1f.1t.3J="4w";11 9};A.1v.3o=N(){9.1f.1K.2m(9.1f)};A.1v.3p=N(){11 9.1f.3p()};A.1v.1s=N(){K(P.14==1&&1q P[0]=="2d"){K(P[0]=="2C"){11 9.2M()}11 9.O[P[0]]}K(P.14==1&&P[0]4x 3i){J a={};1m(J j 1I P[0]){a[P[0][j]]=9.O[P[0][j]]}11 a}K(P.14==2){J b={};b[P[0]]=P[1];v(9,b)}1k K(P.14==1&&1q P[0]=="34"){v(9,P[0])}11 9};A.1v.4E=N(){9.1f.1K.1j(9.1f);11 9};A.1v.4G=N(){K(9.1f.1K.2i!=9.1f){9.1f.1K.2T(9.1f,9.1f.1K.2i)}11 9};J B=N(a,x,y,r){J b=1i.24(a.1Y,"2P");b.1a("1E",x);b.1a("1D",y);b.1a("r",r);b.1a("1u","23");b.1a("1g","#1P");K(a.1l){a.1l.1j(b)}J c=1L A(b,a);c.O=c.O||{};c.O.1E=x;c.O.1D=y;c.O.r=r;c.O.1g="#1P";c.1p="2P";11 c};J D=N(a,x,y,w,h,r){J b=1i.24(a.1Y,"2h");b.1a("x",x);b.1a("y",y);b.1a("17",w);b.1a("1b",h);K(r){b.1a("26",r);b.1a("2c",r)}b.1a("1u","23");b.1a("1g","#1P");K(a.1l){a.1l.1j(b)}J c=1L A(b,a);c.O=c.O||{};c.O.x=x;c.O.y=y;c.O.17=w;c.O.1b=h;c.O.1g="#1P";K(r){c.O.26=c.O.2c=r}c.1p="2h";11 c};J E=N(a,x,y,b,c){J d=1i.24(a.1Y,"2Q");d.1a("1E",x);d.1a("1D",y);d.1a("26",b);d.1a("2c",c);d.1a("1u","23");d.1a("1g","#1P");K(a.1l){a.1l.1j(d)}J e=1L A(d,a);e.O=e.O||{};e.O.1E=x;e.O.1D=y;e.O.26=b;e.O.2c=c;e.O.1g="#1P";e.1p="2Q";11 e};J F=N(a,b,x,y,w,h){J c=1i.24(a.1Y,"2x");c.1a("x",x);c.1a("y",y);c.1a("17",w);c.1a("1b",h);c.1a("5T","23");c.4U(a.3O,"4S",b);K(a.1l){a.1l.1j(c)}J d=1L A(c,a);d.O=d.O||{};d.O.x=x;d.O.y=y;d.O.17=w;d.O.1b=h;d.1p="2x";11 d};J G=N(a,x,y,b){J c=1i.24(a.1Y,"2b");c.1a("x",x);c.1a("y",y);c.1a("2b-5U","5V");c.1a("1u","#1P");K(b){c.1j(1i.4V(b))}K(a.1l){a.1l.1j(c)}J d=1L A(c,a);d.O=d.O||{};d.O.x=x;d.O.y=y;d.O.1u="#1P";d.1p="2b";11 d};J H=N(a){J b=1i.24(a.1Y,"g");K(a.1l){a.1l.1j(b)}J i=1L A(b,a);1m(J f 1I a){K(f[0]!="1n"&&1q a[f]=="N"){i[f]=(N(f){11 N(){J e=a[f].2z(a,P);b.1j(e[0]);11 e}})(f)}}i.1p="2e";11 i};r.44=N(){K(1q P[0]=="2d"){J a=1i.4Y(P[0]);J b=P[1];J c=P[2]}K(1q P[0]=="34"){J a=P[0];J b=P[1];J c=P[2]}K(1q P[0]=="1M"){J a=1,x=P[0],y=P[1],b=P[2],c=P[3]}K(!a){50 1L 51("32 52 54 56.");}C.1l=1i.24(C.1Y,"28");C.1l.1a("17",b||4C);C.17=b||4C;C.1l.1a("1b",c||4B);C.1b=c||4B;K(a==1){1i.3M.1j(C.1l);C.1l.1t.2D="2y";C.1l.1t.1Z=x+"1G";C.1l.1t.1C=y+"1G"}1k{K(a.2i){a.2T(C.1l,a.2i)}1k{a.1j(C.1l)}}a={1l:C.1l,43:N(){4A(9.1l.2i){9.1l.2m(9.1l.2i)}9.3n=1i.24(C.1Y,"3n");9.45=0;9.1l.1j(9.3n)}};1m(J d 1I C){K(d!="5Z"){a[d]=C[d]}}a.43();11 a};C.3o=N(){C.1l.1K.2m(C.1l)};C.1Y="4z://4y.4M.4r/63/28";C.3O="4z://4y.4M.4r/64/3O"}K(n=="3x"||n=="32"){C.2P=N(x,y,r){11 B(9,x,y,r)};C.2h=N(x,y,w,h,r){11 D(9,x,y,w,h,r)};C.2Q=N(x,y,a,b){11 E(9,x,y,a,b)};C.1e=N(a,b){11 u(a,b,9)};C.2x=N(a,x,y,w,h){11 F(9,a,x,y,w,h)};C.2b=N(x,y,a){11 G(9,x,y,a)};C.2e=N(){11 H(9)};C.65=N(x,y,w,h,a,b,c){c=c||"#1P";J p=9.1e({1g:c,"1g-17":1}).3b(x,y).25(x+w,y).25(x+w,y+h).25(x,y+h).25(x,y),4o=h/b,4m=w/a;1m(J i=1;i<b;i++){p.3b(x,y+i*4o).25(x+w,y+i*4o)}1m(J i=1;i<a;i++){p.3b(x+i*4m,y).25(x+i*4m,y+h)}11 p};C.3H=N(){K(r.1p=="32"){J a=C.2h(-C.17,-C.1b,C.17*3,C.1b*3).1s({1g:"23"});4D(N(){a.3o()},0)}};A.1v.3N=N(){4k(9.3P)};A.1v.2w=N(x,y){K(x==1N&&y==1N){11{x:9.1n.2B,y:9.1n.2K}}y=y||x;J a,2O,1E,1D;K(x!=0&&!(x==1&&y==1)){J b=15.1c(x/15.40(x)),2a=15.1c(y/15.40(y)),s=9.1f.1t;a=9.1s("x");2O=9.1s("y");1E=9.1s("1E");1D=9.1s("1D");K(b!=1||2a!=1){K(9.2o){9.2o[2]="2w("+[b,2a]+")";9.1f.1a("4l",9.2o.1y(" "));a=(b<0)?-9.1s("x")-9.O.17*x*b/9.1n.2B:9.1s("x");2O=(2a<0)?-9.1s("y")-9.O.1b*y*2a/9.1n.2K:9.1s("y");1E=9.1s("1E")*b;1D=9.1s("1D")*2a}1k{s.4F="6c:6d.6e.6f(6g="+b+", 6h=0, 6i=0, 6j="+2a+", 6k=0, 6l=0, 6m=\'6n 6o\', 6p=\'6q\')"}}1k{K(9.2o){9.2o[2]="";9.1f.1a("4l",9.2o.1y(" "))}1k{s.4F=""}}27(9.1p){1d"2h":1d"2x":9.1s({17:9.O.17*x*b/9.1n.2B,1b:9.O.1b*y*2a/9.1n.2K,x:a,y:2O});1h;1d"2P":1d"2Q":9.1s({26:9.O.26*x*b/9.1n.2B,2c:9.O.2c*y*2a/9.1n.2K,r:9.O.r*x*2a/9.1n.2B,1E:1E,1D:1D});1h;1d"1e":J c=1r.3q(1r.33(9.1s("1e"))),4h=1V,2V=1r.3E(9.O.1e),a=-2V.17*(x-1)/2,2O=-2V.1b*(y-1)/2;1m(J i=0,1o=c.14;i<1o;i++){K(c[i][0].2R()=="M"&&4h){4H}1k{4h=2W}K(c[i][0].2R()=="A"){c[i][c[i].14-2]*=x*b;c[i][c[i].14-1]*=y*2a}1k{1m(J j=1,22=c[i].14;j<22;j++){c[i][j]*=(j%2)?x*b/9.1n.2B:y*2a/9.1n.2K}}}J d=1r.3E(c),a=2V.x+2V.17/2-d.x-d.17/2,2O=2V.y+2V.1b/2-d.y-d.1b/2;c=1r.3q(c);c[0][1]+=a;c[0][2]+=2O;9.1s({1e:c.1y(" ")})}}9.1n.2B=x;9.1n.2K=y;11 9};A.1v.6t=N(c,d,e){4k(9.3P);J f={},2G={},1S={},t={x:0,y:0};1m(J g 1I c){K(g 1I 3W){f[g]=9.1s(g);K(1q f[g]=="1N"){f[g]=q[g]}2G[g]=c[g];27(3W[g]){1d"1M":1S[g]=(2G[g]-f[g])/d;1h;1d"3X":f[g]=1r.4g(f[g]);J h=1r.4g(2G[g]);1S[g]={r:(h.r-f[g].r)/d,g:(h.g-f[g].g)/d,b:(h.b-f[g].b)/d};1h;1d"1e":J k=1r.4J(f[g],2G[g]);f[g]=k[0];2G[g]=k[1];1S[g]=[];1m(J i=0,1o=f[g].14;i<1o;i++){1S[g][i]=[0];1m(J j=1,22=f[g][i].14;j<22;j++){1S[g][i][j]=(2G[g][i][j]-f[g][i][j])/d}}1h;1d"3B":J l=c[g].2u(/[, ]+/);K(g=="2C"){f[g]=[0,0];1S[g]=[l[0]/d,l[1]/d]}1k{f[g]=f[g].2u(/[, ]+/);1S[g]=[(l[0]-f[g][0])/d,(l[1]-f[g][0])/d]}2G[g]=l}}}J m=1L 4q(),3T=0,2Y=9;(N(){J a=(1L 4q()).4N()-m.4N(),3Q={},21;K(a<d){1m(J b 1I f){27(3W[b]){1d"1M":21=+f[b]+a*1S[b];1h;1d"3X":21="4e("+[15.1c(f[b].r+a*1S[b].r),15.1c(f[b].g+a*1S[b].g),15.1c(f[b].b+a*1S[b].b)].1y(",")+")";1h;1d"1e":21=[];1m(J i=0,1o=f[b].14;i<1o;i++){21[i]=[f[b][i][0]];1m(J j=1,22=f[b][i].14;j<22;j++){21[i][j]=f[b][i][j]+a*1S[b][i][j]}21[i]=21[i].1y(" ")}21=21.1y(" ");1h;1d"3B":K(b=="2C"){J x=1S[b][0]*(a-3T),y=1S[b][1]*(a-3T);t.x+=x;t.y+=y;21=[x,y].1y(" ")}1k{21=[+f[b][0]+a*1S[b][0],+f[b][1]+a*1S[b][1]].1y(" ")}1h}K(b=="1X-3A"){3Q[b]=21+"1G"}1k{3Q[b]=21}}2Y.1s(3Q);2Y.3P=4D(P.3L,0);C.3H()}1k{K(t.x||t.y){2Y.2M(-t.x,-t.y)}2Y.1s(c);4k(2Y.3P);C.3H();(1q e=="N")&&e.3a(2Y)}3T=a})();11 9};A.1v.6z=N(a){K(a.1f.4O){a.1f.1K.2T(9.1f,a.1f.4O)}1k{a.1f.1K.1j(9.1f)}};A.1v.2T=N(a){a.1f.1K.2T(9.1f,a.1f)};C.3m=N(p,g){J h={M:N(x,y){9.3b(x,y)},C:N(a,b,c,d,e,f){9.1J(a,b,c,d,e,f)},Q:N(a,b,c,d){9.3C(a,b,c,d)},T:N(x,y){9.3C(x,y)},S:N(a,b,c,d){p.1J(a,b,c,d)},L:N(x,y){p.25(x,y)},H:N(x){9.25(x,9.13.y)},V:N(y){9.25(9.13.x,y)},A:N(a,b,c,d,e,x,y){9.46(a,b,d,e,x,y)},Z:N(){9.4f()}};g=1r.3u(g);1m(J i=0,1o=g.14;i<1o;i++){J b=g[i].6D();h[b].2z(p,g[i])}};11 r}1k{11 N(){}}})((!4P.6F)?"3x":"32");1r.1T=!(1r.28=(1r.1p=="32"));K(1r.1T&&4P.6G){1r.1p="6H 6I";1r.1T=1r.28=2W}1r.2J=N(){11"6J 6K "+(9.1T?"6L\'t ":"")+"6N"+(9.28?"s":"")+" 32.\\6O 6P 6Q "+6R("6V%6W%20")+9.5a};1r.3K=N(a,c,d){K(1q a=="34"&&"h"1I a&&"s"1I a&&"b"1I a){d=a.b;c=a.s;a=a.h}J e,1F,1A;K(d==0){11{r:0,g:0,b:0,3S:"#1P"}}1k{J i=15.6Y(a*6),f=(a*6)-i,p=d*(1-c),q=d*(1-(c*f)),t=d*(1-(c*(1-f)));[N(){e=d;1F=t;1A=p},N(){e=q;1F=d;1A=p},N(){e=p;1F=d;1A=t},N(){e=p;1F=q;1A=d},N(){e=t;1F=p;1A=d},N(){e=d;1F=p;1A=q},N(){e=d;1F=t;1A=p}][i]()}J h={r:e,g:1F,b:1A};e*=3g;1F*=3g;1A*=3g;J r=15.1c(e).2J(16);K(r.14==1){r="0"+r}J g=15.1c(1F).2J(16);K(g.14==1){g="0"+g}J b=15.1c(1A).2J(16);K(b.14==1){b="0"+b}h.3S="#"+r+g+b;11 h};1r.6Z=N(a,b,c){K(1q a=="34"&&"r"1I a&&"g"1I a&&"b"1I a){c=a.b;b=a.g;a=a.r}K(1q a=="2d"&&a.3G(0)=="#"){K(a.14==4){c=1w(a.1U(3),16);b=1w(a.1U(2,3),16);a=1w(a.1U(1,2),16)}1k{c=1w(a.1U(5),16);b=1w(a.1U(3,5),16);a=1w(a.1U(1,3),16)}}K(a>1||b>1||c>1){a/=3g;b/=3g;c/=3g}J d=15.3V(a,b,c),2Z=15.2Z(a,b,c),2p,47,4Z=d;K(2Z==d){11{h:0,s:0,b:d}}1k{J e=(d-2Z);47=e/d;K(a==d){2p=(b-c)/e}1k K(b==d){2p=2+((c-a)/e)}1k{2p=4+((a-b)/e)}2p/=6;K(2p<0){2p+=1}K(2p>1){2p-=1}}11{h:2p,s:47,b:4Z}};1r.4g=N(a){J c,1F,1A,d=a.4n(/^\\s*((#[a-f\\d]{6})|(#[a-f\\d]{3})|4e\\(\\s*(\\d+,\\s*\\d+,\\s*\\d+)\\s*\\)|4e\\(\\s*(\\d+%,\\s*\\d+%,\\s*\\d+%)\\s*\\)|53\\(\\s*(\\d+,\\s*\\d+,\\s*\\d+)\\s*\\)|53\\(\\s*(\\d+%,\\s*\\d+%,\\s*\\d+%)\\s*\\))\\s*$/i);K(d){K(d[2]){1A=1w(d[2].1U(5),16);1F=1w(d[2].1U(3,5),16);c=1w(d[2].1U(1,3),16)}K(d[3]){1A=1w(d[3].1U(3)+d[3].1U(3),16);1F=1w(d[3].1U(2,3)+d[3].1U(2,3),16);c=1w(d[3].1U(1,2)+d[3].1U(1,2),16)}K(d[4]){d=d[4].2u(/\\s*,\\s*/);c=1w(d[0],10);1F=1w(d[1],10);1A=1w(d[2],10)}K(d[5]){d=d[5].2u(/\\s*,\\s*/);c=1w(d[0],10)*2.55;1F=1w(d[1],10)*2.55;1A=1w(d[2],10)*2.55}K(d[6]){d=d[6].2u(/\\s*,\\s*/);c=1w(d[0],10);1F=1w(d[1],10);1A=1w(d[2],10);11 9.3K(c,1F,1A)}K(d[7]){d=d[7].2u(/\\s*,\\s*/);c=1w(d[0],10)*2.55;1F=1w(d[1],10)*2.55;1A=1w(d[2],10)*2.55;11 9.3K(c,1F,1A)}J d={r:c,g:1F,b:1A};J r=15.1c(c).2J(16);(r.14==1)&&(r="0"+r);J g=15.1c(1F).2J(16);(g.14==1)&&(g="0"+g);J b=15.1c(1A).2J(16);(b.14==1)&&(b="0"+b);d.3S="#"+r+g+b;11 d}};1r.58=N(a){J b=P.3L.2q=P.3L.2q||{h:0,s:1,b:a||.75};J c=9.3K(b.h,b.s,b.b);b.h+=.74;K(b.h>1){b.h=0;b.s-=.2;K(b.s<=0){P.3L.2q={h:0,s:1,b:b.b}}}11 c.3S};1r.58.77=N(){9.2q=1N};1r.33=N(e){J f={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0};J g=[];e.4i(/([78])\\s*((-?\\d*\\.?\\d*\\s*,?\\s*)+)/5c,N(a,b,c){J d=[],3U=b.31();c.4i(/(-?\\d*\\.?\\d*)\\s*,?\\s*/5c,N(a,b){b&&d.2j(+b)});4A(d.14>=f[3U]){g.2j([b].7b(d.2l(0,f[3U])));K(!f[3U]){1h}}});11 g};1r.3E=N(a){J b=a;K(1q a=="2d"){b=9.33(a)}b=9.3u(b);J x=[],y=[],14=0;1m(J i=0,1o=b.14;i<1o;i++){27(b[i][0]){1d"Z":1h;1d"A":x.2j(b[i][b[i].14-2]);y.2j(b[i][b[i].14-1]);1h;2H:1m(J j=1,22=b[i].14;j<22;j++){K(j%2){x.2j(b[i][j])}1k{y.2j(b[i][j])}}}}J c=15.2Z.2z(15,x),42=15.2Z.2z(15,y);11{x:c,y:42,17:15.3V.2z(15,x)-c,1b:15.3V.2z(15,y)-42,X:x,Y:y}};1r.3q=N(a){J b=[];K(1q a=="2d"){a=9.33(a)}J x=0,y=0,2q=0;K(a[0][0]=="M"){x=a[0][1];y=a[0][2];2q++;b.2j(a[0])}1m(J i=2q,1o=a.14;i<1o;i++){b[i]=[];K(a[i][0]!=a[i][0].31()){b[i][0]=a[i][0].31();27(b[i][0]){1d"a":b[i][1]=a[i][1];b[i][2]=a[i][2];b[i][3]=0;b[i][4]=a[i][4];b[i][5]=a[i][5];b[i][6]=+(a[i][6]-x).1O(3);b[i][7]=+(a[i][7]-y).1O(3);1h;1d"v":b[i][1]=+(a[i][1]-y).1O(3);1h;2H:1m(J j=1,22=a[i].14;j<22;j++){b[i][j]=+(a[i][j]-((j%2)?x:y)).1O(3)}}}1k{b[i]=a[i]}27(b[i][0]){1d"z":1h;1d"h":x+=b[i][b[i].14-1];1h;1d"v":y+=b[i][b[i].14-1];1h;2H:x+=b[i][b[i].14-2];y+=b[i][b[i].14-1]}}11 b};1r.3u=N(a){J b=[];K(1q a=="2d"){a=9.33(a)}J x=0,y=0,2q=0;K(a[0][0]=="M"){x=+a[0][1];y=+a[0][2];2q++;b[0]=a[0]}1m(J i=2q,1o=a.14;i<1o;i++){b[i]=[];K(a[i][0]!=a[i][0].2R()){b[i][0]=a[i][0].2R();27(b[i][0]){1d"A":b[i][1]=a[i][1];b[i][2]=a[i][2];b[i][3]=0;b[i][4]=a[i][4];b[i][5]=a[i][5];b[i][6]=+(a[i][6]+x).1O(3);b[i][7]=+(a[i][7]+y).1O(3);1h;1d"V":b[i][1]=+a[i][1]+y;1h;2H:1m(J j=1,22=a[i].14;j<22;j++){b[i][j]=+a[i][j]+((j%2)?x:y)}}}1k{b[i]=a[i]}27(b[i][0]){1d"Z":1h;1d"H":x=b[i][1];1h;1d"V":y=b[i][1];1h;2H:x=b[i][b[i].14-2];y=b[i][b[i].14-1]}}11 b};1r.4J=N(e,f){J g=[9.3u(9.33(e)),9.3u(9.33(f))],O=[{x:0,y:0,1Q:0,1R:0,X:0,Y:0},{x:0,y:0,1Q:0,1R:0,X:0,Y:0}],41=N(a,d){K(!a){11["U"]}27(a[0]){1d"M":d.X=a[1];d.Y=a[2];1h;1d"S":J b=d.x+(d.x-(d.1Q||d.x));J c=d.y+(d.y-(d.1R||d.y));a=["C",b,c,a[1],a[2],a[3],a[4]];1h;1d"T":J b=d.x+(d.x-(d.1Q||d.x));J c=d.y+(d.y-(d.1R||d.y));a=["Q",b,c,a[1],a[2]];1h;1d"H":a=["L",a[1],d.y];1h;1d"V":a=["L",d.x,a[1]];1h;1d"Z":a=["L",d.X,d.Y];1h}11 a},3Z=N(a,b,i){K(g[a][i][0]=="M"&&g[b][i][0]!="M"){g[b].2l(i,0,["M",O[b].x,O[b].y]);O[a].1Q=g[a][i][g[a][i].14-4]||0;O[a].1R=g[a][i][g[a][i].14-3]||0;O[a].x=g[a][i][g[a][i].14-2];O[a].y=g[a][i][g[a][i].14-1];11 1V}1k K(g[a][i][0]=="L"&&g[b][i][0]=="C"){g[a][i]=["C",O[a].x,O[a].y,g[a][i][1],g[a][i][2],g[a][i][1],g[a][i][2]]}1k K(g[a][i][0]=="L"&&g[b][i][0]=="Q"){g[a][i]=["Q",g[a][i][1],g[a][i][2],g[a][i][1],g[a][i][2]]}1k K(g[a][i][0]=="Q"&&g[b][i][0]=="C"){J x=g[b][i][g[b][i].14-2];J y=g[b][i][g[b][i].14-1];g[b].2l(i+1,0,["Q",x,y,x,y]);g[a].2l(i,0,["C",O[a].x,O[a].y,O[a].x,O[a].y,O[a].x,O[a].y]);i++;O[b].1Q=g[b][i][g[b][i].14-4]||0;O[b].1R=g[b][i][g[b][i].14-3]||0;O[b].x=g[b][i][g[b][i].14-2];O[b].y=g[b][i][g[b][i].14-1];11 1V}1k K(g[a][i][0]=="A"&&g[b][i][0]=="C"){J x=g[b][i][g[b][i].14-2];J y=g[b][i][g[b][i].14-1];g[b].2l(i+1,0,["A",0,0,g[a][i][3],g[a][i][4],g[a][i][5],x,y]);g[a].2l(i,0,["C",O[a].x,O[a].y,O[a].x,O[a].y,O[a].x,O[a].y]);i++;O[b].1Q=g[b][i][g[b][i].14-4]||0;O[b].1R=g[b][i][g[b][i].14-3]||0;O[b].x=g[b][i][g[b][i].14-2];O[b].y=g[b][i][g[b][i].14-1];11 1V}1k K(g[a][i][0]=="U"){g[a][i][0]=g[b][i][0];1m(J j=1,22=g[b][i].14;j<22;j++){g[a][i][j]=(j%2)?O[a].x:O[a].y}}11 2W};1m(J i=0;i<15.3V(g[0].14,g[1].14);i++){g[0][i]=41(g[0][i],O[0]);g[1][i]=41(g[1][i],O[1]);K(g[0][i][0]!=g[1][i][0]&&(3Z(0,1,i)||3Z(1,0,i))){4H}O[0].1Q=g[0][i][g[0][i].14-4]||0;O[0].1R=g[0][i][g[0][i].14-3]||0;O[0].x=g[0][i][g[0][i].14-2];O[0].y=g[0][i][g[0][i].14-1];O[1].1Q=g[1][i][g[1][i].14-4]||0;O[1].1R=g[1][i][g[1][i].14-3]||0;O[1].x=g[1][i][g[1][i].14-2];O[1].y=g[1][i][g[1][i].14-1]}11 g};',62,449,'|||||||||this||||||||||||||||||||||||||||||||||||var|if|||function|attrs|arguments||||||||||||return||last|length|Math||width|isAbsolute|parseFloat|setAttribute|height|round|case|path|node|stroke|break|document|appendChild|else|canvas|for|_|ii|type|typeof|Raphael|attr|style|fill|prototype|parseInt|rvml|join|createElement|blue|opacity|top|cy|cx|green|px|dots|in|curveTo|parentNode|new|number|undefined|toFixed|000|bx|by|diff|vml|substring|true|Group|font|svgns|left||now|jj|none|createElementNS|lineTo|rx|switch|svg||diry|text|ry|string|group|vector|rt|rect|firstChild|push|on|splice|removeChild|rollback|transformations|hue|start|cs|100|color|split|gradient|scale|image|absolute|apply|Path|sx|translation|position|dasharray|id|to|default|shape|toString|sy|os|translate|setBox|dy|circle|ellipse|toUpperCase|getAttribute|insertBefore|rotation|dim|false|ty|that|min|tx|toLowerCase|SVG|parsePathString|object|gs|url|els|qy|qx|call|moveTo|butt|deg|absolutely|ol|255|gl|Array|coordsize|offset|y1|pathfinder|defs|remove|getBBox|pathToRelative|getElementsByTagName|bs|pattern|pathToAbsolute|rs|coordorigin|VML|linecap|childNodes|size|csv|qcurveTo|src|pathDimensions|relatively|charAt|safari|rotate|display|hsb2rgb|callee|body|stop|xlink|animation_in_progress|set|command|hex|prev|name|max|availableAnimAttrs|colour|weight|edgeCases|abs|processPath|miny|clear|_create|gradients|arcTo|saturation|addDashes|dashes|family|M0|linejoin|miterlimit|rgb|andClose|getRGB|skip|replace|square|clearTimeout|transform|columnWidth|match|rowHeight|textpath|Date|org|class|miter|hide|show|block|instanceof|www|http|while|200|320|setTimeout|toFront|filter|toBack|continue|oval|pathEqualiser|offsetHeight|offsetWidth|w3|getTime|nextSibling|window|9999em|5522|href|addRoundedCorner|setAttributeNS|createTextNode|Arial|fff|getElementById|brightness|throw|Error|container|hsb|not||found||getColor|namespaces|version|raphael|ig|cplineTo|svgattr|urn|behavior|createStyleSheet|div|320px|200px|clip|filled|com|stroked|ar|at|wr|wa|microsoft|sqrt|schemas|Gradient|addRule|add|x1|x2|y2|patternTransform|qb|qcurve|arg|strokeWidth|slice|patternUnits|userSpaceOnUse|pos|textpathok|img|ps|onload|arcsize|roundrect|null|item|preserveAspectRatio|anchor|middle|tagName|fontFamily|fontSize|create|fontWeight|tile|Scale|2000|1999|drawGrid|className|solid|joinstyle|RotY|endcap|flat|progid|DXImageTransform|Microsoft|Matrix|M11|M12|M21|M22|Dx|Dy|sizingmethod|auto|expand|filtertype|bilinear|shortdash|shortdot|animate|shortdashdot|shortdashdotdot|dot|dash|longdash|insertAfter|dashdot|longdashdot|longdashdotdot|shift|dashstyle|SVGAngle|CanvasRenderingContext2D|Canvas|only|Your|browser|doesn|RotX|support|nYou|are|running|unescape|method|focusposition|16px|Rapha|EBl|linear|floor|rgb2hsb|gradientTitle|color2|focus|radial|075||colors|reset|achlmqstvz|value|270|concat|opacity2|angle|atan'.split('|'),0,{}))
index d88aa32..696a969 100644 (file)
@@ -1,14 +1,14 @@
 /*
- * Raphael 0.6.1 - JavaScript Vector Library
+ * Raphael 0.6.2 - JavaScript Vector Library
  *
- * Copyright (c) 2008 Dmitry Baranovskiy (http://raphaeljs.com)
+ * Copyright (c) 2008 – 2009 Dmitry Baranovskiy (http://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.6.1";
+        r.version = "0.6.2";
         r.type = type;
         var availableAttrs = {cx: 0, cy: 0, fill: "#fff", "fill-opacity": 1, font: '16px "Arial"', "font-family": '"Arial"', "font-size": "16", gradient: 0, height: 0, opacity: 1, path: "M0,0", r: 0, rotation: 0, rx: 0, ry: 0, scale: "1 1", stroke: "#000", "stroke-dasharray": "", "stroke-linecap": "butt", "stroke-linejoin": "butt", "stroke-miterlimit": 0, "stroke-opacity": 1, "stroke-width": 1, translation: "0 0", width: 0, x: 0, y: 0},
             availableAnimAttrs = {cx: "number", cy: "number", fill: "colour", "fill-opacity": "number", "font-size": "number", height: "number", opacity: "number", path: "path", r: "number", rotation: "number", rx: "number", ry: "number", scale: "csv", stroke: "colour", "stroke-opacity": "number", "stroke-width": "number", translation: "csv", width: "number", x: "number", y: "number"},
@@ -438,7 +438,10 @@ var Raphael = (function (type) {
                         return;
                     case "path":
                         if (!this.attrs.path) {
-                            x = y = w = h = 0;
+                            x = 0;
+                            y = 0;
+                            w = this.vml.width;
+                            h = this.vml.height;
                         } else {
                             var dim = Raphael.pathDimensions(this.attrs.path),
                             x = dim.x;
@@ -523,6 +526,9 @@ var Raphael = (function (type) {
             };
             Element.prototype.attr = function () {
                 if (arguments.length == 1 && typeof arguments[0] == "string") {
+                    if (arguments[0] == "translation") {
+                        return this.translate();
+                    }
                     return this.attrs[arguments[0]];
                 }
                 if (this.attrs && arguments.length == 1 && arguments[0] instanceof Array) {
@@ -1025,13 +1031,13 @@ var Raphael = (function (type) {
                     value = dasharray[value.toString().toLowerCase()];
                     if (value) {
                         var width = o.attrs["stroke-width"] || "1",
-                            butt = {round: width, square: width, butt: 0}[o.attrs["stroke-linecap"]] || 0,
+                            butt = {round: width, square: width, butt: 0}[o.attrs["stroke-linecap"] || params["stroke-linecap"]] || 0,
                             dashes = [];
                         for (var i = 0, ii = value.length; i < ii; i++) {
                             dashes.push(value[i] * width + ((i % 2) ? 1 : -1) * butt);
                         }
                         value = dashes.join(",");
-                        o[0].setAttribute("stroke-dasharray", value);
+                        o.node.setAttribute("stroke-dasharray", value);
                     }
                 };
                 for (var att in params) {
@@ -1040,34 +1046,34 @@ var Raphael = (function (type) {
                     switch (att) {
                         case "path":
                             if (o.type == "path") {
-                                o[0].setAttribute("d", "M0,0");
+                                o.node.setAttribute("d", "M0,0");
                                 C.pathfinder(o, value);
                             }
                         case "rx":
                         case "cx":
                         case "x":
-                            o[0].setAttribute(att, value);
+                            o.node.setAttribute(att, value);
                             updatePosition(o);
                             break;
                         case "ry":
                         case "cy":
                         case "y":
-                            o[0].setAttribute(att, value);
+                            o.node.setAttribute(att, value);
                             updatePosition(o);
                             break;
                         case "width":
-                            o[0].setAttribute(att, value);
+                            o.node.setAttribute(att, value);
                             break;
                         case "height":
-                            o[0].setAttribute(att, value);
+                            o.node.setAttribute(att, value);
                             break;
                         case "gradient":
-                            addGrdientFill(o[0], value, o.svg);
+                            addGrdientFill(o.node, value, o.svg);
                             break;
                         case "stroke-width":
-                            o[0].style.strokeWidth = value;
+                            o.node.style.strokeWidth = value;
                             // Need following line for Firefox
-                            o[0].setAttribute(att, value);
+                            o.node.setAttribute(att, value);
                             if (o.attrs["stroke-dasharray"]) {
                                 addDashes(o, o.attrs["stroke-dasharray"]);
                             }
@@ -1077,8 +1083,8 @@ var Raphael = (function (type) {
                             break;
                         case "text":
                             if (o.type == "text") {
-                                o[0].childNodes.length && o[0].removeChild(o[0].firstChild);
-                                o[0].appendChild(document.createTextNode(value));
+                                o.node.childNodes.length && o.node.removeChild(o.node.firstChild);
+                                o.node.appendChild(document.createTextNode(value));
                             }
                             break;
                         case "rotation":
@@ -1121,8 +1127,8 @@ var Raphael = (function (type) {
                                 document.body.appendChild(img);
                                 img.src = isURL[1];
                                 o.svg.defs.appendChild(el);
-                                o[0].style.fill = "url(#" + el.id + ")";
-                                o[0].setAttribute("fill", "url(#" + el.id + ")");
+                                o.node.style.fill = "url(#" + el.id + ")";
+                                o.node.setAttribute("fill", "url(#" + el.id + ")");
                                 o.pattern = el;
                                 updatePosition(o);
                                 break;
@@ -1131,9 +1137,9 @@ var Raphael = (function (type) {
                             var cssrule = att.replace(/(\-.)/g, function (w) {
                                 return w.substring(1).toUpperCase();
                             });
-                            o[0].style[cssrule] = value;
+                            o.node.style[cssrule] = value;
                             // Need following line for Firefox
-                            o[0].setAttribute(att, value);
+                            o.node.setAttribute(att, value);
                             break;
                     }
                 }
@@ -1145,7 +1151,7 @@ var Raphael = (function (type) {
                 this.node = node;
                 this.svg = svg;
                 this.attrs = this.attrs || {};
-                this.transformations = []; // rotate, translate, scale, matrix
+                this.transformations = []; // rotate, translate, scale
                 this._ = {
                     tx: 0,
                     ty: 0,
@@ -1195,22 +1201,22 @@ var Raphael = (function (type) {
                 } else {
                     this.transformations[0] = "";
                 }
-                this[0].setAttribute("transform", this.transformations.join(" "));
+                this.node.setAttribute("transform", this.transformations.join(" "));
                 return this;
             };
             Element.prototype.hide = function () {
-                this[0].style.display = "none";
+                this.node.style.display = "none";
                 return this;
             };
             Element.prototype.show = function () {
-                this[0].style.display = "block";
+                this.node.style.display = "block";
                 return this;
             };
             Element.prototype.remove = function () {
-                this[0].parentNode.removeChild(this[0]);
+                this.node.parentNode.removeChild(this.node);
             };
             Element.prototype.getBBox = function () {
-                return this[0].getBBox();
+                return this.node.getBBox();
             };
             Element.prototype.attr = function () {
                 if (arguments.length == 1 && typeof arguments[0] == "string") {
@@ -1236,12 +1242,12 @@ var Raphael = (function (type) {
                 return this;
             };
             Element.prototype.toFront = function () {
-                this[0].parentNode.appendChild(this[0]);
+                this.node.parentNode.appendChild(this.node);
                 return this;
             };
             Element.prototype.toBack = function () {
-                if (this[0].parentNode.firstChild != this[0]) {
-                    this[0].parentNode.insertBefore(this[0], this[0].parentNode.firstChild);
+                if (this.node.parentNode.firstChild != this.node) {
+                    this.node.parentNode.insertBefore(this.node, this.node.parentNode.firstChild);
                 }
                 return this;
             };
@@ -1686,38 +1692,17 @@ var Raphael = (function (type) {
                 })();
                 return this;
             };
-            
-            // depricated
-            Element.prototype.animateTo = function (x, y, ms, callback) {
-                clearTimeout(this.animation_in_progress);
-                if ("cx" in this.attrs || "x" in this.attrs) {
-                    var is_round = ("cx" in this.attrs),
-                        X = this.attrs.cx || this.attrs.x,
-                        Y = this.attrs.cy || this.attrs.y;
-                    if (x == X && y == Y) {
-                        return this;
-                    }
-                    var dy = y - Y,
-                        dx = x - X;
-                    var start = new Date(),
-                        that = this;
-                    (function () {
-                        var time = (new Date()).getTime() - start.getTime();
-                        if (time < ms) {
-                            var x1 = X + time * dx / ms;
-                            var y1 = Y + time * dy / ms;
-                            that.attr(is_round ? {cx: x1, cy: y1} : {x: x1, y: y1});
-                            that.animation_in_progress = setTimeout(arguments.callee, 1);
-                            C.safari();
-                        } else {
-                            that.attr(is_round ? {cx: x, cy: y} : {x: x, y: y});
-                            C.safari();
-                            callback && callback.call(that);
-                        }
-                    })();
+            Element.prototype.insertAfter = function (element) {
+                if (element.node.nextSibling) {
+                    element.node.parentNode.insertBefore(this.node, element.node.nextSibling);
+                } else {
+                    element.node.parentNode.appendChild(this.node);
                 }
-                return this;
             };
+            Element.prototype.insertBefore = function (element) {
+                element.node.parentNode.insertBefore(this.node, element.node);
+            };
+            
             C.pathfinder = function (p, path) {
                 var commands = {
                     M: function (x, y) {
@@ -1771,7 +1756,8 @@ if (Raphael.vml && window.CanvasRenderingContext2D) {
     Raphael.vml = Raphael.svg = false;
 }
 Raphael.toString = function () {
-    return "Your browser supports " + this.type + ".\nYou are running " + unescape("Rapha%EBl%20") + this.version;
+    return  "Your browser " + (this.vml ? "doesn't ": "") + "support" + (this.svg ? "s": "") +
+            " SVG.\nYou are running " + unescape("Rapha%EBl%20") + this.version;
 };
 // generic utilities
 Raphael.hsb2rgb = function (hue, saturation, brightness) {
index f22a6e6..fb3cb33 100644 (file)
                         <h4>Usage</h4>
                         <pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
 <code>c.toBack();</code></pre>
+                        <h3 id="insertBefore">
+                            insertBefore
+                        </h3>
+                        <p>
+                            Inserts current object before the given one.
+                        </p>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>var r = paper.rect(10, 10, 10, 10);</code>
+<code>var c = paper.circle(10, 10, 10);</code>
+<code>c.insertBefore(r);</code></pre>
+                        <h3 id="insertAfter">
+                            insertAfter
+                        </h3>
+                        <p>
+                            Inserts current object after the given one
+                        </p>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>var r = paper.rect(10, 10, 10, 10);</code>
+<code>var c = paper.circle(10, 10, 10);</code>
+<code>r.insertAfter(c);</code></pre>
                         <h2>Graphic Primitives</h2>
                         <h3 id="circle">
                             circle