1.3 v1.3.0
authorDmitry Baranovskiy <dbaranovskiy@Fresh-Air.sydney.atlassian.com>
Wed, 6 Jan 2010 23:03:43 +0000 (10:03 +1100)
committerDmitry Baranovskiy <dbaranovskiy@Fresh-Air.sydney.atlassian.com>
Wed, 6 Jan 2010 23:03:43 +0000 (10:03 +1100)
• AnimateAlong method
• getPointAtLength
• getSubpath
• getTotalLength
• bug fixes

raphael-min.js
raphael.js
reference.html

index cdfdfbb..3e95317 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * Raphael 1.3.0dev - JavaScript Vector Library
+ * Raphael 1.3.0 - JavaScript Vector Library
  *
  * 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}('jK(aS(p,a,c,k,e,r){e=aS(c){b0(c<a?\'\':e(b7(c/a)))+((c=c%a)>35?b3.jy(c+29):c.b6(36))};if(!\'\'.b2(/^/,b3)){b1(c--)r[e(c)]=k[c]||e(c);k=[aS(e){b0 r[e]}];e=aS(){b0\'\\\\w+\'};c=1};b1(c--)if(k[c])p=p.b2(b5 b4(\'\\\\b\'+e(c)+\'\\\\b\',\'g\'),k[c]);b0 p}(\'6Z.32=(14(){11 a=/[, ]+/,6X=/^(2p|1M|1s|2u|1D|2i)$/,K=4k,ar=6Z,l={6J:"32"1y ar,1u:ar.32},am=14(){12(am.1u(1f[0],"2g")){11 d=1f[0],e=x[1R](am,d.2Y(0,3+am.1u(d[0],ak))),S=e.4U();1i(11 R=0,15=d[m];R<15;R++){11 E=d[R]||{};6X.58(E.1p)&&S[f](e[E.1p]().1V(E))}13 S}13 x[1R](am,1f)},1I=14(){},1q="9r",1R="9q",21="9o",aq="",al=" ",A="5Y",F="9i 9h 9g 9f 5M 5L 9c"[A](al),P="9a",aw="5G",m="3v",1c="94",2M=5U[1c].91,aa=8Y,g=aa.4j,aF=aa.4x,ak="5c",ax="5a",au=8P[1c][ax],8O={},1K=aa.8M,f="63",3q=/^(?=[\\\\8J-f]$)/,c=/^3a\\\\([\\\'"]?([^\\\\)]+)[\\\'"]?\\\\)$/i,y=/^\\\\s*((#[a-f\\\\d]{6})|(#[a-f\\\\d]{3})|4X\\\\(\\\\s*([\\\\d\\\\.]+\\\\s*,\\\\s*[\\\\d\\\\.]+\\\\s*,\\\\s*[\\\\d\\\\.]+)\\\\s*\\\\)|4X\\\\(\\\\s*([\\\\d\\\\.]+%\\\\s*,\\\\s*[\\\\d\\\\.]+%\\\\s*,\\\\s*[\\\\d\\\\.]+%)\\\\s*\\\\)|4W[2k]\\\\(\\\\s*([\\\\d\\\\.]+\\\\s*,\\\\s*[\\\\d\\\\.]+\\\\s*,\\\\s*[\\\\d\\\\.]+)\\\\s*\\\\)|4W[2k]\\\\(\\\\s*([\\\\d\\\\.]+%\\\\s*,\\\\s*[\\\\d\\\\.]+%\\\\s*,\\\\s*[\\\\d\\\\.]+%)\\\\s*\\\\))\\\\s*$/i,N=aa.4V,w="8y",V=8w,G=8u,3V=5U[1c].8s,j={"1P-1M":"0 0 65 65",3B:"2O",1Q:0,1Y:0,1m:"#6n","1m-1z":1,1v:\\\'8f "6G"\\\',"1v-3L":\\\'"6G"\\\',"1v-2W":"10","1v-1k":"4v","1v-30":5o,1S:0,1d:0,3e:"3Y://82.5h/",1z:1,1s:"80,0",r:0,2f:0,2z:0,2t:0,1J:"1 1",2K:"",1g:"#2n","1g-2S":"","1g-34":"4r","1g-46":"4r","1g-4b":0,"1g-1z":1,"1g-18":1,4i:"7K","1D-4l":"4o",3D:"32",2C:"0 0",18:0,x:0,y:0},Y={3d:"3d","1P-1M":"3C",1Q:ak,1Y:ak,1m:"4L","1m-1z":ak,"1v-2W":ak,1d:ak,1z:ak,1s:"1s",r:ak,2f:"3C",2z:ak,2t:ak,1J:"3C",1g:"4L","1g-1z":ak,"1g-18":ak,2C:"3C",18:ak,x:ak,y:ak},1L="7A";am.4B="1.3.7y";am.1p=(ar.7x||K.7w.7v("3Y://4m.4I.4J/7s/7r/7q#7p","1.1")?"4C":"3w");12(am.1p=="3w"){11 5r=4k.2X("4S");5r.5b="<!--[12 3E]><3F><3F><![7g]-->";12(5r.7f[m]!=2){13 1h}}am.3j=!(am.3E=am.1p=="3w");1I[1c]=am[1c];am.4n=0;am.5v=0;am.5w={};am.1u=14(e,d){d=2M.1F(d);13((d=="2R"||d=="4f")&&6U e==d)||(e==1h&&d=="1h")||2M.1F(au.1F(e).40(8,-1))==d};am.71=14(d){ar=d;K=ar.4k};11 3Z=14(e){12(am.3E){11 d=/^\\\\s+|\\\\s+$/g;3Z=ai(14(R){11 S;R=(R+aq)[1L](d,aq);41{11 a=1U 72("73");a.74("<35>");a.76();S=a.35}4h(19){S=77().4k.35}11 i=S.78();41{S.1k.28=R;11 b=i.79("7a");b=((b&2s)<<16)|(b&7b)|((b&7c)>>>16);13"#"+("7d"+b[ax](16)).40(-6)}4h(19){13"1C"}})}1n{11 E=K.2X("i");E.3D="3K\\\\3J 7e 7h";E.1k.3g="1C";K.35[1q](E);3Z=ai(14(i){E.1k.28=i;13 K.6y.6x(E,aq).6w("28")})}13 3Z(e)};am.4p=ai(14(a,b,c){12(am.1u(a,"2R")&&"h"1y a&&"s"1y a&&"b"1y a){c=a.b;b=a.s;a=a.h}11 R,S,a5;12(c==0){13{r:0,g:0,b:0,2F:"#2n"}}12(a>1||b>1||c>1){a/=2s;b/=2s;c/=2s}11 f=~~(a*6),a1=(a*6)-f,E=c*(1-b),e=c*(1-(b*a1)),a6=c*(1-(b*(1-a1)));R=[c,e,E,E,a6,c,c][f];S=[a6,c,c,e,E,E,a6][f];a5=[E,E,a6,c,c,e,E][f];R*=2s;S*=2s;a5*=2s;11 g={r:R,g:S,b:a5},d=(~~R)[ax](16),19=(~~S)[ax](16),a3=(~~a5)[ax](16);d=d[1L](3q,"0");19=19[1L](3q,"0");a3=a3[1L](3q,"0");g.2F="#"+d+19+a3;13 g},am);am.7i=ai(14(d,e,a){12(am.1u(d,"2R")&&"r"1y d&&"g"1y d&&"b"1y d){a=d.b;e=d.g;d=d.r}12(am.1u(d,"2l")){11 b=am.2P(d);d=b.r;e=b.g;a=b.b}12(d>1||e>1||a>1){d/=2s;e/=2s;a/=2s}11 c=g(d,e,a),i=aF(d,e,a),R,E,S=c;12(i==c){13{h:0,s:0,b:c}}1n{11 f=(c-i);E=f/c;12(d==c){R=(e-a)/f}1n{12(e==c){R=2+((a-d)/f)}1n{R=4+((d-e)/f)}}R/=6;R<0&&R++;R>1&&R--}13{h:R,s:E,b:S}},am);11 6k=/,?([7j]),?/6i;am.3S=14(){13 9.5G(",")[1L](6k,"$1")};14 ai(E,e,d){14 i(){11 R=6f[1c].40.1F(1f,0),15=R[aw]("\\\\7k"),S=i.6d=i.6d||{},1b=i.6b=i.6b||[];12(S[P](15)){13 d?d(S[15]):S[15]}1b[m]>=3P&&22 S[1b.4P()];1b[f](15);S[15]=E[1R](e,R);13 d?d(S[15]):S[15]}13 i}am.2P=ai(14(d){12(!d||!!((d=d+aq).67("-")+1)){13{r:-1,g:-1,b:-1,2F:"1C",3Q:1}}12(d=="1C"){13{r:-1,g:-1,b:-1,2F:"1C"}}!(({4W:1,7l:1})[P](d.3W(0,2))||d.31()=="#")&&(d=3Z(d));11 S,i,E,19,a0,15=d.3z(y);12(15){12(15[2]){19=G(15[2].3W(5),16);E=G(15[2].3W(3,5),16);i=G(15[2].3W(1,3),16)}12(15[3]){19=G((a0=15[3].31(3))+a0,16);E=G((a0=15[3].31(2))+a0,16);i=G((a0=15[3].31(1))+a0,16)}12(15[4]){15=15[4][A](/\\\\s*,\\\\s*/);i=V(15[0]);E=V(15[1]);19=V(15[2])}12(15[5]){15=15[5][A](/\\\\s*,\\\\s*/);i=V(15[0])*2.55;E=V(15[1])*2.55;19=V(15[2])*2.55}12(15[6]){15=15[6][A](/\\\\s*,\\\\s*/);i=V(15[0]);E=V(15[1]);19=V(15[2]);13 am.4p(i,E,19)}12(15[7]){15=15[7][A](/\\\\s*,\\\\s*/);i=V(15[0])*2.55;E=V(15[1])*2.55;19=V(15[2])*2.55;13 am.4p(i,E,19)}15={r:i,g:E,b:19};11 e=(~~i)[ax](16),R=(~~E)[ax](16),1b=(~~19)[ax](16);e=e[1L](3q,"0");R=R[1L](3q,"0");1b=1b[1L](3q,"0");15.2F="#"+e+R+1b;13 15}13{r:-1,g:-1,b:-1,2F:"1C",3Q:1}},am);am.4a=14(e){11 i=9.4a.2a=9.4a.2a||{h:0,s:1,b:e||0.75},d=9.4p(i.h,i.s,i.b);i.h+=0.7m;12(i.h>1){i.h=0;i.s-=0.2;i.s<=0&&(9.4a.2a={h:0,s:1,b:i.b})}13 d.2F};am.4a.7n=14(){22 9.2a};am.4z=ai(14(d){12(!d){13 1h}11 i={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},e=[];12(am.1u(d,"2g")&&am.1u(d[0],"2g")){e=at(d)}12(!e[m]){(d+aq)[1L](/([7o])[\\\\s,]*((-?\\\\d*\\\\.?\\\\d*(?:e[-+]?\\\\d+)?\\\\s*,?\\\\s*)+)/5C,14(R,E,c){11 d=[],S=2M.1F(E);c[1L](/(-?\\\\d*\\\\.?\\\\d*(?:e[-+]?\\\\d+)?)\\\\s*,?\\\\s*/5C,14(a,b){b&&d[f](+b)});2N(d[m]>=i[S]){e[f]([E][21](d.2Y(0,i[S])));12(!i[S]){1a}}})}e[ax]=am.3S;13 e});am.4F=14(e,d,a,b,c,R,f,g,h){11 j=1-h,a2=1K(j,3)*e+1K(j,2)*3*h*a+j*3*h*h*c+1K(h,3)*f,a0=1K(j,3)*d+1K(j,2)*3*h*b+j*3*h*h*R+1K(h,3)*g,a7=e+2*h*(a-e)+h*h*(c-2*a+e),a6=d+2*h*(b-d)+h*h*(R-2*b+d),1A=a+2*h*(c-a)+h*h*(f-2*c+a),a8=b+2*h*(R-b)+h*h*(g-2*R+b),a4=(1-h)*e+h*a,a1=(1-h)*d+h*b,E=(1-h)*c+h*f,i=(1-h)*R+h*g,S=(90-aa.7t((a7-1A)/(a6-a8))*37/aa.3T);(a7>1A||a6<a8)&&(S+=37);13{x:a2,y:a0,m:{x:a7,y:a6},n:{x:1A,y:a8},2a:{x:a4,y:a1},3U:{x:E,y:i},5A:S}};11 T=ai(14(a){12(!a){13{x:0,y:0,18:0,1d:0}}a=H(a);11 b=0,1b=0,R=[],e=[],E;1i(11 S=0,a1=a[m];S<a1;S++){E=a[S];12(E[0]=="M"){b=E[1];1b=E[2];R[f](b);e[f](1b)}1n{11 c=az(b,1b,E[1],E[2],E[3],E[4],E[5],E[6]);R=R[21](c.4x.x,c.4j.x);e=e[21](c.4x.y,c.4j.y);b=E[5];1b=E[6]}}11 d=aF[1R](0,R),a0=aF[1R](0,e);13{x:d,y:a0,18:g[1R](0,R)-d,1d:g[1R](0,e)-a0}}),at=14(a){11 E=[];12(!am.1u(a,"2g")||!am.1u(a&&a[0],"2g")){a=am.4z(a)}1i(11 e=0,R=a[m];e<R;e++){E[e]=[];1i(11 d=0,S=a[e][m];d<S;d++){E[e][d]=a[e][d]}}E[ax]=am.3S;13 E},ac=ai(14(R){12(!am.1u(R,"2g")||!am.1u(R&&R[0],"2g")){R=am.4z(R)}11 a=[],a3=0,a2=0,a6=0,a5=0,E=0;12(R[0][0]=="M"){a3=R[0][1];a2=R[0][2];a6=a3;a5=a2;E++;a[f](["M",a3,a2])}1i(11 b=E,a7=R[m];b<a7;b++){11 d=a[b]=[],a4=R[b];12(a4[0]!=2M.1F(a4[0])){d[0]=2M.1F(a4[0]);2b(d[0]){17"a":d[1]=a4[1];d[2]=a4[2];d[3]=a4[3];d[4]=a4[4];d[5]=a4[5];d[6]=+(a4[6]-a3).2T(3);d[7]=+(a4[7]-a2).2T(3);1a;17"v":d[1]=+(a4[1]-a2).2T(3);1a;17"m":a6=a4[1];a5=a4[2];2O:1i(11 c=1,19=a4[m];c<19;c++){d[c]=+(a4[c]-((c%2)?a3:a2)).2T(3)}}}1n{d=a[b]=[];12(a4[0]=="m"){a6=a4[1]+a3;a5=a4[2]+a2}1i(11 S=0,e=a4[m];S<e;S++){a[b][S]=a4[S]}}11 g=a[b][m];2b(a[b][0]){17"z":a3=a6;a2=a5;1a;17"h":a3+=+a[b][g-1];1a;17"v":a2+=+a[b][g-1];1a;2O:a3+=+a[b][g-2];a2+=+a[b][g-1]}}a[ax]=am.3S;13 a},0,at),s=ai(14(R){12(!am.1u(R,"2g")||!am.1u(R&&R[0],"2g")){R=am.4z(R)}11 a=[],a2=0,a1=0,a5=0,a4=0,E=0;12(R[0][0]=="M"){a2=+R[0][1];a1=+R[0][2];a5=a2;a4=a1;E++;a[0]=["M",a2,a1]}1i(11 b=E,a6=R[m];b<a6;b++){11 d=a[b]=[],a3=R[b];12(a3[0]!=3V.1F(a3[0])){d[0]=3V.1F(a3[0]);2b(d[0]){17"A":d[1]=a3[1];d[2]=a3[2];d[3]=a3[3];d[4]=a3[4];d[5]=a3[5];d[6]=+(a3[6]+a2);d[7]=+(a3[7]+a1);1a;17"V":d[1]=+a3[1]+a1;1a;17"H":d[1]=+a3[1]+a2;1a;17"M":a5=+a3[1]+a2;a4=+a3[2]+a1;2O:1i(11 c=1,19=a3[m];c<19;c++){d[c]=+a3[c]+((c%2)?a2:a1)}}}1n{1i(11 S=0,e=a3[m];S<e;S++){a[b][S]=a3[S]}}2b(d[0]){17"Z":a2=a5;a1=a4;1a;17"H":a2=d[1];1a;17"V":a1=d[1];1a;2O:a2=a[b][a[b][m]-2];a1=a[b][a[b][m]-1]}}a[ax]=am.3S;13 a},1h,at),49=14(e,E,d,i){13[e,E,d,i,d,i]},5s=14(e,E,a,R,d,i){11 S=1/3,1b=2/3;13[S*e+1b*a,S*E+1b*R,S*d+1b*a,S*i+1b*R,d,i]},J=14(f,h,j,k,l,n,S,o,p,q){11 R=aa.3T,1W=R*7u/37,d=R/37*(+l||0),1H=[],3i,4c=ai(14(a,b,i){11 c=a*aa.3t(i)-b*aa.3f(i),5Z=a*aa.3f(i)+b*aa.3t(i);13{x:c,y:5Z}});12(!q){3i=4c(f,h,-d);f=3i.x;h=3i.y;3i=4c(o,p,-d);o=3i.x;p=3i.y;11 e=aa.3t(R/37*l),a3=aa.3f(R/37*l),2k=(f-o)/2,2E=(h-p)/2;j=g(j,aa.2A(2k));k=g(k,aa.2A(2E));11 E=j*j,4Q=k*k,5e=(n==S?-1:1)*aa.3b(aa.2A((E*4Q-E*2E*2E-4Q*2k*2k)/(E*2E*2E+4Q*2k*2k))),1A=5e*j*2E/k+(f+o)/2,a9=5e*-k*2k/j+(h+p)/2,a0=aa.62(((h-a9)/k).2T(7)),19=aa.62(((p-a9)/k).2T(7));a0=f<1A?R-a0:a0;19=o<1A?R-19:19;a0<0&&(a0=R*2+a0);19<0&&(19=R*2+19);12(S&&a0>19){a0=a0-R*2}12(!S&&19>a0){19=19-R*2}}1n{a0=q[0];19=q[1];1A=q[2];a9=q[3]}11 r=19-a0;12(aa.2A(r)>1W){11 s=19,3k=o,a2=p;19=a0+1W*(S&&19>a0?1:-1);o=1A+j*aa.3t(19);p=a9+k*aa.3f(19);1H=J(o,p,j,k,l,0,S,3k,a2,[19,s,1A,a9])}r=19-a0;11 t=aa.3t(a0),39=aa.3f(a0),15=aa.3t(19),33=aa.3f(19),57=aa.7z(r/4),54=4/3*j*57,53=4/3*k*57,52=[f,h],3p=[f+54*39,h-53*t],50=[o+54*33,p-53*15],3F=[o,p];3p[0]=2*52[0]-3p[0];3p[1]=2*52[1]-3p[1];12(q){13[3p,50,3F][21](1H)}1n{1H=[3p,50,3F][21](1H)[aw]()[A](",");11 u=[];1i(11 v=0,2D=1H[m];v<2D;v++){u[v]=v%2?4c(1H[v-1],1H[v],d).y:4c(1H[v],1H[v+1],d).x}13 u}},L=14(e,d,E,i,a,b,c,S,f){11 R=1-f;13{x:1K(R,3)*e+1K(R,2)*3*f*E+R*3*f*f*a+1K(f,3)*c,y:1K(R,3)*d+1K(R,2)*3*f*i+R*3*f*f*b+1K(f,3)*S}},az=ai(14(i,d,R,E,a,b,c,h){11 j=(a-2*R+i)-(c-2*a+R),a1=2*(R-i)-2*(a-R),1b=i-R,15=(-a1+aa.3b(a1*a1-4*j*1b))/2/j,S=(-a1-aa.3b(a1*a1-4*j*1b))/2/j,a0=[d,h],a3=[i,c],e;aa.2A(15)>4D&&(15=0.5);aa.2A(S)>4D&&(S=0.5);12(15>0&&15<1){e=L(i,d,R,E,a,b,c,h,15);a3[f](e.x);a0[f](e.y)}12(S>0&&S<1){e=L(i,d,R,E,a,b,c,h,S);a3[f](e.x);a0[f](e.y)}j=(b-2*E+d)-(h-2*b+E);a1=2*(E-d)-2*(b-E);1b=d-E;15=(-a1+aa.3b(a1*a1-4*j*1b))/2/j;S=(-a1-aa.3b(a1*a1-4*j*1b))/2/j;aa.2A(15)>4D&&(15=0.5);aa.2A(S)>4D&&(S=0.5);12(15>0&&15<1){e=L(i,d,R,E,a,b,c,h,15);a3[f](e.x);a0[f](e.y)}12(S>0&&S<1){e=L(i,d,R,E,a,b,c,h,S);a3[f](e.x);a0[f](e.y)}13{4x:{x:aF[1R](0,a3),y:aF[1R](0,a0)},4j:{x:g[1R](0,a3),y:g[1R](0,a0)}}}),H=ai(14(f,h){11 R=s(f),a2=h&&s(h),a3={x:0,y:0,33:0,39:0,X:0,Y:0,3m:1h,3l:1h},d={x:0,y:0,33:0,39:0,X:0,Y:0,3m:1h,3l:1h},15=14(a,b){11 i,a9;12(!a){13["C",b.x,b.y,b.x,b.y,b.x,b.y]}!(a[0]1y{T:1,Q:1})&&(b.3m=b.3l=1h);2b(a[0]){17"M":b.X=a[1];b.Y=a[2];1a;17"A":a=["C"][21](J[1R](0,[b.x,b.y][21](a.40(1))));1a;17"S":i=b.x+(b.x-(b.33||b.x));a9=b.y+(b.y-(b.39||b.y));a=["C",i,a9][21](a.40(1));1a;17"T":b.3m=b.x+(b.x-(b.3m||b.x));b.3l=b.y+(b.y-(b.3l||b.y));a=["C"][21](5s(b.x,b.y,b.3m,b.3l,a[1],a[2]));1a;17"Q":b.3m=a[1];b.3l=a[2];a=["C"][21](5s(b.x,b.y,a[1],a[2],a[3],a[4]));1a;17"L":a=["C"][21](49(b.x,b.y,a[1],a[2]));1a;17"H":a=["C"][21](49(b.x,b.y,a[1],b.y));1a;17"V":a=["C"][21](49(b.x,b.y,b.x,a[1]));1a;17"Z":a=["C"][21](49(b.x,b.y,b.X,b.Y));1a}13 a},e=14(a,b){12(a[b][m]>7){a[b].4P();11 c=a[b];2N(c[m]){a.2Y(b++,0,["C"][21](c.2Y(0,6)))}a.2Y(b,1);a4=g(R[m],a2&&a2[m]||0)}},E=14(a,b,c,d,e){12(a&&b&&a[e][0]=="M"&&b[e][0]!="M"){b.2Y(e,0,["M",d.x,d.y]);c.33=0;c.39=0;c.x=a[e][1];c.y=a[e][2];a4=g(R[m],a2&&a2[m]||0)}};1i(11 j=0,a4=g(R[m],a2&&a2[m]||0);j<a4;j++){R[j]=15(R[j],a3);e(R,j);a2&&(a2[j]=15(a2[j],d));a2&&e(a2,j);E(R,a2,a3,d,j);E(a2,R,d,a3,j);11 k=R[j],a5=a2&&a2[j],S=k[m],a0=a2&&a5[m];a3.x=k[S-2];a3.y=k[S-1];a3.33=V(k[S-4])||a3.x;a3.39=V(k[S-3])||a3.y;d.33=a2&&(V(a5[a0-4])||d.x);d.39=a2&&(V(a5[a0-3])||d.y);d.x=a2&&a5[a0-2];d.y=a2&&a5[a0-1]}13 a2?[R,a2]:R},1h,at),p=ai(14(a){11 b=[];1i(11 c=0,a2=a[m];c<a2;c++){11 e={},19=a[c].3z(/^([^:]*):?([\\\\d\\\\.]*)/);e.28=am.2P(19[1]);12(e.28.3Q){13 1h}e.28=e.28.2F;19[2]&&(e.2I=19[2]+"%");b[f](e)}1i(11 c=1,a2=b[m]-1;c<a2;c++){12(!b[c].2I){11 E=V(b[c-1].2I||0),R=0;1i(11 S=c+1;S<a2;S++){12(b[S].2I){R=b[S].2I;1a}}12(!R){R=4t;S=a2}R=V(R);11 d=(R-E)/(S-c+1);1i(;c<S;c++){E+=d;b[c].2I=E+"%"}}}13 b}),an=14(){11 i,e,R,E,d;12(am.1u(1f[0],"2l")||am.1u(1f[0],"2R")){12(am.1u(1f[0],"2l")){i=K.4R(1f[0])}1n{i=1f[0]}12(i.68){12(1f[1]==1h){13{3n:i,18:i.1k.7B||i.4M,1d:i.1k.7C||i.4K}}1n{13{3n:i,18:1f[1],1d:1f[2]}}}}1n{12(am.1u(1f[0],ak)&&1f[m]>3){13{3n:1,x:1f[0],y:1f[1],18:1f[2],1d:1f[3]}}}},aD=14(d,i){11 e=9;1i(11 E 1y i){12(i[P](E)&&!(E 1y d)){2b(6U i[E]){17"14":(14(R){d[E]=d===e?R:14(){13 R[1R](e,1f)}})(i[E]);1a;17"2R":d[E]=d[E]||{};aD.1F(9,d[E],i[E]);1a;2O:d[E]=i[E];1a}}}},aj=14(d,e){d==e.1w&&(e.1w=d.20);d==e.2e&&(e.2e=d.1Z);d.1Z&&(d.1Z.20=d.20);d.20&&(d.20.1Z=d.1Z)},X=14(d,e){12(e.1w===d){13}aj(d,e);d.1Z=1h;d.20=e.1w;e.1w.1Z=d;e.1w=d},k=14(d,e){12(e.2e===d){13}aj(d,e);d.1Z=e.2e;d.20=1h;e.2e.20=d;e.2e=d},B=14(e,d,i){aj(e,i);d==i.1w&&(i.1w=e);d.1Z&&(d.1Z.20=e);e.1Z=d.1Z;e.20=d;d.1Z=e},ao=14(e,d,i){aj(e,i);d==i.2e&&(i.2e=e);d.20&&(d.20.1Z=e);e.20=d.20;d.20=e;e.1Z=d},t=14(d){13 14(){51 1U 56("3K\\\\3J: 7D 59 7E 4y 6l \\\\7F"+d+"\\\\7G 7H 1O 2R");}},ap=/^r(?:\\\\(([^,]+?)\\\\s*,\\\\s*([^\\\\)]+?)\\\\))?/;12(am.3j){1I[1c].6o="3Y://4m.4I.4J/6u/3j";1I[1c].3u="3Y://4m.4I.4J/7I/3u";11 N=14(d){13+d+(~~d===d)*0.5},U=14(S){1i(11 e=0,E=S[m];e<E;e++){12(2M.1F(S[e][0])!="a"){1i(11 d=1,R=S[e][m];d<R;d++){S[e][d]=N(S[e][d])}}1n{S[e][6]=N(S[e][6]);S[e][7]=N(S[e][7])}}13 S},1r=14(i,d){12(d){1i(11 e 1y d){12(d[P](e)){i[w](e,d[e])}}}1n{13 K.7J(1I[1c].6o,i)}};am[ax]=14(){13"6A 6B 7L 4C.\\\\6C 59 6D 3K\\\\3J "+9.4B};11 q=14(d,E){11 e=1r("1s");E.1E&&E.1E[1q](e);11 i=1U 1j(e,E);i.1p="1s";Z(i,{1m:"1C",1g:"#2n",1s:d});13 i};11 b=14(E,f,d){11 h="4e",1b=0.5,S=0.5,a6=E.1k;f=(f+aq)[1L](ap,14(a,i,b){h="4d";12(i&&b){1b=V(i);S=V(b);11 c=((S>0.5)*2-1);1K(1b-0.5,2)+1K(S-0.5,2)>0.25&&(S=aa.3b(0.25-1K(1b-0.5,2))*c+0.5)&&S!=0.5&&(S=S.2T(5)-0.7M*c)}13 aq});f=f[A](/\\\\s*\\\\-\\\\s*/);12(h=="4e"){11 j=f.4P();j=-V(j);12(6H(j)){13 1h}11 R=[0,0,aa.3t(j*aa.3T/37),aa.3f(j*aa.3T/37)],a3=1/(g(aa.2A(R[2]),aa.2A(R[3]))||1);R[2]*=a3;R[3]*=a3;12(R[2]<0){R[0]=-R[2];R[2]=0}12(R[3]<0){R[1]=-R[3];R[3]=0}}11 k=p(f);12(!k){13 1h}11 e=1r(h+"7N");e.2h="r"+(am.4n++)[ax](36);1r(e,h=="4d"?{48:1b,47:S}:{7O:R[0],7P:R[1],7Q:R[2],7R:R[3]});d.42[1q](e);1i(11 l=0,a5=k[m];l<a5;l++){11 n=1r("3s");1r(n,{2I:k[l].2I?k[l].2I:!l?"0%":"4t%","3s-28":k[l].28||"#6n"});e[1q](n)}1r(E,{1m:"3a(#"+e.2h+")",1z:1,"1m-1z":1});a6.1m=aq;a6.1z=1;a6.7S=1;13 1};11 M=14(e){11 d=e.2J();1r(e.3M,{7T:am.2Z("3h({0},{1})",d.x,d.y)})};11 Z=14(f,g){11 h={"":[0],1C:[0],"-":[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]},a8=f.1o,a4=f.1e,a0=f.23(),S=14(a,b){b=h[2M.1F(b)];12(b){11 c=a.1e["1g-18"]||"1",3k={4V:c,5E:c,4r:0}[a.1e["1g-34"]||g["1g-34"]]||0,2m=[];11 d=b[m];2N(d--){2m[d]=b[d]*c+((d%2)?1:-1)*3k}1r(a8,{"1g-2S":2m[aw](",")})}};g[P]("2f")&&(a0=g.2f);11 k=(a0+aq)[A](a);12(!(k.3v-1)){k=1h}1n{k[1]=+k[1];k[2]=+k[2]}V(a0)&&f.23(0,27);1i(11 l 1y g){12(g[P](l)){12(!j[P](l)){4N}11 n=g[l];a4[l]=n;2b(l){17"2f":f.23(n,27);1a;17"3e":17"3D":17"4i":11 o=a8.1G;12(2M.1F(o.68)!="a"){11 E=1r("a");o.2B(E,a8);E[1q](a8);o=E}o.4u(f.7U[1c].3u,l,n);1a;17"3B":a8.1k.3B=n;1a;17"1P-1M":11 e=(n+aq)[A](a);12(e[m]==4){f.1P&&f.1P.1G.1G.2w(f.1P.1G);11 i=1r("7V"),a9=1r("1M");i.2h="r"+(am.4n++)[ax](36);1r(a9,{x:e[0],y:e[1],18:e[2],1d:e[3]});i[1q](a9);f.1x.42[1q](i);1r(a8,{"1P-1s":"3a(#"+i.2h+")"});f.1P=a9}12(!n){11 p=K.4R(a8.6S("1P-1s")[1L](/(^3a\\\\(#|\\\\)$)/g,aq));p&&p.1G.2w(p);1r(a8,{"1P-1s":aq});22 f.1P}1a;17"1s":12(n&&f.1p=="1s"){a4.1s=U(s(n));1r(a8,{d:a4.1s})}1a;17"18":a8[w](l,n);12(a4.48){l="x";n=a4.x}1n{1a}17"x":12(a4.48){n=-a4.x-(a4.18||0)}17"2z":12(l=="2z"&&f.1p=="1M"){1a}17"1Q":k&&(l=="x"||l=="1Q")&&(k[1]+=n-a4[l]);a8[w](l,N(n));f.3M&&M(f);1a;17"1d":a8[w](l,n);12(a4.47){l="y";n=a4.y}1n{1a}17"y":12(a4.47){n=-a4.y-(a4.1d||0)}17"2t":12(l=="2t"&&f.1p=="1M"){1a}17"1Y":k&&(l=="y"||l=="1Y")&&(k[2]+=n-a4[l]);a8[w](l,N(n));f.3M&&M(f);1a;17"r":12(f.1p=="1M"){1r(a8,{2z:n,2t:n})}1n{a8[w](l,n)}1a;17"2K":12(f.1p=="2i"){a8.4u(f.1x.3u,"3e",n)}1a;17"1g-18":a8.1k.7W=n;a8[w](l,n);12(a4["1g-2S"]){S(f,a4["1g-2S"])}1a;17"1g-2S":S(f,n);1a;17"2C":11 q=(n+aq)[A](a);q[0]=+q[0]||0;q[1]=+q[1]||0;12(k){k[1]+=q[0];k[2]+=q[1]}u.1F(f,q[0],q[1]);1a;17"1J":11 q=(n+aq)[A](a);f.1J(+q[0]||1,+q[1]||+q[0]||1,+q[2]||1h,+q[3]||1h);1a;17"1m":11 R=(n+aq).3z(c);12(R){11 i=1r("3M"),a2=1r("2i");i.2h="r"+(am.4n++)[ax](36);1r(i,{x:0,y:0,7X:"7Y",1d:1,18:1});1r(a2,{x:0,y:0});a2.4u(f.1x.3u,"3e",R[1]);i[1q](a2);11 r=K.2X("7Z");r.1k.2G="2v:2q;1X:-6V;1w-6V";r.81=14(){1r(i,{18:9.4M,1d:9.4K});1r(a2,{18:9.4M,1d:9.4K});K.35.2w(9);f.1x.4s()};K.35[1q](r);r.2K=R[1];f.1x.42[1q](i);a8.1k.1m="3a(#"+i.2h+")";1r(a8,{1m:"3a(#"+i.2h+")"});f.3M=i;f.3M&&M(f);1a}12(!am.2P(n).3Q){22 g.1S;22 a4.1S;!am.1u(a4.1z,"4f")&&am.1u(g.1z,"4f")&&1r(a8,{1z:a4.1z});!am.1u(a4["1m-1z"],"4f")&&am.1u(g["1m-1z"],"4f")&&1r(a8,{"1m-1z":a4["1m-1z"]})}1n{12((({2p:1,2u:1})[P](f.1p)||(n+aq).31()!="r")&&b(a8,n,f.1x)){a4.1S=n;a4.1m="1C";1a}}17"1g":a8[w](l,am.2P(n).2F);1a;17"1S":(({2p:1,2u:1})[P](f.1p)||(n+aq).31()!="r")&&b(a8,n,f.1x);1a;17"1z":17"1m-1z":12(a4.1S){11 d=K.4R(a8.6S("1m")[1L](/^3a\\\\(#|\\\\)$/g,aq));12(d){11 t=d.3r("3s");t[t[m]-1][w]("3s-1z",n)}1a}2O:l=="1v-2W"&&(n=G(n,10)+"1l");11 v=l[1L](/(\\\\-.)/g,14(a){13 3V.1F(a.3W(1))});a8.1k[v]=n;a8[w](l,n);1a}}}D(f,g);12(k){f.23(k.5G(al))}1n{V(a0)&&f.23(a0,27)}};11 h=1.2;11 D=14(d,R){12(d.1p!="1D"||!(R[P]("1D")||R[P]("1v")||R[P]("1v-2W")||R[P]("x")||R[P]("y"))){13}11 a=d.1e,e=d.1o,a2=e.2j?G(K.6y.6x(e.2j,aq).6w("1v-2W"),10):10;12(R[P]("1D")){a.1D=R.1D;2N(e.2j){e.2w(e.2j)}11 E=(R.1D+aq)[A]("\\\\n");1i(11 S=0,a1=E[m];S<a1;S++){12(E[S]){11 b=1r("6v");S&&1r(b,{6Y:a2*h,x:a.x});b[1q](K.6W(E[S]));e[1q](b)}}}1n{11 E=e.3r("6v");1i(11 S=0,a1=E[m];S<a1;S++){S&&1r(E[S],{6Y:a2*h,x:a.x})}}1r(e,{y:a.y});11 c=d.2J(),19=a.y-(c.y+c.1d/2);19&&83(19)&&1r(e,{y:a.y+19})};11 1j=14(e,d){11 E=0,i=0;9[0]=e;9.2h=am.5v++;9.1o=e;e.4H=9;9.1x=d;9.1e=9.1e||{};9.2Q=[];9.1t={3X:0,44:0,1B:{24:0,1Q:0,1Y:0},2y:1,2o:1};!d.2e&&(d.2e=9);9.20=d.1w;d.1w&&(d.1w.1Z=9);d.1w=9;9.1Z=1h};1j[1c].23=14(e,d,E){12(9.1O){13 9}12(e==1h){12(9.1t.1B.1Q){13[9.1t.1B.24,9.1t.1B.1Q,9.1t.1B.1Y][aw](al)}13 9.1t.1B.24}11 i=9.2J();e=(e+aq)[A](a);12(e[m]-1){d=V(e[1]);E=V(e[2])}e=V(e[0]);12(d!=1h){9.1t.1B.24=e}1n{9.1t.1B.24+=e}(E==1h)&&(d=1h);9.1t.1B.1Q=d;9.1t.1B.1Y=E;d=d==1h?i.x+i.18/2:d;E=E==1h?i.y+i.1d/2:E;12(9.1t.1B.24){9.2Q[0]=am.2Z("23({0} {1} {2})",9.1t.1B.24,d,E);9.1P&&1r(9.1P,{45:am.2Z("23({0} {1} {2})",-9.1t.1B.24,d,E)})}1n{9.2Q[0]=aq;9.1P&&1r(9.1P,{45:aq})}1r(9.1o,{45:9.2Q[aw](al)});13 9};1j[1c].5k=14(){!9.1O&&(9.1o.1k.3g="1C");13 9};1j[1c].5n=14(){!9.1O&&(9.1o.1k.3g="");13 9};1j[1c].3H=14(){12(9.1O){13}aj(9,9.1x);9.1o.1G.2w(9.1o);1i(11 d 1y 9){22 9[d]}9.1O=27};1j[1c].2J=14(){12(9.1O){13 9}12(9.1p=="1s"){13 T(9.1e.1s)}12(9.1o.1k.3g=="1C"){9.5n();11 E=27}11 a={};41{a=9.1o.2J()}4h(S){}84{a=a||{}}12(9.1p=="1D"){a={x:a.x,y:85,18:0,1d:0};1i(11 d=0,R=9.1o.86();d<R;d++){11 b=9.1o.87(d);(b.y<a.y)&&(a.y=b.y);(b.y+b.1d-a.y>a.1d)&&(a.1d=b.y+b.1d-a.y);(b.x+b.18-a.x>a.18)&&(a.18=b.x+b.18-a.x)}}E&&9.5k();13 a};1j[1c].1V=14(){12(9.1O){13 9}12(1f[m]==0){11 R={};1i(11 E 1y 9.1e){12(9.1e[P](E)){R[E]=9.1e[E]}}9.1t.1B.24&&(R.2f=9.23());(9.1t.2y!=1||9.1t.2o!=1)&&(R.1J=9.1J());R.1S&&R.1m=="1C"&&(R.1m=R.1S)&&22 R.1S;13 R}12(1f[m]==1&&am.1u(1f[0],"2l")){12(1f[0]=="2C"){13 u.1F(9)}12(1f[0]=="2f"){13 9.23()}12(1f[0]=="1J"){13 9.1J()}12(1f[0]=="1m"&&9.1e.1m=="1C"&&9.1e.1S){13 9.1e.1S}13 9.1e[1f[0]]}12(1f[m]==1&&am.1u(1f[0],"2g")){11 d={};1i(11 e 1y 1f[0]){12(1f[0][P](e)){d[1f[0][e]]=9.1e[1f[0][e]]}}13 d}12(1f[m]==2){11 S={};S[1f[0]]=1f[1];Z(9,S)}1n{12(1f[m]==1&&am.1u(1f[0],"2R")){Z(9,1f[0])}}13 9};1j[1c].6R=14(){12(9.1O){13 9}9.1o.1G[1q](9.1o);11 d=9.1x;d.1w!=9&&X(9,d);13 9};1j[1c].6Q=14(){12(9.1O){13 9}12(9.1o.1G.2j!=9.1o){9.1o.1G.2B(9.1o,9.1o.1G.2j);k(9,9.1x);11 d=9.1x}13 9};1j[1c].4q=14(d){12(9.1O){13 9}11 e=d.1o;12(e.4A){e.1G.2B(9.1o,e.4A)}1n{e.1G[1q](9.1o)}B(9,d,9.1x);13 9};1j[1c].2B=14(d){12(9.1O){13 9}11 e=d.1o;e.1G.2B(9.1o,e);ao(9,d,9.1x);13 9};1j[1c].3O=14(){12(9.1p!="1s"){13-1}13 9.1o.3O()};11 O=14(e,d,S,R){d=N(d);S=N(S);11 E=1r("2p");e.1E&&e.1E[1q](E);11 i=1U 1j(E,e);i.1e={1Q:d,1Y:S,r:R,1m:"1C",1g:"#2n"};i.1p="2p";1r(E,i.1e);13 i};11 5F=14(i,d,a,e,S,b){d=N(d);a=N(a);11 R=1r("1M");i.1E&&i.1E[1q](R);11 E=1U 1j(R,i);E.1e={x:d,y:a,18:e,1d:S,r:b||0,2z:b||0,2t:b||0,1m:"1C",1g:"#2n"};E.1p="1M";1r(R,E.1e);13 E};11 5D=14(e,d,a,S,R){d=N(d);a=N(a);11 E=1r("2u");e.1E&&e.1E[1q](E);11 i=1U 1j(E,e);i.1e={1Q:d,1Y:a,2z:S,2t:R,1m:"1C",1g:"#2n"};i.1p="2u";1r(E,i.1e);13 i};11 o=14(i,a,d,b,e,S){11 R=1r("2i");1r(R,{x:d,y:b,18:e,1d:S,88:"1C"});R.4u(i.3u,"3e",a);i.1E&&i.1E[1q](R);11 E=1U 1j(R,i);E.1e={x:d,y:b,18:e,1d:S,2K:a};E.1p="2i";13 E};11 W=14(e,d,S,R){11 E=1r("1D");1r(E,{x:d,y:S,"1D-4l":"4o"});e.1E&&e.1E[1q](E);11 i=1U 1j(E,e);i.1e={x:d,y:S,"1D-4l":"4o",1D:R,1v:j.1v,1g:"1C",1m:"#2n"};i.1p="1D";Z(i,i.1e);13 i};11 5B=14(e,d){9.18=e||9.18;9.1d=d||9.1d;9.1E[w]("18",9.18);9.1E[w]("1d",9.1d);13 9};11 x=14(){11 E=an[1R](1h,1f),i=E&&E.3n,e=E.x,15=E.y,R=E.18,d=E.1d;12(!i){51 1U 56("4C 3n 6P 6O.");}11 S=1r("3j");R=R||6N;d=d||6L;1r(S,{6K:"3Y://4m.4I.4J/6u/3j",4B:1.1,18:R,1d:d});12(i==1){S.1k.2G="2v:2q;1X:"+e+"1l;1w:"+15+"1l";K.35[1q](S)}1n{12(i.2j){i.2B(S,i.2j)}1n{i[1q](S)}}i=1U 1I;i.18=R;i.1d=d;i.1E=S;aD.1F(i,i,am.5w);i.5u();13 i};1I[1c].5u=14(){11 d=9.1E;2N(d.2j){d.2w(d.2j)}9.2e=9.1w=1h;(9.5t=1r("5t"))[1q](K.6W("89 8a 3K\\\\3J"));d[1q](9.5t);d[1q](9.42=1r("42"))};1I[1c].3H=14(){9.1E.1G&&9.1E.1G.2w(9.1E);1i(11 d 1y 9){9[d]=t(d)}}}12(am.3E){11 6I=14(g){11 h=/[8b]/5C,15=s;(g+aq).3z(h)&&(15=H);h=/[5q]/g;12(15==s&&!(g+aq).3z(h)){11 e={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},R=/([5q]),?([^5q]*)/6i,S=/-?[^,\\\\s-]+/g;11 j=(g+aq)[1L](R,14(b,c,i){11 d=[];i[1L](S,14(a){d[f](N(a))});13 e[c]+d});13 j}11 k=15(g),E,j=[],d;1i(11 l=0,a4=k[m];l<a4;l++){E=k[l];d=2M.1F(k[l][0]);d=="z"&&(d="x");1i(11 n=1,a0=E[m];n<a0;n++){d+=N(E[n])+(n!=a0-1?",":aq)}j[f](d)}13 j[aw](al)};am[ax]=14(){13"6A 6B 8c\\\\8d 8e 4C. 8g 8h 4y 3w.\\\\6C 59 6D 3K\\\\3J "+9.4B};11 q=14(d,S){11 E=ag("3G");E.1k.2G="2v:2q;1X:0;1w:0;18:"+S.18+"1l;1d:"+S.1d+"1l";E.2c=S.2c;E.2d=S.2d;11 i=ag("2H"),e=i.1k;e.18=S.18+"1l";e.1d=S.1d+"1l";i.2c=9.2c;i.2d=9.2d;E[1q](i);11 R=1U 1j(i,E,S);R.8i=27;R.1p="1s";R.1s=[];R.8j=aq;d&&Z(R,{1m:"1C",1g:"#2n",1s:d});S.1E[1q](E);13 R};11 Z=14(f,g){f.1e=f.1e||{};11 h=f.1o,a6=f.1e,o=h.1k,E,1A=f;1i(11 j 1y g){12(g[P](j)){a6[j]=g[j]}}g.3e&&(h.3e=g.3e);g.3D&&(h.3D=g.3D);g.4i&&(h.4i=g.4i);g.3B&&(o.3B=g.3B);12(g.1s&&f.1p=="1s"){a6.1s=g.1s;h.1s=6I(a6.1s)}12(g.2f!=1h){f.23(g.2f,27)}12(g.2C){E=(g.2C+aq)[A](a);u.1F(f,E[0],E[1]);12(f.1t.1B.1Q!=1h){f.1t.1B.1Q+=+E[0];f.1t.1B.1Y+=+E[1];f.2V(f.1e,E[0],E[1])}}12(g.1J){E=(g.1J+aq)[A](a);f.1J(+E[0]||1,+E[1]||+E[0]||1,+E[2]||1h,+E[3]||1h)}12("1P-1M"1y g){11 d=(g["1P-1M"]+aq)[A](a);12(d[m]==4){d[2]=+d[2]+(+d[0]);d[3]=+d[3]+(+d[1]);11 k=h.43||K.2X("4S"),a9=k.1k,S=h.1G;a9.1P=am.2Z("1M({1}1l {2}1l {3}1l {0}1l)",d);12(!h.43){a9.2v="2q";a9.1w=0;a9.1X=0;a9.18=f.1x.18+"1l";a9.1d=f.1x.1d+"1l";S.1G.2B(k,S);k[1q](S);h.43=k}}12(!g["1P-1M"]){h.43&&(h.43.1k.1P=aq)}}12(f.1p=="2i"&&g.2K){h.2K=g.2K}12(f.1p=="2i"&&g.1z){h.4w=" 6j:6h.6g.8k(1z="+(g.1z*4t)+")";o.4T=(h.3R||aq)+(h.4w||aq)}g.1v&&(o.1v=g.1v);g["1v-3L"]&&(o.6e=\\\'"\\\'+g["1v-3L"][A](",")[0][1L](/^[\\\'"]+|[\\\'"]+$/g,aq)+\\\'"\\\');g["1v-2W"]&&(o.6a=g["1v-2W"]);g["1v-30"]&&(o.69=g["1v-30"]);g["1v-1k"]&&(o.66=g["1v-1k"]);12(g.1z!=1h||g["1g-18"]!=1h||g.1m!=1h||g.1g!=1h||g["1g-18"]!=1h||g["1g-1z"]!=1h||g["1m-1z"]!=1h||g["1g-2S"]!=1h||g["1g-4b"]!=1h||g["1g-46"]!=1h||g["1g-34"]!=1h){h=f.2H||h;11 l=(h.3r("1m")&&h.3r("1m")[0]),a7=3o;!l&&(a7=l=ag("1m"));12("1m-1z"1y g||"1z"1y g){11 e=((+a6["1m-1z"]+1||2)-1)*((+a6.1z+1||2)-1);e<0&&(e=0);e>1&&(e=1);l.1z=e}g.1m&&(l.2r=27);12(l.2r==1h||g.1m=="1C"){l.2r=3o}12(l.2r&&g.1m){11 i=g.1m.3z(c);12(i){l.2K=i[1];l.1p="8l"}1n{l.28=am.2P(g.1m).2F;l.2K=aq;l.1p="8m";12(am.2P(g.1m).3Q&&(1A.1p 1y{2p:1,2u:1}||(g.1m+aq).31()!="r")&&b(1A,g.1m)){a6.1m="1C";a6.1S=g.1m}}}a7&&h[1q](l);11 R=(h.3r("1g")&&h.3r("1g")[0]),a8=3o;!R&&(a8=R=ag("1g"));12((g.1g&&g.1g!="1C")||g["1g-18"]||g["1g-1z"]!=1h||g["1g-2S"]||g["1g-4b"]||g["1g-46"]||g["1g-34"]){R.2r=27}(g.1g=="1C"||R.2r==1h||g.1g==0||g["1g-18"]==0)&&(R.2r=3o);R.2r&&g.1g&&(R.28=am.2P(g.1g).2F);11 e=((+a6["1g-1z"]+1||2)-1)*((+a6.1z+1||2)-1),a1=(V(g["1g-18"])||1)*0.75;e<0&&(e=0);e>1&&(e=1);g["1g-18"]==1h&&(a1=a6["1g-18"]);g["1g-18"]&&(R.30=a1);a1&&a1<1&&(e*=a1)&&(R.30=1);R.1z=e;g["1g-46"]&&(R.8n=g["1g-46"]||"8o");R.4b=g["1g-4b"]||8;g["1g-34"]&&(R.8p=g["1g-34"]=="4r"?"8q":g["1g-34"]=="5E"?"5E":"4V");12(g["1g-2S"]){11 n={"-":"8r",".":"8t","-.":"8v","-..":"8x",". ":"8z","- ":"8A","--":"8B","- .":"8C","--.":"8D","--..":"8E"};R.8F=n[P](g["1g-2S"])?n[g["1g-2S"]]:aq}a8&&h[1q](R)}12(1A.1p=="1D"){11 o=1A.1x.2x.1k;a6.1v&&(o.1v=a6.1v);a6["1v-3L"]&&(o.6e=a6["1v-3L"]);a6["1v-2W"]&&(o.6a=a6["1v-2W"]);a6["1v-30"]&&(o.69=a6["1v-30"]);a6["1v-1k"]&&(o.66=a6["1v-1k"]);1A.1o.2l&&(1A.1x.2x.5b=(1A.1o.2l+aq)[1L](/</g,"&#60;")[1L](/&/g,"&#38;")[1L](/\\\\n/g,"<3F>"));1A.W=a6.w=1A.1x.2x.4M;1A.H=a6.h=1A.1x.2x.4K;1A.X=a6.x;1A.Y=a6.y+N(1A.H/2);2b(a6["1D-4l"]){17"2a":1A.1o.1k["v-1D-4Y"]="1X";1A.4Z=N(1A.W/2);1a;17"3U":1A.1o.1k["v-1D-4Y"]="8G";1A.4Z=-N(1A.W/2);1a;2O:1A.1o.1k["v-1D-4Y"]="8H";1a}}};11 b=14(d,c){d.1e=d.1e||{};11 g=d.1e,a1=d.1o.3r("1m"),S="4e",15=".5 .5";d.1e.1S=c;c=(c+aq)[1L](ap,14(a,b,i){S="4d";12(b&&i){b=V(b);i=V(i);1K(b-0.5,2)+1K(i-0.5,2)>0.25&&(i=aa.3b(0.25-1K(b-0.5,2))*((i>0.5)*2-1)+0.5);15=b+al+i}13 aq});c=c[A](/\\\\s*\\\\-\\\\s*/);12(S=="4e"){11 e=c.4P();e=-V(e);12(6H(e)){13 1h}}11 R=p(c);12(!R){13 1h}d=d.2H||d.1o;a1=a1[0]||ag("1m");12(R[m]){a1.2r=27;a1.6l="1C";a1.1p=(S=="4d")?"8I":"1S";a1.28=R[0].28;a1.8K=R[R[m]-1].28;11 h=[];1i(11 E=0,a0=R[m];E<a0;E++){R[E].2I&&h[f](R[E].2I+al+R[E].28)}a1.64&&(a1.64.8L=h[m]?h[aw](","):"0% "+a1.28);12(S=="4d"){a1.8N="4t%";a1.8Q=15;a1.8R=15}1n{a1.8S=(8T-e)%8U}}13 1};11 1j=14(R,a,d){11 S=0,i=0,e=0,E=1;9[0]=R;9.2h=am.5v++;9.1o=R;R.4H=9;9.X=0;9.Y=0;9.1e={};9.1N=a;9.1x=d;9.1t={3X:0,44:0,1B:{24:0},2y:1,2o:1};!d.2e&&(d.2e=9);9.20=d.1w;d.1w&&(d.1w.1Z=9);d.1w=9;9.1Z=1h};1j[1c].23=14(e,d,i){12(9.1O){13 9}12(e==1h){12(9.1t.1B.1Q){13[9.1t.1B.24,9.1t.1B.1Q,9.1t.1B.1Y][aw](al)}13 9.1t.1B.24}e=(e+aq)[A](a);12(e[m]-1){d=V(e[1]);i=V(e[2])}e=V(e[0]);12(d!=1h){9.1t.1B.24=e}1n{9.1t.1B.24+=e}i==1h&&(d=1h);9.1t.1B.1Q=d;9.1t.1B.1Y=i;9.2V(9.1e,d,i);9.1N.1k.2f=9.1t.1B.24;13 9};1j[1c].2V=14(a,e,d){12(9.1O){13 9}11 b=9.1N.1k,R=(9.2H&&9.2H.1k)||9.1o.1k;a=a||{};1i(11 c 1y a){12(a[P](c)){9.1e[c]=a[c]}}e=e||9.1t.1B.1Q;d=d||9.1t.1B.1Y;11 f=9.1e,1b,15,19,a7;2b(9.1p){17"2p":1b=f.1Q-f.r;15=f.1Y-f.r;19=a7=f.r*2;1a;17"2u":1b=f.1Q-f.2z;15=f.1Y-f.2t;19=f.2z*2;a7=f.2t*2;1a;17"1M":17"2i":1b=+f.x;15=+f.y;19=f.18||0;a7=f.1d||0;1a;17"1D":9.5H.v=["m",N(f.x),", ",N(f.y-2),"l",N(f.x)+1,", ",N(f.y-2)][aw](aq);1b=f.x-N(9.W/2);15=f.y-9.H/2;19=9.W;a7=9.H;1a;17"1s":12(!9.1e.1s){1b=0;15=0;19=9.1x.18;a7=9.1x.1d}1n{11 g=T(9.1e.1s);1b=g.x;15=g.y;19=g.18;a7=g.1d}1a;2O:1b=0;15=0;19=9.1x.18;a7=9.1x.1d;1a}e=(e==1h)?1b+19/2:e;d=(d==1h)?15+a7/2:d;11 E=e-9.1x.18/2,a1=d-9.1x.1d/2;12(9.1p=="1s"||9.1p=="1D"){(b.1X!=E+"1l")&&(b.1X=E+"1l");(b.1w!=a1+"1l")&&(b.1w=a1+"1l");9.X=9.1p=="1D"?1b:-E;9.Y=9.1p=="1D"?15:-a1;9.W=19;9.H=a7;(R.1X!=-E+"1l")&&(R.1X=-E+"1l");(R.1w!=-a1+"1l")&&(R.1w=-a1+"1l")}1n{(b.1X!=E+"1l")&&(b.1X=E+"1l");(b.1w!=a1+"1l")&&(b.1w=a1+"1l");9.X=1b;9.Y=15;9.W=19;9.H=a7;(b.18!=9.1x.18+"1l")&&(b.18=9.1x.18+"1l");(b.1d!=9.1x.1d+"1l")&&(b.1d=9.1x.1d+"1l");(R.1X!=1b-E+"1l")&&(R.1X=1b-E+"1l");(R.1w!=15-a1+"1l")&&(R.1w=15-a1+"1l");(R.18!=19+"1l")&&(R.18=19+"1l");(R.1d!=a7+"1l")&&(R.1d=a7+"1l");11 S=(+a.r||0)/aF(19,a7);12(9.1p=="1M"&&9.3y.2T(4)!=S.2T(4)&&(S||9.3y)){11 h=ag("5X"),a9={},c=0,a0=9.2L&&9.2L[m];h.3y=S;h.4H=9;9.1N[1q](h);9.1N.2w(9.1o);9[0]=9.1o=h;9.3y=S;1i(11 c 1y f){a9[c]=f[c]}22 a9.1J;9.1V(a9);12(9.2L){1i(;c<a0;c++){9.2L[c].5j=5l(9.1o,9.2L[c].5m,9.2L[c].f,9)}}}}};1j[1c].5k=14(){!9.1O&&(9.1N.1k.3g="1C");13 9};1j[1c].5n=14(){!9.1O&&(9.1N.1k.3g="8V");13 9};1j[1c].2J=14(){12(9.1O){13 9}12(9.1p=="1s"){13 T(9.1e.1s)}13{x:9.X+(9.4Z||0),y:9.Y,18:9.W,1d:9.H}};1j[1c].3H=14(){12(9.1O){13}aj(9,9.1x);9.1o.1G.2w(9.1o);9.1N.1G.2w(9.1N);9.2H&&9.2H.1G.2w(9.2H);1i(11 d 1y 9){22 9[d]}9.1O=27};1j[1c].1V=14(){12(9.1O){13 9}12(1f[m]==0){11 E={};1i(11 e 1y 9.1e){12(9.1e[P](e)){E[e]=9.1e[e]}}9.1t.1B.24&&(E.2f=9.23());(9.1t.2y!=1||9.1t.2o!=1)&&(E.1J=9.1J());E.1S&&E.1m=="1C"&&(E.1m=E.1S)&&22 E.1S;13 E}12(1f[m]==1&&am.1u(1f[0],"2l")){12(1f[0]=="2C"){13 u.1F(9)}12(1f[0]=="2f"){13 9.23()}12(1f[0]=="1J"){13 9.1J()}12(1f[0]=="1m"&&9.1e.1m=="1C"&&9.1e.1S){13 9.1e.1S}13 9.1e[1f[0]]}12(9.1e&&1f[m]==1&&am.1u(1f[0],"2g")){11 d={};1i(11 e=0,R=1f[0][m];e<R;e++){d[1f[0][e]]=9.1e[1f[0][e]]}13 d}11 S;12(1f[m]==2){S={};S[1f[0]]=1f[1]}1f[m]==1&&am.1u(1f[0],"2R")&&(S=1f[0]);12(S){12(S.1D&&9.1p=="1D"){9.1o.2l=S.1D}Z(9,S);12(S.1S&&(({2p:1,2u:1})[P](9.1p)||(S.1S+aq).31()!="r")){b(9,S.1S)}(9.1p!="1s"||9.1t.1B.24)&&9.2V(9.1e)}13 9};1j[1c].6R=14(){!9.1O&&9.1N.1G[1q](9.1N);9.1x.1w!=9&&X(9,9.1x);13 9};1j[1c].6Q=14(){12(9.1O){13 9}12(9.1N.1G.2j!=9.1N){9.1N.1G.2B(9.1N,9.1N.1G.2j);k(9,9.1x)}13 9};1j[1c].4q=14(d){12(9.1O){13 9}12(d.1N.4A){d.1N.1G.2B(9.1N,d.1N.4A)}1n{d.1N.1G[1q](9.1N)}B(9,d,9.1x);13 9};1j[1c].2B=14(d){12(9.1O){13 9}d.1N.1G.2B(9.1N,d.1N);ao(9,d,9.1x);13 9};11 O=14(e,d,a,S){11 R=ag("3G"),15=ag("5V"),i=15.1k;R.1k.2G="2v:2q;1X:0;1w:0;18:"+e.18+"1l;1d:"+e.1d+"1l";R.2c=e.2c;R.2d=e.2d;R[1q](15);11 E=1U 1j(15,R,e);E.1p="2p";Z(E,{1g:"#2n",1m:"1C"});E.1e.1Q=d;E.1e.1Y=a;E.1e.r=S;E.2V({x:d-S,y:a-S,18:S*2,1d:S*2});e.1E[1q](R);13 E},5F=14(e,a,b,c,E,d){11 R=ag("3G"),i=ag("5X"),a0=(+d||0)/(aF(c,E));R.1k.2G="2v:2q;1X:0;1w:0;18:"+e.18+"1l;1d:"+e.1d+"1l";R.2c=e.2c;R.2d=e.2d;R[1q](i);i.3y=a0;11 S=1U 1j(i,R,e);S.1p="1M";Z(S,{1g:"#2n"});S.3y=a0;S.2V({x:a,y:b,18:c,1d:E,r:d});e.1E[1q](R);13 S},5D=14(d,a,b,i,e){11 R=ag("3G"),E=ag("5V"),15=E.1k;R.1k.2G="2v:2q;1X:0;1w:0;18:"+d.18+"1l;1d:"+d.1d+"1l";R.2c=d.2c;R.2d=d.2d;R[1q](E);11 S=1U 1j(E,R,d);S.1p="2u";Z(S,{1g:"#2n"});S.1e.1Q=a;S.1e.1Y=b;S.1e.2z=i;S.1e.2t=e;S.2V({x:a-i,y:b-e,18:i*2,1d:e*2});d.1E[1q](R);13 S},o=14(e,d,a,b,c,E){11 R=ag("3G"),i=ag("2i"),15=i.1k;R.1k.2G="2v:2q;1X:0;1w:0;18:"+e.18+"1l;1d:"+e.1d+"1l";R.2c=e.2c;R.2d=e.2d;i.2K=d;R[1q](i);11 S=1U 1j(i,R,e);S.1p="2i";S.1e.2K=d;S.1e.x=a;S.1e.y=b;S.1e.w=c;S.1e.h=E;S.2V({x:a,y:b,18:c,1d:E});e.1E[1q](R);13 S},W=14(e,a,b,c){11 R=ag("3G"),E=ag("2H"),15=E.1k,a1=ag("1s"),d=a1.1k,i=ag("5H");R.1k.2G="2v:2q;1X:0;1w:0;18:"+e.18+"1l;1d:"+e.1d+"1l";R.2c=e.2c;R.2d=e.2d;a1.v=am.2Z("m{0},{1}l{2},{1}",N(a),N(b),N(a)+1);a1.8W=27;15.18=e.18;15.1d=e.1d;i.2l=c+aq;i.2r=27;E[1q](i);E[1q](a1);R[1q](E);11 S=1U 1j(i,R,e);S.2H=E;S.5H=a1;S.1p="1D";S.1e.1D=c;S.1e.x=a;S.1e.y=b;S.1e.w=1;S.1e.h=1;Z(S,{1v:j.1v,1g:"1C",1m:"#2n"});S.2V();e.1E[1q](R);13 S},5B=14(i,d){11 e=9.1E.1k;i==+i&&(i+="1l");d==+d&&(d+="1l");e.18=i;e.1d=d;e.1P="1M(0 "+i+" "+d+" 0)";13 9},ag;K.8X().8Z(".3x","92:3a(#2O#3w)");41{!K.5T.3x&&K.5T.93("3x","5S:5R-5Q-5h:3E");ag=14(d){13 K.2X("<3x:"+d+\\\' 5O="3x">\\\')}}4h(ae){ag=14(d){13 K.2X("<"+d+\\\' 6K="5S:5R-5Q.5h:3E" 5O="3x">\\\')}}11 x=14(){11 i=an[1R](1h,1f),d=i.3n,19=i.1d,a0,e=i.18,1b=i.x,15=i.y;12(!d){51 1U 56("3w 3n 6P 6O.");}11 R=1U 1I,S=R.1E=K.2X("4S"),E=S.1k;e=e||6N;19=19||6L;e==+e&&(e+="1l");19==+19&&(19+="1l");R.18=3P;R.1d=3P;R.2c="3P 3P";R.2d="0 0";R.2x=K.2X("2x");R.2x.1k.2G="2v:2q;1X:-4E;1w:-4E;5N:0;5K:0;5I-1d:1;3g:61;";S[1q](R.2x);E.2G=am.2Z("18:{0};1d:{1};2v:2q;1P:1M(0 {0} {1} 0);95:96",e,19);12(d==1){K.35[1q](S);E.1X=1b+"1l";E.1w=15+"1l"}1n{d.1k.18=e;d.1k.1d=19;12(d.2j){d.2B(S,d.2j)}1n{d[1q](S)}}aD.1F(R,R,am.5w);13 R};1I[1c].5u=14(){9.1E.5b=aq;9.2x=K.2X("2x");9.2x.1k.2G="2v:2q;1X:-4E;1w:-4E;5N:0;5K:0;5I-1d:1;3g:61;";9.1E[1q](9.2x);9.2e=9.1w=1h};1I[1c].3H=14(){9.1E.1G.2w(9.1E);1i(11 d 1y 9){9[d]=t(d)}}}12((/^97|^98/).58(5J.9b)&&!(5J.9d.67("9e/4.0")+1)){1I[1c].4s=14(){11 d=9.1M(-99,-99,9.18+99,9.1d+99);5P(14(){d.3H()})}}1n{1I[1c].4s=14(){}}11 5l=(14(){12(K.70){13 14(R,i,e,d){11 E=14(S){13 e.1F(d,S)};R.70(i,E,3o);13 14(){R.9j(i,E,3o);13 27}}}1n{12(K.5W){13 14(S,E,i,e){11 R=14(a){13 i.1F(e,a||ar.9k)};S.5W("2r"+E,R);11 d=14(){S.9l("2r"+E,R);13 27};13 d}}}})();1i(11 5f=F[m];5f--;){(14(d){1j[1c][d]=14(e){12(am.1u(e,"14")){9.2L=9.2L||[];9.2L.63({5m:d,f:e,5j:5l(9.2H||9.1o,d,e,9)})}13 9};1j[1c]["9m"+d]=14(E){11 i=9.2L,e=i[m];2N(e--){12(i[e].5m==d&&i[e].f==E){i[e].5j();i.2Y(e,1);!i.3v&&22 9.2L;13 9}}13 9}})(F[5f])}1j[1c].9n=14(e,d){13 9.5L(e).5M(d)};1j[1c].9p=14(e,d){13 9.9s(e).9t(d)};1I[1c].2p=14(d,i,e){13 O(9,d||0,i||0,e||0)};1I[1c].1M=14(d,R,e,i,E){13 5F(9,d||0,R||0,e||0,i||0,E||0)};1I[1c].2u=14(d,E,i,e){13 5D(9,d||0,E||0,i||0,e||0)};1I[1c].1s=14(d){d&&!am.1u(d,"2l")&&!am.1u(d[0],"2g")&&(d+=aq);13 q(am.2Z[1R](am,1f),9)};1I[1c].2i=14(E,d,R,e,i){13 o(9,E||"9u:9v",d||0,R||0,e||0,i||0)};1I[1c].1D=14(d,i,e){13 W(9,d||0,i||0,e||aq)};1I[1c].4U=14(d){1f[m]>1&&(d=6f[1c].2Y.1F(1f,0,1f[m]));13 1U Q(d)};1I[1c].9w=5B;1I[1c].1w=1I[1c].2e=1h;1I[1c].4H=am;14 v(){13 9.x+al+9.y}1j[1c].1J=14(a,b,E,e){12(a==1h&&b==1h){13{x:9.1t.2y,y:9.1t.2o,5a:v}}b=b||a;!+b&&(b=a);11 c,a5,a6,a4,1H=9.1e;12(a!=0){11 f=9.2J(),1b=f.x+f.18/2,R=f.y+f.1d/2,2D=a/9.1t.2y,2m=b/9.1t.2o;E=(+E||E==0)?E:1b;e=(+e||e==0)?e:R;11 g=~~(a/aa.2A(a)),15=~~(b/aa.2A(b)),1A=9.1o.1k,2k=E+(1b-E)*2D,2E=e+(R-e)*2m;2b(9.1p){17"1M":17"2i":11 h=1H.18*g*2D,a9=1H.1d*15*2m;9.1V({1d:a9,r:1H.r*aF(g*2D,15*2m),18:h,x:2k-h/2,y:2E-a9/2});1a;17"2p":17"2u":9.1V({2z:1H.2z*g*2D,2t:1H.2t*15*2m,r:1H.r*aF(g*2D,15*2m),1Q:2k,1Y:2E});1a;17"1s":11 i=ac(1H.1s),3k=27;1i(11 j=0,a8=i[m];j<a8;j++){11 k=i[j],26,S=3V.1F(k[0]);12(S=="M"&&3k){4N}1n{3k=3o}12(S=="A"){k[i[j][m]-2]*=2D;k[i[j][m]-1]*=2m;k[1]*=g*2D;k[2]*=15*2m;k[5]=+(g+15?!!+k[5]:!+k[5])}1n{12(S=="H"){1i(26=1,3A=k[m];26<3A;26++){k[26]*=2D}}1n{12(S=="V"){1i(26=1,3A=k[m];26<3A;26++){k[26]*=2m}}1n{1i(26=1,3A=k[m];26<3A;26++){k[26]*=(26%2)?2D:2m}}}}}11 d=T(i),c=2k-d.x-d.18/2,a5=2E-d.y-d.1d/2;i[0][1]+=c;i[0][2]+=a5;9.1V({1s:i});1a}12(9.1p 1y{1D:1,2i:1}&&(g!=1||15!=1)){12(9.2Q){9.2Q[2]="1J("[21](g,",",15,")");9.1o[w]("45",9.2Q[aw](al));c=(g==-1)?-1H.x-(h||0):1H.x;a5=(15==-1)?-1H.y-(a9||0):1H.y;9.1V({x:c,y:a5});1H.48=g-1;1H.47=15-1}1n{9.1o.3R=" 6j:6h.6g.9x(9y="[21](g,", 9z=0, 9A=0, 9B=",15,", 9C=0, 9D=0, 9E=\\\'9F 9G\\\', 9H=\\\'9I\\\')");1A.4T=(9.1o.3R||aq)+(9.1o.4w||aq)}}1n{12(9.2Q){9.2Q[2]=aq;9.1o[w]("45",9.2Q[aw](al));1H.48=0;1H.47=0}1n{9.1o.3R=aq;1A.4T=(9.1o.3R||aq)+(9.1o.4w||aq)}}1H.1J=[a,b,E,e][aw](al);9.1t.2y=a;9.1t.2o=b}13 9};1j[1c].9J=14(){11 d=9.1V();22 d.1J;22 d.2C;13 9.1x[9.1p]().1V(d)};11 4O=14(d,e){13 14(S){12(9.1p!="1s"){13-1}11 a=H(9.1e.1s),a1,a0,E,15,R="",a5={},19=0;1i(11 b=0,a3=a.3v;b<a3;b++){E=a[b];12(E[0]=="M"){a1=+E[1];a0=+E[2]}1n{15=n(a1,a0,E[1],E[2],E[3],E[4],E[5],E[6]);12(19+15>S){12(e&&!a5.2a){11 c=am.4F(a1,a0,E[1],E[2],E[3],E[4],E[5],E[6],(S-19)/15);R+=["C",c.2a.x,c.2a.y,c.m.x,c.m.y,c.x,c.y];a5.2a=R;R=["M",c.x,c.y,"C",c.n.x,c.n.y,c.3U.x,c.3U.y,E[5],E[6]][aw]();19+=15;a1=+E[5];a0=+E[6];4N}12(!d&&!e){13 am.4F(a1,a0,E[1],E[2],E[3],E[4],E[5],E[6],(S-19)/15)}}19+=15;a1=+E[5];a0=+E[6]}R+=E}a5.3U=R;13 d?19:e?a5:am.4F(a1,a0,E[1],E[2],E[3],E[4],E[5],E[6],1)}},n=ai(14(E,d,a,S,b,c,f,g){11 R={x:0,y:0},19=0;1i(11 h=0;h<1.6c;h+=0.6c){11 e=L(E,d,a,S,b,c,f,g,h);h&&(19+=aa.3b(1K(R.x-e.x,2)+1K(R.y-e.y,2)));R=e}13 19});1j[1c].3O=4O(1);1j[1c].4G=4O();1j[1c].9K=4O(0,1);am.5d={4e:14(d){13 d},"<":14(d){13 1K(d,3)},">":14(d){13 1K(d-1,3)+1},"<>":14(d){d=d*2;12(d<1){13 1K(d,3)/2}d-=2;13(1K(d,3)+2)/2},9L:14(e){11 d=1.6m;13 e*e*((d+1)*e-d)},9M:14(e){e=e-1;11 d=1.6m;13 e*e*((d+1)*e+d)+1},9N:14(i){12(i==0||i==1){13 i}11 e=0.3,d=e/4;13 1K(2,-10*i)*aa.3f((i-d)*(2*aa.3T)/e)+1},9O:14(E){11 e=7.9P,i=2.75,d;12(E<(1/i)){d=e*E*E}1n{12(E<(2/i)){E-=(1.5/i);d=e*E*E+0.75}1n{12(E<(2.5/i)){E-=(2.25/i);d=e*E*E+0.9Q}1n{E-=(2.9R/i);d=e*E*E+0.9S}}}13 d}};11 I={3v:0},5g=14(){11 a=+1U 6p;1i(11 b 1y I){12(b!="3v"&&I[P](b)){11 c=I[b];12(c.3s){22 I[b];I[m]--;4N}11 e=a-c.2a,a8=c.6q,a7=c.6r,1W=c.6s,a4=c.6t,E=c.4y,a3=c.t,a6=c.20||0,1b=c.5i,R=c.6z,a5={},d;12(e<a8){11 S=am.5d[a7]?am.5d[a7](e/a8):e/a8;1i(11 f 1y 1W){12(1W[P](f)){2b(Y[f]){17"3d":d=S*a8*a4[f];11 g=E[f].4G(d);1b.3h(a4.2y-a4.x||0,a4.2o-a4.y||0);a4.x=g.x;a4.y=g.y;1b.3h(g.x-a4.2y,g.y-a4.2o);E.3I&&1b.23(a4.r+g.5A,g.x,g.y);1a;17"5c":d=+1W[f]+S*a8*a4[f];1a;17"4L":d="4X("+[C(N(1W[f].r+S*a8*a4[f].r)),C(N(1W[f].g+S*a8*a4[f].g)),C(N(1W[f].b+S*a8*a4[f].b))][aw](",")+")";1a;17"1s":d=[];1i(11 h=0,a2=1W[f][m];h<a2;h++){d[h]=[1W[f][h][0]];1i(11 i=1,26=1W[f][h][m];i<26;i++){d[h][i]=+1W[f][h][i]+S*a8*a4[f][h][i]}d[h]=d[h][aw](al)}d=d[aw](al);1a;17"3C":2b(f){17"2C":11 j=a4[f][0]*(e-a6),a0=a4[f][1]*(e-a6);a3.x+=j;a3.y+=a0;d=j+al+a0;1a;17"2f":d=+1W[f][0]+S*a8*a4[f][0];1W[f][1]&&(d+=","+1W[f][1]+","+1W[f][2]);1a;17"1J":d=[+1W[f][0]+S*a8*a4[f][0],+1W[f][1]+S*a8*a4[f][1],(2 1y E[f]?E[f][2]:aq),(3 1y E[f]?E[f][3]:aq)][aw](al);1a;17"1P-1M":d=[];11 h=4;2N(h--){d[h]=+1W[f][h]+S*a8*a4[f][h]}1a}1a}a5[f]=d}}1b.1V(a5);1b.5p&&1b.5p.1F(1b)}1n{12(E.3d){11 g=E.3d.4G(E.3d.3O());1b.3h(a4.2y-(a4.x||0)+g.x-a4.2y,a4.2o-(a4.y||0)+g.y-a4.2o);E.3I&&1b.23(a4.r+g.5A,g.x,g.y)}(a3.x||a3.y)&&1b.3h(-a3.x,-a3.y);E.1J&&(E.1J=E.1J+aq);1b.1V(E);22 I[b];I[m]--;1b.6E=1h;am.1u(R,"14")&&R.1F(1b)}c.20=e}}am.3j&&1b&&1b.1x.4s();I[m]&&5P(5g)},C=14(d){13 d>2s?2s:(d<0?0:d)},u=14(d,i){12(d==1h){13{x:9.1t.3X,y:9.1t.44,5a:v}}9.1t.3X+=+d;9.1t.44+=+i;2b(9.1p){17"2p":17"2u":9.1V({1Q:+d+9.1e.1Q,1Y:+i+9.1e.1Y});1a;17"1M":17"2i":17"1D":9.1V({x:+d+9.1e.x,y:+i+9.1e.y});1a;17"1s":11 e=ac(9.1e.1s);e[0][1]+=+d;e[0][2]+=+i;9.1V({1s:e});1a}13 9};1j[1c].6F=14(e,i,d,R,E){I[e.2h]&&(i.2a=I[e.2h].2a);13 9.4g(i,d,R,E)};1j[1c].9T=14(E,e,d,S){11 R={};am.1u(d,"14")?(S=d):(R.3I=d);12(am.1u(E,"2l")&&E.3N!=1j){E=r.1s(E).1V({1g:"1C"});11 i=14(){E.3H()};S=am.1u(S,"14")?14(){i();S.1F(9)}:i}E.3N==1j&&(R.3d=E);13 9.4g(R,e,S)};1j[1c].9U=14(d){9.5p=d||0;13 9};1j[1c].4g=14(b,c,f,E){12(am.1u(f,"14")||!f){E=f||1h}11 g={},e={},1b={};1i(11 h 1y b){12(b[P](h)){12(Y[P](h)){g[h]=9.1V(h);(g[h]==1h)&&(g[h]=j[h]);e[h]=b[h];2b(Y[h]){17"3d":11 i=b[h].4G(0);1b[h]=b[h].3O()/c;1b.3X=9.2J().x;1b.44=9.2J().y;1b.2y=i.x;1b.2o=i.y;e.3I=b.3I;b.3I&&(1b.r=V(9.23()));1a;17"5c":1b[h]=(e[h]-g[h])/c;1a;17"4L":g[h]=am.2P(g[h]);11 k=am.2P(e[h]);1b[h]={r:(k.r-g[h].r)/c,g:(k.g-g[h].g)/c,b:(k.b-g[h].b)/c};1a;17"1s":11 R=H(g[h],e[h]);g[h]=R[0];11 l=R[1];1b[h]=[];1i(11 n=0,15=g[h][m];n<15;n++){1b[h][n]=[0];1i(11 o=1,a8=g[h][n][m];o<a8;o++){1b[h][n][o]=(l[n][o]-g[h][n][o])/c}}1a;17"3C":11 d=(b[h]+aq)[A](a),S=(g[h]+aq)[A](a);2b(h){17"2C":g[h]=[0,0];1b[h]=[d[0]/c,d[1]/c];1a;17"2f":g[h]=(S[1]==d[1]&&S[2]==d[2])?S:[0,d[1],d[2]];1b[h]=[(d[0]-g[h][0])/c,0,0];1a;17"1J":b[h]=d;g[h]=(g[h]+aq)[A](a);1b[h]=[(d[0]-g[h][0])/c,(d[1]-g[h][1])/c,0,0];1a;17"1P-1M":g[h]=(g[h]+aq)[A](a);1b[h]=[];11 n=4;2N(n--){1b[h][n]=(d[n]-g[h][n])/c}1a}e[h]=d}}}}9.3s();9.6E=1;I[9.2h]={2a:b.2a||+1U 6p,6q:c,6r:f,6s:g,6t:1b,4y:e,5i:9,6z:E,t:{x:0,y:0}};++I[m]==1&&5g();13 9};1j[1c].3s=14(){I[9.2h]&&I[m]--;22 I[9.2h];13 9};1j[1c].3h=14(d,e){13 9.1V({2C:d+" "+e})};1j[1c][ax]=14(){13"3K\\\\3J\\\\9V 2R"};am.ae=I;11 Q=14(d){9.1T=[];9[m]=0;12(d){1i(11 e=0,E=d[m];e<E;e++){12(d[e]&&(d[e].3N==1j||d[e].3N==Q)){9[9.1T[m]]=9.1T[9.1T[m]]=d[e];9[m]++}}}};Q[1c][f]=14(){11 R,d;1i(11 e=0,E=1f[m];e<E;e++){R=1f[e];12(R&&(R.3N==1j||R.3N==Q)){d=9.1T[m];9[d]=9.1T[d]=R;9[m]++}}13 9};Q[1c].6M=14(){22 9[9[m]--];13 9.1T.6M()};1i(11 z 1y 1j[1c]){12(1j[1c][P](z)){Q[1c][z]=(14(d){13 14(){1i(11 e=0,E=9.1T[m];e<E;e++){9.1T[e][d][1R](9.1T[e],1f)}13 9}})(z)}}Q[1c].1V=14(e,a){12(e&&am.1u(e,"2g")&&am.1u(e[0],"2R")){1i(11 d=0,S=e[m];d<S;d++){9.1T[d].1V(e[d])}}1n{1i(11 E=0,R=9.1T[m];E<R;E++){9.1T[E].1V[1R](9.1T[E],1f)}}13 9};Q[1c].4g=14(S,e,a,b){(am.1u(a,"14")||!a)&&(b=a||1h);11 d=9.1T[m],E=d,15=9,R;b&&(R=14(){!--d&&b.1F(15)});9.1T[--E].4g(S,e,a||R,R);2N(E--){9.1T[E].6F(9.1T[d-1],S,e,a||R,R)}13 9};Q[1c].4q=14(e){11 d=9.1T[m];2N(d--){9.1T[d].4q(e)}13 9};Q[1c].2J=14(){11 d=[],15=[],e=[],R=[];1i(11 E=9.1T[m];E--;){11 S=9.1T[E].2J();d[f](S.x);15[f](S.y);e[f](S.x+S.18);R[f](S.y+S.1d)}d=aF[1R](0,d);15=aF[1R](0,15);13{x:d,y:15,18:g[1R](0,e)-d,1d:g[1R](0,R)-15}};am.9W=14(e){12(!e.29){13 e}9.2U=9.2U||{};11 E={w:e.w,29:{},3c:{}},i=e.29["1v-3L"];1i(11 b 1y e.29){12(e.29[P](b)){E.29[b]=e.29[b]}}12(9.2U[i]){9.2U[i][f](E)}1n{9.2U[i]=[E]}12(!e.3j){E.29["5x-5y-5z"]=G(e.29["5x-5y-5z"],10);1i(11 R 1y e.3c){12(e.3c[P](R)){11 S=e.3c[R];E.3c[R]={w:S.w,k:{},d:S.d&&"M"+S.d[1L](/[9X]/g,14(a){13{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[a]||"M"})+"z"};12(S.k){1i(11 d 1y S.k){12(S[P](d)){E.3c[R].k[d]=S.k[d]}}}}}}13 e};1I[1c].6T=14(a,b,e,R){R=R||"4v";e=e||"4v";b=+b||{4v:5o,9Y:9Z,ab:ad,af:ah}[b]||5o;11 S=am.2U[a];12(!S){11 E=1U as("(^|\\\\\\\\s)"+a[1L](/[^\\\\w\\\\d\\\\s+!~.:1t-]/g,aq)+"(\\\\\\\\s|$)","i");1i(11 d 1y am.2U){12(am.2U[P](d)){12(E.58(d)){S=am.2U[d];1a}}}}11 c;12(S){1i(11 f=0,a1=S[m];f<a1;f++){c=S[f];12(c.29["1v-30"]==b&&(c.29["1v-1k"]==e||!c.29["1v-1k"])&&c.29["1v-av"]==R){1a}}}13 c};1I[1c].ay=14(R,E,d,b,c,g){g=g||"4o";11 h=9.4U(),a7=(d+aq)[A](aq),a5=0,a1=aq,a9;am.1u(b,"2l")&&(b=9.6T(b));12(b){a9=(c||16)/b.29["5x-5y-5z"];11 e=b.29.aA.5Y(a),15=+e[0],a0=+e[1]+(g=="aB"?e[3]-e[1]+(+b.29.aC):(e[3]-e[1])/2);1i(11 i=0,S=a7[m];i<S;i++){11 j=i&&b.3c[a7[i-1]]||{},a6=b.3c[a7[i]];a5+=i?(j.w||b.w)+(j.k&&j.k[a7[i]]||0):0;a6&&a6.d&&h[f](9.1s(a6.d).1V({1m:"#2n",1g:"1C",2C:[a5,0]}))}h.1J(a9,a9,15,a0).3h(R-15,E-a0)}13 h};am.2Z=14(i){11 e=am.1u(1f[1],"2g")?[0][21](1f[1]):1f,d=/\\\\{(\\\\d+)\\\\}/g;i&&am.1u(i,"2l")&&e[m]-1&&(i=i[1L](d,14(R,E){13 e[++E]==1h?aq:e[E]}));13 i||aq};am.aE=14(){11 i=ar.32,d;12(l.6J){ar.32=l.1u}1n{41{22 ar.32}4h(E){ar.32=d}}13 i};am.5i=1j[1c];13 am})();\',62,cA,\'|||||||||cz||||||||||||||||||||||||||||||||||||||||||||||||||||||cw|if|b0|aS|aX||cv|cu|aZ|ct|aY|aV|cs|cr|cq|cp|co|cn|bz|cm|cl|ck|cj|ci|ch|aI|aG|cg|cf|is|ce|cd|cc|in|cb|ba|ca|c9|c8|c7|c6|c5|bj|aQ|c4|aJ|aM|c3|c2|c1|c0|cx|aT|bZ|bY|b5|bX|bc|bW|cy|bV|bU|aP|bT|bS|bR||bf|bQ|bP|bO|bN|bM|bL|bK|bJ|bI|ha|id|cB|cC|bl|cD|bh|cE|cF|cG|cH|cI|cJ|cK|cL|cM|cN|cO|cP|cQ|cR|cS|cT|bi|bk|cU|cV|cW|cX|cY|cZ|d0|aW|b1|d1|d2|d3|d4|d5|d6|d7|d8|d9|db|dc|dd|de|df|dg|bx|dh|di||dj||by|dk|dl|dm|dn|do|dp|dq|dr|bg|ds|be|dt|du|dv|dw|bu|aR|dx|dz|dA|dB|dC|dD|dE|dF|dG|jj|dH|dI|dJ|dK|br|dL|dM|dN|dO|dP|dQ|dR|dS|dT|dU|dV|dW|dX|dY|dZ|aK|e0|e1|e2|bd|e3|e4|e5|e6|e7|e8|e9|fy|fx|aU|ea|eb|bw|ec|ed|ee|ef|eg|eh|ei|ej|ek|en|eo|ep|eq|er|es|et|eu|ev|ew|ex|ey|ez|eA|eB|eC|eD|eE|eF|eG|eH|eI|eJ|eK|eL|eM|eN|eO|bH|eP|bo|eQ|eR|eS|eT|eU|hs|eV|eW|eX|bt|eY|bv|bn|bp||eZ|bm|f0|f1|b6|f2|f3|f4|bq|bG|aO|f5|el|f6|f7|bF|f8|f9|fa|fb|fc|bb|aH|fd|fe|ff|fn|fg|fh|em|fi|bD|ig|bB|fj|bA|fk|fl|fm|fo|fp|fq|fr|fs|ft|fu|fv|fw|fz|fA|b3|fB|fC|fD|b8|bC||fE|fF|fG|fH|fI|fJ|fK|fL|fM|fN|fO|fP|fQ|fR|fS|fT|fU|gi|fV|bs|fW|fX|fY|fZ|g0|g1|g2|g3|g4|g5|g6|g7|g8|g9|ga|gb|gc|gd|ge|gf|gg|gh|gj|bE|gk|gl|gm|gn|go|gp|gq|gr|gs|gt|gu|gv|gw|gx|aL|dy|gy|gz|gA|gB|gC|gD||gE|gF|gG|gH|gI|gJ|gK|gL|gM|gN|gO|gP|gQ|gR|gS|gT|gU|gV|gW|gX|gY|gZ|h0|h1|h2|h3|h4|h5|h6|h7|b2|h8|h9|b9|hb|hc|hd|he|hf|hg|hh|hi|hj|hk|hl|hm|hn|ho|hp|hq|hr|ht|hu|hv|hw|hx|hy|hz|hA|hB|hC|hD|hE|hF|hG|hH|hI|hJ|hK|hL|hM|hN|hO|hP|hQ|hR|hS|hT|hU|hV|hW|hX|hY|hZ|i0|i1|b7|i2|i3|i4|i5|i6|i7|i8|i9|ia|ib|ic|ie|ih|ii|da|ij|ik|il|im|aN|io|ip|iq|ir|it|iu|iv|iw|ix|iy|iz||iA|iB|iC|iD|iE|iF|iG|iH||iI|iJ|iK|iL|iM|iN|iO|iP|iQ|iR|iS|iT|iU|iV|iW|iX|iY|iZ|j0|j1|j2|j3|j4|j5|j6|j7|j8|j9|ja|jb|jc|jd|je|jf|jg|jh|ji|jk|jl|jm|jn|jo|jp|jq|jr|js|jt|ju|jv|jw|jx|jz||||||||||||jA||jB||jC||jD|||||||||||b4|||jE|||jF||jG|jH|jI||jJ|\'.b8(\'|\'),0,{}))',62,1225,'||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||function||||||||return|while|replace|String|RegExp|new|toString|parseInt|split|you|||||||||||||||||||||||||||||||||||rotation|bottom|coordorigin|coordsize|switch|start|face|color|true|deg|rotate|delete|prev|next|left|attr|items|gradient|clip|removed|Group|rect|scale|parentNode|call|canvas|text|none|rt|opacity|paper|top|font|_|path|type|node|else|fill|px|style|for|null|stroke|arguments|attrs|height|break|width|case|var|||this|662|image|firstChild|string|000|sy|circle|absolute|on|255|ry|ellipse|position|removeChild|span|sx|rx|abs|insertBefore|translation|hex|cssText|shape|offset|getBBox|src|events|default|getRGB|transformations|object|dasharray|toFixed|fonts|setBox|size||createElement|splice|format|weight|charAt|Raphael|linecap|body|180|url|sqrt|glyphs|along|href|sin|display|translate|svg|qy|qx|container|false|getElementsByTagName||stop|cos|xlink|length|VML|rvml|arcsize|match|cursor|csv|title|vml|group|remove|rot|xebl|Rapha|family|pattern|constructor|getTotalLength|1000|error|filterMatrix|_path2string|PI|end|substring|tx|http|slice|try|defs|clipRect|ty|transform|linejoin|getColor|miterlimit|radial|linear|undefined|animate|catch|target|max|document|anchor|||www|_id|middle|hsb2rgb|insertAfter|butt|safari|100|setAttributeNS|normal|filterOpacity|min|to|parsePathString|nextSibling|version|SVG|1000000000000|9999px|findDotsAtSegment|getPointAtLength|raphael|w3|org|offsetHeight|colour|offsetWidth|continue|shift|getElementById|div|filter|set|round|rgb|align|bbx|throw|Error|test|are|innerHTML|number|easing_formulas|com|unbind|hide|name|show|400|_run|clmz|desc|clear|_oid|units|per|alpha|square|join|textpath|line||navigator|margin|mouseover|mouseout|padding|class|setTimeout|microsoft|schemas|||urn|namespaces|oval|attachEvent|roundrect|inline|asin|push|colors|10e9|fontStyle|indexOf|tagName|fontWeight|fontSize|count|01|cache|fontFamily|Array|Microsoft|DXImageTransform|progid|method|70158|fff|svgns|Date|ms|easing|from|diff|2000|tspan|getPropertyValue|getComputedStyle|defaultView|callback|Your|browser|nYou|running|in_animation|animateWith|Arial||isNaN|was|xmlns|342|pop|512|found|not|toBack|toFront|getAttribute|getFont|typeof|9999em|createTextNode|window|addEventListener|setWindow|ActiveXObject|htmlfile|write|close|createPopup|createTextRange|queryCommandValue|ForeColor|65280|16711680|000000|Colour|childNodes|endif|Picker|rgb2hsb|achlmqrstvxz|u25ba|rg|075|reset|achlmqstvz|BasicStructure|feature|SVG11|TR|atan|120|hasFeature|implementation|SVGAngle|0dev|tan|pixelWidth|pixelHeight|array|calling|u201c|u201d|of|1999|createElementNS|_blank|supports|00001|Gradient|x1|y1|x2|y2|fillOpacity|patternTransform|Paper||clipPath|strokeWidth|patternUnits|userSpaceOnUse|img|M0|onload|raphaeljs|isFinite|finally|Infinity|getNumberOfChars|getExtentOfChar|preserveAspectRatio|Created|with|ahqtv|doesn|u2019t|support|10px|Falling|down|isAbsolute|Path|Alpha|tile|solid|joinstyle|miter|endcap|flat|shortdash|toUpperCase|shortdot|shortdashdot|parseFloat|shortdashdotdot|setAttribute|dot|dash|longdash|dashdot|longdashdot|longdashdotdot|dashstyle||right|||center|gradientradial|color2|value|pow|focus||Object|focussize|focusposition|angle||270|360|block|textpathok|createStyleSheet|Math|addRule|toLowerCase|behavior|add|prototype|overflow|hidden|Apple|Google|hasOwnProperty|vendor|mouseup|userAgent|Version|mousemove|mousedown|dblclick|click|removeEventListener|event|detachEvent|un|hover|concat|unhover|apply|appendChild|unmouseover|unmouseout|about|blank|setSize|Matrix|M11|M12|M21|M22|Dx|Dy|sizingmethod|auto|expand|filtertype|bilinear|clone|getSubpathToLength||backIn|backOut|elastic|bounce|5625|9375|625|984375|animateAlong|onAnimation|u2019s|registerFont|mlcxtrv|bold|fromCharCode|700|lighter|300|bolder|800|stretch|print|bbox|baseline|descent|ninja|eval'.split('|'),0,{}))
+window.Raphael=(function(){var a=/[, ]+/,aO=/^(circle|rect|path|ellipse|text|image)$/,L=document,au=window,l={was:"Raphael" in au,is:au.Raphael},an=function(){if(an.is(arguments[0],"array")){var d=arguments[0],e=w[aW](an,d.splice(0,3+an.is(d[0],al))),S=e.set();for(var R=0,a0=d[m];R<a0;R++){var E=d[R]||{};aO.test(E.type)&&S[f](e[E.type]().attr(E));}return S;}return w[aW](an,arguments);},aT=function(){},aL="appendChild",aW="apply",aS="concat",at="",am=" ",z="split",F="click dblclick mousedown mousemove mouseout mouseover mouseup"[z](am),Q="hasOwnProperty",az="join",m="length",aY="prototype",aZ=String[aY].toLowerCase,ab=Math,g=ab.max,aI=ab.min,al="number",aA="toString",aw=Object[aY][aA],aQ={},aM=ab.pow,f="push",aU=/^(?=[\da-f]$)/,c=/^url\(['"]?([^\)]+)['"]?\)$/i,x=/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgb\(\s*([\d\.]+\s*,\s*[\d\.]+\s*,\s*[\d\.]+)\s*\)|rgb\(\s*([\d\.]+%\s*,\s*[\d\.]+%\s*,\s*[\d\.]+%)\s*\)|hs[bl]\(\s*([\d\.]+\s*,\s*[\d\.]+\s*,\s*[\d\.]+)\s*\)|hs[bl]\(\s*([\d\.]+%\s*,\s*[\d\.]+%\s*,\s*[\d\.]+%)\s*\))\s*$/i,O=ab.round,v="setAttribute",W=parseFloat,G=parseInt,aN=String[aY].toUpperCase,j={"clip-rect":"0 0 1e9 1e9",cursor:"default",cx:0,cy:0,fill:"#fff","fill-opacity":1,font:'10px "Arial"',"font-family":'"Arial"',"font-size":"10","font-style":"normal","font-weight":400,gradient:0,height:0,href:"http://raphaeljs.com/",opacity:1,path:"M0,0",r:0,rotation:0,rx:0,ry:0,scale:"1 1",src:"",stroke:"#000","stroke-dasharray":"","stroke-linecap":"butt","stroke-linejoin":"butt","stroke-miterlimit":0,"stroke-opacity":1,"stroke-width":1,target:"_blank","text-anchor":"middle",title:"Raphael",translation:"0 0",width:0,x:0,y:0},Z={along:"along","clip-rect":"csv",cx:al,cy:al,fill:"colour","fill-opacity":al,"font-size":al,height:al,opacity:al,path:"path",r:al,rotation:"csv",rx:al,ry:al,scale:"csv",stroke:"colour","stroke-opacity":al,"stroke-width":al,translation:"csv",width:al,x:al,y:al},aP="replace";an.version="1.3.0";an.type=(au.SVGAngle||L.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")?"SVG":"VML");if(an.type=="VML"){var ag=document.createElement("div");ag.innerHTML="<!--[if vml]><br><br><![endif]-->";if(ag.childNodes[m]!=2){return null;}}an.svg=!(an.vml=an.type=="VML");aT[aY]=an[aY];an._id=0;an._oid=0;an.fn={};an.is=function(e,d){d=aZ.call(d);return((d=="object"||d=="undefined")&&typeof e==d)||(e==null&&d=="null")||aZ.call(aw.call(e).slice(8,-1))==d;};an.setWindow=function(d){au=d;L=au.document;};var aD=function(e){if(an.vml){var d=/^\s+|\s+$/g;aD=aj(function(R){var S;R=(R+at)[aP](d,at);try{var a0=new ActiveXObject("htmlfile");a0.write("<body>");a0.close();S=a0.body;}catch(a2){S=createPopup().document.body;}var i=S.createTextRange();try{S.style.color=R;var a1=i.queryCommandValue("ForeColor");a1=((a1&255)<<16)|(a1&65280)|((a1&16711680)>>>16);return"#"+("000000"+a1[aA](16)).slice(-6);}catch(a2){return"none";}});}else{var E=L.createElement("i");E.title="Rapha\xebl Colour Picker";E.style.display="none";L.body[aL](E);aD=aj(function(i){E.style.color=i;return L.defaultView.getComputedStyle(E,at).getPropertyValue("color");});}return aD(e);};an.hsb2rgb=aj(function(a3,a1,a7){if(an.is(a3,"object")&&"h" in a3&&"s" in a3&&"b" in a3){a7=a3.b;a1=a3.s;a3=a3.h;}var R,S,a8;if(a7==0){return{r:0,g:0,b:0,hex:"#000"};}if(a3>1||a1>1||a7>1){a3/=255;a1/=255;a7/=255;}var a0=~~(a3*6),a4=(a3*6)-a0,E=a7*(1-a1),e=a7*(1-(a1*a4)),a9=a7*(1-(a1*(1-a4)));R=[a7,e,E,E,a9,a7,a7][a0];S=[a9,a7,a7,e,E,E,a9][a0];a8=[E,E,a9,a7,a7,e,E][a0];R*=255;S*=255;a8*=255;var a5={r:R,g:S,b:a8},d=(~~R)[aA](16),a2=(~~S)[aA](16),a6=(~~a8)[aA](16);d=d[aP](aU,"0");a2=a2[aP](aU,"0");a6=a6[aP](aU,"0");a5.hex="#"+d+a2+a6;return a5;},an);an.rgb2hsb=aj(function(d,e,a1){if(an.is(d,"object")&&"r" in d&&"g" in d&&"b" in d){a1=d.b;e=d.g;d=d.r;}if(an.is(d,"string")){var a3=an.getRGB(d);d=a3.r;e=a3.g;a1=a3.b;}if(d>1||e>1||a1>1){d/=255;e/=255;a1/=255;}var a0=g(d,e,a1),i=aI(d,e,a1),R,E,S=a0;if(i==a0){return{h:0,s:0,b:a0};}else{var a2=(a0-i);E=a2/a0;if(d==a0){R=(e-a1)/a2;}else{if(e==a0){R=2+((a1-d)/a2);}else{R=4+((d-e)/a2);}}R/=6;R<0&&R++;R>1&&R--;}return{h:R,s:E,b:S};},an);var aE=/,?([achlmqrstvxz]),?/gi;an._path2string=function(){return this.join(",")[aP](aE,"$1");};function aj(E,e,d){function i(){var R=Array[aY].slice.call(arguments,0),a0=R[az]("\u25ba"),S=i.cache=i.cache||{},a1=i.count=i.count||[];if(S[Q](a0)){return d?d(S[a0]):S[a0];}a1[m]>=1000&&delete S[a1.shift()];a1[f](a0);S[a0]=E[aW](e,R);return d?d(S[a0]):S[a0];}return i;}an.getRGB=aj(function(d){if(!d||!!((d=d+at).indexOf("-")+1)){return{r:-1,g:-1,b:-1,hex:"none",error:1};}if(d=="none"){return{r:-1,g:-1,b:-1,hex:"none"};}!(({hs:1,rg:1})[Q](d.substring(0,2))||d.charAt()=="#")&&(d=aD(d));var S,i,E,a2,a3,a0=d.match(x);if(a0){if(a0[2]){a2=G(a0[2].substring(5),16);E=G(a0[2].substring(3,5),16);i=G(a0[2].substring(1,3),16);}if(a0[3]){a2=G((a3=a0[3].charAt(3))+a3,16);E=G((a3=a0[3].charAt(2))+a3,16);i=G((a3=a0[3].charAt(1))+a3,16);}if(a0[4]){a0=a0[4][z](/\s*,\s*/);i=W(a0[0]);E=W(a0[1]);a2=W(a0[2]);}if(a0[5]){a0=a0[5][z](/\s*,\s*/);i=W(a0[0])*2.55;E=W(a0[1])*2.55;a2=W(a0[2])*2.55;}if(a0[6]){a0=a0[6][z](/\s*,\s*/);i=W(a0[0]);E=W(a0[1]);a2=W(a0[2]);return an.hsb2rgb(i,E,a2);}if(a0[7]){a0=a0[7][z](/\s*,\s*/);i=W(a0[0])*2.55;E=W(a0[1])*2.55;a2=W(a0[2])*2.55;return an.hsb2rgb(i,E,a2);}a0={r:i,g:E,b:a2};var e=(~~i)[aA](16),R=(~~E)[aA](16),a1=(~~a2)[aA](16);e=e[aP](aU,"0");R=R[aP](aU,"0");a1=a1[aP](aU,"0");a0.hex="#"+e+R+a1;return a0;}return{r:-1,g:-1,b:-1,hex:"none",error:1};},an);an.getColor=function(e){var i=this.getColor.start=this.getColor.start||{h:0,s:1,b:e||0.75},d=this.hsb2rgb(i.h,i.s,i.b);i.h+=0.075;if(i.h>1){i.h=0;i.s-=0.2;i.s<=0&&(this.getColor.start={h:0,s:1,b:i.b});}return d.hex;};an.getColor.reset=function(){delete this.start;};an.parsePathString=aj(function(d){if(!d){return null;}var i={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},e=[];if(an.is(d,"array")&&an.is(d[0],"array")){e=av(d);}if(!e[m]){(d+at)[aP](/([achlmqstvz])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?\s*,?\s*)+)/ig,function(R,E,a1){var a0=[],S=aZ.call(E);a1[aP](/(-?\d*\.?\d*(?:e[-+]?\d+)?)\s*,?\s*/ig,function(a3,a2){a2&&a0[f](+a2);});while(a0[m]>=i[S]){e[f]([E][aS](a0.splice(0,i[S])));if(!i[S]){break;}}});}e[aA]=an._path2string;return e;});an.findDotsAtSegment=function(e,d,be,bc,a0,R,a2,a1,a8){var a6=1-a8,a5=aM(a6,3)*e+aM(a6,2)*3*a8*be+a6*3*a8*a8*a0+aM(a8,3)*a2,a3=aM(a6,3)*d+aM(a6,2)*3*a8*bc+a6*3*a8*a8*R+aM(a8,3)*a1,ba=e+2*a8*(be-e)+a8*a8*(a0-2*be+e),a9=d+2*a8*(bc-d)+a8*a8*(R-2*bc+d),bd=be+2*a8*(a0-be)+a8*a8*(a2-2*a0+be),bb=bc+2*a8*(R-bc)+a8*a8*(a1-2*R+bc),a7=(1-a8)*e+a8*be,a4=(1-a8)*d+a8*bc,E=(1-a8)*a0+a8*a2,i=(1-a8)*R+a8*a1,S=(90-ab.atan((ba-bd)/(a9-bb))*180/ab.PI);(ba>bd||a9<bb)&&(S+=180);return{x:a5,y:a3,m:{x:ba,y:a9},n:{x:bd,y:bb},start:{x:a7,y:a4},end:{x:E,y:i},alpha:S};};var U=aj(function(a5){if(!a5){return{x:0,y:0,width:0,height:0};}a5=H(a5);var a2=0,a1=0,R=[],e=[],E;for(var S=0,a4=a5[m];S<a4;S++){E=a5[S];if(E[0]=="M"){a2=E[1];a1=E[2];R[f](a2);e[f](a1);}else{var a0=aC(a2,a1,E[1],E[2],E[3],E[4],E[5],E[6]);R=R[aS](a0.min.x,a0.max.x);e=e[aS](a0.min.y,a0.max.y);a2=E[5];a1=E[6];}}var d=aI[aW](0,R),a3=aI[aW](0,e);return{x:d,y:a3,width:g[aW](0,R)-d,height:g[aW](0,e)-a3};}),av=function(a0){var E=[];if(!an.is(a0,"array")||!an.is(a0&&a0[0],"array")){a0=an.parsePathString(a0);}for(var e=0,R=a0[m];e<R;e++){E[e]=[];for(var d=0,S=a0[e][m];d<S;d++){E[e][d]=a0[e][d];}}E[aA]=an._path2string;return E;},ad=aj(function(R){if(!an.is(R,"array")||!an.is(R&&R[0],"array")){R=an.parsePathString(R);}var a4=[],a6=0,a5=0,a9=0,a8=0,E=0;if(R[0][0]=="M"){a6=R[0][1];a5=R[0][2];a9=a6;a8=a5;E++;a4[f](["M",a6,a5]);}for(var a1=E,ba=R[m];a1<ba;a1++){var d=a4[a1]=[],a7=R[a1];if(a7[0]!=aZ.call(a7[0])){d[0]=aZ.call(a7[0]);switch(d[0]){case"a":d[1]=a7[1];d[2]=a7[2];d[3]=a7[3];d[4]=a7[4];d[5]=a7[5];d[6]=+(a7[6]-a6).toFixed(3);d[7]=+(a7[7]-a5).toFixed(3);break;case"v":d[1]=+(a7[1]-a5).toFixed(3);break;case"m":a9=a7[1];a8=a7[2];default:for(var a0=1,a2=a7[m];a0<a2;a0++){d[a0]=+(a7[a0]-((a0%2)?a6:a5)).toFixed(3);}}}else{d=a4[a1]=[];if(a7[0]=="m"){a9=a7[1]+a6;a8=a7[2]+a5;}for(var S=0,e=a7[m];S<e;S++){a4[a1][S]=a7[S];}}var a3=a4[a1][m];switch(a4[a1][0]){case"z":a6=a9;a5=a8;break;case"h":a6+=+a4[a1][a3-1];break;case"v":a5+=+a4[a1][a3-1];break;default:a6+=+a4[a1][a3-2];a5+=+a4[a1][a3-1];}}a4[aA]=an._path2string;return a4;},0,av),r=aj(function(R){if(!an.is(R,"array")||!an.is(R&&R[0],"array")){R=an.parsePathString(R);}var a3=[],a5=0,a4=0,a8=0,a7=0,E=0;if(R[0][0]=="M"){a5=+R[0][1];a4=+R[0][2];a8=a5;a7=a4;E++;a3[0]=["M",a5,a4];}for(var a1=E,a9=R[m];a1<a9;a1++){var d=a3[a1]=[],a6=R[a1];if(a6[0]!=aN.call(a6[0])){d[0]=aN.call(a6[0]);switch(d[0]){case"A":d[1]=a6[1];d[2]=a6[2];d[3]=a6[3];d[4]=a6[4];d[5]=a6[5];d[6]=+(a6[6]+a5);d[7]=+(a6[7]+a4);break;case"V":d[1]=+a6[1]+a4;break;case"H":d[1]=+a6[1]+a5;break;case"M":a8=+a6[1]+a5;a7=+a6[2]+a4;default:for(var a0=1,a2=a6[m];a0<a2;a0++){d[a0]=+a6[a0]+((a0%2)?a5:a4);}}}else{for(var S=0,e=a6[m];S<e;S++){a3[a1][S]=a6[S];}}switch(d[0]){case"Z":a5=a8;a4=a7;break;case"H":a5=d[1];break;case"V":a4=d[1];break;default:a5=a3[a1][a3[a1][m]-2];a4=a3[a1][a3[a1][m]-1];}}a3[aA]=an._path2string;return a3;},null,av),aX=function(e,E,d,i){return[e,E,d,i,d,i];},aK=function(e,E,a0,R,d,i){var S=1/3,a1=2/3;return[S*e+a1*a0,S*E+a1*R,S*d+a1*a0,S*i+a1*R,d,i];},K=function(a9,bD,bi,bg,ba,a4,S,a8,bC,bb){var R=ab.PI,bf=R*120/180,d=R/180*(+ba||0),bm=[],bj,bz=aj(function(bE,bH,i){var bG=bE*ab.cos(i)-bH*ab.sin(i),bF=bE*ab.sin(i)+bH*ab.cos(i);return{x:bG,y:bF};});if(!bb){bj=bz(a9,bD,-d);a9=bj.x;bD=bj.y;bj=bz(a8,bC,-d);a8=bj.x;bC=bj.y;var e=ab.cos(R/180*ba),a6=ab.sin(R/180*ba),bo=(a9-a8)/2,bn=(bD-bC)/2;bi=g(bi,ab.abs(bo));bg=g(bg,ab.abs(bn));var E=bi*bi,br=bg*bg,bt=(a4==S?-1:1)*ab.sqrt(ab.abs((E*br-E*bn*bn-br*bo*bo)/(E*bn*bn+br*bo*bo))),bd=bt*bi*bn/bg+(a9+a8)/2,bc=bt*-bg*bo/bi+(bD+bC)/2,a3=ab.asin(((bD-bc)/bg).toFixed(7)),a2=ab.asin(((bC-bc)/bg).toFixed(7));a3=a9<bd?R-a3:a3;a2=a8<bd?R-a2:a2;a3<0&&(a3=R*2+a3);a2<0&&(a2=R*2+a2);if(S&&a3>a2){a3=a3-R*2;}if(!S&&a2>a3){a2=a2-R*2;}}else{a3=bb[0];a2=bb[1];bd=bb[2];bc=bb[3];}var a7=a2-a3;if(ab.abs(a7)>bf){var be=a2,bh=a8,a5=bC;a2=a3+bf*(S&&a2>a3?1:-1);a8=bd+bi*ab.cos(a2);bC=bc+bg*ab.sin(a2);bm=K(a8,bC,bi,bg,ba,0,S,bh,a5,[a2,be,bd,bc]);}a7=a2-a3;var a1=ab.cos(a3),bB=ab.sin(a3),a0=ab.cos(a2),bA=ab.sin(a2),bp=ab.tan(a7/4),bs=4/3*bi*bp,bq=4/3*bg*bp,by=[a9,bD],bx=[a9+bs*bB,bD-bq*a1],bw=[a8+bs*bA,bC-bq*a0],bu=[a8,bC];bx[0]=2*by[0]-bx[0];bx[1]=2*by[1]-bx[1];if(bb){return[bx,bw,bu][aS](bm);}else{bm=[bx,bw,bu][aS](bm)[az]()[z](",");var bk=[];for(var bv=0,bl=bm[m];bv<bl;bv++){bk[bv]=bv%2?bz(bm[bv-1],bm[bv],d).y:bz(bm[bv],bm[bv+1],d).x;}return bk;}},M=function(e,d,E,i,a2,a1,a0,S,a3){var R=1-a3;return{x:aM(R,3)*e+aM(R,2)*3*a3*E+R*3*a3*a3*a2+aM(a3,3)*a0,y:aM(R,3)*d+aM(R,2)*3*a3*i+R*3*a3*a3*a1+aM(a3,3)*S};},aC=aj(function(i,d,R,E,a9,a8,a5,a2){var a7=(a9-2*R+i)-(a5-2*a9+R),a4=2*(R-i)-2*(a9-R),a1=i-R,a0=(-a4+ab.sqrt(a4*a4-4*a7*a1))/2/a7,S=(-a4-ab.sqrt(a4*a4-4*a7*a1))/2/a7,a3=[d,a2],a6=[i,a5],e;ab.abs(a0)>1000000000000&&(a0=0.5);ab.abs(S)>1000000000000&&(S=0.5);if(a0>0&&a0<1){e=M(i,d,R,E,a9,a8,a5,a2,a0);a6[f](e.x);a3[f](e.y);}if(S>0&&S<1){e=M(i,d,R,E,a9,a8,a5,a2,S);a6[f](e.x);a3[f](e.y);}a7=(a8-2*E+d)-(a2-2*a8+E);a4=2*(E-d)-2*(a8-E);a1=d-E;a0=(-a4+ab.sqrt(a4*a4-4*a7*a1))/2/a7;S=(-a4-ab.sqrt(a4*a4-4*a7*a1))/2/a7;ab.abs(a0)>1000000000000&&(a0=0.5);ab.abs(S)>1000000000000&&(S=0.5);if(a0>0&&a0<1){e=M(i,d,R,E,a9,a8,a5,a2,a0);a6[f](e.x);a3[f](e.y);}if(S>0&&S<1){e=M(i,d,R,E,a9,a8,a5,a2,S);a6[f](e.x);a3[f](e.y);}return{min:{x:aI[aW](0,a6),y:aI[aW](0,a3)},max:{x:g[aW](0,a6),y:g[aW](0,a3)}};}),H=aj(function(a9,a4){var R=r(a9),a5=a4&&r(a4),a6={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},d={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},a0=function(ba,bb){var i,bc;if(!ba){return["C",bb.x,bb.y,bb.x,bb.y,bb.x,bb.y];}!(ba[0] in {T:1,Q:1})&&(bb.qx=bb.qy=null);switch(ba[0]){case"M":bb.X=ba[1];bb.Y=ba[2];break;case"A":ba=["C"][aS](K[aW](0,[bb.x,bb.y][aS](ba.slice(1))));break;case"S":i=bb.x+(bb.x-(bb.bx||bb.x));bc=bb.y+(bb.y-(bb.by||bb.y));ba=["C",i,bc][aS](ba.slice(1));break;case"T":bb.qx=bb.x+(bb.x-(bb.qx||bb.x));bb.qy=bb.y+(bb.y-(bb.qy||bb.y));ba=["C"][aS](aK(bb.x,bb.y,bb.qx,bb.qy,ba[1],ba[2]));break;case"Q":bb.qx=ba[1];bb.qy=ba[2];ba=["C"][aS](aK(bb.x,bb.y,ba[1],ba[2],ba[3],ba[4]));break;case"L":ba=["C"][aS](aX(bb.x,bb.y,ba[1],ba[2]));break;case"H":ba=["C"][aS](aX(bb.x,bb.y,ba[1],bb.y));break;case"V":ba=["C"][aS](aX(bb.x,bb.y,bb.x,ba[1]));break;case"Z":ba=["C"][aS](aX(bb.x,bb.y,bb.X,bb.Y));break;}return ba;},e=function(ba,bb){if(ba[bb][m]>7){ba[bb].shift();var bc=ba[bb];while(bc[m]){ba.splice(bb++,0,["C"][aS](bc.splice(0,6)));}ba.splice(bb,1);a7=g(R[m],a5&&a5[m]||0);}},E=function(be,bd,bb,ba,bc){if(be&&bd&&be[bc][0]=="M"&&bd[bc][0]!="M"){bd.splice(bc,0,["M",ba.x,ba.y]);bb.bx=0;bb.by=0;bb.x=be[bc][1];bb.y=be[bc][2];a7=g(R[m],a5&&a5[m]||0);}};for(var a2=0,a7=g(R[m],a5&&a5[m]||0);a2<a7;a2++){R[a2]=a0(R[a2],a6);e(R,a2);a5&&(a5[a2]=a0(a5[a2],d));a5&&e(a5,a2);E(R,a5,a6,d,a2);E(a5,R,d,a6,a2);var a1=R[a2],a8=a5&&a5[a2],S=a1[m],a3=a5&&a8[m];a6.x=a1[S-2];a6.y=a1[S-1];a6.bx=W(a1[S-4])||a6.x;a6.by=W(a1[S-3])||a6.y;d.bx=a5&&(W(a8[a3-4])||d.x);d.by=a5&&(W(a8[a3-3])||d.y);d.x=a5&&a8[a3-2];d.y=a5&&a8[a3-1];}return a5?[R,a5]:R;},null,av),p=aj(function(a4){var a3=[];for(var a0=0,a5=a4[m];a0<a5;a0++){var e={},a2=a4[a0].match(/^([^:]*):?([\d\.]*)/);e.color=an.getRGB(a2[1]);if(e.color.error){return null;}e.color=e.color.hex;a2[2]&&(e.offset=a2[2]+"%");a3[f](e);}for(var a0=1,a5=a3[m]-1;a0<a5;a0++){if(!a3[a0].offset){var E=W(a3[a0-1].offset||0),R=0;for(var S=a0+1;S<a5;S++){if(a3[S].offset){R=a3[S].offset;break;}}if(!R){R=100;S=a5;}R=W(R);var a1=(R-E)/(S-a0+1);for(;a0<S;a0++){E+=a1;a3[a0].offset=E+"%";}}}return a3;}),ao=function(){var i,e,R,E,d;if(an.is(arguments[0],"string")||an.is(arguments[0],"object")){if(an.is(arguments[0],"string")){i=L.getElementById(arguments[0]);}else{i=arguments[0];}if(i.tagName){if(arguments[1]==null){return{container:i,width:i.style.pixelWidth||i.offsetWidth,height:i.style.pixelHeight||i.offsetHeight};}else{return{container:i,width:arguments[1],height:arguments[2]};}}}else{if(an.is(arguments[0],al)&&arguments[m]>3){return{container:1,x:arguments[0],y:arguments[1],width:arguments[2],height:arguments[3]};}}},aG=function(d,i){var e=this;for(var E in i){if(i[Q](E)&&!(E in d)){switch(typeof i[E]){case"function":(function(R){d[E]=d===e?R:function(){return R[aW](e,arguments);};})(i[E]);break;case"object":d[E]=d[E]||{};aG.call(this,d[E],i[E]);break;default:d[E]=i[E];break;}}}},ak=function(d,e){d==e.top&&(e.top=d.prev);d==e.bottom&&(e.bottom=d.next);d.next&&(d.next.prev=d.prev);d.prev&&(d.prev.next=d.next);},Y=function(d,e){if(e.top===d){return;}ak(d,e);d.next=null;d.prev=e.top;e.top.next=d;e.top=d;},k=function(d,e){if(e.bottom===d){return;}ak(d,e);d.next=e.bottom;d.prev=null;e.bottom.prev=d;e.bottom=d;},A=function(e,d,i){ak(e,i);d==i.top&&(i.top=e);d.next&&(d.next.prev=e);e.next=d.next;e.prev=d;d.next=e;},aq=function(e,d,i){ak(e,i);d==i.bottom&&(i.bottom=e);d.prev&&(d.prev.next=e);e.prev=d.prev;d.prev=e;e.next=d;},s=function(d){return function(){throw new Error("Rapha\xebl: you are calling to method \u201c"+d+"\u201d of removed object");};},ar=/^r(?:\(([^,]+?)\s*,\s*([^\)]+?)\))?/;if(an.svg){aT[aY].svgns="http://www.w3.org/2000/svg";aT[aY].xlink="http://www.w3.org/1999/xlink";var O=function(d){return +d+(~~d===d)*0.5;},V=function(S){for(var e=0,E=S[m];e<E;e++){if(aZ.call(S[e][0])!="a"){for(var d=1,R=S[e][m];d<R;d++){S[e][d]=O(S[e][d]);}}else{S[e][6]=O(S[e][6]);S[e][7]=O(S[e][7]);}}return S;},aJ=function(i,d){if(d){for(var e in d){if(d[Q](e)){i[v](e,d[e]);}}}else{return L.createElementNS(aT[aY].svgns,i);}};an[aA]=function(){return"Your browser supports SVG.\nYou are running Rapha\xebl "+this.version;};var q=function(d,E){var e=aJ("path");E.canvas&&E.canvas[aL](e);var i=new ax(e,E);i.type="path";aa(i,{fill:"none",stroke:"#000",path:d});return i;};var b=function(E,a7,d){var a4="linear",a1=0.5,S=0.5,a9=E.style;a7=(a7+at)[aP](ar,function(bb,i,bc){a4="radial";if(i&&bc){a1=W(i);S=W(bc);var ba=((S>0.5)*2-1);aM(a1-0.5,2)+aM(S-0.5,2)>0.25&&(S=ab.sqrt(0.25-aM(a1-0.5,2))*ba+0.5)&&S!=0.5&&(S=S.toFixed(5)-0.00001*ba);}return at;});a7=a7[z](/\s*\-\s*/);if(a4=="linear"){var a0=a7.shift();a0=-W(a0);if(isNaN(a0)){return null;}var R=[0,0,ab.cos(a0*ab.PI/180),ab.sin(a0*ab.PI/180)],a6=1/(g(ab.abs(R[2]),ab.abs(R[3]))||1);R[2]*=a6;R[3]*=a6;if(R[2]<0){R[0]=-R[2];R[2]=0;}if(R[3]<0){R[1]=-R[3];R[3]=0;}}var a3=p(a7);if(!a3){return null;}var e=aJ(a4+"Gradient");e.id="r"+(an._id++)[aA](36);aJ(e,a4=="radial"?{fx:a1,fy:S}:{x1:R[0],y1:R[1],x2:R[2],y2:R[3]});d.defs[aL](e);for(var a2=0,a8=a3[m];a2<a8;a2++){var a5=aJ("stop");aJ(a5,{offset:a3[a2].offset?a3[a2].offset:!a2?"0%":"100%","stop-color":a3[a2].color||"#fff"});e[aL](a5);}aJ(E,{fill:"url(#"+e.id+")",opacity:1,"fill-opacity":1});a9.fill=at;a9.opacity=1;a9.fillOpacity=1;return 1;};var N=function(e){var d=e.getBBox();aJ(e.pattern,{patternTransform:an.format("translate({0},{1})",d.x,d.y)});};var aa=function(a6,bf){var a9={"":[0],none:[0],"-":[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]},bb=a6.node,a7=a6.attrs,a3=a6.rotate(),S=function(bm,bl){bl=a9[aZ.call(bl)];if(bl){var bj=bm.attrs["stroke-width"]||"1",bh={round:bj,square:bj,butt:0}[bm.attrs["stroke-linecap"]||bf["stroke-linecap"]]||0,bk=[];var bi=bl[m];while(bi--){bk[bi]=bl[bi]*bj+((bi%2)?1:-1)*bh;}aJ(bb,{"stroke-dasharray":bk[az](",")});}};bf[Q]("rotation")&&(a3=bf.rotation);var a2=(a3+at)[z](a);if(!(a2.length-1)){a2=null;}else{a2[1]=+a2[1];a2[2]=+a2[2];}W(a3)&&a6.rotate(0,true);for(var ba in bf){if(bf[Q](ba)){if(!j[Q](ba)){continue;}var a8=bf[ba];a7[ba]=a8;switch(ba){case"rotation":a6.rotate(a8,true);break;case"href":case"title":case"target":var bd=bb.parentNode;if(aZ.call(bd.tagName)!="a"){var E=aJ("a");bd.insertBefore(E,bb);E[aL](bb);bd=E;}bd.setAttributeNS(a6.Paper[aY].xlink,ba,a8);break;case"cursor":bb.style.cursor=a8;break;case"clip-rect":var e=(a8+at)[z](a);if(e[m]==4){a6.clip&&a6.clip.parentNode.parentNode.removeChild(a6.clip.parentNode);var i=aJ("clipPath"),bc=aJ("rect");i.id="r"+(an._id++)[aA](36);aJ(bc,{x:e[0],y:e[1],width:e[2],height:e[3]});i[aL](bc);a6.paper.defs[aL](i);aJ(bb,{"clip-path":"url(#"+i.id+")"});a6.clip=bc;}if(!a8){var be=L.getElementById(bb.getAttribute("clip-path")[aP](/(^url\(#|\)$)/g,at));be&&be.parentNode.removeChild(be);aJ(bb,{"clip-path":at});delete a6.clip;}break;case"path":if(a8&&a6.type=="path"){a7.path=V(r(a8));aJ(bb,{d:a7.path});}break;case"width":bb[v](ba,a8);if(a7.fx){ba="x";a8=a7.x;}else{break;}case"x":if(a7.fx){a8=-a7.x-(a7.width||0);}case"rx":if(ba=="rx"&&a6.type=="rect"){break;}case"cx":a2&&(ba=="x"||ba=="cx")&&(a2[1]+=a8-a7[ba]);bb[v](ba,O(a8));a6.pattern&&N(a6);break;case"height":bb[v](ba,a8);if(a7.fy){ba="y";a8=a7.y;}else{break;}case"y":if(a7.fy){a8=-a7.y-(a7.height||0);}case"ry":if(ba=="ry"&&a6.type=="rect"){break;}case"cy":a2&&(ba=="y"||ba=="cy")&&(a2[2]+=a8-a7[ba]);bb[v](ba,O(a8));a6.pattern&&N(a6);break;case"r":if(a6.type=="rect"){aJ(bb,{rx:a8,ry:a8});}else{bb[v](ba,a8);}break;case"src":if(a6.type=="image"){bb.setAttributeNS(a6.paper.xlink,"href",a8);}break;case"stroke-width":bb.style.strokeWidth=a8;bb[v](ba,a8);if(a7["stroke-dasharray"]){S(a6,a7["stroke-dasharray"]);}break;case"stroke-dasharray":S(a6,a8);break;case"translation":var a0=(a8+at)[z](a);a0[0]=+a0[0]||0;a0[1]=+a0[1]||0;if(a2){a2[1]+=a0[0];a2[2]+=a0[1];}t.call(a6,a0[0],a0[1]);break;case"scale":var a0=(a8+at)[z](a);a6.scale(+a0[0]||1,+a0[1]||+a0[0]||1,+a0[2]||null,+a0[3]||null);break;case"fill":var R=(a8+at).match(c);if(R){var i=aJ("pattern"),a5=aJ("image");i.id="r"+(an._id++)[aA](36);aJ(i,{x:0,y:0,patternUnits:"userSpaceOnUse",height:1,width:1});aJ(a5,{x:0,y:0});a5.setAttributeNS(a6.paper.xlink,"href",R[1]);i[aL](a5);var bg=L.createElement("img");bg.style.cssText="position:absolute;left:-9999em;top-9999em";bg.onload=function(){aJ(i,{width:this.offsetWidth,height:this.offsetHeight});aJ(a5,{width:this.offsetWidth,height:this.offsetHeight});L.body.removeChild(this);a6.paper.safari();};L.body[aL](bg);bg.src=R[1];a6.paper.defs[aL](i);bb.style.fill="url(#"+i.id+")";aJ(bb,{fill:"url(#"+i.id+")"});a6.pattern=i;a6.pattern&&N(a6);break;}if(!an.getRGB(a8).error){delete bf.gradient;delete a7.gradient;!an.is(a7.opacity,"undefined")&&an.is(bf.opacity,"undefined")&&aJ(bb,{opacity:a7.opacity});!an.is(a7["fill-opacity"],"undefined")&&an.is(bf["fill-opacity"],"undefined")&&aJ(bb,{"fill-opacity":a7["fill-opacity"]});}else{if((({circle:1,ellipse:1})[Q](a6.type)||(a8+at).charAt()!="r")&&b(bb,a8,a6.paper)){a7.gradient=a8;a7.fill="none";break;}}case"stroke":bb[v](ba,an.getRGB(a8).hex);break;case"gradient":(({circle:1,ellipse:1})[Q](a6.type)||(a8+at).charAt()!="r")&&b(bb,a8,a6.paper);break;case"opacity":case"fill-opacity":if(a7.gradient){var d=L.getElementById(bb.getAttribute("fill")[aP](/^url\(#|\)$/g,at));if(d){var a1=d.getElementsByTagName("stop");a1[a1[m]-1][v]("stop-opacity",a8);}break;}default:ba=="font-size"&&(a8=G(a8,10)+"px");var a4=ba[aP](/(\-.)/g,function(bh){return aN.call(bh.substring(1));});bb.style[a4]=a8;bb[v](ba,a8);break;}}}D(a6,bf);if(a2){a6.rotate(a2.join(am));}else{W(a3)&&a6.rotate(a3,true);}};var h=1.2;var D=function(d,R){if(d.type!="text"||!(R[Q]("text")||R[Q]("font")||R[Q]("font-size")||R[Q]("x")||R[Q]("y"))){return;}var a3=d.attrs,e=d.node,a5=e.firstChild?G(L.defaultView.getComputedStyle(e.firstChild,at).getPropertyValue("font-size"),10):10;if(R[Q]("text")){a3.text=R.text;while(e.firstChild){e.removeChild(e.firstChild);}var E=(R.text+at)[z]("\n");for(var S=0,a4=E[m];S<a4;S++){if(E[S]){var a1=aJ("tspan");S&&aJ(a1,{dy:a5*h,x:a3.x});a1[aL](L.createTextNode(E[S]));e[aL](a1);}}}else{var E=e.getElementsByTagName("tspan");for(var S=0,a4=E[m];S<a4;S++){S&&aJ(E[S],{dy:a5*h,x:a3.x});}}aJ(e,{y:a3.y});var a0=d.getBBox(),a2=a3.y-(a0.y+a0.height/2);a2&&isFinite(a2)&&aJ(e,{y:a3.y+a2});};var ax=function(e,d){var E=0,i=0;this[0]=e;this.id=an._oid++;this.node=e;e.raphael=this;this.paper=d;this.attrs=this.attrs||{};this.transformations=[];this._={tx:0,ty:0,rt:{deg:0,cx:0,cy:0},sx:1,sy:1};!d.bottom&&(d.bottom=this);this.prev=d.top;d.top&&(d.top.next=this);d.top=this;this.next=null;};ax[aY].rotate=function(e,d,E){if(this.removed){return this;}if(e==null){if(this._.rt.cx){return[this._.rt.deg,this._.rt.cx,this._.rt.cy][az](am);}return this._.rt.deg;}var i=this.getBBox();e=(e+at)[z](a);if(e[m]-1){d=W(e[1]);E=W(e[2]);}e=W(e[0]);if(d!=null){this._.rt.deg=e;}else{this._.rt.deg+=e;}(E==null)&&(d=null);this._.rt.cx=d;this._.rt.cy=E;d=d==null?i.x+i.width/2:d;E=E==null?i.y+i.height/2:E;if(this._.rt.deg){this.transformations[0]=an.format("rotate({0} {1} {2})",this._.rt.deg,d,E);this.clip&&aJ(this.clip,{transform:an.format("rotate({0} {1} {2})",-this._.rt.deg,d,E)});}else{this.transformations[0]=at;this.clip&&aJ(this.clip,{transform:at});}aJ(this.node,{transform:this.transformations[az](am)});return this;};ax[aY].hide=function(){!this.removed&&(this.node.style.display="none");return this;};ax[aY].show=function(){!this.removed&&(this.node.style.display="");return this;};ax[aY].remove=function(){if(this.removed){return;}ak(this,this.paper);this.node.parentNode.removeChild(this.node);for(var d in this){delete this[d];}this.removed=true;};ax[aY].getBBox=function(){if(this.removed){return this;}if(this.type=="path"){return U(this.attrs.path);}if(this.node.style.display=="none"){this.show();var E=true;}var a1={};try{a1=this.node.getBBox();}catch(S){}finally{a1=a1||{};}if(this.type=="text"){a1={x:a1.x,y:Infinity,width:0,height:0};for(var d=0,R=this.node.getNumberOfChars();d<R;d++){var a0=this.node.getExtentOfChar(d);(a0.y<a1.y)&&(a1.y=a0.y);(a0.y+a0.height-a1.y>a1.height)&&(a1.height=a0.y+a0.height-a1.y);(a0.x+a0.width-a1.x>a1.width)&&(a1.width=a0.x+a0.width-a1.x);}}E&&this.hide();return a1;};ax[aY].attr=function(){if(this.removed){return this;}if(arguments[m]==0){var R={};for(var E in this.attrs){if(this.attrs[Q](E)){R[E]=this.attrs[E];}}this._.rt.deg&&(R.rotation=this.rotate());(this._.sx!=1||this._.sy!=1)&&(R.scale=this.scale());R.gradient&&R.fill=="none"&&(R.fill=R.gradient)&&delete R.gradient;return R;}if(arguments[m]==1&&an.is(arguments[0],"string")){if(arguments[0]=="translation"){return t.call(this);}if(arguments[0]=="rotation"){return this.rotate();}if(arguments[0]=="scale"){return this.scale();}if(arguments[0]=="fill"&&this.attrs.fill=="none"&&this.attrs.gradient){return this.attrs.gradient;}return this.attrs[arguments[0]];}if(arguments[m]==1&&an.is(arguments[0],"array")){var d={};for(var e in arguments[0]){if(arguments[0][Q](e)){d[arguments[0][e]]=this.attrs[arguments[0][e]];}}return d;}if(arguments[m]==2){var S={};S[arguments[0]]=arguments[1];aa(this,S);}else{if(arguments[m]==1&&an.is(arguments[0],"object")){aa(this,arguments[0]);}}return this;};ax[aY].toFront=function(){if(this.removed){return this;}this.node.parentNode[aL](this.node);var d=this.paper;d.top!=this&&Y(this,d);return this;};ax[aY].toBack=function(){if(this.removed){return this;}if(this.node.parentNode.firstChild!=this.node){this.node.parentNode.insertBefore(this.node,this.node.parentNode.firstChild);k(this,this.paper);var d=this.paper;}return this;};ax[aY].insertAfter=function(d){if(this.removed){return this;}var e=d.node;if(e.nextSibling){e.parentNode.insertBefore(this.node,e.nextSibling);}else{e.parentNode[aL](this.node);}A(this,d,this.paper);return this;};ax[aY].insertBefore=function(d){if(this.removed){return this;}var e=d.node;e.parentNode.insertBefore(this.node,e);aq(this,d,this.paper);return this;};var P=function(e,d,S,R){d=O(d);S=O(S);var E=aJ("circle");e.canvas&&e.canvas[aL](E);var i=new ax(E,e);i.attrs={cx:d,cy:S,r:R,fill:"none",stroke:"#000"};i.type="circle";aJ(E,i.attrs);return i;};var aF=function(i,d,a1,e,S,a0){d=O(d);a1=O(a1);var R=aJ("rect");i.canvas&&i.canvas[aL](R);var E=new ax(R,i);E.attrs={x:d,y:a1,width:e,height:S,r:a0||0,rx:a0||0,ry:a0||0,fill:"none",stroke:"#000"};E.type="rect";aJ(R,E.attrs);return E;};var ai=function(e,d,a0,S,R){d=O(d);a0=O(a0);var E=aJ("ellipse");e.canvas&&e.canvas[aL](E);var i=new ax(E,e);i.attrs={cx:d,cy:a0,rx:S,ry:R,fill:"none",stroke:"#000"};i.type="ellipse";aJ(E,i.attrs);return i;};var o=function(i,a0,d,a1,e,S){var R=aJ("image");aJ(R,{x:d,y:a1,width:e,height:S,preserveAspectRatio:"none"});R.setAttributeNS(i.xlink,"href",a0);i.canvas&&i.canvas[aL](R);var E=new ax(R,i);E.attrs={x:d,y:a1,width:e,height:S,src:a0};E.type="image";return E;};var X=function(e,d,S,R){var E=aJ("text");aJ(E,{x:d,y:S,"text-anchor":"middle"});e.canvas&&e.canvas[aL](E);var i=new ax(E,e);i.attrs={x:d,y:S,"text-anchor":"middle",text:R,font:j.font,stroke:"none",fill:"#000"};i.type="text";aa(i,i.attrs);return i;};var aV=function(e,d){this.width=e||this.width;this.height=d||this.height;this.canvas[v]("width",this.width);this.canvas[v]("height",this.height);return this;};var w=function(){var E=ao[aW](null,arguments),i=E&&E.container,e=E.x,a0=E.y,R=E.width,d=E.height;if(!i){throw new Error("SVG container not found.");}var S=aJ("svg");R=R||512;d=d||342;aJ(S,{xmlns:"http://www.w3.org/2000/svg",version:1.1,width:R,height:d});if(i==1){S.style.cssText="position:absolute;left:"+e+"px;top:"+a0+"px";L.body[aL](S);}else{if(i.firstChild){i.insertBefore(S,i.firstChild);}else{i[aL](S);}}i=new aT;i.width=R;i.height=d;i.canvas=S;aG.call(i,i,an.fn);i.clear();return i;};aT[aY].clear=function(){var d=this.canvas;while(d.firstChild){d.removeChild(d.firstChild);}this.bottom=this.top=null;(this.desc=aJ("desc"))[aL](L.createTextNode("Created with Rapha\xebl"));d[aL](this.desc);d[aL](this.defs=aJ("defs"));};aT[aY].remove=function(){this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas);for(var d in this){this[d]=s(d);}};}if(an.vml){var aH=function(a8){var a5=/[ahqstv]/ig,a0=r;(a8+at).match(a5)&&(a0=H);a5=/[clmz]/g;if(a0==r&&!(a8+at).match(a5)){var e={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},R=/([clmz]),?([^clmz]*)/gi,S=/-?[^,\s-]+/g;var a4=(a8+at)[aP](R,function(a9,bb,i){var ba=[];i[aP](S,function(bc){ba[f](O(bc));});return e[bb]+ba;});return a4;}var a6=a0(a8),E,a4=[],d;for(var a2=0,a7=a6[m];a2<a7;a2++){E=a6[a2];d=aZ.call(a6[a2][0]);d=="z"&&(d="x");for(var a1=1,a3=E[m];a1<a3;a1++){d+=O(E[a1])+(a1!=a3-1?",":at);}a4[f](d);}return a4[az](am);};an[aA]=function(){return"Your browser doesn\u2019t support SVG. Falling down to VML.\nYou are running Rapha\xebl "+this.version;};var q=function(d,S){var E=ah("group");E.style.cssText="position:absolute;left:0;top:0;width:"+S.width+"px;height:"+S.height+"px";E.coordsize=S.coordsize;E.coordorigin=S.coordorigin;var i=ah("shape"),e=i.style;e.width=S.width+"px";e.height=S.height+"px";i.coordsize=this.coordsize;i.coordorigin=this.coordorigin;E[aL](i);var R=new ax(i,E,S);R.isAbsolute=true;R.type="path";R.path=[];R.Path=at;d&&aa(R,{fill:"none",stroke:"#000",path:d});S.canvas[aL](E);return R;};var aa=function(a3,a8){a3.attrs=a3.attrs||{};var a6=a3.node,a9=a3.attrs,a0=a6.style,E,bd=a3;for(var a1 in a8){if(a8[Q](a1)){a9[a1]=a8[a1];}}a8.href&&(a6.href=a8.href);a8.title&&(a6.title=a8.title);a8.target&&(a6.target=a8.target);a8.cursor&&(a0.cursor=a8.cursor);if(a8.path&&a3.type=="path"){a9.path=a8.path;a6.path=aH(a9.path);}if(a8.rotation!=null){a3.rotate(a8.rotation,true);}if(a8.translation){E=(a8.translation+at)[z](a);t.call(a3,E[0],E[1]);if(a3._.rt.cx!=null){a3._.rt.cx+=+E[0];a3._.rt.cy+=+E[1];a3.setBox(a3.attrs,E[0],E[1]);}}if(a8.scale){E=(a8.scale+at)[z](a);a3.scale(+E[0]||1,+E[1]||+E[0]||1,+E[2]||null,+E[3]||null);}if("clip-rect" in a8){var d=(a8["clip-rect"]+at)[z](a);if(d[m]==4){d[2]=+d[2]+(+d[0]);d[3]=+d[3]+(+d[1]);var a2=a6.clipRect||L.createElement("div"),bc=a2.style,S=a6.parentNode;bc.clip=an.format("rect({1}px {2}px {3}px {0}px)",d);if(!a6.clipRect){bc.position="absolute";bc.top=0;bc.left=0;bc.width=a3.paper.width+"px";bc.height=a3.paper.height+"px";S.parentNode.insertBefore(a2,S);a2[aL](S);a6.clipRect=a2;}}if(!a8["clip-rect"]){a6.clipRect&&(a6.clipRect.style.clip=at);}}if(a3.type=="image"&&a8.src){a6.src=a8.src;}if(a3.type=="image"&&a8.opacity){a6.filterOpacity=" progid:DXImageTransform.Microsoft.Alpha(opacity="+(a8.opacity*100)+")";a0.filter=(a6.filterMatrix||at)+(a6.filterOpacity||at);}a8.font&&(a0.font=a8.font);a8["font-family"]&&(a0.fontFamily='"'+a8["font-family"][z](",")[0][aP](/^['"]+|['"]+$/g,at)+'"');a8["font-size"]&&(a0.fontSize=a8["font-size"]);a8["font-weight"]&&(a0.fontWeight=a8["font-weight"]);a8["font-style"]&&(a0.fontStyle=a8["font-style"]);if(a8.opacity!=null||a8["stroke-width"]!=null||a8.fill!=null||a8.stroke!=null||a8["stroke-width"]!=null||a8["stroke-opacity"]!=null||a8["fill-opacity"]!=null||a8["stroke-dasharray"]!=null||a8["stroke-miterlimit"]!=null||a8["stroke-linejoin"]!=null||a8["stroke-linecap"]!=null){a6=a3.shape||a6;var a7=(a6.getElementsByTagName("fill")&&a6.getElementsByTagName("fill")[0]),ba=false;!a7&&(ba=a7=ah("fill"));if("fill-opacity" in a8||"opacity" in a8){var e=((+a9["fill-opacity"]+1||2)-1)*((+a9.opacity+1||2)-1);e<0&&(e=0);e>1&&(e=1);a7.opacity=e;}a8.fill&&(a7.on=true);if(a7.on==null||a8.fill=="none"){a7.on=false;}if(a7.on&&a8.fill){var i=a8.fill.match(c);if(i){a7.src=i[1];a7.type="tile";}else{a7.color=an.getRGB(a8.fill).hex;a7.src=at;a7.type="solid";if(an.getRGB(a8.fill).error&&(bd.type in {circle:1,ellipse:1}||(a8.fill+at).charAt()!="r")&&b(bd,a8.fill)){a9.fill="none";a9.gradient=a8.fill;}}}ba&&a6[aL](a7);var R=(a6.getElementsByTagName("stroke")&&a6.getElementsByTagName("stroke")[0]),bb=false;!R&&(bb=R=ah("stroke"));if((a8.stroke&&a8.stroke!="none")||a8["stroke-width"]||a8["stroke-opacity"]!=null||a8["stroke-dasharray"]||a8["stroke-miterlimit"]||a8["stroke-linejoin"]||a8["stroke-linecap"]){R.on=true;}(a8.stroke=="none"||R.on==null||a8.stroke==0||a8["stroke-width"]==0)&&(R.on=false);R.on&&a8.stroke&&(R.color=an.getRGB(a8.stroke).hex);var e=((+a9["stroke-opacity"]+1||2)-1)*((+a9.opacity+1||2)-1),a4=(W(a8["stroke-width"])||1)*0.75;e<0&&(e=0);e>1&&(e=1);a8["stroke-width"]==null&&(a4=a9["stroke-width"]);a8["stroke-width"]&&(R.weight=a4);a4&&a4<1&&(e*=a4)&&(R.weight=1);R.opacity=e;a8["stroke-linejoin"]&&(R.joinstyle=a8["stroke-linejoin"]||"miter");R.miterlimit=a8["stroke-miterlimit"]||8;a8["stroke-linecap"]&&(R.endcap=a8["stroke-linecap"]=="butt"?"flat":a8["stroke-linecap"]=="square"?"square":"round");if(a8["stroke-dasharray"]){var a5={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot","--..":"longdashdotdot"};R.dashstyle=a5[Q](a8["stroke-dasharray"])?a5[a8["stroke-dasharray"]]:at;}bb&&a6[aL](R);}if(bd.type=="text"){var a0=bd.paper.span.style;a9.font&&(a0.font=a9.font);a9["font-family"]&&(a0.fontFamily=a9["font-family"]);a9["font-size"]&&(a0.fontSize=a9["font-size"]);a9["font-weight"]&&(a0.fontWeight=a9["font-weight"]);a9["font-style"]&&(a0.fontStyle=a9["font-style"]);bd.node.string&&(bd.paper.span.innerHTML=(bd.node.string+at)[aP](/</g,"&#60;")[aP](/&/g,"&#38;")[aP](/\n/g,"<br>"));bd.W=a9.w=bd.paper.span.offsetWidth;bd.H=a9.h=bd.paper.span.offsetHeight;bd.X=a9.x;bd.Y=a9.y+O(bd.H/2);switch(a9["text-anchor"]){case"start":bd.node.style["v-text-align"]="left";bd.bbx=O(bd.W/2);break;case"end":bd.node.style["v-text-align"]="right";bd.bbx=-O(bd.W/2);break;default:bd.node.style["v-text-align"]="center";break;}}};var b=function(d,a1){d.attrs=d.attrs||{};var a2=d.attrs,a4=d.node.getElementsByTagName("fill"),S="linear",a0=".5 .5";d.attrs.gradient=a1;a1=(a1+at)[aP](ar,function(a6,a7,i){S="radial";if(a7&&i){a7=W(a7);i=W(i);aM(a7-0.5,2)+aM(i-0.5,2)>0.25&&(i=ab.sqrt(0.25-aM(a7-0.5,2))*((i>0.5)*2-1)+0.5);a0=a7+am+i;}return at;});a1=a1[z](/\s*\-\s*/);if(S=="linear"){var e=a1.shift();e=-W(e);if(isNaN(e)){return null;}}var R=p(a1);if(!R){return null;}d=d.shape||d.node;a4=a4[0]||ah("fill");if(R[m]){a4.on=true;a4.method="none";a4.type=(S=="radial")?"gradientradial":"gradient";a4.color=R[0].color;a4.color2=R[R[m]-1].color;var a5=[];for(var E=0,a3=R[m];E<a3;E++){R[E].offset&&a5[f](R[E].offset+am+R[E].color);}a4.colors&&(a4.colors.value=a5[m]?a5[az](","):"0% "+a4.color);if(S=="radial"){a4.focus="100%";a4.focussize=a0;a4.focusposition=a0;}else{a4.angle=(270-e)%360;}}return 1;};var ax=function(R,a0,d){var S=0,i=0,e=0,E=1;this[0]=R;this.id=an._oid++;this.node=R;R.raphael=this;this.X=0;this.Y=0;this.attrs={};this.Group=a0;this.paper=d;this._={tx:0,ty:0,rt:{deg:0},sx:1,sy:1};!d.bottom&&(d.bottom=this);this.prev=d.top;d.top&&(d.top.next=this);d.top=this;this.next=null;};ax[aY].rotate=function(e,d,i){if(this.removed){return this;}if(e==null){if(this._.rt.cx){return[this._.rt.deg,this._.rt.cx,this._.rt.cy][az](am);}return this._.rt.deg;}e=(e+at)[z](a);if(e[m]-1){d=W(e[1]);i=W(e[2]);}e=W(e[0]);if(d!=null){this._.rt.deg=e;}else{this._.rt.deg+=e;}i==null&&(d=null);this._.rt.cx=d;this._.rt.cy=i;this.setBox(this.attrs,d,i);this.Group.style.rotation=this._.rt.deg;return this;};ax[aY].setBox=function(bb,e,d){if(this.removed){return this;}var a5=this.Group.style,R=(this.shape&&this.shape.style)||this.node.style;bb=bb||{};for(var a9 in bb){if(bb[Q](a9)){this.attrs[a9]=bb[a9];}}e=e||this._.rt.cx;d=d||this._.rt.cy;var a7=this.attrs,a1,a0,a2,ba;switch(this.type){case"circle":a1=a7.cx-a7.r;a0=a7.cy-a7.r;a2=ba=a7.r*2;break;case"ellipse":a1=a7.cx-a7.rx;a0=a7.cy-a7.ry;a2=a7.rx*2;ba=a7.ry*2;break;case"rect":case"image":a1=+a7.x;a0=+a7.y;a2=a7.width||0;ba=a7.height||0;break;case"text":this.textpath.v=["m",O(a7.x),", ",O(a7.y-2),"l",O(a7.x)+1,", ",O(a7.y-2)][az](at);a1=a7.x-O(this.W/2);a0=a7.y-this.H/2;a2=this.W;ba=this.H;break;case"path":if(!this.attrs.path){a1=0;a0=0;a2=this.paper.width;ba=this.paper.height;}else{var a8=U(this.attrs.path);a1=a8.x;a0=a8.y;a2=a8.width;ba=a8.height;}break;default:a1=0;a0=0;a2=this.paper.width;ba=this.paper.height;break;}e=(e==null)?a1+a2/2:e;d=(d==null)?a0+ba/2:d;var E=e-this.paper.width/2,a4=d-this.paper.height/2;if(this.type=="path"||this.type=="text"){(a5.left!=E+"px")&&(a5.left=E+"px");(a5.top!=a4+"px")&&(a5.top=a4+"px");this.X=this.type=="text"?a1:-E;this.Y=this.type=="text"?a0:-a4;this.W=a2;this.H=ba;(R.left!=-E+"px")&&(R.left=-E+"px");(R.top!=-a4+"px")&&(R.top=-a4+"px");}else{(a5.left!=E+"px")&&(a5.left=E+"px");(a5.top!=a4+"px")&&(a5.top=a4+"px");this.X=a1;this.Y=a0;this.W=a2;this.H=ba;(a5.width!=this.paper.width+"px")&&(a5.width=this.paper.width+"px");(a5.height!=this.paper.height+"px")&&(a5.height=this.paper.height+"px");(R.left!=a1-E+"px")&&(R.left=a1-E+"px");(R.top!=a0-a4+"px")&&(R.top=a0-a4+"px");(R.width!=a2+"px")&&(R.width=a2+"px");(R.height!=ba+"px")&&(R.height=ba+"px");var S=(+bb.r||0)/aI(a2,ba);if(this.type=="rect"&&this.arcsize.toFixed(4)!=S.toFixed(4)&&(S||this.arcsize)){var a6=ah("roundrect"),bc={},a9=0,a3=this.events&&this.events[m];a6.arcsize=S;a6.raphael=this;this.Group[aL](a6);this.Group.removeChild(this.node);this[0]=this.node=a6;this.arcsize=S;for(var a9 in a7){bc[a9]=a7[a9];}delete bc.scale;this.attr(bc);if(this.events){for(;a9<a3;a9++){this.events[a9].unbind=ae(this.node,this.events[a9].name,this.events[a9].f,this);}}}}};ax[aY].hide=function(){!this.removed&&(this.Group.style.display="none");return this;};ax[aY].show=function(){!this.removed&&(this.Group.style.display="block");return this;};ax[aY].getBBox=function(){if(this.removed){return this;}if(this.type=="path"){return U(this.attrs.path);}return{x:this.X+(this.bbx||0),y:this.Y,width:this.W,height:this.H};};ax[aY].remove=function(){if(this.removed){return;}ak(this,this.paper);this.node.parentNode.removeChild(this.node);this.Group.parentNode.removeChild(this.Group);this.shape&&this.shape.parentNode.removeChild(this.shape);for(var d in this){delete this[d];}this.removed=true;};ax[aY].attr=function(){if(this.removed){return this;}if(arguments[m]==0){var E={};for(var e in this.attrs){if(this.attrs[Q](e)){E[e]=this.attrs[e];}}this._.rt.deg&&(E.rotation=this.rotate());(this._.sx!=1||this._.sy!=1)&&(E.scale=this.scale());E.gradient&&E.fill=="none"&&(E.fill=E.gradient)&&delete E.gradient;return E;}if(arguments[m]==1&&an.is(arguments[0],"string")){if(arguments[0]=="translation"){return t.call(this);}if(arguments[0]=="rotation"){return this.rotate();}if(arguments[0]=="scale"){return this.scale();}if(arguments[0]=="fill"&&this.attrs.fill=="none"&&this.attrs.gradient){return this.attrs.gradient;}return this.attrs[arguments[0]];}if(this.attrs&&arguments[m]==1&&an.is(arguments[0],"array")){var d={};for(var e=0,R=arguments[0][m];e<R;e++){d[arguments[0][e]]=this.attrs[arguments[0][e]];}return d;}var S;if(arguments[m]==2){S={};S[arguments[0]]=arguments[1];}arguments[m]==1&&an.is(arguments[0],"object")&&(S=arguments[0]);if(S){if(S.text&&this.type=="text"){this.node.string=S.text;}aa(this,S);if(S.gradient&&(({circle:1,ellipse:1})[Q](this.type)||(S.gradient+at).charAt()!="r")){b(this,S.gradient);}(this.type!="path"||this._.rt.deg)&&this.setBox(this.attrs);}return this;};ax[aY].toFront=function(){!this.removed&&this.Group.parentNode[aL](this.Group);this.paper.top!=this&&Y(this,this.paper);return this;};ax[aY].toBack=function(){if(this.removed){return this;}if(this.Group.parentNode.firstChild!=this.Group){this.Group.parentNode.insertBefore(this.Group,this.Group.parentNode.firstChild);k(this,this.paper);}return this;};ax[aY].insertAfter=function(d){if(this.removed){return this;}if(d.Group.nextSibling){d.Group.parentNode.insertBefore(this.Group,d.Group.nextSibling);}else{d.Group.parentNode[aL](this.Group);}A(this,d,this.paper);return this;};ax[aY].insertBefore=function(d){if(this.removed){return this;}d.Group.parentNode.insertBefore(this.Group,d.Group);aq(this,d,this.paper);return this;};var P=function(e,d,a1,S){var R=ah("group"),a0=ah("oval"),i=a0.style;R.style.cssText="position:absolute;left:0;top:0;width:"+e.width+"px;height:"+e.height+"px";R.coordsize=e.coordsize;R.coordorigin=e.coordorigin;R[aL](a0);var E=new ax(a0,R,e);E.type="circle";aa(E,{stroke:"#000",fill:"none"});E.attrs.cx=d;E.attrs.cy=a1;E.attrs.r=S;E.setBox({x:d-S,y:a1-S,width:S*2,height:S*2});e.canvas[aL](R);return E;},aF=function(e,a1,a0,a2,E,d){var R=ah("group"),i=ah("roundrect"),a3=(+d||0)/(aI(a2,E));R.style.cssText="position:absolute;left:0;top:0;width:"+e.width+"px;height:"+e.height+"px";R.coordsize=e.coordsize;R.coordorigin=e.coordorigin;R[aL](i);i.arcsize=a3;var S=new ax(i,R,e);S.type="rect";aa(S,{stroke:"#000"});S.arcsize=a3;S.setBox({x:a1,y:a0,width:a2,height:E,r:d});e.canvas[aL](R);return S;},ai=function(d,a2,a1,i,e){var R=ah("group"),E=ah("oval"),a0=E.style;R.style.cssText="position:absolute;left:0;top:0;width:"+d.width+"px;height:"+d.height+"px";R.coordsize=d.coordsize;R.coordorigin=d.coordorigin;R[aL](E);var S=new ax(E,R,d);S.type="ellipse";aa(S,{stroke:"#000"});S.attrs.cx=a2;S.attrs.cy=a1;S.attrs.rx=i;S.attrs.ry=e;S.setBox({x:a2-i,y:a1-e,width:i*2,height:e*2});d.canvas[aL](R);return S;},o=function(e,d,a2,a1,a3,E){var R=ah("group"),i=ah("image"),a0=i.style;R.style.cssText="position:absolute;left:0;top:0;width:"+e.width+"px;height:"+e.height+"px";R.coordsize=e.coordsize;R.coordorigin=e.coordorigin;i.src=d;R[aL](i);var S=new ax(i,R,e);S.type="image";S.attrs.src=d;S.attrs.x=a2;S.attrs.y=a1;S.attrs.w=a3;S.attrs.h=E;S.setBox({x:a2,y:a1,width:a3,height:E});e.canvas[aL](R);return S;},X=function(e,a2,a1,a3){var R=ah("group"),E=ah("shape"),a0=E.style,a4=ah("path"),d=a4.style,i=ah("textpath");R.style.cssText="position:absolute;left:0;top:0;width:"+e.width+"px;height:"+e.height+"px";R.coordsize=e.coordsize;R.coordorigin=e.coordorigin;a4.v=an.format("m{0},{1}l{2},{1}",O(a2),O(a1),O(a2)+1);a4.textpathok=true;a0.width=e.width;a0.height=e.height;i.string=a3+at;i.on=true;E[aL](i);E[aL](a4);R[aL](E);var S=new ax(i,R,e);S.shape=E;S.textpath=a4;S.type="text";S.attrs.text=a3;S.attrs.x=a2;S.attrs.y=a1;S.attrs.w=1;S.attrs.h=1;aa(S,{font:j.font,stroke:"none",fill:"#000"});S.setBox();e.canvas[aL](R);return S;},aV=function(i,d){var e=this.canvas.style;i==+i&&(i+="px");d==+d&&(d+="px");e.width=i;e.height=d;e.clip="rect(0 "+i+" "+d+" 0)";return this;},ah;L.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)");try{!L.namespaces.rvml&&L.namespaces.add("rvml","urn:schemas-microsoft-com:vml");ah=function(d){return L.createElement("<rvml:"+d+' class="rvml">');};}catch(af){ah=function(d){return L.createElement("<"+d+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">');};}var w=function(){var i=ao[aW](null,arguments),d=i.container,a2=i.height,a3,e=i.width,a1=i.x,a0=i.y;if(!d){throw new Error("VML container not found.");}var R=new aT,S=R.canvas=L.createElement("div"),E=S.style;e=e||512;a2=a2||342;e==+e&&(e+="px");a2==+a2&&(a2+="px");R.width=1000;R.height=1000;R.coordsize="1000 1000";R.coordorigin="0 0";R.span=L.createElement("span");R.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;";S[aL](R.span);E.cssText=an.format("width:{0};height:{1};position:absolute;clip:rect(0 {0} {1} 0);overflow:hidden",e,a2);if(d==1){L.body[aL](S);E.left=a1+"px";E.top=a0+"px";}else{d.style.width=e;d.style.height=a2;if(d.firstChild){d.insertBefore(S,d.firstChild);}else{d[aL](S);}}aG.call(R,R,an.fn);return R;};aT[aY].clear=function(){this.canvas.innerHTML=at;this.span=L.createElement("span");this.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;";this.canvas[aL](this.span);this.bottom=this.top=null;};aT[aY].remove=function(){this.canvas.parentNode.removeChild(this.canvas);for(var d in this){this[d]=s(d);}};}if((/^Apple|^Google/).test(navigator.vendor)&&!(navigator.userAgent.indexOf("Version/4.0")+1)){aT[aY].safari=function(){var d=this.rect(-99,-99,this.width+99,this.height+99);setTimeout(function(){d.remove();});};}else{aT[aY].safari=function(){};}var ae=(function(){if(L.addEventListener){return function(R,i,e,d){var E=function(S){return e.call(d,S);};R.addEventListener(i,E,false);return function(){R.removeEventListener(i,E,false);return true;};};}else{if(L.attachEvent){return function(S,E,i,e){var R=function(a0){return i.call(e,a0||au.event);};S.attachEvent("on"+E,R);var d=function(){S.detachEvent("on"+E,R);return true;};return d;};}}})();for(var ac=F[m];ac--;){(function(d){ax[aY][d]=function(e){if(an.is(e,"function")){this.events=this.events||[];this.events.push({name:d,f:e,unbind:ae(this.shape||this.node,d,e,this)});}return this;};ax[aY]["un"+d]=function(E){var i=this.events,e=i[m];while(e--){if(i[e].name==d&&i[e].f==E){i[e].unbind();i.splice(e,1);!i.length&&delete this.events;return this;}}return this;};})(F[ac]);}ax[aY].hover=function(e,d){return this.mouseover(e).mouseout(d);};ax[aY].unhover=function(e,d){return this.unmouseover(e).unmouseout(d);};aT[aY].circle=function(d,i,e){return P(this,d||0,i||0,e||0);};aT[aY].rect=function(d,R,e,i,E){return aF(this,d||0,R||0,e||0,i||0,E||0);};aT[aY].ellipse=function(d,E,i,e){return ai(this,d||0,E||0,i||0,e||0);};aT[aY].path=function(d){d&&!an.is(d,"string")&&!an.is(d[0],"array")&&(d+=at);return q(an.format[aW](an,arguments),this);};aT[aY].image=function(E,d,R,e,i){return o(this,E||"about:blank",d||0,R||0,e||0,i||0);};aT[aY].text=function(d,i,e){return X(this,d||0,i||0,e||at);};aT[aY].set=function(d){arguments[m]>1&&(d=Array[aY].splice.call(arguments,0,arguments[m]));return new T(d);};aT[aY].setSize=aV;aT[aY].top=aT[aY].bottom=null;aT[aY].raphael=an;function u(){return this.x+am+this.y;}ax[aY].scale=function(a6,a5,E,e){if(a6==null&&a5==null){return{x:this._.sx,y:this._.sy,toString:u};}a5=a5||a6;!+a5&&(a5=a6);var ba,a8,a9,a7,bm=this.attrs;if(a6!=0){var a4=this.getBBox(),a1=a4.x+a4.width/2,R=a4.y+a4.height/2,bl=a6/this._.sx,bk=a5/this._.sy;E=(+E||E==0)?E:a1;e=(+e||e==0)?e:R;var a3=~~(a6/ab.abs(a6)),a0=~~(a5/ab.abs(a5)),be=this.node.style,bo=E+(a1-E)*bl,bn=e+(R-e)*bk;switch(this.type){case"rect":case"image":var a2=bm.width*a3*bl,bd=bm.height*a0*bk;this.attr({height:bd,r:bm.r*aI(a3*bl,a0*bk),width:a2,x:bo-a2/2,y:bn-bd/2});break;case"circle":case"ellipse":this.attr({rx:bm.rx*a3*bl,ry:bm.ry*a0*bk,r:bm.r*aI(a3*bl,a0*bk),cx:bo,cy:bn});break;case"path":var bg=ad(bm.path),bh=true;for(var bj=0,bc=bg[m];bj<bc;bj++){var bf=bg[bj],bi,S=aN.call(bf[0]);if(S=="M"&&bh){continue;}else{bh=false;}if(S=="A"){bf[bg[bj][m]-2]*=bl;bf[bg[bj][m]-1]*=bk;bf[1]*=a3*bl;bf[2]*=a0*bk;bf[5]=+(a3+a0?!!+bf[5]:!+bf[5]);}else{if(S=="H"){for(bi=1,jj=bf[m];bi<jj;bi++){bf[bi]*=bl;}}else{if(S=="V"){for(bi=1,jj=bf[m];bi<jj;bi++){bf[bi]*=bk;}}else{for(bi=1,jj=bf[m];bi<jj;bi++){bf[bi]*=(bi%2)?bl:bk;}}}}}var d=U(bg),ba=bo-d.x-d.width/2,a8=bn-d.y-d.height/2;bg[0][1]+=ba;bg[0][2]+=a8;this.attr({path:bg});break;}if(this.type in {text:1,image:1}&&(a3!=1||a0!=1)){if(this.transformations){this.transformations[2]="scale("[aS](a3,",",a0,")");this.node[v]("transform",this.transformations[az](am));ba=(a3==-1)?-bm.x-(a2||0):bm.x;a8=(a0==-1)?-bm.y-(bd||0):bm.y;this.attr({x:ba,y:a8});bm.fx=a3-1;bm.fy=a0-1;}else{this.node.filterMatrix=" progid:DXImageTransform.Microsoft.Matrix(M11="[aS](a3,", M12=0, M21=0, M22=",a0,", Dx=0, Dy=0, sizingmethod='auto expand', filtertype='bilinear')");be.filter=(this.node.filterMatrix||at)+(this.node.filterOpacity||at);}}else{if(this.transformations){this.transformations[2]=at;this.node[v]("transform",this.transformations[az](am));bm.fx=0;bm.fy=0;}else{this.node.filterMatrix=at;be.filter=(this.node.filterMatrix||at)+(this.node.filterOpacity||at);}}bm.scale=[a6,a5,E,e][az](am);this._.sx=a6;this._.sy=a5;}return this;};ax[aY].clone=function(){var d=this.attr();delete d.scale;delete d.translation;return this.paper[this.type]().attr(d);};var aB=function(d,e){return function(a9,S,a0){a9=H(a9);var a5,a4,E,a1,R="",a8={},a6,a3=0;for(var a2=0,a7=a9.length;a2<a7;a2++){E=a9[a2];if(E[0]=="M"){a5=+E[1];a4=+E[2];}else{a1=n(a5,a4,E[1],E[2],E[3],E[4],E[5],E[6]);if(a3+a1>S){if(e&&!a8.start){a6=an.findDotsAtSegment(a5,a4,E[1],E[2],E[3],E[4],E[5],E[6],(S-a3)/a1);R+=["C",a6.start.x,a6.start.y,a6.m.x,a6.m.y,a6.x,a6.y];if(a0){return R;}a8.start=R;R=["M",a6.x,a6.y,"C",a6.n.x,a6.n.y,a6.end.x,a6.end.y,E[5],E[6]][az]();a3+=a1;a5=+E[5];a4=+E[6];continue;}if(!d&&!e){a6=an.findDotsAtSegment(a5,a4,E[1],E[2],E[3],E[4],E[5],E[6],(S-a3)/a1);return{x:a6.x,y:a6.y,alpha:a6.alpha};}}a3+=a1;a5=+E[5];a4=+E[6];}R+=E;}a8.end=R;a6=d?a3:e?a8:an.findDotsAtSegment(a5,a4,E[1],E[2],E[3],E[4],E[5],E[6],1);a6.alpha&&(a6={x:a6.x,y:a6.y,alpha:a6.alpha});return a6;};},n=aj(function(E,d,a0,S,a6,a5,a4,a3){var R={x:0,y:0},a2=0;for(var a1=0;a1<1.01;a1+=0.01){var e=M(E,d,a0,S,a6,a5,a4,a3,a1);a1&&(a2+=ab.sqrt(aM(R.x-e.x,2)+aM(R.y-e.y,2)));R=e;}return a2;});var ap=aB(1),C=aB(),J=aB(0,1);ax[aY].getTotalLength=function(){if(this.type!="path"){return;}return ap(this.attrs.path);};ax[aY].getPointAtLength=function(d){if(this.type!="path"){return;}return C(this.attrs.path,d);};ax[aY].getSubpath=function(i,e){if(this.type!="path"){return;}var d=J(this.attrs.path,e,1);return i?J(d,i).end:d;};an.easing_formulas={linear:function(d){return d;},"<":function(d){return aM(d,3);},">":function(d){return aM(d-1,3)+1;},"<>":function(d){d=d*2;if(d<1){return aM(d,3)/2;}d-=2;return(aM(d,3)+2)/2;},backIn:function(e){var d=1.70158;return e*e*((d+1)*e-d);},backOut:function(e){e=e-1;var d=1.70158;return e*e*((d+1)*e+d)+1;},elastic:function(i){if(i==0||i==1){return i;}var e=0.3,d=e/4;return aM(2,-10*i)*ab.sin((i-d)*(2*ab.PI)/e)+1;},bounce:function(E){var e=7.5625,i=2.75,d;if(E<(1/i)){d=e*E*E;}else{if(E<(2/i)){E-=(1.5/i);d=e*E*E+0.75;}else{if(E<(2.5/i)){E-=(2.25/i);d=e*E*E+0.9375;}else{E-=(2.625/i);d=e*E*E+0.984375;}}}return d;}};var I={length:0},aR=function(){var a2=+new Date;for(var be in I){if(be!="length"&&I[Q](be)){var bj=I[be];if(bj.stop){delete I[be];I[m]--;continue;}var a0=a2-bj.start,bb=bj.ms,ba=bj.easing,bf=bj.from,a7=bj.diff,E=bj.to,a6=bj.t,a9=bj.prev||0,a1=bj.el,R=bj.callback,a8={},d;if(a0<bb){var S=an.easing_formulas[ba]?an.easing_formulas[ba](a0/bb):a0/bb;for(var bc in bf){if(bf[Q](bc)){switch(Z[bc]){case"along":d=S*bb*a7[bc];E.back&&(d=E.len-d);var bd=C(E[bc],d);a1.translate(a7.sx-a7.x||0,a7.sy-a7.y||0);a7.x=bd.x;a7.y=bd.y;a1.translate(bd.x-a7.sx,bd.y-a7.sy);E.rot&&a1.rotate(a7.r+bd.alpha,bd.x,bd.y);break;case"number":d=+bf[bc]+S*bb*a7[bc];break;case"colour":d="rgb("+[B(O(bf[bc].r+S*bb*a7[bc].r)),B(O(bf[bc].g+S*bb*a7[bc].g)),B(O(bf[bc].b+S*bb*a7[bc].b))][az](",")+")";break;case"path":d=[];for(var bh=0,a5=bf[bc][m];bh<a5;bh++){d[bh]=[bf[bc][bh][0]];for(var bg=1,bi=bf[bc][bh][m];bg<bi;bg++){d[bh][bg]=+bf[bc][bh][bg]+S*bb*a7[bc][bh][bg];}d[bh]=d[bh][az](am);}d=d[az](am);break;case"csv":switch(bc){case"translation":var a4=a7[bc][0]*(a0-a9),a3=a7[bc][1]*(a0-a9);a6.x+=a4;a6.y+=a3;d=a4+am+a3;break;case"rotation":d=+bf[bc][0]+S*bb*a7[bc][0];bf[bc][1]&&(d+=","+bf[bc][1]+","+bf[bc][2]);break;case"scale":d=[+bf[bc][0]+S*bb*a7[bc][0],+bf[bc][1]+S*bb*a7[bc][1],(2 in E[bc]?E[bc][2]:at),(3 in E[bc]?E[bc][3]:at)][az](am);break;case"clip-rect":d=[];var bh=4;while(bh--){d[bh]=+bf[bc][bh]+S*bb*a7[bc][bh];}break;}break;}a8[bc]=d;}}a1.attr(a8);a1._run&&a1._run.call(a1);}else{if(E.along){var bd=C(E.along,E.len*!E.back);a1.translate(a7.sx-(a7.x||0)+bd.x-a7.sx,a7.sy-(a7.y||0)+bd.y-a7.sy);E.rot&&a1.rotate(a7.r+bd.alpha,bd.x,bd.y);}(a6.x||a6.y)&&a1.translate(-a6.x,-a6.y);E.scale&&(E.scale=E.scale+at);a1.attr(E);delete I[be];I[m]--;a1.in_animation=null;an.is(R,"function")&&R.call(a1);}bj.prev=a0;}}an.svg&&a1&&a1.paper.safari();I[m]&&setTimeout(aR);},B=function(d){return d>255?255:(d<0?0:d);},t=function(d,i){if(d==null){return{x:this._.tx,y:this._.ty,toString:u};}this._.tx+=+d;this._.ty+=+i;switch(this.type){case"circle":case"ellipse":this.attr({cx:+d+this.attrs.cx,cy:+i+this.attrs.cy});break;case"rect":case"image":case"text":this.attr({x:+d+this.attrs.x,y:+i+this.attrs.y});break;case"path":var e=ad(this.attrs.path);e[0][1]+=+d;e[0][2]+=+i;this.attr({path:e});break;}return this;};ax[aY].animateWith=function(e,i,d,R,E){I[e.id]&&(i.start=I[e.id].start);return this.animate(i,d,R,E);};ax[aY].animateAlong=ay();ax[aY].animateAlongBack=ay(1);function ay(d){return function(E,i,e,S){var R={back:d};an.is(e,"function")?(S=e):(R.rot=e);E&&E.constructor==ax&&(E=E.attrs.path);E&&(R.along=E);return this.animate(R,i,S);};}ax[aY].onAnimation=function(d){this._run=d||0;return this;};ax[aY].animate=function(be,a5,a4,E){if(an.is(a4,"function")||!a4){E=a4||null;}var a9={},e={},a2={};for(var a6 in be){if(be[Q](a6)){if(Z[Q](a6)){a9[a6]=this.attr(a6);(a9[a6]==null)&&(a9[a6]=j[a6]);e[a6]=be[a6];switch(Z[a6]){case"along":var bc=ap(be[a6]),a7=C(be[a6],bc*!!be.back),R=this.getBBox();a2[a6]=bc/a5;a2.tx=R.x;a2.ty=R.y;a2.sx=a7.x;a2.sy=a7.y;e.rot=be.rot;e.back=be.back;e.len=bc;be.rot&&(a2.r=W(this.rotate())||0);break;case"number":a2[a6]=(e[a6]-a9[a6])/a5;break;case"colour":a9[a6]=an.getRGB(a9[a6]);var a8=an.getRGB(e[a6]);a2[a6]={r:(a8.r-a9[a6].r)/a5,g:(a8.g-a9[a6].g)/a5,b:(a8.b-a9[a6].b)/a5};break;case"path":var S=H(a9[a6],e[a6]);a9[a6]=S[0];var a3=S[1];a2[a6]=[];for(var bb=0,a1=a9[a6][m];bb<a1;bb++){a2[a6][bb]=[0];for(var ba=1,bd=a9[a6][bb][m];ba<bd;ba++){a2[a6][bb][ba]=(a3[bb][ba]-a9[a6][bb][ba])/a5;}}break;case"csv":var d=(be[a6]+at)[z](a),a0=(a9[a6]+at)[z](a);switch(a6){case"translation":a9[a6]=[0,0];a2[a6]=[d[0]/a5,d[1]/a5];break;case"rotation":a9[a6]=(a0[1]==d[1]&&a0[2]==d[2])?a0:[0,d[1],d[2]];a2[a6]=[(d[0]-a9[a6][0])/a5,0,0];break;case"scale":be[a6]=d;a9[a6]=(a9[a6]+at)[z](a);a2[a6]=[(d[0]-a9[a6][0])/a5,(d[1]-a9[a6][1])/a5,0,0];break;case"clip-rect":a9[a6]=(a9[a6]+at)[z](a);a2[a6]=[];var bb=4;while(bb--){a2[a6][bb]=(d[bb]-a9[a6][bb])/a5;}break;}e[a6]=d;}}}}this.stop();this.in_animation=1;I[this.id]={start:be.start||+new Date,ms:a5,easing:a4,from:a9,diff:a2,to:e,el:this,callback:E,t:{x:0,y:0}};++I[m]==1&&aR();return this;};ax[aY].stop=function(){I[this.id]&&I[m]--;delete I[this.id];return this;};ax[aY].translate=function(d,e){return this.attr({translation:d+" "+e});};ax[aY][aA]=function(){return"Rapha\xebl\u2019s object";};an.ae=I;var T=function(d){this.items=[];this[m]=0;if(d){for(var e=0,E=d[m];e<E;e++){if(d[e]&&(d[e].constructor==ax||d[e].constructor==T)){this[this.items[m]]=this.items[this.items[m]]=d[e];this[m]++;}}}};T[aY][f]=function(){var R,d;for(var e=0,E=arguments[m];e<E;e++){R=arguments[e];if(R&&(R.constructor==ax||R.constructor==T)){d=this.items[m];this[d]=this.items[d]=R;this[m]++;}}return this;};T[aY].pop=function(){delete this[this[m]--];return this.items.pop();};for(var y in ax[aY]){if(ax[aY][Q](y)){T[aY][y]=(function(d){return function(){for(var e=0,E=this.items[m];e<E;e++){this.items[e][d][aW](this.items[e],arguments);}return this;};})(y);}}T[aY].attr=function(e,a0){if(e&&an.is(e,"array")&&an.is(e[0],"object")){for(var d=0,S=e[m];d<S;d++){this.items[d].attr(e[d]);}}else{for(var E=0,R=this.items[m];E<R;E++){this.items[E].attr[aW](this.items[E],arguments);}}return this;};T[aY].animate=function(S,e,a2,a1){(an.is(a2,"function")||!a2)&&(a1=a2||null);var d=this.items[m],E=d,a0=this,R;a1&&(R=function(){!--d&&a1.call(a0);});this.items[--E].animate(S,e,a2||R,R);while(E--){this.items[E].animateWith(this.items[d-1],S,e,a2||R,R);}return this;};T[aY].insertAfter=function(e){var d=this.items[m];while(d--){this.items[d].insertAfter(e);}return this;};T[aY].getBBox=function(){var d=[],a0=[],e=[],R=[];for(var E=this.items[m];E--;){var S=this.items[E].getBBox();d[f](S.x);a0[f](S.y);e[f](S.x+S.width);R[f](S.y+S.height);}d=aI[aW](0,d);a0=aI[aW](0,a0);return{x:d,y:a0,width:g[aW](0,e)-d,height:g[aW](0,R)-a0};};an.registerFont=function(e){if(!e.face){return e;}this.fonts=this.fonts||{};var E={w:e.w,face:{},glyphs:{}},i=e.face["font-family"];for(var a0 in e.face){if(e.face[Q](a0)){E.face[a0]=e.face[a0];}}if(this.fonts[i]){this.fonts[i][f](E);}else{this.fonts[i]=[E];}if(!e.svg){E.face["units-per-em"]=G(e.face["units-per-em"],10);for(var R in e.glyphs){if(e.glyphs[Q](R)){var S=e.glyphs[R];E.glyphs[R]={w:S.w,k:{},d:S.d&&"M"+S.d[aP](/[mlcxtrv]/g,function(a1){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[a1]||"M";})+"z"};if(S.k){for(var d in S.k){if(S[Q](d)){E.glyphs[R].k[d]=S.k[d];}}}}}}return e;};aT[aY].getFont=function(a2,a3,e,R){R=R||"normal";e=e||"normal";a3=+a3||{normal:400,bold:700,lighter:300,bolder:800}[a3]||400;var S=an.fonts[a2];if(!S){var E=new RegExp("(^|\\s)"+a2[aP](/[^\w\d\s+!~.:_-]/g,at)+"(\\s|$)","i");for(var d in an.fonts){if(an.fonts[Q](d)){if(E.test(d)){S=an.fonts[d];break;}}}}var a0;if(S){for(var a1=0,a4=S[m];a1<a4;a1++){a0=S[a1];if(a0.face["font-weight"]==a3&&(a0.face["font-style"]==e||!a0.face["font-style"])&&a0.face["font-stretch"]==R){break;}}}return a0;};aT[aY].print=function(R,E,d,a1,a2,bb){bb=bb||"middle";var a7=this.set(),ba=(d+at)[z](at),a8=0,a4=at,bc;an.is(a1,"string")&&(a1=this.getFont(a1));if(a1){bc=(a2||16)/a1.face["units-per-em"];var e=a1.face.bbox.split(a),a0=+e[0],a3=+e[1]+(bb=="baseline"?e[3]-e[1]+(+a1.face.descent):(e[3]-e[1])/2);for(var a6=0,S=ba[m];a6<S;a6++){var a5=a6&&a1.glyphs[ba[a6-1]]||{},a9=a1.glyphs[ba[a6]];a8+=a6?(a5.w||a1.w)+(a5.k&&a5.k[ba[a6]]||0):0;a9&&a9.d&&a7[f](this.path(a9.d).attr({fill:"#000",stroke:"none",translation:[a8,0]}));}a7.scale(bc,bc,a0,a3).translate(R-a0,E-a3);}return a7;};an.format=function(i){var e=an.is(arguments[1],"array")?[0][aS](arguments[1]):arguments,d=/\{(\d+)\}/g;i&&an.is(i,"string")&&e[m]-1&&(i=i[aP](d,function(R,E){return e[++E]==null?at:e[E];}));return i||at;};an.ninja=function(){var i=au.Raphael,d;if(l.was){au.Raphael=l.is;}else{try{delete au.Raphael;}catch(E){au.Raphael=d;}}return i;};an.el=ax[aY];return an;})();
\ No newline at end of file
index a52a6d4..7c8f852 100644 (file)
@@ -1,5 +1,5 @@
 /*!
- * Raphael 1.3.0dev - JavaScript Vector Library
+ * Raphael 1.3.0 - JavaScript Vector Library
  *
  * Copyright (c) 2008 - 2009 Dmitry Baranovskiy (http://raphaeljs.com)
  * Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) license.
@@ -61,7 +61,7 @@ window.Raphael = (function () {
         availableAttrs = {"clip-rect": "0 0 1e9 1e9", cursor: "default", cx: 0, cy: 0, fill: "#fff", "fill-opacity": 1, font: '10px "Arial"', "font-family": '"Arial"', "font-size": "10", "font-style": "normal", "font-weight": 400, gradient: 0, height: 0, href: "http://raphaeljs.com/", opacity: 1, path: "M0,0", r: 0, rotation: 0, rx: 0, ry: 0, scale: "1 1", src: "", stroke: "#000", "stroke-dasharray": "", "stroke-linecap": "butt", "stroke-linejoin": "butt", "stroke-miterlimit": 0, "stroke-opacity": 1, "stroke-width": 1, target: "_blank", "text-anchor": "middle", title: "Raphael", translation: "0 0", width: 0, x: 0, y: 0},
         availableAnimAttrs = {along: "along", "clip-rect": "csv", cx: nu, cy: nu, fill: "colour", "fill-opacity": nu, "font-size": nu, height: nu, opacity: nu, path: "path", r: nu, rotation: "csv", rx: nu, ry: nu, scale: "csv", stroke: "colour", "stroke-opacity": nu, "stroke-width": nu, translation: "csv", width: nu, x: nu, y: nu},
         rp = "replace";
-    R.version = "1.3.0dev";
+    R.version = "1.3.0";
     R.type = (win.SVGAngle || doc.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure", "1.1") ? "SVG" : "VML");
     if (R.type == "VML") {
         var d = document.createElement("div");
@@ -1616,10 +1616,10 @@ window.Raphael = (function () {
     // VML
     if (R.vml) {
         var path2vml = function (path) {
-            var total =  /[ahqtv]/ig,
+            var total =  /[ahqstv]/ig,
                 command = pathToAbsolute;
             (path + E).match(total) && (command = path2curve);
-            total =  /[clmz]/g;
+            total = /[clmz]/g;
             if (command == pathToAbsolute && !(path + E).match(total)) {
                 var map = {M: "m", L: "l", C: "c", Z: "x", m: "t", l: "r", c: "v", z: "x"},
                     bites = /([clmz]),?([^clmz]*)/gi,
@@ -2909,8 +2909,8 @@ window.Raphael = (function () {
                 to[attr] = params[attr];
                 switch (availableAnimAttrs[attr]) {
                     case "along":
-                        var len = params[attr].getTotalLength(),
-                            point = params[attr].getPointAtLength(len * !!params.back),
+                        var len = getTotalLength(params[attr]),
+                            point = getPointAtLength(params[attr], len * !!params.back),
                             bb = this.getBBox();
                         diff[attr] = len / ms;
                         diff.tx = bb.x;
index 49e9b6d..cb0d129 100644 (file)
                         </ol>
                         <h4>Usage</h4>
                         <pre class="javascript code"><code>// Each of the following examples create a canvas that is 320px wide by 200px high
-// Canvas is created at the viewport's 10,50 coordinate
+// Canvas is created at the viewports 10,50 coordinate
 var paper = Raphael(10, 50, 320, 200);
-// Canvas is created at the top left corner of the #notepad element (or its top right corner in dir="rtl" elements)
+// Canvas is created at the top left corner of the #notepad element
+// (or its top right corner in dir="rtl" elements)
 var paper = Raphael(document.getElementById("notepad"), 320, 200);
 // Same as above
 var paper = Raphael("notepad", 320, 200);
 // Image dump
-var set = Raphael(["notepad", 320, 200, {type: "rect", x: 10, y: 10, width: 25, height: 25, stroke: "#f00"}, {type: "text", x: 30, y: 40, text: "Dump"}]);</code></pre>
+var set = Raphael(["notepad", 320, 200, {
+    type: "rect",
+    x: 10,
+    y: 10,
+    width: 25,
+    height: 25,
+    stroke: "#f00"
+}, {
+    type: "text",
+    x: 30,
+    y: 40,
+    text: "Dump"
+}]);</code></pre>
+                        <h3 id="circle">
+                            circle
+                        </h3>
+                        <div class="sample" id="circle-sample"></div>
+                        <p>
+                            Draws a circle.
+                        </p>
+                        <h4>Parameters</h4>
+                        <ol>
+                            <li>x <em>number</em> X coordinate of the centre</li>
+                            <li>y <em>number</em> Y coordinate of the centre</li>
+                            <li>r <em>number</em> radius</li>
+                        </ol>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>var c = paper.circle(50, 50, 40);</code></pre>
+                        <h3 id="rect">
+                            rect
+                        </h3>
+                        <div class="sample" id="rect-sample"></div>
+                        <p>
+                            Draws a rectangle.
+                        </p>
+                        <h4>Parameters</h4>
+                        <ol>
+                            <li>x <em>number</em> X coordinate of top left corner</li>
+                            <li>y <em>number</em> Y coordinate of top left corner</li>
+                            <li>width <em>number</em></li>
+                            <li>height <em>number</em></li>
+                            <li>r <em>number</em> [optional] radius for rounded corners, default is 0</li>
+                        </ol>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>// regular rectangle</code>
+<code>var c = paper.rect(10, 10, 50, 50);</code>
+<code>// rectangle with rounded corners</code>
+<code>var c = paper.rect(40, 40, 50, 50, 10);</code></pre>
+                        <h3 id="ellipse">
+                            ellipse
+                        </h3>
+                        <div class="sample" id="ellipse-sample"></div>
+                        <p>
+                            Draws an ellipse.
+                        </p>
+                        <h4>Parameters</h4>
+                        <ol>
+                            <li>x <em>number</em> X coordinate of the centre</li>
+                            <li>y <em>number</em> X coordinate of the centre</li>
+                            <li>rx <em>number</em> Horisontal radius</li>
+                            <li>ry <em>number</em> Vertical radius</li>
+                        </ol>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>var c = paper.ellipse(50, 50, 40, 20);</code></pre>
+                        <h3 id="image">
+                            image
+                        </h3>
+                        <div class="sample" id="image-sample"></div>
+                        <p>
+                            Embeds an image into the SVG/VML canvas.
+                        </p>
+                        <h4>Parameters</h4>
+                        <ol>
+                            <li>src <em>string</em> URI of the source image</li>
+                            <li>x <em>number</em> X coordinate position</li>
+                            <li>y <em>number</em> Y coordinate position</li>
+                            <li>width <em>number</em> Width of the image</li>
+                            <li>height <em>number</em> Height of the image</li>
+                        </ol>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>var c = paper.image("apple.png", 10, 10, 80, 80);</code></pre>
+                        <h3 id="set">
+                            set
+                        </h3>
+                        <div class="sample" id="set-sample"></div>
+                        <p>
+                            Creates array-like object to keep and operate couple of elements at once. Warning: it doesn’t create any elements for itself in the page.
+                        </p>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>var st = paper.set();</code>
+<code>st.push(
+    paper.circle(10, 10, 5),
+    paper.circle(30, 10, 5)
+);</code>
+<code>st.attr({fill: "red"});</code></pre>
+                        <h3 id="text">
+                            text
+                        </h3>
+                        <div class="sample" id="text-sample"></div>
+                        <p>
+                            Draws a text string. If you need line breaks, put “\n” in the string.
+                        </p>
+                        <h4>Parameters</h4>
+                        <ol>
+                            <li>x <em>number</em> X coordinate position.</li>
+                            <li>y <em>number</em> Y coordinate position.</li>
+                            <li>text <em>string</em> The text string to draw.</li>
+                        </ol>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>var t = paper.text(50, 50, "Raphaël\nkicks\nbutt!");</code></pre>
+                        <h3 id="path">
+                            path
+                        </h3>
+                        <div class="sample" id="path-sample"></div>
+                        <p>
+                            Creates a path element by given path data string.
+                        </p>
+                        <h4>Parameters</h4>
+                        <ol>
+                            <li>pathString <em>string</em> [optional] Path data in <a href="http://www.w3.org/TR/SVG/paths.html#PathData" title="Details of a path's data attribute's format are described in the SVG specification.">SVG path string format</a>.</li>
+                        </ol>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>var c = paper.path("M10 10L90 90");
+// draw a diagonal line:
+// move to 10,10, line to 90,90</code></pre>
                         <h2 id="Element">
                             Element’s generic methods
                         </h2>
@@ -77,8 +202,11 @@ var set = Raphael(["notepad", 320, 200, {type: "rect", x: 10, y: 10, width: 25,
                             Gives you a reference to the DOM object, so you can assign event handlers or just mess around.
                         </p>
                         <h4>Usage</h4>
-                        <pre class="javascript code"><code>var c = paper.circle(10, 10, 10); // draw a circle at coordinate 10,10 with radius of 10
-c.node.onclick = function () { c.attr("fill", "red"); };</code></pre>
+                        <pre class="javascript code"><code>// draw a circle at coordinate 10,10 with radius of 10
+var c = paper.circle(10, 10, 10);
+c.node.onclick = function () {
+    c.attr("fill", "red");
+};</code></pre>
                         <h3 id="paper">
                             paper
                         </h3>
@@ -88,7 +216,8 @@ c.node.onclick = function () { c.attr("fill", "red"); };</code></pre>
                         <h4>Usage</h4>
                         <pre class="javascript code"><code>Raphael.el.cross = function () {
     this.attr({fill: "red"});
-    this.paper.path("M10,10L50,50M50,10L10,50").attr({stroke: "red"});
+    this.paper.path("M10,10L50,50M50,10L10,50")
+        .attr({stroke: "red"});
 }</code></pre>
                         <h3 id="remove">
                             remove
@@ -151,7 +280,8 @@ c.rotate(45, true);  // rotation is absolute</code></pre>
                         </ol>
                         <h4>Usage</h4>
                         <pre class="javascript code"><code>var c = paper.circle(10, 10, 10);
-c.translate(10, 10); // moves the circle down the canvas, in a diagonal line</code></pre>
+// moves the circle 10&nbsp;px to the right and down
+c.translate(10, 10);</code></pre>
                         <h3 id="scale">
                             scale
                         </h3>
@@ -167,8 +297,10 @@ c.translate(10, 10); // moves the circle down the canvas, in a diagonal line</co
                         </ol>
                         <h4>Usage</h4>
                         <pre class="javascript code"><code>var c = paper.circle(10, 10, 10);
-c.scale(1.5, 1.5); // makes the circle 1.5 times larger
-c.scale(.5, .75);  // makes the circle half as wide, and 75% as high</code></pre>
+// makes the circle 1.5 times larger
+c.scale(1.5, 1.5);
+// makes the circle half as wide, and 75% as high
+c.scale(.5, .75);</code></pre>
                         <h3 id="attr">
                             attr
                         </h3>
@@ -203,8 +335,8 @@ c.scale(.5, .75);  // makes the circle half as wide, and 75% as high</code></pre
                             <li id="attr-fill">
                                 fill <em>colour</em> or <em>gradient</em>
                                 <ul>
-                                    <li>linear gradient: “‹angle›-‹colour›[-‹colour›[:‹offset›]]*-‹colour›”, example: <samp>"90-#fff-#000"</samp> – 90° gradient from white to black or <samp>"0-#fff-#f00:20-#000"</samp> – 0° gradient from white via red (at 20%) to black</li>
-                                    <li>radial gradient: “r[(‹fx›, ‹fy›)]‹colour›[-‹colour›[:‹offset›]]*-‹colour›”, example: <samp>“r#fff-#000”</samp> – gradient from white to black or <samp>“r(0.25, 0.75)#fff-#000”</samp> – gradient from white to black with focus point at 0.25, 0.75</li>
+                                    <li>linear gradient: “‹angle›-‹colour›[-‹colour›[:‹offset›]]*-‹colour›”, example: “<samp>90-#fff-#000</samp>” – 90° gradient from white to black or “<samp>0-#fff-#f00:20-#000</samp>” – 0° gradient from white via red (at 20%) to black</li>
+                                    <li>radial gradient: “r[(‹fx›, ‹fy›)]‹colour›[-‹colour›[:‹offset›]]*-‹colour›”, example: “<samp>r#fff-#000</samp>” – gradient from white to black or “<samp>r(0.25, 0.75)#fff-#000</samp>” – gradient from white to black with focus point at 0.25, 0.75</li>
                                     <li>Focus point coordinates are in 0..1 range</li>
                                     <li>Radial gradients can only be applied to circles and ellipses</li>
                                 </ul>
@@ -224,9 +356,9 @@ c.scale(.5, .75);  // makes the circle half as wide, and 75% as high</code></pre
                             <li id="attr-scale">scale <em>string</em> comma or space separated values: xtimes, ytimes, cx, cy. See: <a href="#scale">scale</a></li>
                             <li id="attr-src">src <em>string</em> (URL)</li>
                             <li id="attr-stroke">stroke <em>colour</em></li>
-                            <li id="attr-stroke-dasharray">stroke-dasharray <em>string</em> [“”, “-”, “.”, “-.”, “-..”, “. ”, “- ”, “--”, “- .”, “--.”, “--..”]</li>
-                            <li id="attr-stroke-linecap">stroke-linecap <em>string</em> [“butt”, “square”, “round”]</li>
-                            <li id="attr-stroke-linejoin">stroke-linejoin <em>string</em> [“butt”, “square”, “round”, “miter”]</li>
+                            <li id="attr-stroke-dasharray">stroke-dasharray <em>string</em> [“”, “<samp>-</samp>”, “<samp>.</samp>”, “<samp>-.</samp>”, “<samp>-..</samp>”, “<samp>. </samp>”, “<samp>- </samp>”, “<samp>--</samp>”, “<samp>-&nbsp;.</samp>”, “<samp>--.</samp>”, “<samp>--..</samp>”]</li>
+                            <li id="attr-stroke-linecap">stroke-linecap <em>string</em> [“<samp>butt</samp>”, “<samp>square</samp>”, “<samp>round</samp>”]</li>
+                            <li id="attr-stroke-linejoin">stroke-linejoin <em>string</em> [“<samp>bevel</samp>”, “<samp>round</samp>”, “<samp>miter</samp>”]</li>
                             <li id="attr-stroke-miterlimit">stroke-miterlimit <em>number</em></li>
                             <li id="attr-stroke-opacity">stroke-opacity <em>number</em></li>
                             <li id="attr-stroke-width">stroke-width <em>number</em></li>
@@ -237,9 +369,15 @@ c.scale(.5, .75);  // makes the circle half as wide, and 75% as high</code></pre
                         </ul>
                         <h4>Usage</h4>
                         <pre class="javascript code"><code>var c = paper.circle(10, 10, 10);
-c.attr("fill", "black");                              // using strings
-c.attr({fill: "#000", stroke: "#f00", opacity: 0.5}); // using params object
-c.attr({fill: "90-#fff-#000", "stroke-dasharray": "-..", "clip-rect": "10, 10, 100, 100"});</code></pre>
+// using strings
+c.attr("fill", "black");
+// using params object
+c.attr({fill: "#000", stroke: "#f00", opacity: 0.5});
+c.attr({
+    fill: "90-#fff-#000",
+    "stroke-dasharray": "-..",
+    "clip-rect": "10, 10, 100, 100"
+});</code></pre>
                         <h3 id="animate">
                             animate
                         </h3>
@@ -256,7 +394,7 @@ c.attr({fill: "90-#fff-#000", "stroke-dasharray": "-..", "clip-rect": "10, 10, 1
                         <ol>
                             <li>newAttrs <em>object</em> A parameters object of the animation results. (Not all attributes can be animated.)</li>
                             <li>ms <em>number</em> The duration of the animation, given in milliseconds.</li>
-                            <li>easing <em>string</em> [“>”, “&lt;”, “&lt;&gt;”, “backIn”, “backOut”, “bounce”, “elastic”] or <em>function</em> [optional]</li>
+                            <li>easing <em>string</em> [“<samp>></samp>”, “<samp>&lt;</samp>”, “<samp>&lt;></samp>”, “<samp>backIn</samp>”, “<samp>backOut</samp>”, “<samp>bounce</samp>”, “<samp>elastic</samp>”] or <em>function</em> [optional]</li>
                             <li>callback <em>function</em> [optional]</li>
                         </ol>
                         <h4>Attributes that can be animated</h4>
@@ -308,6 +446,7 @@ r.animateWith(c, {x: 20}, 2000);</code></pre>
                         <h3 id="animateAlong">
                             animateAlong
                         </h3>
+                        <div class="sample" id="along-sample"></div>
                         <p>
                             Animates element along the given path. As an option it could rotate element along the path.
                         </p>
@@ -326,15 +465,34 @@ r.animateWith(c, {x: 20}, 2000);</code></pre>
             e.attr({rx: 4, ry: 4});
         });
     });</code></pre>
-                        <h3 id="toFront">
-                            toFront
+                        <h3 id="animateAlongBack">
+                            animateAlongBack
                         </h3>
                         <p>
-                            Moves the element so it is the closest to the viewer’s eyes, on top of other elements.
+                            Similar to <a href="animateAlong"><code>animateAlong</code></a>. Animates element along the given path, starting from the end of it.
+                        </p>
+                        <h3 id="onAnimation">
+                            onAnimation
+                        </h3>
+                        <div class="sample" id="onanim-sample"></div>
+                        <p>
+                            Sets or resets the function that will be called on each stage of the animation.
                         </p>
+                        <h4>Parameters</h4>
+                        <ol>
+                            <li>f <em>function</em> function that will be called on each stage of animation</li>
+                        </ol>
                         <h4>Usage</h4>
-                        <pre class="javascript code"><code>var c = paper.circle(10, 10, 10);</code>
-<code>c.toFront();</code></pre>
+                        <pre class="javascript code"><code>var p = r.path("M10,50c0,50,80-50,80,0c0,50-80-50-80,0z"),
+    p2 = r.path(),
+    e = r.ellipse(10, 50, 4, 4).attr({stroke: "none", fill: "#f00"}).onAnimation(function () {
+        p2.attr({path: "M50,10L" + e.attr("cx") + "," + e.attr("cy")});
+    }),
+    b = r.rect(0, 0, 620, 400).attr({stroke: "none", fill: "#000", opacity: 0}).click(function () {
+        e.attr({rx: 5, ry: 3}).animateAlong(p, 4000, true, function () {
+            e.attr({rx: 4, ry: 4});
+        });
+    });</code></pre>
                         <h3 id="getBBox">
                             getBBox
                         </h3>
@@ -419,6 +577,7 @@ var c = r.clone();</code></pre>
                         <h3 id="getPointAtLength">
                             getPointAtLength
                         </h3>
+                        <div class="sample" id="point-sample"></div>
                         <p>
                             Path specific method. Returns point description at given length.
                         </p>
@@ -427,7 +586,7 @@ var c = r.clone();</code></pre>
                             <li>length <em>number</em> length in pixels from the beginining of the path to the point</li>
                         </ol>
                         <h4>Usage</h4>
-                        <pre class="javascript code"><code>var p = r.path("M100,100c0,50 100-50 100,0c0,50 -100-50 -100,0z");
+                        <pre class="javascript code"><code>var p = r.path("M10,50c0,50,80-50,80,0c0,50-80-50-80,0z");
     var point = p.getPointAtLength(30);
     r.circle(point.x, point.y, 3);</code></pre>
                         <p>Returned object format:</p>
@@ -436,6 +595,22 @@ var c = r.clone();</code></pre>
                             <li>y – y coordinate of the point</li>
                             <li>alpha – angle of the path at the point</li>
                         </ul>
+                        <h3 id="getSubpath">
+                            getSubpath
+                        </h3>
+                        <div class="sample" id="subpath-sample"></div>
+                        <p>
+                            Path specific method. Returns the subpath string of a given path.
+                        </p>
+                        <h4>Parameters</h4>
+                        <ol>
+                            <li>from <em>number</em> length in pixels from the beginining of the path to the beginining of the subpath</li>
+                            <li>to <em>number</em> length in pixels from the beginining of the path to the end of the subpath</li>
+                        </ol>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>var p = r.path("M10,50c0,50,80-50,80,0c0,50-80-50-80,0z");
+    var path = p.getSubpath(10, 60);
+    r.path(path).attr({stroke: "#f00"});</code></pre>
                         <h3 id="setSize">
                             setSize
                         </h3>
@@ -533,114 +708,6 @@ var c = r.clone();</code></pre>
                         <pre class="javascript code"><code>var txt = r.print(10, 50, "print", r.getFont("Museo"), 30).attr({fill: "#fff"});
 // following line will paint first letter in red
 txt[0].attr({fill: "#f00"});</code></pre>
-                        <h3 id="circle">
-                            circle
-                        </h3>
-                        <div class="sample" id="circle-sample"></div>
-                        <p>
-                            Draws a circle.
-                        </p>
-                        <h4>Parameters</h4>
-                        <ol>
-                            <li>x <em>number</em> X coordinate of the centre</li>
-                            <li>y <em>number</em> Y coordinate of the centre</li>
-                            <li>r <em>number</em> radius</li>
-                        </ol>
-                        <h4>Usage</h4>
-                        <pre class="javascript code"><code>var c = paper.circle(50, 50, 40);</code></pre>
-                        <h3 id="rect">
-                            rect
-                        </h3>
-                        <div class="sample" id="rect-sample"></div>
-                        <p>
-                            Draws a rectangle.
-                        </p>
-                        <h4>Parameters</h4>
-                        <ol>
-                            <li>x <em>number</em> X coordinate of top left corner</li>
-                            <li>y <em>number</em> Y coordinate of top left corner</li>
-                            <li>width <em>number</em></li>
-                            <li>height <em>number</em></li>
-                            <li>r <em>number</em> [optional] radius for rounded corners, default is 0</li>
-                        </ol>
-                        <h4>Usage</h4>
-                        <pre class="javascript code"><code>// regular rectangle</code>
-<code>var c = paper.rect(10, 10, 50, 50);</code>
-<code>// rectangle with rounded corners</code>
-<code>var c = paper.rect(40, 40, 50, 50, 10);</code></pre>
-                        <h3 id="ellipse">
-                            ellipse
-                        </h3>
-                        <div class="sample" id="ellipse-sample"></div>
-                        <p>
-                            Draws an ellipse.
-                        </p>
-                        <h4>Parameters</h4>
-                        <ol>
-                            <li>x <em>number</em> X coordinate of the centre</li>
-                            <li>y <em>number</em> X coordinate of the centre</li>
-                            <li>rx <em>number</em> Horisontal radius</li>
-                            <li>ry <em>number</em> Vertical radius</li>
-                        </ol>
-                        <h4>Usage</h4>
-                        <pre class="javascript code"><code>var c = paper.ellipse(50, 50, 40, 20);</code></pre>
-                        <h3 id="image">
-                            image
-                        </h3>
-                        <div class="sample" id="image-sample"></div>
-                        <p>
-                            Embeds an image into the SVG/VML canvas.
-                        </p>
-                        <h4>Parameters</h4>
-                        <ol>
-                            <li>src <em>string</em> URI of the source image</li>
-                            <li>x <em>number</em> X coordinate position</li>
-                            <li>y <em>number</em> Y coordinate position</li>
-                            <li>width <em>number</em> Width of the image</li>
-                            <li>height <em>number</em> Height of the image</li>
-                        </ol>
-                        <h4>Usage</h4>
-                        <pre class="javascript code"><code>var c = paper.image("apple.png", 10, 10, 80, 80);</code></pre>
-                        <h3 id="set">
-                            set
-                        </h3>
-                        <div class="sample" id="set-sample"></div>
-                        <p>
-                            Creates array-like object to keep and operate couple of elements at once. Warning: it doesn’t create any elements for itself in the page.
-                        </p>
-                        <h4>Usage</h4>
-                        <pre class="javascript code"><code>var st = paper.set();</code>
-<code>st.push(paper.circle(10, 10, 5), paper.circle(30, 10, 5));</code>
-<code>st.attr({fill: "red"});</code></pre>
-                        <h3 id="text">
-                            text
-                        </h3>
-                        <div class="sample" id="text-sample"></div>
-                        <p>
-                            Draws a text string. If you need line breaks, put “\n” in the string.
-                        </p>
-                        <h4>Parameters</h4>
-                        <ol>
-                            <li>x <em>number</em> X coordinate position.</li>
-                            <li>y <em>number</em> Y coordinate position.</li>
-                            <li>text <em>string</em> The text string to draw.</li>
-                        </ol>
-                        <h4>Usage</h4>
-                        <pre class="javascript code"><code>var t = paper.text(50, 50, "Raphaël\nkicks\nbutt!");</code></pre>
-                        <h3 id="path">
-                            path
-                        </h3>
-                        <div class="sample" id="path-sample"></div>
-                        <p>
-                            Initialises path drawing. You can specify a path by supplying the path data as a second argument.
-                        </p>
-                        <h4>Parameters</h4>
-                        <ol>
-                            <li>pathString <em>string</em> [optional] Path data in <a href="http://www.w3.org/TR/SVG/paths.html#PathData" title="Details of a path's data attribute's format are described in the SVG specification.">SVG path string format</a>.</li>
-                        </ol>
-                        <h4>Usage</h4>
-                        <pre class="javascript code"><code>var c = paper.path("M10 10L90 90");
-// draw a diagonal line: move to 10,10, line to 90,90</code></pre>
                         <h3 id="plugins-canvas">
                             Adding your own methods to canvas
                         </h3>
@@ -649,7 +716,7 @@ txt[0].attr({fill: "#f00"});</code></pre>
                         </p>
                         <h4>Usage</h4>
                         <pre class="javascript code"><code>Raphael.fn.arrow = function (x1, y1, x2, y2, size) {
-    return this.path(// some code here);
+    return this.path( ... );
 };
 // or create namespace
 Raphael.fn.mystuff = {
@@ -683,18 +750,21 @@ paper.circle(100, 100, 20).red();
                             You could specify colour in this formats:
                         </p>
                         <ul>
-                            <li>Colour name (“red”, “green”, “cornflowerblue”, etc)</li>
-                            <li>#••• — shortened HTML colour: (“#000”, “#fc0”, etc)</li>
-                            <li>#•••••• — full length HTML colour: (“#000000”, “#bd2300”)</li>
-                            <li>rgb(•••, •••, •••) — red, green and blue channels’ values: (“rgb(200, 100, 0)”)</li>
-                            <li>rgb(•••%, •••%, •••%) — same as above, but in %: (“rgb(100%, 175%, 0%)”)</li>
-                            <li>hsb(•••, •••, •••) — hue, saturation and brightness values: (“hsb(0.5, 0.25, 1)”)</li>
+                            <li>Colour name (“<samp>red</samp>”, “<samp>green</samp>”, “<samp>cornflowerblue</samp>”, etc)</li>
+                            <li>#••• — shortened HTML colour: (“<samp>#000</samp>”, “<samp>#fc0</samp>”, etc)</li>
+                            <li>#•••••• — full length HTML colour: (“<samp>#000000</samp>”, “<samp>#bd2300</samp>”)</li>
+                            <li>rgb(•••, •••, •••) — red, green and blue channels’ values: (“<samp>rgb(200,&nbsp;100,&nbsp;0)</samp>”)</li>
+                            <li>rgb(•••%, •••%, •••%) — same as above, but in %: (“<samp>rgb(100%,&nbsp;175%,&nbsp;0%)</samp>”)</li>
+                            <li>hsb(•••, •••, •••) — hue, saturation and brightness values: (“<samp>hsb(0.5,&nbsp;0.25,&nbsp;1)</samp>”)</li>
                             <li>hsb(•••%, •••%, •••%) — same as above, but in %</li>
                             <li>hsl(•••, •••, •••) — same as hsb</li>
                             <li>hsl(•••%, •••%, •••%) — same as hsb</li>
                         </ul>
                         <h4>Usage</h4>
-                        <pre class="javascript code"><code>paper.circle(100, 100, 20).attr({fill: "hsb(1, 255, 200)", stroke: "red"});</code></pre>
+                        <pre class="javascript code"><code>paper.circle(100, 100, 20).attr({
+    fill: "hsb(1, 255, 200)",
+    stroke: "red"
+});</code></pre>
                         <h3 id="safari">
                             safari
                         </h3>
@@ -715,6 +785,42 @@ paper.circle(100, 100, 20).red();
     …
 })(Raphael.ninja());
 </code></pre>
+                        <h3 id="events">
+                            Events
+                        </h3>
+                        <p>
+                            You can attach events to elements by using element.node and your favourite library (<samp>$(circle.node).click(…)</samp>) or you can use built-in methods:
+                        </p>
+                        <h4>Usage</h4>
+                        <pre class="javascript code"><code>element.click(function (event) {
+    this.attr({fill: "red"});
+});
+element.dblclick(function (event) {
+    this.attr({fill: "red"});
+});
+element.mousedown(function (event) {
+    this.attr({fill: "red"});
+});
+element.mousemove(function (event) {
+    this.attr({fill: "red"});
+});
+element.mouseout(function (event) {
+    this.attr({fill: "red"});
+});
+element.mouseover(function (event) {
+    this.attr({fill: "red"});
+});
+element.mouseup(function (event) {
+    this.attr({fill: "red"});
+});
+element.hover(function (event) {
+    this.attr({fill: "red"});
+}, function (event) {
+    this.attr({fill: "black"});
+});</code></pre>
+                        <p>
+                            To unbind events use the same method names with “un” prefix, i.e. <samp>element.unclick(f);</samp>
+                        </p>
                     </div>
                     <div id="column-2">
                         <h2>
@@ -727,6 +833,27 @@ paper.circle(100, 100, 20).red();
                             <li>
                                 <a href="#Raphael"><code>Raphael</code></a>
                             </li>
+                            <li>
+                                <a href="#circle"><code>circle</code></a>
+                            </li>
+                            <li>
+                                <a href="#rect"><code>rect</code></a>
+                            </li>
+                            <li>
+                                <a href="#ellipse"><code>ellipse</code></a>
+                            </li>
+                            <li>
+                                <a href="#image"><code>image</code></a>
+                            </li>
+                            <li>
+                                <a href="#set"><code>set</code></a>
+                            </li>
+                            <li>
+                                <a href="#text"><code>text</code></a>
+                            </li>
+                            <li>
+                                <a href="#path"><code>path</code></a>
+                            </li>
                             <li>
                                 <a href="#node"><code>node</code></a>
                             </li>
@@ -763,6 +890,9 @@ paper.circle(100, 100, 20).red();
                             <li>
                                 <a href="#animateAlong"><code>animateAlong</code></a>
                             </li>
+                            <li>
+                                <a href="#animateAlongBack"><code>animateAlongBack</code></a>
+                            </li>
                             <li>
                                 <a href="#getBBox"><code>getBBox</code></a>
                             </li>
@@ -791,7 +921,7 @@ paper.circle(100, 100, 20).red();
                                 <a href="#getPointAtLength"><code>getPointAtLength</code></a>
                             </li>
                             <li>
-                                <a href="#getSubpathsAtLength"><code>getSubpathsAtLength</code></a>
+                                <a href="#getSubpath"><code>getSubpath</code></a>
                             </li>
                             <li>
                                 <a href="#setSize"><code>setSize</code></a>
@@ -817,27 +947,6 @@ paper.circle(100, 100, 20).red();
                             <li>
                                 <a href="#print"><code>print</code></a>
                             </li>
-                            <li>
-                                <a href="#circle"><code>circle</code></a>
-                            </li>
-                            <li>
-                                <a href="#rect"><code>rect</code></a>
-                            </li>
-                            <li>
-                                <a href="#ellipse"><code>ellipse</code></a>
-                            </li>
-                            <li>
-                                <a href="#image"><code>image</code></a>
-                            </li>
-                            <li>
-                                <a href="#set"><code>set</code></a>
-                            </li>
-                            <li>
-                                <a href="#text"><code>text</code></a>
-                            </li>
-                            <li>
-                                <a href="#path"><code>path</code></a>
-                            </li>
                             <li>
                                 <a href="#plugins-canvas">Adding your own methods to canvas</a>
                             </li>
@@ -853,6 +962,9 @@ paper.circle(100, 100, 20).red();
                             <li>
                                 <a href="#ninja-mode">“Ninja Mode”</a>
                             </li>
+                            <li>
+                                <a href="#events">Events</a>
+                            </li>
                         </ul>
                     </div>
                     <div  id="footer">
@@ -877,4 +989,4 @@ paper.circle(100, 100, 20).red();
         pageTracker._trackPageview();
         </script>
     </body>
-</html>
+</html>
\ No newline at end of file