Fiz for couple IE bugs, Set.clone added
[raphael] / raphael-min.js
1 /*
2  * Raphael 1.3.2 - JavaScript Vector Library
3  *
4  * Copyright (c) 2009 Dmitry Baranovskiy (http://raphaeljs.com)
5  * Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) license.
6  */
7 Raphael=(function(){var a=/[, ]+/,aS=/^(circle|rect|path|ellipse|text|image)$/,T="hasOwnProperty",M=document,ax=window,l={was:ax[T]("Raphael"),is:ax.Raphael},ap=function(){if(ap.is(arguments[0],"array")){var d=arguments[0],e=w[a0](ap,d.splice(0,3+ap.is(d[0],am))),S=e.set();for(var R=0,a5=d[m];R<a5;R++){var E=d[R]||{};aS.test(E.type)&&S[f](e[E.type]().attr(E));}return S;}return w[a0](ap,arguments);},aX=function(){},aP="appendChild",a0="apply",aW="concat",aw="",ao=" ",z="split",G="click dblclick mousedown mousemove mouseout mouseover mouseup"[z](ao),aD="join",m="length",a2="prototype",a4=String[a2].toLowerCase,ac=Math,g=ac.max,aM=ac.min,am="number",aE="toString",aA=Object[a2][aE],aU={},aQ=ac.pow,f="push",aY=/^(?=[\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,P=ac.round,v="setAttribute",X=parseFloat,H=parseInt,aR=String[a2].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},aa={along:"along","clip-rect":"csv",cx:am,cy:am,fill:"colour","fill-opacity":am,"font-size":am,height:am,opacity:am,path:"path",r:am,rotation:"csv",rx:am,ry:am,scale:"csv",stroke:"colour","stroke-opacity":am,"stroke-width":am,translation:"csv",width:am,x:am,y:am},aT="replace";ap.version="1.3.2";ap.type=(ax.SVGAngle||M.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")?"SVG":"VML");if(ap.type=="VML"){var ah=document.createElement("div");ah.innerHTML="<!--[if vml]><br><br><![endif]-->";if(ah.childNodes[m]!=2){return null;}}ap.svg=!(ap.vml=ap.type=="VML");aX[a2]=ap[a2];ap._id=0;ap._oid=0;ap.fn={};ap.is=function(e,d){d=a4.call(d);return((d=="object"||d=="undefined")&&typeof e==d)||(e==null&&d=="null")||a4.call(aA.call(e).slice(8,-1))==d;};ap.setWindow=function(d){ax=d;M=ax.document;};var aH=function(e){if(ap.vml){var d=/^\s+|\s+$/g;aH=ak(function(R){var S;R=(R+aw)[aT](d,aw);try{var a5=new ActiveXObject("htmlfile");a5.write("<body>");a5.close();S=a5.body;}catch(a7){S=createPopup().document.body;}var i=S.createTextRange();try{S.style.color=R;var a6=i.queryCommandValue("ForeColor");a6=((a6&255)<<16)|(a6&65280)|((a6&16711680)>>>16);return"#"+("000000"+a6[aE](16)).slice(-6);}catch(a7){return"none";}});}else{var E=M.createElement("i");E.title="Rapha\xebl Colour Picker";E.style.display="none";M.body[aP](E);aH=ak(function(i){E.style.color=i;return M.defaultView.getComputedStyle(E,aw).getPropertyValue("color");});}return aH(e);};ap.hsb2rgb=ak(function(a8,a6,bc){if(ap.is(a8,"object")&&"h" in a8&&"s" in a8&&"b" in a8){bc=a8.b;a6=a8.s;a8=a8.h;}var R,S,bd;if(bc==0){return{r:0,g:0,b:0,hex:"#000"};}if(a8>1||a6>1||bc>1){a8/=255;a6/=255;bc/=255;}var a5=~~(a8*6),a9=(a8*6)-a5,E=bc*(1-a6),e=bc*(1-(a6*a9)),be=bc*(1-(a6*(1-a9)));R=[bc,e,E,E,be,bc,bc][a5];S=[be,bc,bc,e,E,E,be][a5];bd=[E,E,be,bc,bc,e,E][a5];R*=255;S*=255;bd*=255;var ba={r:R,g:S,b:bd},d=(~~R)[aE](16),a7=(~~S)[aE](16),bb=(~~bd)[aE](16);d=d[aT](aY,"0");a7=a7[aT](aY,"0");bb=bb[aT](aY,"0");ba.hex="#"+d+a7+bb;return ba;},ap);ap.rgb2hsb=ak(function(d,e,a6){if(ap.is(d,"object")&&"r" in d&&"g" in d&&"b" in d){a6=d.b;e=d.g;d=d.r;}if(ap.is(d,"string")){var a8=ap.getRGB(d);d=a8.r;e=a8.g;a6=a8.b;}if(d>1||e>1||a6>1){d/=255;e/=255;a6/=255;}var a5=g(d,e,a6),i=aM(d,e,a6),R,E,S=a5;if(i==a5){return{h:0,s:0,b:a5};}else{var a7=(a5-i);E=a7/a5;if(d==a5){R=(e-a6)/a7;}else{if(e==a5){R=2+((a6-d)/a7);}else{R=4+((d-e)/a7);}}R/=6;R<0&&R++;R>1&&R--;}return{h:R,s:E,b:S};},ap);var aI=/,?([achlmqrstvxz]),?/gi;ap._path2string=function(){return this.join(",")[aT](aI,"$1");};function ak(E,e,d){function i(){var R=Array[a2].slice.call(arguments,0),a5=R[aD]("\u25ba"),S=i.cache=i.cache||{},a6=i.count=i.count||[];if(S[T](a5)){return d?d(S[a5]):S[a5];}a6[m]>=1000&&delete S[a6.shift()];a6[f](a5);S[a5]=E[a0](e,R);return d?d(S[a5]):S[a5];}return i;}ap.getRGB=ak(function(d){if(!d||!!((d=d+aw).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})[T](d.substring(0,2))||d.charAt()=="#")&&(d=aH(d));var S,i,E,a7,a8,a5=d.match(x);if(a5){if(a5[2]){a7=H(a5[2].substring(5),16);E=H(a5[2].substring(3,5),16);i=H(a5[2].substring(1,3),16);}if(a5[3]){a7=H((a8=a5[3].charAt(3))+a8,16);E=H((a8=a5[3].charAt(2))+a8,16);i=H((a8=a5[3].charAt(1))+a8,16);}if(a5[4]){a5=a5[4][z](/\s*,\s*/);i=X(a5[0]);E=X(a5[1]);a7=X(a5[2]);}if(a5[5]){a5=a5[5][z](/\s*,\s*/);i=X(a5[0])*2.55;E=X(a5[1])*2.55;a7=X(a5[2])*2.55;}if(a5[6]){a5=a5[6][z](/\s*,\s*/);i=X(a5[0]);E=X(a5[1]);a7=X(a5[2]);return ap.hsb2rgb(i,E,a7);}if(a5[7]){a5=a5[7][z](/\s*,\s*/);i=X(a5[0])*2.55;E=X(a5[1])*2.55;a7=X(a5[2])*2.55;return ap.hsb2rgb(i,E,a7);}a5={r:i,g:E,b:a7};var e=(~~i)[aE](16),R=(~~E)[aE](16),a6=(~~a7)[aE](16);e=e[aT](aY,"0");R=R[aT](aY,"0");a6=a6[aT](aY,"0");a5.hex="#"+e+R+a6;return a5;}return{r:-1,g:-1,b:-1,hex:"none",error:1};},ap);ap.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;};ap.getColor.reset=function(){delete this.start;};var ay=/([achlmqstvz])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?\s*,?\s*)+)/ig,an=/(-?\d*\.?\d*(?:e[-+]?\d+)?)\s*,?\s*/ig;ap.parsePathString=ak(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(ap.is(d,"array")&&ap.is(d[0],"array")){e=az(d);}if(!e[m]){(d+aw)[aT](ay,function(R,E,a6){var a5=[],S=a4.call(E);a6[aT](an,function(a8,a7){a7&&a5[f](+a7);});if(S=="m"&&a5[m]>2){e[f]([E][aW](a5.splice(0,2)));S="l";E=E=="m"?"l":"L";}while(a5[m]>=i[S]){e[f]([E][aW](a5.splice(0,i[S])));if(!i[S]){break;}}});}e[aE]=ap._path2string;return e;});ap.findDotsAtSegment=function(e,d,bj,bh,a5,R,a7,a6,bd){var bb=1-bd,ba=aQ(bb,3)*e+aQ(bb,2)*3*bd*bj+bb*3*bd*bd*a5+aQ(bd,3)*a7,a8=aQ(bb,3)*d+aQ(bb,2)*3*bd*bh+bb*3*bd*bd*R+aQ(bd,3)*a6,bf=e+2*bd*(bj-e)+bd*bd*(a5-2*bj+e),be=d+2*bd*(bh-d)+bd*bd*(R-2*bh+d),bi=bj+2*bd*(a5-bj)+bd*bd*(a7-2*a5+bj),bg=bh+2*bd*(R-bh)+bd*bd*(a6-2*R+bh),bc=(1-bd)*e+bd*bj,a9=(1-bd)*d+bd*bh,E=(1-bd)*a5+bd*a7,i=(1-bd)*R+bd*a6,S=(90-ac.atan((bf-bi)/(be-bg))*180/ac.PI);(bf>bi||be<bg)&&(S+=180);return{x:ba,y:a8,m:{x:bf,y:be},n:{x:bi,y:bg},start:{x:bc,y:a9},end:{x:E,y:i},alpha:S};};var V=ak(function(ba){if(!ba){return{x:0,y:0,width:0,height:0};}ba=I(ba);var a7=0,a6=0,R=[],e=[],E;for(var S=0,a9=ba[m];S<a9;S++){E=ba[S];if(E[0]=="M"){a7=E[1];a6=E[2];R[f](a7);e[f](a6);}else{var a5=aG(a7,a6,E[1],E[2],E[3],E[4],E[5],E[6]);R=R[aW](a5.min.x,a5.max.x);e=e[aW](a5.min.y,a5.max.y);a7=E[5];a6=E[6];}}var d=aM[a0](0,R),a8=aM[a0](0,e);return{x:d,y:a8,width:g[a0](0,R)-d,height:g[a0](0,e)-a8};}),az=function(a5){var E=[];if(!ap.is(a5,"array")||!ap.is(a5&&a5[0],"array")){a5=ap.parsePathString(a5);}for(var e=0,R=a5[m];e<R;e++){E[e]=[];for(var d=0,S=a5[e][m];d<S;d++){E[e][d]=a5[e][d];}}E[aE]=ap._path2string;return E;},ae=ak(function(R){if(!ap.is(R,"array")||!ap.is(R&&R[0],"array")){R=ap.parsePathString(R);}var a9=[],bb=0,ba=0,be=0,bd=0,E=0;if(R[0][0]=="M"){bb=R[0][1];ba=R[0][2];be=bb;bd=ba;E++;a9[f](["M",bb,ba]);}for(var a6=E,bf=R[m];a6<bf;a6++){var d=a9[a6]=[],bc=R[a6];if(bc[0]!=a4.call(bc[0])){d[0]=a4.call(bc[0]);switch(d[0]){case"a":d[1]=bc[1];d[2]=bc[2];d[3]=bc[3];d[4]=bc[4];d[5]=bc[5];d[6]=+(bc[6]-bb).toFixed(3);d[7]=+(bc[7]-ba).toFixed(3);break;case"v":d[1]=+(bc[1]-ba).toFixed(3);break;case"m":be=bc[1];bd=bc[2];default:for(var a5=1,a7=bc[m];a5<a7;a5++){d[a5]=+(bc[a5]-((a5%2)?bb:ba)).toFixed(3);}}}else{d=a9[a6]=[];if(bc[0]=="m"){be=bc[1]+bb;bd=bc[2]+ba;}for(var S=0,e=bc[m];S<e;S++){a9[a6][S]=bc[S];}}var a8=a9[a6][m];switch(a9[a6][0]){case"z":bb=be;ba=bd;break;case"h":bb+=+a9[a6][a8-1];break;case"v":ba+=+a9[a6][a8-1];break;default:bb+=+a9[a6][a8-2];ba+=+a9[a6][a8-1];}}a9[aE]=ap._path2string;return a9;},0,az),r=ak(function(R){if(!ap.is(R,"array")||!ap.is(R&&R[0],"array")){R=ap.parsePathString(R);}var a8=[],ba=0,a9=0,bd=0,bc=0,E=0;if(R[0][0]=="M"){ba=+R[0][1];a9=+R[0][2];bd=ba;bc=a9;E++;a8[0]=["M",ba,a9];}for(var a6=E,be=R[m];a6<be;a6++){var d=a8[a6]=[],bb=R[a6];if(bb[0]!=aR.call(bb[0])){d[0]=aR.call(bb[0]);switch(d[0]){case"A":d[1]=bb[1];d[2]=bb[2];d[3]=bb[3];d[4]=bb[4];d[5]=bb[5];d[6]=+(bb[6]+ba);d[7]=+(bb[7]+a9);break;case"V":d[1]=+bb[1]+a9;break;case"H":d[1]=+bb[1]+ba;break;case"M":bd=+bb[1]+ba;bc=+bb[2]+a9;default:for(var a5=1,a7=bb[m];a5<a7;a5++){d[a5]=+bb[a5]+((a5%2)?ba:a9);}}}else{for(var S=0,e=bb[m];S<e;S++){a8[a6][S]=bb[S];}}switch(d[0]){case"Z":ba=bd;a9=bc;break;case"H":ba=d[1];break;case"V":a9=d[1];break;default:ba=a8[a6][a8[a6][m]-2];a9=a8[a6][a8[a6][m]-1];}}a8[aE]=ap._path2string;return a8;},null,az),a1=function(e,E,d,i){return[e,E,d,i,d,i];},aO=function(e,E,a5,R,d,i){var S=1/3,a6=2/3;return[S*e+a6*a5,S*E+a6*R,S*d+a6*a5,S*i+a6*R,d,i];},L=function(be,bJ,bn,bl,bf,a9,S,bd,bI,bg){var R=ac.PI,bk=R*120/180,d=R/180*(+bf||0),br=[],bo,bF=ak(function(bK,bN,i){var bM=bK*ac.cos(i)-bN*ac.sin(i),bL=bK*ac.sin(i)+bN*ac.cos(i);return{x:bM,y:bL};});if(!bg){bo=bF(be,bJ,-d);be=bo.x;bJ=bo.y;bo=bF(bd,bI,-d);bd=bo.x;bI=bo.y;var e=ac.cos(R/180*bf),bb=ac.sin(R/180*bf),bt=(be-bd)/2,bs=(bJ-bI)/2;var bD=(bt*bt)/(bn*bn)+(bs*bs)/(bl*bl);if(bD>1){bD=ac.sqrt(bD);bn=bD*bn;bl=bD*bl;}var E=bn*bn,bw=bl*bl,by=(a9==S?-1:1)*ac.sqrt(ac.abs((E*bw-E*bs*bs-bw*bt*bt)/(E*bs*bs+bw*bt*bt))),bi=by*bn*bs/bl+(be+bd)/2,bh=by*-bl*bt/bn+(bJ+bI)/2,a8=ac.asin(((bJ-bh)/bl).toFixed(7)),a7=ac.asin(((bI-bh)/bl).toFixed(7));a8=be<bi?R-a8:a8;a7=bd<bi?R-a7:a7;a8<0&&(a8=R*2+a8);a7<0&&(a7=R*2+a7);if(S&&a8>a7){a8=a8-R*2;}if(!S&&a7>a8){a7=a7-R*2;}}else{a8=bg[0];a7=bg[1];bi=bg[2];bh=bg[3];}var bc=a7-a8;if(ac.abs(bc)>bk){var bj=a7,bm=bd,ba=bI;a7=a8+bk*(S&&a7>a8?1:-1);bd=bi+bn*ac.cos(a7);bI=bh+bl*ac.sin(a7);br=L(bd,bI,bn,bl,bf,0,S,bm,ba,[a7,bj,bi,bh]);}bc=a7-a8;var a6=ac.cos(a8),bH=ac.sin(a8),a5=ac.cos(a7),bG=ac.sin(a7),bu=ac.tan(bc/4),bx=4/3*bn*bu,bv=4/3*bl*bu,bE=[be,bJ],bC=[be+bx*bH,bJ-bv*a6],bB=[bd+bx*bG,bI-bv*a5],bz=[bd,bI];bC[0]=2*bE[0]-bC[0];bC[1]=2*bE[1]-bC[1];if(bg){return[bC,bB,bz][aW](br);}else{br=[bC,bB,bz][aW](br)[aD]()[z](",");var bp=[];for(var bA=0,bq=br[m];bA<bq;bA++){bp[bA]=bA%2?bF(br[bA-1],br[bA],d).y:bF(br[bA],br[bA+1],d).x;}return bp;}},N=function(e,d,E,i,a7,a6,a5,S,a8){var R=1-a8;return{x:aQ(R,3)*e+aQ(R,2)*3*a8*E+R*3*a8*a8*a7+aQ(a8,3)*a5,y:aQ(R,3)*d+aQ(R,2)*3*a8*i+R*3*a8*a8*a6+aQ(a8,3)*S};},aG=ak(function(i,d,R,E,be,bd,ba,a7){var bc=(be-2*R+i)-(ba-2*be+R),a9=2*(R-i)-2*(be-R),a6=i-R,a5=(-a9+ac.sqrt(a9*a9-4*bc*a6))/2/bc,S=(-a9-ac.sqrt(a9*a9-4*bc*a6))/2/bc,a8=[d,a7],bb=[i,ba],e;ac.abs(a5)>1000000000000&&(a5=0.5);ac.abs(S)>1000000000000&&(S=0.5);if(a5>0&&a5<1){e=N(i,d,R,E,be,bd,ba,a7,a5);bb[f](e.x);a8[f](e.y);}if(S>0&&S<1){e=N(i,d,R,E,be,bd,ba,a7,S);bb[f](e.x);a8[f](e.y);}bc=(bd-2*E+d)-(a7-2*bd+E);a9=2*(E-d)-2*(bd-E);a6=d-E;a5=(-a9+ac.sqrt(a9*a9-4*bc*a6))/2/bc;S=(-a9-ac.sqrt(a9*a9-4*bc*a6))/2/bc;ac.abs(a5)>1000000000000&&(a5=0.5);ac.abs(S)>1000000000000&&(S=0.5);if(a5>0&&a5<1){e=N(i,d,R,E,be,bd,ba,a7,a5);bb[f](e.x);a8[f](e.y);}if(S>0&&S<1){e=N(i,d,R,E,be,bd,ba,a7,S);bb[f](e.x);a8[f](e.y);}return{min:{x:aM[a0](0,bb),y:aM[a0](0,a8)},max:{x:g[a0](0,bb),y:g[a0](0,a8)}};}),I=ak(function(be,a9){var R=r(be),ba=a9&&r(a9),bb={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},a5=function(bf,bg){var i,bh;if(!bf){return["C",bg.x,bg.y,bg.x,bg.y,bg.x,bg.y];}!(bf[0] in {T:1,Q:1})&&(bg.qx=bg.qy=null);switch(bf[0]){case"M":bg.X=bf[1];bg.Y=bf[2];break;case"A":bf=["C"][aW](L[a0](0,[bg.x,bg.y][aW](bf.slice(1))));break;case"S":i=bg.x+(bg.x-(bg.bx||bg.x));bh=bg.y+(bg.y-(bg.by||bg.y));bf=["C",i,bh][aW](bf.slice(1));break;case"T":bg.qx=bg.x+(bg.x-(bg.qx||bg.x));bg.qy=bg.y+(bg.y-(bg.qy||bg.y));bf=["C"][aW](aO(bg.x,bg.y,bg.qx,bg.qy,bf[1],bf[2]));break;case"Q":bg.qx=bf[1];bg.qy=bf[2];bf=["C"][aW](aO(bg.x,bg.y,bf[1],bf[2],bf[3],bf[4]));break;case"L":bf=["C"][aW](a1(bg.x,bg.y,bf[1],bf[2]));break;case"H":bf=["C"][aW](a1(bg.x,bg.y,bf[1],bg.y));break;case"V":bf=["C"][aW](a1(bg.x,bg.y,bg.x,bf[1]));break;case"Z":bf=["C"][aW](a1(bg.x,bg.y,bg.X,bg.Y));break;}return bf;},e=function(bf,bg){if(bf[bg][m]>7){bf[bg].shift();var bh=bf[bg];while(bh[m]){bf.splice(bg++,0,["C"][aW](bh.splice(0,6)));}bf.splice(bg,1);bc=g(R[m],ba&&ba[m]||0);}},E=function(bj,bi,bg,bf,bh){if(bj&&bi&&bj[bh][0]=="M"&&bi[bh][0]!="M"){bi.splice(bh,0,["M",bf.x,bf.y]);bg.bx=0;bg.by=0;bg.x=bj[bh][1];bg.y=bj[bh][2];bc=g(R[m],ba&&ba[m]||0);}};for(var a7=0,bc=g(R[m],ba&&ba[m]||0);a7<bc;a7++){R[a7]=a5(R[a7],bb);e(R,a7);ba&&(ba[a7]=a5(ba[a7],d));ba&&e(ba,a7);E(R,ba,bb,d,a7);E(ba,R,d,bb,a7);var a6=R[a7],bd=ba&&ba[a7],S=a6[m],a8=ba&&bd[m];bb.x=a6[S-2];bb.y=a6[S-1];bb.bx=X(a6[S-4])||bb.x;bb.by=X(a6[S-3])||bb.y;d.bx=ba&&(X(bd[a8-4])||d.x);d.by=ba&&(X(bd[a8-3])||d.y);d.x=ba&&bd[a8-2];d.y=ba&&bd[a8-1];}return ba?[R,ba]:R;},null,az),p=ak(function(a9){var a8=[];for(var a5=0,ba=a9[m];a5<ba;a5++){var e={},a7=a9[a5].match(/^([^:]*):?([\d\.]*)/);e.color=ap.getRGB(a7[1]);if(e.color.error){return null;}e.color=e.color.hex;a7[2]&&(e.offset=a7[2]+"%");a8[f](e);}for(var a5=1,ba=a8[m]-1;a5<ba;a5++){if(!a8[a5].offset){var E=X(a8[a5-1].offset||0),R=0;for(var S=a5+1;S<ba;S++){if(a8[S].offset){R=a8[S].offset;break;}}if(!R){R=100;S=ba;}R=X(R);var a6=(R-E)/(S-a5+1);for(;a5<S;a5++){E+=a6;a8[a5].offset=E+"%";}}}return a8;}),aq=function(){var i,e,R,E,d;if(ap.is(arguments[0],"string")||ap.is(arguments[0],"object")){if(ap.is(arguments[0],"string")){i=M.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(ap.is(arguments[0],am)&&arguments[m]>3){return{container:1,x:arguments[0],y:arguments[1],width:arguments[2],height:arguments[3]};}}},aK=function(d,i){var e=this;for(var E in i){if(i[T](E)&&!(E in d)){switch(typeof i[E]){case"function":(function(R){d[E]=d===e?R:function(){return R[a0](e,arguments);};})(i[E]);break;case"object":d[E]=d[E]||{};aK.call(this,d[E],i[E]);break;default:d[E]=i[E];break;}}}},al=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);},Z=function(d,e){if(e.top===d){return;}al(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;}al(d,e);d.next=e.bottom;d.prev=null;e.bottom.prev=d;e.bottom=d;},A=function(e,d,i){al(e,i);d==i.top&&(i.top=e);d.next&&(d.next.prev=e);e.next=d.next;e.prev=d;d.next=e;},at=function(e,d,i){al(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");};},av=/^r(?:\(([^,]+?)\s*,\s*([^\)]+?)\))?/;if(ap.svg){aX[a2].svgns="http://www.w3.org/2000/svg";aX[a2].xlink="http://www.w3.org/1999/xlink";var P=function(d){return +d+(~~d===d)*0.5;},W=function(S){for(var e=0,E=S[m];e<E;e++){if(a4.call(S[e][0])!="a"){for(var d=1,R=S[e][m];d<R;d++){S[e][d]=P(S[e][d]);}}else{S[e][6]=P(S[e][6]);S[e][7]=P(S[e][7]);}}return S;},aN=function(i,d){if(d){for(var e in d){if(d[T](e)){i[v](e,d[e]);}}}else{return M.createElementNS(aX[a2].svgns,i);}};ap[aE]=function(){return"Your browser supports SVG.\nYou are running Rapha\xebl "+this.version;};var q=function(d,E){var e=aN("path");E.canvas&&E.canvas[aP](e);var i=new aB(e,E);i.type="path";ab(i,{fill:"none",stroke:"#000",path:d});return i;};var b=function(E,bc,d){var a9="linear",a6=0.5,S=0.5,be=E.style;bc=(bc+aw)[aT](av,function(bg,i,bh){a9="radial";if(i&&bh){a6=X(i);S=X(bh);var bf=((S>0.5)*2-1);aQ(a6-0.5,2)+aQ(S-0.5,2)>0.25&&(S=ac.sqrt(0.25-aQ(a6-0.5,2))*bf+0.5)&&S!=0.5&&(S=S.toFixed(5)-0.00001*bf);}return aw;});bc=bc[z](/\s*\-\s*/);if(a9=="linear"){var a5=bc.shift();a5=-X(a5);if(isNaN(a5)){return null;}var R=[0,0,ac.cos(a5*ac.PI/180),ac.sin(a5*ac.PI/180)],bb=1/(g(ac.abs(R[2]),ac.abs(R[3]))||1);R[2]*=bb;R[3]*=bb;if(R[2]<0){R[0]=-R[2];R[2]=0;}if(R[3]<0){R[1]=-R[3];R[3]=0;}}var a8=p(bc);if(!a8){return null;}var e=aN(a9+"Gradient");e.id="r"+(ap._id++)[aE](36);aN(e,a9=="radial"?{fx:a6,fy:S}:{x1:R[0],y1:R[1],x2:R[2],y2:R[3]});d.defs[aP](e);for(var a7=0,bd=a8[m];a7<bd;a7++){var ba=aN("stop");aN(ba,{offset:a8[a7].offset?a8[a7].offset:!a7?"0%":"100%","stop-color":a8[a7].color||"#fff"});e[aP](ba);}aN(E,{fill:"url(#"+e.id+")",opacity:1,"fill-opacity":1});be.fill=aw;be.opacity=1;be.fillOpacity=1;return 1;};var O=function(e){var d=e.getBBox();aN(e.pattern,{patternTransform:ap.format("translate({0},{1})",d.x,d.y)});};var ab=function(bb,bk){var be={"":[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]},bg=bb.node,bc=bb.attrs,a8=bb.rotate(),S=function(br,bq){bq=be[a4.call(bq)];if(bq){var bo=br.attrs["stroke-width"]||"1",bm={round:bo,square:bo,butt:0}[br.attrs["stroke-linecap"]||bk["stroke-linecap"]]||0,bp=[];var bn=bq[m];while(bn--){bp[bn]=bq[bn]*bo+((bn%2)?1:-1)*bm;}aN(bg,{"stroke-dasharray":bp[aD](",")});}};bk[T]("rotation")&&(a8=bk.rotation);var a7=(a8+aw)[z](a);if(!(a7.length-1)){a7=null;}else{a7[1]=+a7[1];a7[2]=+a7[2];}X(a8)&&bb.rotate(0,true);for(var bf in bk){if(bk[T](bf)){if(!j[T](bf)){continue;}var bd=bk[bf];bc[bf]=bd;switch(bf){case"rotation":bb.rotate(bd,true);break;case"href":case"title":case"target":var bi=bg.parentNode;if(a4.call(bi.tagName)!="a"){var E=aN("a");bi.insertBefore(E,bg);E[aP](bg);bi=E;}bi.setAttributeNS(bb.paper.xlink,bf,bd);break;case"cursor":bg.style.cursor=bd;break;case"clip-rect":var e=(bd+aw)[z](a);if(e[m]==4){bb.clip&&bb.clip.parentNode.parentNode.removeChild(bb.clip.parentNode);var i=aN("clipPath"),bh=aN("rect");i.id="r"+(ap._id++)[aE](36);aN(bh,{x:e[0],y:e[1],width:e[2],height:e[3]});i[aP](bh);bb.paper.defs[aP](i);aN(bg,{"clip-path":"url(#"+i.id+")"});bb.clip=bh;}if(!bd){var bj=M.getElementById(bg.getAttribute("clip-path")[aT](/(^url\(#|\)$)/g,aw));bj&&bj.parentNode.removeChild(bj);aN(bg,{"clip-path":aw});delete bb.clip;}break;case"path":if(bb.type=="path"){aN(bg,{d:bd?bc.path=W(r(bd)):"M0,0"});}break;case"width":bg[v](bf,bd);if(bc.fx){bf="x";bd=bc.x;}else{break;}case"x":if(bc.fx){bd=-bc.x-(bc.width||0);}case"rx":if(bf=="rx"&&bb.type=="rect"){break;}case"cx":a7&&(bf=="x"||bf=="cx")&&(a7[1]+=bd-bc[bf]);bg[v](bf,P(bd));bb.pattern&&O(bb);break;case"height":bg[v](bf,bd);if(bc.fy){bf="y";bd=bc.y;}else{break;}case"y":if(bc.fy){bd=-bc.y-(bc.height||0);}case"ry":if(bf=="ry"&&bb.type=="rect"){break;}case"cy":a7&&(bf=="y"||bf=="cy")&&(a7[2]+=bd-bc[bf]);bg[v](bf,P(bd));bb.pattern&&O(bb);break;case"r":if(bb.type=="rect"){aN(bg,{rx:bd,ry:bd});}else{bg[v](bf,bd);}break;case"src":if(bb.type=="image"){bg.setAttributeNS(bb.paper.xlink,"href",bd);}break;case"stroke-width":bg.style.strokeWidth=bd;bg[v](bf,bd);if(bc["stroke-dasharray"]){S(bb,bc["stroke-dasharray"]);}break;case"stroke-dasharray":S(bb,bd);break;case"translation":var a5=(bd+aw)[z](a);a5[0]=+a5[0]||0;a5[1]=+a5[1]||0;if(a7){a7[1]+=a5[0];a7[2]+=a5[1];}t.call(bb,a5[0],a5[1]);break;case"scale":var a5=(bd+aw)[z](a);bb.scale(+a5[0]||1,+a5[1]||+a5[0]||1,+a5[2]||null,+a5[3]||null);break;case"fill":var R=(bd+aw).match(c);if(R){var i=aN("pattern"),ba=aN("image");i.id="r"+(ap._id++)[aE](36);aN(i,{x:0,y:0,patternUnits:"userSpaceOnUse",height:1,width:1});aN(ba,{x:0,y:0});ba.setAttributeNS(bb.paper.xlink,"href",R[1]);i[aP](ba);var bl=M.createElement("img");bl.style.cssText="position:absolute;left:-9999em;top-9999em";bl.onload=function(){aN(i,{width:this.offsetWidth,height:this.offsetHeight});aN(ba,{width:this.offsetWidth,height:this.offsetHeight});M.body.removeChild(this);bb.paper.safari();};M.body[aP](bl);bl.src=R[1];bb.paper.defs[aP](i);bg.style.fill="url(#"+i.id+")";aN(bg,{fill:"url(#"+i.id+")"});bb.pattern=i;bb.pattern&&O(bb);break;}if(!ap.getRGB(bd).error){delete bk.gradient;delete bc.gradient;!ap.is(bc.opacity,"undefined")&&ap.is(bk.opacity,"undefined")&&aN(bg,{opacity:bc.opacity});!ap.is(bc["fill-opacity"],"undefined")&&ap.is(bk["fill-opacity"],"undefined")&&aN(bg,{"fill-opacity":bc["fill-opacity"]});}else{if((({circle:1,ellipse:1})[T](bb.type)||(bd+aw).charAt()!="r")&&b(bg,bd,bb.paper)){bc.gradient=bd;bc.fill="none";break;}}case"stroke":bg[v](bf,ap.getRGB(bd).hex);break;case"gradient":(({circle:1,ellipse:1})[T](bb.type)||(bd+aw).charAt()!="r")&&b(bg,bd,bb.paper);break;case"opacity":case"fill-opacity":if(bc.gradient){var d=M.getElementById(bg.getAttribute("fill")[aT](/^url\(#|\)$/g,aw));if(d){var a6=d.getElementsByTagName("stop");a6[a6[m]-1][v]("stop-opacity",bd);}break;}default:bf=="font-size"&&(bd=H(bd,10)+"px");var a9=bf[aT](/(\-.)/g,function(bm){return aR.call(bm.substring(1));});bg.style[a9]=bd;bg[v](bf,bd);break;}}}F(bb,bk);if(a7){bb.rotate(a7.join(ao));}else{X(a8)&&bb.rotate(a8,true);}};var h=1.2;var F=function(d,R){if(d.type!="text"||!(R[T]("text")||R[T]("font")||R[T]("font-size")||R[T]("x")||R[T]("y"))){return;}var a8=d.attrs,e=d.node,ba=e.firstChild?H(M.defaultView.getComputedStyle(e.firstChild,aw).getPropertyValue("font-size"),10):10;if(R[T]("text")){a8.text=R.text;while(e.firstChild){e.removeChild(e.firstChild);}var E=(R.text+aw)[z]("\n");for(var S=0,a9=E[m];S<a9;S++){if(E[S]){var a6=aN("tspan");S&&aN(a6,{dy:ba*h,x:a8.x});a6[aP](M.createTextNode(E[S]));e[aP](a6);}}}else{var E=e.getElementsByTagName("tspan");for(var S=0,a9=E[m];S<a9;S++){S&&aN(E[S],{dy:ba*h,x:a8.x});}}aN(e,{y:a8.y});var a5=d.getBBox(),a7=a8.y-(a5.y+a5.height/2);a7&&isFinite(a7)&&aN(e,{y:a8.y+a7});};var aB=function(e,d){var E=0,i=0;this[0]=e;this.id=ap._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;};aB[a2].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][aD](ao);}return this._.rt.deg;}var i=this.getBBox();e=(e+aw)[z](a);if(e[m]-1){d=X(e[1]);E=X(e[2]);}e=X(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]=ap.format("rotate({0} {1} {2})",this._.rt.deg,d,E);this.clip&&aN(this.clip,{transform:ap.format("rotate({0} {1} {2})",-this._.rt.deg,d,E)});}else{this.transformations[0]=aw;this.clip&&aN(this.clip,{transform:aw});}aN(this.node,{transform:this.transformations[aD](ao)});return this;};aB[a2].hide=function(){!this.removed&&(this.node.style.display="none");return this;};aB[a2].show=function(){!this.removed&&(this.node.style.display="");return this;};aB[a2].remove=function(){if(this.removed){return;}al(this,this.paper);this.node.parentNode.removeChild(this.node);for(var d in this){delete this[d];}this.removed=true;};aB[a2].getBBox=function(){if(this.removed){return this;}if(this.type=="path"){return V(this.attrs.path);}if(this.node.style.display=="none"){this.show();var E=true;}var a6={};try{a6=this.node.getBBox();}catch(S){}finally{a6=a6||{};}if(this.type=="text"){a6={x:a6.x,y:Infinity,width:0,height:0};for(var d=0,R=this.node.getNumberOfChars();d<R;d++){var a5=this.node.getExtentOfChar(d);(a5.y<a6.y)&&(a6.y=a5.y);(a5.y+a5.height-a6.y>a6.height)&&(a6.height=a5.y+a5.height-a6.y);(a5.x+a5.width-a6.x>a6.width)&&(a6.width=a5.x+a5.width-a6.x);}}E&&this.hide();return a6;};aB[a2].attr=function(){if(this.removed){return this;}if(arguments[m]==0){var R={};for(var E in this.attrs){if(this.attrs[T](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&&ap.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&&ap.is(arguments[0],"array")){var d={};for(var e in arguments[0]){if(arguments[0][T](e)){d[arguments[0][e]]=this.attrs[arguments[0][e]];}}return d;}if(arguments[m]==2){var S={};S[arguments[0]]=arguments[1];ab(this,S);}else{if(arguments[m]==1&&ap.is(arguments[0],"object")){ab(this,arguments[0]);}}return this;};aB[a2].toFront=function(){if(this.removed){return this;}this.node.parentNode[aP](this.node);var d=this.paper;d.top!=this&&Z(this,d);return this;};aB[a2].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;};aB[a2].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[aP](this.node);}A(this,d,this.paper);return this;};aB[a2].insertBefore=function(d){if(this.removed){return this;}var e=d.node;e.parentNode.insertBefore(this.node,e);at(this,d,this.paper);return this;};var Q=function(e,d,S,R){d=P(d);S=P(S);var E=aN("circle");e.canvas&&e.canvas[aP](E);var i=new aB(E,e);i.attrs={cx:d,cy:S,r:R,fill:"none",stroke:"#000"};i.type="circle";aN(E,i.attrs);return i;};var aJ=function(i,d,a6,e,S,a5){d=P(d);a6=P(a6);var R=aN("rect");i.canvas&&i.canvas[aP](R);var E=new aB(R,i);E.attrs={x:d,y:a6,width:e,height:S,r:a5||0,rx:a5||0,ry:a5||0,fill:"none",stroke:"#000"};E.type="rect";aN(R,E.attrs);return E;};var aj=function(e,d,a5,S,R){d=P(d);a5=P(a5);var E=aN("ellipse");e.canvas&&e.canvas[aP](E);var i=new aB(E,e);i.attrs={cx:d,cy:a5,rx:S,ry:R,fill:"none",stroke:"#000"};i.type="ellipse";aN(E,i.attrs);return i;};var o=function(i,a5,d,a6,e,S){var R=aN("image");aN(R,{x:d,y:a6,width:e,height:S,preserveAspectRatio:"none"});R.setAttributeNS(i.xlink,"href",a5);i.canvas&&i.canvas[aP](R);var E=new aB(R,i);E.attrs={x:d,y:a6,width:e,height:S,src:a5};E.type="image";return E;};var Y=function(e,d,S,R){var E=aN("text");aN(E,{x:d,y:S,"text-anchor":"middle"});e.canvas&&e.canvas[aP](E);var i=new aB(E,e);i.attrs={x:d,y:S,"text-anchor":"middle",text:R,font:j.font,stroke:"none",fill:"#000"};i.type="text";ab(i,i.attrs);return i;};var aZ=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=aq[a0](null,arguments),i=E&&E.container,e=E.x,a5=E.y,R=E.width,d=E.height;if(!i){throw new Error("SVG container not found.");}var S=aN("svg");R=R||512;d=d||342;aN(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:"+a5+"px";M.body[aP](S);}else{if(i.firstChild){i.insertBefore(S,i.firstChild);}else{i[aP](S);}}i=new aX;i.width=R;i.height=d;i.canvas=S;aK.call(i,i,ap.fn);i.clear();return i;};aX[a2].clear=function(){var d=this.canvas;while(d.firstChild){d.removeChild(d.firstChild);}this.bottom=this.top=null;(this.desc=aN("desc"))[aP](M.createTextNode("Created with Rapha\xebl"));d[aP](this.desc);d[aP](this.defs=aN("defs"));};aX[a2].remove=function(){this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas);for(var d in this){this[d]=s(d);}};}if(ap.vml){var D={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},au=/([clmz]),?([^clmz]*)/gi,a3=/-?[^,\s-]+/g,aL=function(ba){var a7=/[ahqstv]/ig,E=r;(ba+aw).match(a7)&&(E=I);a7=/[clmz]/g;if(E==r&&!(ba+aw).match(a7)){var a6=(ba+aw)[aT](au,function(bd,bf,bb){var be=[],i=a4.call(bf)=="m",bc=D[bf];bb[aT](a3,function(bg){if(i&&be[m]==2){bc+=be+D[bf=="m"?"l":"L"];be=[];}be[f](P(bg));});return bc+be;});return a6;}var a8=E(ba),e,a6=[],d;for(var S=0,a9=a8[m];S<a9;S++){e=a8[S];d=a4.call(a8[S][0]);d=="z"&&(d="x");for(var R=1,a5=e[m];R<a5;R++){d+=P(e[R])+(R!=a5-1?",":aw);}a6[f](d);}return a6[aD](ao);};ap[aE]=function(){return"Your browser doesn\u2019t support SVG. Falling down to VML.\nYou are running Rapha\xebl "+this.version;};var q=function(e,a5){var R=ai("group");R.style.cssText="position:absolute;left:0;top:0;width:"+a5.width+"px;height:"+a5.height+"px";R.coordsize=a5.coordsize;R.coordorigin=a5.coordorigin;var E=ai("shape"),i=E.style;i.width=a5.width+"px";i.height=a5.height+"px";E.coordsize=this.coordsize;E.coordorigin=this.coordorigin;R[aP](E);var S=new aB(E,R,a5),d={fill:"none",stroke:"#000"};e&&(d.path=e);S.isAbsolute=true;S.type="path";S.path=[];S.Path=aw;ab(S,d);a5.canvas[aP](R);return S;};var ab=function(a8,bd){a8.attrs=a8.attrs||{};var bb=a8.node,be=a8.attrs,a5=bb.style,E,bi=a8;for(var a6 in bd){if(bd[T](a6)){be[a6]=bd[a6];}}bd.href&&(bb.href=bd.href);bd.title&&(bb.title=bd.title);bd.target&&(bb.target=bd.target);bd.cursor&&(a5.cursor=bd.cursor);if(bd.path&&a8.type=="path"){be.path=bd.path;bb.path=aL(be.path);}if(bd.rotation!=null){a8.rotate(bd.rotation,true);}if(bd.translation){E=(bd.translation+aw)[z](a);t.call(a8,E[0],E[1]);if(a8._.rt.cx!=null){a8._.rt.cx+=+E[0];a8._.rt.cy+=+E[1];a8.setBox(a8.attrs,E[0],E[1]);}}if(bd.scale){E=(bd.scale+aw)[z](a);a8.scale(+E[0]||1,+E[1]||+E[0]||1,+E[2]||null,+E[3]||null);}if("clip-rect" in bd){var d=(bd["clip-rect"]+aw)[z](a);if(d[m]==4){d[2]=+d[2]+(+d[0]);d[3]=+d[3]+(+d[1]);var a7=bb.clipRect||M.createElement("div"),bh=a7.style,S=bb.parentNode;bh.clip=ap.format("rect({1}px {2}px {3}px {0}px)",d);if(!bb.clipRect){bh.position="absolute";bh.top=0;bh.left=0;bh.width=a8.paper.width+"px";bh.height=a8.paper.height+"px";S.parentNode.insertBefore(a7,S);a7[aP](S);bb.clipRect=a7;}}if(!bd["clip-rect"]){bb.clipRect&&(bb.clipRect.style.clip=aw);}}if(a8.type=="image"&&bd.src){bb.src=bd.src;}if(a8.type=="image"&&bd.opacity){bb.filterOpacity=" progid:DXImageTransform.Microsoft.Alpha(opacity="+(bd.opacity*100)+")";a5.filter=(bb.filterMatrix||aw)+(bb.filterOpacity||aw);}bd.font&&(a5.font=bd.font);bd["font-family"]&&(a5.fontFamily='"'+bd["font-family"][z](",")[0][aT](/^['"]+|['"]+$/g,aw)+'"');bd["font-size"]&&(a5.fontSize=bd["font-size"]);bd["font-weight"]&&(a5.fontWeight=bd["font-weight"]);bd["font-style"]&&(a5.fontStyle=bd["font-style"]);if(bd.opacity!=null||bd["stroke-width"]!=null||bd.fill!=null||bd.stroke!=null||bd["stroke-width"]!=null||bd["stroke-opacity"]!=null||bd["fill-opacity"]!=null||bd["stroke-dasharray"]!=null||bd["stroke-miterlimit"]!=null||bd["stroke-linejoin"]!=null||bd["stroke-linecap"]!=null){bb=a8.shape||bb;var bc=(bb.getElementsByTagName("fill")&&bb.getElementsByTagName("fill")[0]),bf=false;!bc&&(bf=bc=ai("fill"));if("fill-opacity" in bd||"opacity" in bd){var e=((+be["fill-opacity"]+1||2)-1)*((+be.opacity+1||2)-1);e<0&&(e=0);e>1&&(e=1);bc.opacity=e;}bd.fill&&(bc.on=true);if(bc.on==null||bd.fill=="none"){bc.on=false;}if(bc.on&&bd.fill){var i=bd.fill.match(c);if(i){bc.src=i[1];bc.type="tile";}else{bc.color=ap.getRGB(bd.fill).hex;bc.src=aw;bc.type="solid";if(ap.getRGB(bd.fill).error&&(bi.type in {circle:1,ellipse:1}||(bd.fill+aw).charAt()!="r")&&b(bi,bd.fill)){be.fill="none";be.gradient=bd.fill;}}}bf&&bb[aP](bc);var R=(bb.getElementsByTagName("stroke")&&bb.getElementsByTagName("stroke")[0]),bg=false;!R&&(bg=R=ai("stroke"));if((bd.stroke&&bd.stroke!="none")||bd["stroke-width"]||bd["stroke-opacity"]!=null||bd["stroke-dasharray"]||bd["stroke-miterlimit"]||bd["stroke-linejoin"]||bd["stroke-linecap"]){R.on=true;}(bd.stroke=="none"||R.on==null||bd.stroke==0||bd["stroke-width"]==0)&&(R.on=false);R.on&&bd.stroke&&(R.color=ap.getRGB(bd.stroke).hex);var e=((+be["stroke-opacity"]+1||2)-1)*((+be.opacity+1||2)-1),a9=(X(bd["stroke-width"])||1)*0.75;e<0&&(e=0);e>1&&(e=1);bd["stroke-width"]==null&&(a9=be["stroke-width"]);bd["stroke-width"]&&(R.weight=a9);a9&&a9<1&&(e*=a9)&&(R.weight=1);R.opacity=e;bd["stroke-linejoin"]&&(R.joinstyle=bd["stroke-linejoin"]||"miter");R.miterlimit=bd["stroke-miterlimit"]||8;bd["stroke-linecap"]&&(R.endcap=bd["stroke-linecap"]=="butt"?"flat":bd["stroke-linecap"]=="square"?"square":"round");if(bd["stroke-dasharray"]){var ba={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot","--..":"longdashdotdot"};R.dashstyle=ba[T](bd["stroke-dasharray"])?ba[bd["stroke-dasharray"]]:aw;}bg&&bb[aP](R);}if(bi.type=="text"){var a5=bi.paper.span.style;be.font&&(a5.font=be.font);be["font-family"]&&(a5.fontFamily=be["font-family"]);be["font-size"]&&(a5.fontSize=be["font-size"]);be["font-weight"]&&(a5.fontWeight=be["font-weight"]);be["font-style"]&&(a5.fontStyle=be["font-style"]);bi.node.string&&(bi.paper.span.innerHTML=(bi.node.string+aw)[aT](/</g,"&#60;")[aT](/&/g,"&#38;")[aT](/\n/g,"<br>"));bi.W=be.w=bi.paper.span.offsetWidth;bi.H=be.h=bi.paper.span.offsetHeight;bi.X=be.x;bi.Y=be.y+P(bi.H/2);switch(be["text-anchor"]){case"start":bi.node.style["v-text-align"]="left";bi.bbx=P(bi.W/2);break;case"end":bi.node.style["v-text-align"]="right";bi.bbx=-P(bi.W/2);break;default:bi.node.style["v-text-align"]="center";break;}}};var b=function(d,a6){d.attrs=d.attrs||{};var a7=d.attrs,a9=d.node.getElementsByTagName("fill"),S="linear",a5=".5 .5";d.attrs.gradient=a6;a6=(a6+aw)[aT](av,function(bb,bc,i){S="radial";if(bc&&i){bc=X(bc);i=X(i);aQ(bc-0.5,2)+aQ(i-0.5,2)>0.25&&(i=ac.sqrt(0.25-aQ(bc-0.5,2))*((i>0.5)*2-1)+0.5);a5=bc+ao+i;}return aw;});a6=a6[z](/\s*\-\s*/);if(S=="linear"){var e=a6.shift();e=-X(e);if(isNaN(e)){return null;}}var R=p(a6);if(!R){return null;}d=d.shape||d.node;a9=a9[0]||ai("fill");if(R[m]){a9.on=true;a9.method="none";a9.type=(S=="radial")?"gradientradial":"gradient";a9.color=R[0].color;a9.color2=R[R[m]-1].color;var ba=[];for(var E=0,a8=R[m];E<a8;E++){R[E].offset&&ba[f](R[E].offset+ao+R[E].color);}a9.colors&&(a9.colors.value=ba[m]?ba[aD](","):"0% "+a9.color);if(S=="radial"){a9.focus="100%";a9.focussize=a5;a9.focusposition=a5;}else{a9.angle=(270-e)%360;}}return 1;};var aB=function(R,a5,d){var S=0,i=0,e=0,E=1;this[0]=R;this.id=ap._oid++;this.node=R;R.raphael=this;this.X=0;this.Y=0;this.attrs={};this.Group=a5;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;};aB[a2].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][aD](ao);}return this._.rt.deg;}e=(e+aw)[z](a);if(e[m]-1){d=X(e[1]);i=X(e[2]);}e=X(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;};aB[a2].setBox=function(bg,e,d){if(this.removed){return this;}var ba=this.Group.style,R=(this.shape&&this.shape.style)||this.node.style;bg=bg||{};for(var be in bg){if(bg[T](be)){this.attrs[be]=bg[be];}}e=e||this._.rt.cx;d=d||this._.rt.cy;var bc=this.attrs,a6,a5,a7,bf;switch(this.type){case"circle":a6=bc.cx-bc.r;a5=bc.cy-bc.r;a7=bf=bc.r*2;break;case"ellipse":a6=bc.cx-bc.rx;a5=bc.cy-bc.ry;a7=bc.rx*2;bf=bc.ry*2;break;case"rect":case"image":a6=+bc.x;a5=+bc.y;a7=bc.width||0;bf=bc.height||0;break;case"text":this.textpath.v=["m",P(bc.x),", ",P(bc.y-2),"l",P(bc.x)+1,", ",P(bc.y-2)][aD](aw);a6=bc.x-P(this.W/2);a5=bc.y-this.H/2;a7=this.W;bf=this.H;break;case"path":if(!this.attrs.path){a6=0;a5=0;a7=this.paper.width;bf=this.paper.height;}else{var bd=V(this.attrs.path);a6=bd.x;a5=bd.y;a7=bd.width;bf=bd.height;}break;default:a6=0;a5=0;a7=this.paper.width;bf=this.paper.height;break;}e=(e==null)?a6+a7/2:e;d=(d==null)?a5+bf/2:d;var E=e-this.paper.width/2,a9=d-this.paper.height/2;if(this.type=="path"||this.type=="text"){(ba.left!=E+"px")&&(ba.left=E+"px");(ba.top!=a9+"px")&&(ba.top=a9+"px");this.X=this.type=="text"?a6:-E;this.Y=this.type=="text"?a5:-a9;this.W=a7;this.H=bf;(R.left!=-E+"px")&&(R.left=-E+"px");(R.top!=-a9+"px")&&(R.top=-a9+"px");}else{(ba.left!=E+"px")&&(ba.left=E+"px");(ba.top!=a9+"px")&&(ba.top=a9+"px");this.X=a6;this.Y=a5;this.W=a7;this.H=bf;(ba.width!=this.paper.width+"px")&&(ba.width=this.paper.width+"px");(ba.height!=this.paper.height+"px")&&(ba.height=this.paper.height+"px");(R.left!=a6-E+"px")&&(R.left=a6-E+"px");(R.top!=a5-a9+"px")&&(R.top=a5-a9+"px");(R.width!=a7+"px")&&(R.width=a7+"px");(R.height!=bf+"px")&&(R.height=bf+"px");var S=(+bg.r||0)/aM(a7,bf);if(this.type=="rect"&&this.arcsize.toFixed(4)!=S.toFixed(4)&&(S||this.arcsize)){var bb=ai("roundrect"),bh={},be=0,a8=this.events&&this.events[m];bb.arcsize=S;bb.raphael=this;this.Group[aP](bb);this.Group.removeChild(this.node);this[0]=this.node=bb;this.arcsize=S;for(var be in bc){bh[be]=bc[be];}delete bh.scale;this.attr(bh);if(this.events){for(;be<a8;be++){this.events[be].unbind=af(this.node,this.events[be].name,this.events[be].f,this);}}}}};aB[a2].hide=function(){!this.removed&&(this.Group.style.display="none");return this;};aB[a2].show=function(){!this.removed&&(this.Group.style.display="block");return this;};aB[a2].getBBox=function(){if(this.removed){return this;}if(this.type=="path"){return V(this.attrs.path);}return{x:this.X+(this.bbx||0),y:this.Y,width:this.W,height:this.H};};aB[a2].remove=function(){if(this.removed){return;}al(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;};aB[a2].attr=function(){if(this.removed){return this;}if(arguments[m]==0){var E={};for(var e in this.attrs){if(this.attrs[T](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&&ap.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&&ap.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&&ap.is(arguments[0],"object")&&(S=arguments[0]);if(S){if(S.text&&this.type=="text"){this.node.string=S.text;}ab(this,S);if(S.gradient&&(({circle:1,ellipse:1})[T](this.type)||(S.gradient+aw).charAt()!="r")){b(this,S.gradient);}(this.type!="path"||this._.rt.deg)&&this.setBox(this.attrs);}return this;};aB[a2].toFront=function(){!this.removed&&this.Group.parentNode[aP](this.Group);this.paper.top!=this&&Z(this,this.paper);return this;};aB[a2].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;};aB[a2].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[aP](this.Group);}A(this,d,this.paper);return this;};aB[a2].insertBefore=function(d){if(this.removed){return this;}d.Group.parentNode.insertBefore(this.Group,d.Group);at(this,d,this.paper);return this;};var Q=function(e,d,a6,S){var R=ai("group"),a5=ai("oval"),i=a5.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[aP](a5);var E=new aB(a5,R,e);E.type="circle";ab(E,{stroke:"#000",fill:"none"});E.attrs.cx=d;E.attrs.cy=a6;E.attrs.r=S;E.setBox({x:d-S,y:a6-S,width:S*2,height:S*2});e.canvas[aP](R);return E;},aJ=function(e,a6,a5,a7,E,d){var R=ai("group"),i=ai("roundrect"),a8=(+d||0)/(aM(a7,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[aP](i);i.arcsize=a8;var S=new aB(i,R,e);S.type="rect";ab(S,{stroke:"#000"});S.arcsize=a8;S.setBox({x:a6,y:a5,width:a7,height:E,r:d});e.canvas[aP](R);return S;},aj=function(d,a7,a6,i,e){var R=ai("group"),E=ai("oval"),a5=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[aP](E);var S=new aB(E,R,d);S.type="ellipse";ab(S,{stroke:"#000"});S.attrs.cx=a7;S.attrs.cy=a6;S.attrs.rx=i;S.attrs.ry=e;S.setBox({x:a7-i,y:a6-e,width:i*2,height:e*2});d.canvas[aP](R);return S;},o=function(e,d,a7,a6,a8,E){var R=ai("group"),i=ai("image"),a5=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[aP](i);var S=new aB(i,R,e);S.type="image";S.attrs.src=d;S.attrs.x=a7;S.attrs.y=a6;S.attrs.w=a8;S.attrs.h=E;S.setBox({x:a7,y:a6,width:a8,height:E});e.canvas[aP](R);return S;},Y=function(e,a7,a6,a8){var R=ai("group"),E=ai("shape"),a5=E.style,a9=ai("path"),d=a9.style,i=ai("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;a9.v=ap.format("m{0},{1}l{2},{1}",P(a7),P(a6),P(a7)+1);a9.textpathok=true;a5.width=e.width;a5.height=e.height;i.string=a8+aw;i.on=true;E[aP](i);E[aP](a9);R[aP](E);var S=new aB(i,R,e);S.shape=E;S.textpath=a9;S.type="text";S.attrs.text=a8;S.attrs.x=a7;S.attrs.y=a6;S.attrs.w=1;S.attrs.h=1;ab(S,{font:j.font,stroke:"none",fill:"#000"});S.setBox();e.canvas[aP](R);return S;},aZ=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;},ai;M.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)");try{!M.namespaces.rvml&&M.namespaces.add("rvml","urn:schemas-microsoft-com:vml");ai=function(d){return M.createElement("<rvml:"+d+' class="rvml">');};}catch(ag){ai=function(d){return M.createElement("<"+d+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">');};}var w=function(){var i=aq[a0](null,arguments),d=i.container,a7=i.height,a8,e=i.width,a6=i.x,a5=i.y;if(!d){throw new Error("VML container not found.");}var R=new aX,S=R.canvas=M.createElement("div"),E=S.style;e=e||512;a7=a7||342;e==+e&&(e+="px");a7==+a7&&(a7+="px");R.width=1000;R.height=1000;R.coordsize="1000 1000";R.coordorigin="0 0";R.span=M.createElement("span");R.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;";S[aP](R.span);E.cssText=ap.format("width:{0};height:{1};position:absolute;clip:rect(0 {0} {1} 0);overflow:hidden",e,a7);if(d==1){M.body[aP](S);E.left=a6+"px";E.top=a5+"px";}else{d.style.width=e;d.style.height=a7;if(d.firstChild){d.insertBefore(S,d.firstChild);}else{d[aP](S);}}aK.call(R,R,ap.fn);return R;};aX[a2].clear=function(){this.canvas.innerHTML=aw;this.span=M.createElement("span");this.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;";this.canvas[aP](this.span);this.bottom=this.top=null;};aX[a2].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)){aX[a2].safari=function(){var d=this.rect(-99,-99,this.width+99,this.height+99);setTimeout(function(){d.remove();});};}else{aX[a2].safari=function(){};}var af=(function(){if(M.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(M.attachEvent){return function(S,E,i,e){var R=function(a5){return i.call(e,a5||ax.event);};S.attachEvent("on"+E,R);var d=function(){S.detachEvent("on"+E,R);return true;};return d;};}}})();for(var ad=G[m];ad--;){(function(d){aB[a2][d]=function(e){if(ap.is(e,"function")){this.events=this.events||[];this.events.push({name:d,f:e,unbind:af(this.shape||this.node,d,e,this)});}return this;};aB[a2]["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;};})(G[ad]);}aB[a2].hover=function(e,d){return this.mouseover(e).mouseout(d);};aB[a2].unhover=function(e,d){return this.unmouseover(e).unmouseout(d);};aX[a2].circle=function(d,i,e){return Q(this,d||0,i||0,e||0);};aX[a2].rect=function(d,R,e,i,E){return aJ(this,d||0,R||0,e||0,i||0,E||0);};aX[a2].ellipse=function(d,E,i,e){return aj(this,d||0,E||0,i||0,e||0);};aX[a2].path=function(d){d&&!ap.is(d,"string")&&!ap.is(d[0],"array")&&(d+=aw);return q(ap.format[a0](ap,arguments),this);};aX[a2].image=function(E,d,R,e,i){return o(this,E||"about:blank",d||0,R||0,e||0,i||0);};aX[a2].text=function(d,i,e){return Y(this,d||0,i||0,e||aw);};aX[a2].set=function(d){arguments[m]>1&&(d=Array[a2].splice.call(arguments,0,arguments[m]));return new U(d);};aX[a2].setSize=aZ;aX[a2].top=aX[a2].bottom=null;aX[a2].raphael=ap;function u(){return this.x+ao+this.y;}aB[a2].scale=function(bc,ba,E,e){if(bc==null&&ba==null){return{x:this._.sx,y:this._.sy,toString:u};}ba=ba||bc;!+ba&&(ba=bc);var bg,be,bf,bd,br=this.attrs;if(bc!=0){var a9=this.getBBox(),a6=a9.x+a9.width/2,R=a9.y+a9.height/2,bq=bc/this._.sx,bp=ba/this._.sy;E=(+E||E==0)?E:a6;e=(+e||e==0)?e:R;var a8=~~(bc/ac.abs(bc)),a5=~~(ba/ac.abs(ba)),bj=this.node.style,bt=E+(a6-E)*bq,bs=e+(R-e)*bp;switch(this.type){case"rect":case"image":var a7=br.width*a8*bq,bi=br.height*a5*bp;this.attr({height:bi,r:br.r*aM(a8*bq,a5*bp),width:a7,x:bt-a7/2,y:bs-bi/2});break;case"circle":case"ellipse":this.attr({rx:br.rx*a8*bq,ry:br.ry*a5*bp,r:br.r*aM(a8*bq,a5*bp),cx:bt,cy:bs});break;case"path":var bl=ae(br.path),bm=true;for(var bo=0,bh=bl[m];bo<bh;bo++){var bk=bl[bo],bn,S=aR.call(bk[0]);if(S=="M"&&bm){continue;}else{bm=false;}if(S=="A"){bk[bl[bo][m]-2]*=bq;bk[bl[bo][m]-1]*=bp;bk[1]*=a8*bq;bk[2]*=a5*bp;bk[5]=+(a8+a5?!!+bk[5]:!+bk[5]);}else{if(S=="H"){for(bn=1,jj=bk[m];bn<jj;bn++){bk[bn]*=bq;}}else{if(S=="V"){for(bn=1,jj=bk[m];bn<jj;bn++){bk[bn]*=bp;}}else{for(bn=1,jj=bk[m];bn<jj;bn++){bk[bn]*=(bn%2)?bq:bp;}}}}}var d=V(bl),bg=bt-d.x-d.width/2,be=bs-d.y-d.height/2;bl[0][1]+=bg;bl[0][2]+=be;this.attr({path:bl});break;}if(this.type in {text:1,image:1}&&(a8!=1||a5!=1)){if(this.transformations){this.transformations[2]="scale("[aW](a8,",",a5,")");this.node[v]("transform",this.transformations[aD](ao));bg=(a8==-1)?-br.x-(a7||0):br.x;be=(a5==-1)?-br.y-(bi||0):br.y;this.attr({x:bg,y:be});br.fx=a8-1;br.fy=a5-1;}else{this.node.filterMatrix=" progid:DXImageTransform.Microsoft.Matrix(M11="[aW](a8,", M12=0, M21=0, M22=",a5,", Dx=0, Dy=0, sizingmethod='auto expand', filtertype='bilinear')");bj.filter=(this.node.filterMatrix||aw)+(this.node.filterOpacity||aw);}}else{if(this.transformations){this.transformations[2]=aw;this.node[v]("transform",this.transformations[aD](ao));br.fx=0;br.fy=0;}else{this.node.filterMatrix=aw;bj.filter=(this.node.filterMatrix||aw)+(this.node.filterOpacity||aw);}}br.scale=[bc,ba,E,e][aD](ao);this._.sx=bc;this._.sy=ba;}return this;};aB[a2].clone=function(){var d=this.attr();delete d.scale;delete d.translation;return this.paper[this.type]().attr(d);};var aF=function(d,e){return function(be,S,a5){be=I(be);var ba,a9,E,a6,R="",bd={},bb,a8=0;for(var a7=0,bc=be.length;a7<bc;a7++){E=be[a7];if(E[0]=="M"){ba=+E[1];a9=+E[2];}else{a6=n(ba,a9,E[1],E[2],E[3],E[4],E[5],E[6]);if(a8+a6>S){if(e&&!bd.start){bb=ap.findDotsAtSegment(ba,a9,E[1],E[2],E[3],E[4],E[5],E[6],(S-a8)/a6);R+=["C",bb.start.x,bb.start.y,bb.m.x,bb.m.y,bb.x,bb.y];if(a5){return R;}bd.start=R;R=["M",bb.x,bb.y+"C",bb.n.x,bb.n.y,bb.end.x,bb.end.y,E[5],E[6]][aD]();a8+=a6;ba=+E[5];a9=+E[6];continue;}if(!d&&!e){bb=ap.findDotsAtSegment(ba,a9,E[1],E[2],E[3],E[4],E[5],E[6],(S-a8)/a6);return{x:bb.x,y:bb.y,alpha:bb.alpha};}}a8+=a6;ba=+E[5];a9=+E[6];}R+=E;}bd.end=R;bb=d?a8:e?bd:ap.findDotsAtSegment(ba,a9,E[1],E[2],E[3],E[4],E[5],E[6],1);bb.alpha&&(bb={x:bb.x,y:bb.y,alpha:bb.alpha});return bb;};},n=ak(function(E,d,a5,S,bb,ba,a9,a8){var R={x:0,y:0},a7=0;for(var a6=0;a6<1.01;a6+=0.01){var e=N(E,d,a5,S,bb,ba,a9,a8,a6);a6&&(a7+=ac.sqrt(aQ(R.x-e.x,2)+aQ(R.y-e.y,2)));R=e;}return a7;});var ar=aF(1),C=aF(),K=aF(0,1);aB[a2].getTotalLength=function(){if(this.type!="path"){return;}return ar(this.attrs.path);};aB[a2].getPointAtLength=function(d){if(this.type!="path"){return;}return C(this.attrs.path,d);};aB[a2].getSubpath=function(i,e){if(this.type!="path"){return;}if(ac.abs(this.getTotalLength()-e)<0.000001){return K(this.attrs.path,i).end;}var d=K(this.attrs.path,e,1);return i?K(d,i).end:d;};ap.easing_formulas={linear:function(d){return d;},"<":function(d){return aQ(d,3);},">":function(d){return aQ(d-1,3)+1;},"<>":function(d){d=d*2;if(d<1){return aQ(d,3)/2;}d-=2;return(aQ(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 aQ(2,-10*i)*ac.sin((i-d)*(2*ac.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 J={length:0},aV=function(){var a7=+new Date;for(var bj in J){if(bj!="length"&&J[T](bj)){var bo=J[bj];if(bo.stop||bo.el.removed){delete J[bj];J[m]--;continue;}var a5=a7-bo.start,bg=bo.ms,bf=bo.easing,bk=bo.from,bc=bo.diff,E=bo.to,bb=bo.t,be=bo.prev||0,a6=bo.el,R=bo.callback,bd={},d;if(a5<bg){var S=ap.easing_formulas[bf]?ap.easing_formulas[bf](a5/bg):a5/bg;for(var bh in bk){if(bk[T](bh)){switch(aa[bh]){case"along":d=S*bg*bc[bh];E.back&&(d=E.len-d);var bi=C(E[bh],d);a6.translate(bc.sx-bc.x||0,bc.sy-bc.y||0);bc.x=bi.x;bc.y=bi.y;a6.translate(bi.x-bc.sx,bi.y-bc.sy);E.rot&&a6.rotate(bc.r+bi.alpha,bi.x,bi.y);break;case"number":d=+bk[bh]+S*bg*bc[bh];break;case"colour":d="rgb("+[B(P(bk[bh].r+S*bg*bc[bh].r)),B(P(bk[bh].g+S*bg*bc[bh].g)),B(P(bk[bh].b+S*bg*bc[bh].b))][aD](",")+")";break;case"path":d=[];for(var bm=0,ba=bk[bh][m];bm<ba;bm++){d[bm]=[bk[bh][bm][0]];for(var bl=1,bn=bk[bh][bm][m];bl<bn;bl++){d[bm][bl]=+bk[bh][bm][bl]+S*bg*bc[bh][bm][bl];}d[bm]=d[bm][aD](ao);}d=d[aD](ao);break;case"csv":switch(bh){case"translation":var a9=bc[bh][0]*(a5-be),a8=bc[bh][1]*(a5-be);bb.x+=a9;bb.y+=a8;d=a9+ao+a8;break;case"rotation":d=+bk[bh][0]+S*bg*bc[bh][0];bk[bh][1]&&(d+=","+bk[bh][1]+","+bk[bh][2]);break;case"scale":d=[+bk[bh][0]+S*bg*bc[bh][0],+bk[bh][1]+S*bg*bc[bh][1],(2 in E[bh]?E[bh][2]:aw),(3 in E[bh]?E[bh][3]:aw)][aD](ao);break;case"clip-rect":d=[];var bm=4;while(bm--){d[bm]=+bk[bh][bm]+S*bg*bc[bh][bm];}break;}break;}bd[bh]=d;}}a6.attr(bd);a6._run&&a6._run.call(a6);}else{if(E.along){var bi=C(E.along,E.len*!E.back);a6.translate(bc.sx-(bc.x||0)+bi.x-bc.sx,bc.sy-(bc.y||0)+bi.y-bc.sy);E.rot&&a6.rotate(bc.r+bi.alpha,bi.x,bi.y);}(bb.x||bb.y)&&a6.translate(-bb.x,-bb.y);E.scale&&(E.scale=E.scale+aw);a6.attr(E);delete J[bj];J[m]--;a6.in_animation=null;ap.is(R,"function")&&R.call(a6);}bo.prev=a5;}}ap.svg&&a6&&a6.paper.safari();J[m]&&setTimeout(aV);},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=ae(this.attrs.path);e[0][1]+=+d;e[0][2]+=+i;this.attr({path:e});break;}return this;};aB[a2].animateWith=function(e,i,d,R,E){J[e.id]&&(i.start=J[e.id].start);return this.animate(i,d,R,E);};aB[a2].animateAlong=aC();aB[a2].animateAlongBack=aC(1);function aC(d){return function(E,i,e,S){var R={back:d};ap.is(e,"function")?(S=e):(R.rot=e);E&&E.constructor==aB&&(E=E.attrs.path);E&&(R.along=E);return this.animate(R,i,S);};}aB[a2].onAnimation=function(d){this._run=d||0;return this;};aB[a2].animate=function(bj,ba,a9,E){if(ap.is(a9,"function")||!a9){E=a9||null;}var be={},e={},a7={};for(var bb in bj){if(bj[T](bb)){if(aa[T](bb)){be[bb]=this.attr(bb);(be[bb]==null)&&(be[bb]=j[bb]);e[bb]=bj[bb];switch(aa[bb]){case"along":var bh=ar(bj[bb]),bc=C(bj[bb],bh*!!bj.back),R=this.getBBox();a7[bb]=bh/ba;a7.tx=R.x;a7.ty=R.y;a7.sx=bc.x;a7.sy=bc.y;e.rot=bj.rot;e.back=bj.back;e.len=bh;bj.rot&&(a7.r=X(this.rotate())||0);break;case"number":a7[bb]=(e[bb]-be[bb])/ba;break;case"colour":be[bb]=ap.getRGB(be[bb]);var bd=ap.getRGB(e[bb]);a7[bb]={r:(bd.r-be[bb].r)/ba,g:(bd.g-be[bb].g)/ba,b:(bd.b-be[bb].b)/ba};break;case"path":var S=I(be[bb],e[bb]);be[bb]=S[0];var a8=S[1];a7[bb]=[];for(var bg=0,a6=be[bb][m];bg<a6;bg++){a7[bb][bg]=[0];for(var bf=1,bi=be[bb][bg][m];bf<bi;bf++){a7[bb][bg][bf]=(a8[bg][bf]-be[bb][bg][bf])/ba;}}break;case"csv":var d=(bj[bb]+aw)[z](a),a5=(be[bb]+aw)[z](a);switch(bb){case"translation":be[bb]=[0,0];a7[bb]=[d[0]/ba,d[1]/ba];break;case"rotation":be[bb]=(a5[1]==d[1]&&a5[2]==d[2])?a5:[0,d[1],d[2]];a7[bb]=[(d[0]-be[bb][0])/ba,0,0];break;case"scale":bj[bb]=d;be[bb]=(be[bb]+aw)[z](a);a7[bb]=[(d[0]-be[bb][0])/ba,(d[1]-be[bb][1])/ba,0,0];break;case"clip-rect":be[bb]=(be[bb]+aw)[z](a);a7[bb]=[];var bg=4;while(bg--){a7[bb][bg]=(d[bg]-be[bb][bg])/ba;}break;}e[bb]=d;}}}}this.stop();this.in_animation=1;J[this.id]={start:bj.start||+new Date,ms:ba,easing:a9,from:be,diff:a7,to:e,el:this,callback:E,t:{x:0,y:0}};++J[m]==1&&aV();return this;};aB[a2].stop=function(){J[this.id]&&J[m]--;delete J[this.id];return this;};aB[a2].translate=function(d,e){return this.attr({translation:d+" "+e});};aB[a2][aE]=function(){return"Rapha\xebl\u2019s object";};ap.ae=J;var U=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==aB||d[e].constructor==U)){this[this.items[m]]=this.items[this.items[m]]=d[e];this[m]++;}}}};U[a2][f]=function(){var R,d;for(var e=0,E=arguments[m];e<E;e++){R=arguments[e];if(R&&(R.constructor==aB||R.constructor==U)){d=this.items[m];this[d]=this.items[d]=R;this[m]++;}}return this;};U[a2].pop=function(){delete this[this[m]--];return this.items.pop();};for(var y in aB[a2]){if(aB[a2][T](y)){U[a2][y]=(function(d){return function(){for(var e=0,E=this.items[m];e<E;e++){this.items[e][d][a0](this.items[e],arguments);}return this;};})(y);}}U[a2].attr=function(e,a5){if(e&&ap.is(e,"array")&&ap.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[a0](this.items[E],arguments);}}return this;};U[a2].animate=function(S,e,a7,a6){(ap.is(a7,"function")||!a7)&&(a6=a7||null);var d=this.items[m],E=d,a5=this,R;a6&&(R=function(){!--d&&a6.call(a5);});this.items[--E].animate(S,e,a7||R,R);while(E--){this.items[E].animateWith(this.items[d-1],S,e,a7||R,R);}return this;};U[a2].insertAfter=function(e){var d=this.items[m];while(d--){this.items[d].insertAfter(e);}return this;};U[a2].getBBox=function(){var d=[],a5=[],e=[],R=[];for(var E=this.items[m];E--;){var S=this.items[E].getBBox();d[f](S.x);a5[f](S.y);e[f](S.x+S.width);R[f](S.y+S.height);}d=aM[a0](0,d);a5=aM[a0](0,a5);return{x:d,y:a5,width:g[a0](0,e)-d,height:g[a0](0,R)-a5};};U[a2].clone=function(E){E=new U;for(var d=0,e=this.items[m];d<e;d++){E[f](this.items[d].clone());}return E;};ap.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 a5 in e.face){if(e.face[T](a5)){E.face[a5]=e.face[a5];}}if(this.fonts[i]){this.fonts[i][f](E);}else{this.fonts[i]=[E];}if(!e.svg){E.face["units-per-em"]=H(e.face["units-per-em"],10);for(var R in e.glyphs){if(e.glyphs[T](R)){var S=e.glyphs[R];E.glyphs[R]={w:S.w,k:{},d:S.d&&"M"+S.d[aT](/[mlcxtrv]/g,function(a6){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[a6]||"M";})+"z"};if(S.k){for(var d in S.k){if(S[T](d)){E.glyphs[R].k[d]=S.k[d];}}}}}}return e;};aX[a2].getFont=function(a7,a8,e,R){R=R||"normal";e=e||"normal";a8=+a8||{normal:400,bold:700,lighter:300,bolder:800}[a8]||400;var S=ap.fonts[a7];if(!S){var E=new RegExp("(^|\\s)"+a7[aT](/[^\w\d\s+!~.:_-]/g,aw)+"(\\s|$)","i");for(var d in ap.fonts){if(ap.fonts[T](d)){if(E.test(d)){S=ap.fonts[d];break;}}}}var a5;if(S){for(var a6=0,a9=S[m];a6<a9;a6++){a5=S[a6];if(a5.face["font-weight"]==a8&&(a5.face["font-style"]==e||!a5.face["font-style"])&&a5.face["font-stretch"]==R){break;}}}return a5;};aX[a2].print=function(R,E,d,a6,a7,bg){bg=bg||"middle";var bc=this.set(),bf=(d+aw)[z](aw),bd=0,a9=aw,bh;ap.is(a6,"string")&&(a6=this.getFont(a6));if(a6){bh=(a7||16)/a6.face["units-per-em"];var e=a6.face.bbox.split(a),a5=+e[0],a8=+e[1]+(bg=="baseline"?e[3]-e[1]+(+a6.face.descent):(e[3]-e[1])/2);for(var bb=0,S=bf[m];bb<S;bb++){var ba=bb&&a6.glyphs[bf[bb-1]]||{},be=a6.glyphs[bf[bb]];bd+=bb?(ba.w||a6.w)+(ba.k&&ba.k[bf[bb]]||0):0;be&&be.d&&bc[f](this.path(be.d).attr({fill:"#000",stroke:"none",translation:[bd,0]}));}bc.scale(bh,bh,a5,a8).translate(R-a5,E-a8);}return bc;};ap.format=function(i){var e=ap.is(arguments[1],"array")?[0][aW](arguments[1]):arguments,d=/\{(\d+)\}/g;i&&ap.is(i,"string")&&e[m]-1&&(i=i[aT](d,function(R,E){return e[++E]==null?aw:e[E];}));return i||aw;};ap.ninja=function(){l.was?(Raphael=l.is):delete Raphael;return ap;};ap.el=aB[a2];return ap;})();