Fix for touch events and drag method
[raphael] / raphael-min.js
1 /*
2  * Raphael 1.4.0 - JavaScript Vector Library
3  *
4  * Copyright (c) 2010 Dmitry Baranovskiy (http://raphaeljs.com)
5  * Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) license.
6  */
7 Raphael=function(){function m(){if(m.is(arguments[0],W)){for(var a=arguments[0],b=za[K](m,a.splice(0,3+m.is(a[0],P))),c=b.set(),d=0,f=a[o];d<f;d++){var e=a[d]||{};kb.test(e.type)&&c[E](b[e.type]().attr(e))}return c}return za[K](m,arguments)}m.version="1.4.0";var U=/[, ]+/,kb=/^(circle|rect|path|ellipse|text|image)$/,p="prototype",B="hasOwnProperty",C=document,X=window,Ha={was:Object[p][B].call(X,"Raphael"),is:X.Raphael};function G(){}var w="appendChild",K="apply",N="concat",lb="createTouch"in C,s=
8 "",Q=" ",H="split",Ia="click dblclick mousedown mousemove mouseout mouseover mouseup"[H](Q),Ja={mousedown:"touchstart",mousemove:"touchmove",mouseup:"touchend"},R="join",o="length",ca=String[p].toLowerCase,x=Math,Y=x.max,Z=x.min,P="number",fa="string",W="array",O="toString",ba="fill",mb=Object[p][O],D=x.pow,E="push",ga=/^(?=[\da-f]$)/,Ka=/^url\(['"]?([^\)]+?)['"]?\)$/i,nb=/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+\s*,\s*[\d\.]+\s*,\s*[\d\.]+(?:\s*,\s*[\d\.]+)?)\s*\)|rgba?\(\s*([\d\.]+%\s*,\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,
9 F=x.round,V="setAttribute",z=parseFloat,da=parseInt,oa=String[p].toUpperCase,pa={blur:0,"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,
10 "stroke-width":1,target:"_blank","text-anchor":"middle",title:"Raphael",translation:"0 0",width:0,x:0,y:0},Aa={along:"along",blur:P,"clip-rect":"csv",cx:P,cy:P,fill:"colour","fill-opacity":P,"font-size":P,height:P,opacity:P,path:"path",r:P,rotation:"csv",rx:P,ry:P,scale:"csv",stroke:"colour","stroke-opacity":P,"stroke-width":P,translation:"csv",width:P,x:P,y:P},I="replace";m.type=X.SVGAngle||C.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")?"SVG":"VML";if(m.type==
11 "VML"){var ha=C.createElement("div");ha.innerHTML="<!--[if vml]><br><br><![endif]--\>";if(ha.childNodes[o]!=2)return m.type=null;ha=null}m.svg=!(m.vml=m.type=="VML");G[p]=m[p];m._id=0;m._oid=0;m.fn={};m.is=function(a,b){b=ca.call(b);return b=="object"&&a===Object(a)||b=="undefined"&&typeof a==b||b=="null"&&a==null||ca.call(mb.call(a).slice(8,-1))==b};m.setWindow=function(a){X=a;C=X.document};function qa(a){if(m.vml){var b=/^\s+|\s+$/g;qa=T(function(d){var f;d=(d+s)[I](b,s);try{var e=new X.ActiveXObject("htmlfile");
12 e.write("<body>");e.close();f=e.body}catch(h){f=X.createPopup().document.body}e=f.createTextRange();try{f.style.color=d;var g=e.queryCommandValue("ForeColor");g=(g&255)<<16|g&65280|(g&16711680)>>>16;return"#"+("000000"+g[O](16)).slice(-6)}catch(i){return"none"}})}else{var c=C.createElement("i");c.title="Rapha\u00ebl Colour Picker";c.style.display="none";C.body[w](c);qa=T(function(d){c.style.color=d;return C.defaultView.getComputedStyle(c,s).getPropertyValue("color")})}return qa(a)}function ob(){return"hsb("+
13 [this.h,this.s,this.b]+")"}function pb(){return this.hex}m.hsb2rgb=T(function(a,b,c){if(m.is(a,"object")&&"h"in a&&"s"in a&&"b"in a){c=a.b;b=a.s;a=a.h}var d;if(c==0)return{r:0,g:0,b:0,hex:"#000"};if(a>1||b>1||c>1){a/=255;b/=255;c/=255}d=~~(a*6);a=a*6-d;var f=c*(1-b),e=c*(1-b*a),h=c*(1-b*(1-a));a=[c,e,f,f,h,c,c][d];b=[h,c,c,e,f,f,h][d];d=[f,f,h,c,c,e,f][d];a*=255;b*=255;d*=255;c={r:a,g:b,b:d,toString:pb};a=(~~a)[O](16);b=(~~b)[O](16);d=(~~d)[O](16);a=a[I](ga,"0");b=b[I](ga,"0");d=d[I](ga,"0");c.hex=
14 "#"+a+b+d;return c},m);m.rgb2hsb=T(function(a,b,c){if(m.is(a,"object")&&"r"in a&&"g"in a&&"b"in a){c=a.b;b=a.g;a=a.r}if(m.is(a,fa)){var d=m.getRGB(a);a=d.r;b=d.g;c=d.b}if(a>1||b>1||c>1){a/=255;b/=255;c/=255}var f=Y(a,b,c),e=Z(a,b,c);d=f;if(e==f)return{h:0,s:0,b:f};else{var h=f-e;e=h/f;a=a==f?(b-c)/h:b==f?2+(c-a)/h:4+(a-b)/h;a/=6;a<0&&a++;a>1&&a--}return{h:a,s:e,b:d,toString:ob}},m);var qb=/,?([achlmqrstvxz]),?/gi,ra=/\s*,\s*/,rb={hs:1,rg:1};m._path2string=function(){return this.join(",")[I](qb,"$1")};
15 function T(a,b,c){function d(){var f=Array[p].slice.call(arguments,0),e=f[R]("\u25ba"),h=d.cache=d.cache||{},g=d.count=d.count||[];if(h[B](e))return c?c(h[e]):h[e];g[o]>=1000&&delete h[g.shift()];g[E](e);h[e]=a[K](b,f);return c?c(h[e]):h[e]}return d}m.getRGB=T(function(a){if(!a||(a+=s).indexOf("-")+1)return{r:-1,g:-1,b:-1,hex:"none",error:1};if(a=="none")return{r:-1,g:-1,b:-1,hex:"none"};!(rb[B](a.substring(0,2))||a.charAt()=="#")&&(a=qa(a));var b,c,d,f,e;if(a=a.match(nb)){if(a[2]){d=da(a[2].substring(5),
16 16);c=da(a[2].substring(3,5),16);b=da(a[2].substring(1,3),16)}if(a[3]){d=da((e=a[3].charAt(3))+e,16);c=da((e=a[3].charAt(2))+e,16);b=da((e=a[3].charAt(1))+e,16)}if(a[4]){a=a[4][H](ra);b=z(a[0]);c=z(a[1]);d=z(a[2]);f=z(a[3])}if(a[5]){a=a[5][H](ra);b=z(a[0])*2.55;c=z(a[1])*2.55;d=z(a[2])*2.55;f=z(a[3])}if(a[6]){a=a[6][H](ra);b=z(a[0]);c=z(a[1]);d=z(a[2]);return m.hsb2rgb(b,c,d)}if(a[7]){a=a[7][H](ra);b=z(a[0])*2.55;c=z(a[1])*2.55;d=z(a[2])*2.55;return m.hsb2rgb(b,c,d)}a={r:b,g:c,b:d};b=(~~b)[O](16);
17 c=(~~c)[O](16);d=(~~d)[O](16);b=b[I](ga,"0");c=c[I](ga,"0");d=d[I](ga,"0");a.hex="#"+b+c+d;isFinite(z(f))&&(a.o=f);return a}return{r:-1,g:-1,b:-1,hex:"none",error:1}},m);m.getColor=function(a){a=this.getColor.start=this.getColor.start||{h:0,s:1,b:a||0.75};var b=this.hsb2rgb(a.h,a.s,a.b);a.h+=0.075;if(a.h>1){a.h=0;a.s-=0.2;a.s<=0&&(this.getColor.start={h:0,s:1,b:a.b})}return b.hex};m.getColor.reset=function(){delete this.start};var sb=/([achlmqstvz])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?\s*,?\s*)+)/ig,
18 tb=/(-?\d*\.?\d*(?:e[-+]?\d+)?)\s*,?\s*/ig;m.parsePathString=T(function(a){if(!a)return null;var b={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},c=[];if(m.is(a,W)&&m.is(a[0],W))c=sa(a);c[o]||(a+s)[I](sb,function(d,f,e){var h=[];d=ca.call(f);e[I](tb,function(g,i){i&&h[E](+i)});if(d=="m"&&h[o]>2){c[E]([f][N](h.splice(0,2)));d="l";f=f=="m"?"l":"L"}for(;h[o]>=b[d];){c[E]([f][N](h.splice(0,b[d])));if(!b[d])break}});c[O]=m._path2string;return c});m.findDotsAtSegment=function(a,b,c,d,f,e,h,g,i){var j=1-i,k=
19 D(j,3)*a+D(j,2)*3*i*c+j*3*i*i*f+D(i,3)*h;j=D(j,3)*b+D(j,2)*3*i*d+j*3*i*i*e+D(i,3)*g;var n=a+2*i*(c-a)+i*i*(f-2*c+a),r=b+2*i*(d-b)+i*i*(e-2*d+b),q=c+2*i*(f-c)+i*i*(h-2*f+c),l=d+2*i*(e-d)+i*i*(g-2*e+d);a=(1-i)*a+i*c;b=(1-i)*b+i*d;f=(1-i)*f+i*h;e=(1-i)*e+i*g;g=90-x.atan((n-q)/(r-l))*180/x.PI;(n>q||r<l)&&(g+=180);return{x:k,y:j,m:{x:n,y:r},n:{x:q,y:l},start:{x:a,y:b},end:{x:f,y:e},alpha:g}};var ua=T(function(a){if(!a)return{x:0,y:0,width:0,height:0};a=ta(a);for(var b=0,c=0,d=[],f=[],e,h=0,g=a[o];h<g;h++){e=
20 a[h];if(e[0]=="M"){b=e[1];c=e[2];d[E](b);f[E](c)}else{b=ub(b,c,e[1],e[2],e[3],e[4],e[5],e[6]);d=d[N](b.min.x,b.max.x);f=f[N](b.min.y,b.max.y);b=e[5];c=e[6]}}a=Z[K](0,d);e=Z[K](0,f);return{x:a,y:e,width:Y[K](0,d)-a,height:Y[K](0,f)-e}});function sa(a){var b=[];if(!m.is(a,W)||!m.is(a&&a[0],W))a=m.parsePathString(a);for(var c=0,d=a[o];c<d;c++){b[c]=[];for(var f=0,e=a[c][o];f<e;f++)b[c][f]=a[c][f]}b[O]=m._path2string;return b}var La=T(function(a){if(!m.is(a,W)||!m.is(a&&a[0],W))a=m.parsePathString(a);
21 var b=[],c=0,d=0,f=0,e=0,h=0;if(a[0][0]=="M"){c=a[0][1];d=a[0][2];f=c;e=d;h++;b[E](["M",c,d])}h=h;for(var g=a[o];h<g;h++){var i=b[h]=[],j=a[h];if(j[0]!=ca.call(j[0])){i[0]=ca.call(j[0]);switch(i[0]){case "a":i[1]=j[1];i[2]=j[2];i[3]=j[3];i[4]=j[4];i[5]=j[5];i[6]=+(j[6]-c).toFixed(3);i[7]=+(j[7]-d).toFixed(3);break;case "v":i[1]=+(j[1]-d).toFixed(3);break;case "m":f=j[1];e=j[2];default:for(var k=1,n=j[o];k<n;k++)i[k]=+(j[k]-(k%2?c:d)).toFixed(3)}}else{b[h]=[];if(j[0]=="m"){f=j[1]+c;e=j[2]+d}i=0;for(k=
22 j[o];i<k;i++)b[h][i]=j[i]}j=b[h][o];switch(b[h][0]){case "z":c=f;d=e;break;case "h":c+=+b[h][j-1];break;case "v":d+=+b[h][j-1];break;default:c+=+b[h][j-2];d+=+b[h][j-1]}}b[O]=m._path2string;return b},0,sa),la=T(function(a){if(!m.is(a,W)||!m.is(a&&a[0],W))a=m.parsePathString(a);var b=[],c=0,d=0,f=0,e=0,h=0;if(a[0][0]=="M"){c=+a[0][1];d=+a[0][2];f=c;e=d;h++;b[0]=["M",c,d]}h=h;for(var g=a[o];h<g;h++){var i=b[h]=[],j=a[h];if(j[0]!=oa.call(j[0])){i[0]=oa.call(j[0]);switch(i[0]){case "A":i[1]=j[1];i[2]=
23 j[2];i[3]=j[3];i[4]=j[4];i[5]=j[5];i[6]=+(j[6]+c);i[7]=+(j[7]+d);break;case "V":i[1]=+j[1]+d;break;case "H":i[1]=+j[1]+c;break;case "M":f=+j[1]+c;e=+j[2]+d;default:for(var k=1,n=j[o];k<n;k++)i[k]=+j[k]+(k%2?c:d)}}else{k=0;for(n=j[o];k<n;k++)b[h][k]=j[k]}switch(i[0]){case "Z":c=f;d=e;break;case "H":c=i[1];break;case "V":d=i[1];break;default:c=b[h][b[h][o]-2];d=b[h][b[h][o]-1]}}b[O]=m._path2string;return b},null,sa);function va(a,b,c,d){return[a,b,c,d,c,d]}function Ma(a,b,c,d,f,e){var h=1/3,g=2/3;return[h*
24 a+g*c,h*b+g*d,h*f+g*c,h*e+g*d,f,e]}function Na(a,b,c,d,f,e,h,g,i,j){var k=x.PI,n=k*120/180,r=k/180*(+f||0),q=[],l,u=T(function(J,ea,wa){var vb=J*x.cos(wa)-ea*x.sin(wa);J=J*x.sin(wa)+ea*x.cos(wa);return{x:vb,y:J}});if(j){y=j[0];l=j[1];e=j[2];A=j[3]}else{l=u(a,b,-r);a=l.x;b=l.y;l=u(g,i,-r);g=l.x;i=l.y;x.cos(k/180*f);x.sin(k/180*f);l=(a-g)/2;y=(b-i)/2;A=l*l/(c*c)+y*y/(d*d);if(A>1){A=x.sqrt(A);c=A*c;d=A*d}A=c*c;var L=d*d;A=(e==h?-1:1)*x.sqrt(x.abs((A*L-A*y*y-L*l*l)/(A*y*y+L*l*l)));e=A*c*y/d+(a+g)/2;var A=
25 A*-d*l/c+(b+i)/2,y=x.asin(((b-A)/d).toFixed(7));l=x.asin(((i-A)/d).toFixed(7));y=a<e?k-y:y;l=g<e?k-l:l;y<0&&(y=k*2+y);l<0&&(l=k*2+l);if(h&&y>l)y-=k*2;if(!h&&l>y)l-=k*2}k=l-y;if(x.abs(k)>n){q=l;k=g;L=i;l=y+n*(h&&l>y?1:-1);g=e+c*x.cos(l);i=A+d*x.sin(l);q=Na(g,i,c,d,f,0,h,k,L,[l,q,e,A])}k=l-y;f=x.cos(y);e=x.sin(y);h=x.cos(l);l=x.sin(l);k=x.tan(k/4);c=4/3*c*k;k=4/3*d*k;d=[a,b];a=[a+c*e,b-k*f];b=[g+c*l,i-k*h];g=[g,i];a[0]=2*d[0]-a[0];a[1]=2*d[1]-a[1];if(j)return[a,b,g][N](q);else{q=[a,b,g][N](q)[R]()[H](",");
26 j=[];g=0;for(i=q[o];g<i;g++)j[g]=g%2?u(q[g-1],q[g],r).y:u(q[g],q[g+1],r).x;return j}}function ma(a,b,c,d,f,e,h,g,i){var j=1-i;return{x:D(j,3)*a+D(j,2)*3*i*c+j*3*i*i*f+D(i,3)*h,y:D(j,3)*b+D(j,2)*3*i*d+j*3*i*i*e+D(i,3)*g}}var ub=T(function(a,b,c,d,f,e,h,g){var i=f-2*c+a-(h-2*f+c),j=2*(c-a)-2*(f-c),k=a-c,n=(-j+x.sqrt(j*j-4*i*k))/2/i;i=(-j-x.sqrt(j*j-4*i*k))/2/i;var r=[b,g],q=[a,h];x.abs(n)>1000000000000&&(n=0.5);x.abs(i)>1000000000000&&(i=0.5);if(n>0&&n<1){n=ma(a,b,c,d,f,e,h,g,n);q[E](n.x);r[E](n.y)}if(i>
27 0&&i<1){n=ma(a,b,c,d,f,e,h,g,i);q[E](n.x);r[E](n.y)}i=e-2*d+b-(g-2*e+d);j=2*(d-b)-2*(e-d);k=b-d;n=(-j+x.sqrt(j*j-4*i*k))/2/i;i=(-j-x.sqrt(j*j-4*i*k))/2/i;x.abs(n)>1000000000000&&(n=0.5);x.abs(i)>1000000000000&&(i=0.5);if(n>0&&n<1){n=ma(a,b,c,d,f,e,h,g,n);q[E](n.x);r[E](n.y)}if(i>0&&i<1){n=ma(a,b,c,d,f,e,h,g,i);q[E](n.x);r[E](n.y)}return{min:{x:Z[K](0,q),y:Z[K](0,r)},max:{x:Y[K](0,q),y:Y[K](0,r)}}}),ta=T(function(a,b){var c=la(a),d=b&&la(b);a={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null};b={x:0,y:0,
28 bx:0,by:0,X:0,Y:0,qx:null,qy:null};function f(q,l){var u;if(!q)return["C",l.x,l.y,l.x,l.y,l.x,l.y];!(q[0]in{T:1,Q:1})&&(l.qx=l.qy=null);switch(q[0]){case "M":l.X=q[1];l.Y=q[2];break;case "A":q=["C"][N](Na[K](0,[l.x,l.y][N](q.slice(1))));break;case "S":u=l.x+(l.x-(l.bx||l.x));l=l.y+(l.y-(l.by||l.y));q=["C",u,l][N](q.slice(1));break;case "T":l.qx=l.x+(l.x-(l.qx||l.x));l.qy=l.y+(l.y-(l.qy||l.y));q=["C"][N](Ma(l.x,l.y,l.qx,l.qy,q[1],q[2]));break;case "Q":l.qx=q[1];l.qy=q[2];q=["C"][N](Ma(l.x,l.y,q[1],
29 q[2],q[3],q[4]));break;case "L":q=["C"][N](va(l.x,l.y,q[1],q[2]));break;case "H":q=["C"][N](va(l.x,l.y,q[1],l.y));break;case "V":q=["C"][N](va(l.x,l.y,l.x,q[1]));break;case "Z":q=["C"][N](va(l.x,l.y,l.X,l.Y));break}return q}function e(q,l){if(q[l][o]>7){q[l].shift();for(var u=q[l];u[o];)q.splice(l++,0,["C"][N](u.splice(0,6)));q.splice(l,1);i=Y(c[o],d&&d[o]||0)}}function h(q,l,u,L,A){if(q&&l&&q[A][0]=="M"&&l[A][0]!="M"){l.splice(A,0,["M",L.x,L.y]);u.bx=0;u.by=0;u.x=q[A][1];u.y=q[A][2];i=Y(c[o],d&&
30 d[o]||0)}}for(var g=0,i=Y(c[o],d&&d[o]||0);g<i;g++){c[g]=f(c[g],a);e(c,g);d&&(d[g]=f(d[g],b));d&&e(d,g);h(c,d,a,b,g);h(d,c,b,a,g);var j=c[g],k=d&&d[g],n=j[o],r=d&&k[o];a.x=j[n-2];a.y=j[n-1];a.bx=z(j[n-4])||a.x;a.by=z(j[n-3])||a.y;b.bx=d&&(z(k[r-4])||b.x);b.by=d&&(z(k[r-3])||b.y);b.x=d&&k[r-2];b.y=d&&k[r-1]}return d?[c,d]:c},null,sa),Oa=T(function(a){for(var b=[],c=0,d=a[o];c<d;c++){var f={},e=a[c].match(/^([^:]*):?([\d\.]*)/);f.color=m.getRGB(e[1]);if(f.color.error)return null;f.color=f.color.hex;
31 e[2]&&(f.offset=e[2]+"%");b[E](f)}c=1;for(d=b[o]-1;c<d;c++)if(!b[c].offset){a=z(b[c-1].offset||0);e=0;for(f=c+1;f<d;f++)if(b[f].offset){e=b[f].offset;break}if(!e){e=100;f=d}e=z(e);for(e=(e-a)/(f-c+1);c<f;c++){a+=e;b[c].offset=a+"%"}}return b});function Pa(a,b,c,d){if(m.is(a,fa)||m.is(a,"object")){a=m.is(a,fa)?C.getElementById(a):a;if(a.tagName)return b==null?{container:a,width:a.style.pixelWidth||a.offsetWidth,height:a.style.pixelHeight||a.offsetHeight}:{container:a,width:b,height:c}}else return{container:1,
32 x:a,y:b,width:c,height:d}}function Ba(a,b){var c=this;for(var d in b)if(b[B](d)&&!(d in a))switch(typeof b[d]){case "function":(function(f){a[d]=a===c?f:function(){return f[K](c,arguments)}})(b[d]);break;case "object":a[d]=a[d]||{};Ba.call(this,a[d],b[d]);break;default:a[d]=b[d];break}}function ia(a,b){a==b.top&&(b.top=a.prev);a==b.bottom&&(b.bottom=a.next);a.next&&(a.next.prev=a.prev);a.prev&&(a.prev.next=a.next)}function Qa(a,b){if(b.top!==a){ia(a,b);a.next=null;a.prev=b.top;b.top.next=a;b.top=
33 a}}function Ra(a,b){if(b.bottom!==a){ia(a,b);a.next=b.bottom;a.prev=null;b.bottom.prev=a;b.bottom=a}}function Sa(a,b,c){ia(a,c);b==c.top&&(c.top=a);b.next&&(b.next.prev=a);a.next=b.next;a.prev=b;b.next=a}function Ta(a,b,c){ia(a,c);b==c.bottom&&(c.bottom=a);b.prev&&(b.prev.next=a);a.prev=b.prev;b.prev=a;a.next=b}function Ua(a){return function(){throw new Error("Rapha\u00ebl: you are calling to method \u201c"+a+"\u201d of removed object");}}var Va=/^r(?:\(([^,]+?)\s*,\s*([^\)]+?)\))?/;if(m.svg){G[p].svgns=
34 "http://www.w3.org/2000/svg";G[p].xlink="http://www.w3.org/1999/xlink";F=function(a){return+a+(~~a===a)*0.5};var v=function(a,b){if(b)for(var c in b)b[B](c)&&a[V](c,b[c]+s);else{a=C.createElementNS(G[p].svgns,a);a.style.webkitTapHighlightColor="rgba(0,0,0,0)";return a}};m[O]=function(){return"Your browser supports SVG.\nYou are running Rapha\u00ebl "+this.version};var Wa=function(a,b){var c=v("path");b.canvas&&b.canvas[w](c);b=new t(c,b);b.type="path";aa(b,{fill:"none",stroke:"#000",path:a});return b},
35 na=function(a,b,c){var d="linear",f=0.5,e=0.5,h=a.style;b=(b+s)[I](Va,function(k,n,r){d="radial";if(n&&r){f=z(n);e=z(r);k=(e>0.5)*2-1;D(f-0.5,2)+D(e-0.5,2)>0.25&&(e=x.sqrt(0.25-D(f-0.5,2))*k+0.5)&&e!=0.5&&(e=e.toFixed(5)-1.0E-5*k)}return s});b=b[H](/\s*\-\s*/);if(d=="linear"){var g=b.shift();g=-z(g);if(isNaN(g))return null;g=[0,0,x.cos(g*x.PI/180),x.sin(g*x.PI/180)];var i=1/(Y(x.abs(g[2]),x.abs(g[3]))||1);g[2]*=i;g[3]*=i;if(g[2]<0){g[0]=-g[2];g[2]=0}if(g[3]<0){g[1]=-g[3];g[3]=0}}b=Oa(b);if(!b)return null;
36 i=a.getAttribute(ba);(i=i.match(/^url\(#(.*)\)$/))&&c.defs.removeChild(C.getElementById(i[1]));i=v(d+"Gradient");i.id="r"+(m._id++)[O](36);v(i,d=="radial"?{fx:f,fy:e}:{x1:g[0],y1:g[1],x2:g[2],y2:g[3]});c.defs[w](i);c=0;for(g=b[o];c<g;c++){var j=v("stop");v(j,{offset:b[c].offset?b[c].offset:!c?"0%":"100%","stop-color":b[c].color||"#fff"});i[w](j)}v(a,{fill:"url(#"+i.id+")",opacity:1,"fill-opacity":1});h.fill=s;h.opacity=1;return h.fillOpacity=1},Ca=function(a){var b=a.getBBox();v(a.pattern,{patternTransform:m.format("translate({0},{1})",
37 b.x,b.y)})},aa=function(a,b){var c={"":[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]},d=a.node,f=a.attrs,e=a.rotate();function h(l,u){if(u=c[ca.call(u)]){var L=l.attrs["stroke-width"]||"1";l={round:L,square:L,butt:0}[l.attrs["stroke-linecap"]||b["stroke-linecap"]]||0;for(var A=[],y=u[o];y--;)A[y]=u[y]*L+(y%2?1:-1)*l;v(d,{"stroke-dasharray":A[R](",")})}}b[B]("rotation")&&(e=b.rotation);var g=
38 (e+s)[H](U);if(g.length-1){g[1]=+g[1];g[2]=+g[2]}else g=null;z(e)&&a.rotate(0,true);for(var i in b)if(b[B](i))if(pa[B](i)){var j=b[i];f[i]=j;switch(i){case "blur":a.blur(j);break;case "rotation":a.rotate(j,true);break;case "href":case "title":case "target":var k=d.parentNode;if(ca.call(k.tagName)!="a"){var n=v("a");k.insertBefore(n,d);n[w](d);k=n}k.setAttributeNS(a.paper.xlink,i,j);break;case "cursor":d.style.cursor=j;break;case "clip-rect":k=(j+s)[H](U);if(k[o]==4){a.clip&&a.clip.parentNode.parentNode.removeChild(a.clip.parentNode);
39 var r=v("clipPath");n=v("rect");r.id="r"+(m._id++)[O](36);v(n,{x:k[0],y:k[1],width:k[2],height:k[3]});r[w](n);a.paper.defs[w](r);v(d,{"clip-path":"url(#"+r.id+")"});a.clip=n}if(!j){(j=C.getElementById(d.getAttribute("clip-path")[I](/(^url\(#|\)$)/g,s)))&&j.parentNode.removeChild(j);v(d,{"clip-path":s});delete a.clip}break;case "path":if(a.type=="path")v(d,{d:j?(f.path=la(j)):"M0,0"});break;case "width":d[V](i,j);if(f.fx){i="x";j=f.x}else break;case "x":if(f.fx)j=-f.x-(f.width||0);case "rx":if(i==
40 "rx"&&a.type=="rect")break;case "cx":g&&(i=="x"||i=="cx")&&(g[1]+=j-f[i]);d[V](i,F(j));a.pattern&&Ca(a);break;case "height":d[V](i,j);if(f.fy){i="y";j=f.y}else break;case "y":if(f.fy)j=-f.y-(f.height||0);case "ry":if(i=="ry"&&a.type=="rect")break;case "cy":g&&(i=="y"||i=="cy")&&(g[2]+=j-f[i]);d[V](i,F(j));a.pattern&&Ca(a);break;case "r":a.type=="rect"?v(d,{rx:j,ry:j}):d[V](i,j);break;case "src":a.type=="image"&&d.setAttributeNS(a.paper.xlink,"href",j);break;case "stroke-width":d.style.strokeWidth=
41 j;d[V](i,j);f["stroke-dasharray"]&&h(a,f["stroke-dasharray"]);break;case "stroke-dasharray":h(a,j);break;case "translation":j=(j+s)[H](U);j[0]=+j[0]||0;j[1]=+j[1]||0;if(g){g[1]+=j[0];g[2]+=j[1]}xa.call(a,j[0],j[1]);break;case "scale":j=(j+s)[H](U);a.scale(+j[0]||1,+j[1]||+j[0]||1,isNaN(z(j[2]))?null:+j[2],isNaN(z(j[3]))?null:+j[3]);break;case ba:if(k=(j+s).match(Ka)){r=v("pattern");var q=v("image");r.id="r"+(m._id++)[O](36);v(r,{x:0,y:0,patternUnits:"userSpaceOnUse",height:1,width:1});v(q,{x:0,y:0});
42 q.setAttributeNS(a.paper.xlink,"href",k[1]);r[w](q);j=C.createElement("img");j.style.cssText="position:absolute;left:-9999em;top-9999em";j.onload=function(){v(r,{width:this.offsetWidth,height:this.offsetHeight});v(q,{width:this.offsetWidth,height:this.offsetHeight});C.body.removeChild(this);a.paper.safari()};C.body[w](j);j.src=k[1];a.paper.defs[w](r);d.style.fill="url(#"+r.id+")";v(d,{fill:"url(#"+r.id+")"});a.pattern=r;a.pattern&&Ca(a);break}k=m.getRGB(j);if(k.error){if(({circle:1,ellipse:1}[B](a.type)||
43 (j+s).charAt()!="r")&&na(d,j,a.paper)){f.gradient=j;f.fill="none";break}}else{delete b.gradient;delete f.gradient;!m.is(f.opacity,"undefined")&&m.is(b.opacity,"undefined")&&v(d,{opacity:f.opacity});!m.is(f["fill-opacity"],"undefined")&&m.is(b["fill-opacity"],"undefined")&&v(d,{"fill-opacity":f["fill-opacity"]})}k[B]("o")&&v(d,{"fill-opacity":k.o/100});case "stroke":k=m.getRGB(j);d[V](i,k.hex);i=="stroke"&&k[B]("o")&&v(d,{"stroke-opacity":k.o/100});break;case "gradient":(({circle:1,ellipse:1})[B](a.type)||
44 (j+s).charAt()!="r")&&na(d,j,a.paper);break;case "opacity":case "fill-opacity":if(f.gradient){if(k=C.getElementById(d.getAttribute(ba)[I](/^url\(#|\)$/g,s))){k=k.getElementsByTagName("stop");k[k[o]-1][V]("stop-opacity",j)}break}default:i=="font-size"&&(j=da(j,10)+"px");k=i[I](/(\-.)/g,function(l){return oa.call(l.substring(1))});d.style[k]=j;d[V](i,j);break}}wb(a,b);if(g)a.rotate(g.join(Q));else z(e)&&a.rotate(e,true)},Xa=1.2,wb=function(a,b){if(!(a.type!="text"||!(b[B]("text")||b[B]("font")||b[B]("font-size")||
45 b[B]("x")||b[B]("y")))){var c=a.attrs,d=a.node,f=d.firstChild?da(C.defaultView.getComputedStyle(d.firstChild,s).getPropertyValue("font-size"),10):10;if(b[B]("text")){for(c.text=b.text;d.firstChild;)d.removeChild(d.firstChild);b=(b.text+s)[H]("\n");for(var e=0,h=b[o];e<h;e++)if(b[e]){var g=v("tspan");e&&v(g,{dy:f*Xa,x:c.x});g[w](C.createTextNode(b[e]));d[w](g)}}else{b=d.getElementsByTagName("tspan");e=0;for(h=b[o];e<h;e++)e&&v(b[e],{dy:f*Xa,x:c.x})}v(d,{y:c.y});a=a.getBBox();(a=c.y-(a.y+a.height/2))&&
46 isFinite(a)&&v(d,{y:c.y+a})}},t=function(a,b){this[0]=a;this.id=m._oid++;this.node=a;a.raphael=this;this.paper=b;this.attrs=this.attrs||{};this.transformations=[];this._={tx:0,ty:0,rt:{deg:0,cx:0,cy:0},sx:1,sy:1};!b.bottom&&(b.bottom=this);(this.prev=b.top)&&(b.top.next=this);b.top=this;this.next=null};t[p].rotate=function(a,b,c){if(this.removed)return this;if(a==null){if(this._.rt.cx)return[this._.rt.deg,this._.rt.cx,this._.rt.cy][R](Q);return this._.rt.deg}var d=this.getBBox();a=(a+s)[H](U);if(a[o]-
47 1){b=z(a[1]);c=z(a[2])}a=z(a[0]);if(b!=null)this._.rt.deg=a;else this._.rt.deg+=a;c==null&&(b=null);this._.rt.cx=b;this._.rt.cy=c;b=b==null?d.x+d.width/2:b;c=c==null?d.y+d.height/2:c;if(this._.rt.deg){this.transformations[0]=m.format("rotate({0} {1} {2})",this._.rt.deg,b,c);this.clip&&v(this.clip,{transform:m.format("rotate({0} {1} {2})",-this._.rt.deg,b,c)})}else{this.transformations[0]=s;this.clip&&v(this.clip,{transform:s})}v(this.node,{transform:this.transformations[R](Q)});return this};t[p].hide=
48 function(){!this.removed&&(this.node.style.display="none");return this};t[p].show=function(){!this.removed&&(this.node.style.display="");return this};t[p].remove=function(){if(!this.removed){ia(this,this.paper);this.node.parentNode.removeChild(this.node);for(var a in this)delete this[a];this.removed=true}};t[p].getBBox=function(){if(this.removed)return this;if(this.type=="path")return ua(this.attrs.path);if(this.node.style.display=="none"){this.show();var a=true}var b={};try{b=this.node.getBBox()}catch(c){}finally{b=
49 b||{}}if(this.type=="text"){b={x:b.x,y:Infinity,width:0,height:0};for(var d=0,f=this.node.getNumberOfChars();d<f;d++){var e=this.node.getExtentOfChar(d);e.y<b.y&&(b.y=e.y);e.y+e.height-b.y>b.height&&(b.height=e.y+e.height-b.y);e.x+e.width-b.x>b.width&&(b.width=e.x+e.width-b.x)}}a&&this.hide();return b};t[p].attr=function(a,b){if(this.removed)return this;if(a==null){a={};for(var c in this.attrs)if(this.attrs[B](c))a[c]=this.attrs[c];this._.rt.deg&&(a.rotation=this.rotate());(this._.sx!=1||this._.sy!=
50 1)&&(a.scale=this.scale());a.gradient&&a.fill=="none"&&(a.fill=a.gradient)&&delete a.gradient;return a}if(b==null&&m.is(a,fa)){if(a=="translation")return xa.call(this);if(a=="rotation")return this.rotate();if(a=="scale")return this.scale();if(a==ba&&this.attrs.fill=="none"&&this.attrs.gradient)return this.attrs.gradient;return this.attrs[a]}if(b==null&&m.is(a,W)){b={};c=0;for(var d=a.length;c<d;c++)b[a[c]]=this.attr(a[c]);return b}if(b!=null){c={};c[a]=b;aa(this,c)}else a!=null&&m.is(a,"object")&&
51 aa(this,a);return this};t[p].toFront=function(){if(this.removed)return this;this.node.parentNode[w](this.node);var a=this.paper;a.top!=this&&Qa(this,a);return this};t[p].toBack=function(){if(this.removed)return this;if(this.node.parentNode.firstChild!=this.node){this.node.parentNode.insertBefore(this.node,this.node.parentNode.firstChild);Ra(this,this.paper)}return this};t[p].insertAfter=function(a){if(this.removed)return this;var b=a.node;b.nextSibling?b.parentNode.insertBefore(this.node,b.nextSibling):
52 b.parentNode[w](this.node);Sa(this,a,this.paper);return this};t[p].insertBefore=function(a){if(this.removed)return this;var b=a.node;b.parentNode.insertBefore(this.node,b);Ta(this,a,this.paper);return this};t[p].blur=function(a){var b=this;if(+a!==0){var c=v("filter"),d=v("feGaussianBlur");b.attrs.blur=a;c.id="r"+(m._id++)[O](36);v(d,{stdDeviation:+a||1.5});c.appendChild(d);b.paper.defs.appendChild(c);b._blur=c;v(b.node,{filter:"url(#"+c.id+")"})}else{if(b._blur){b._blur.parentNode.removeChild(b._blur);
53 delete b._blur;delete b.attrs.blur}b.node.removeAttribute("filter")}};var Ya=function(a,b,c,d){b=F(b);c=F(c);var f=v("circle");a.canvas&&a.canvas[w](f);a=new t(f,a);a.attrs={cx:b,cy:c,r:d,fill:"none",stroke:"#000"};a.type="circle";v(f,a.attrs);return a},Za=function(a,b,c,d,f,e){b=F(b);c=F(c);var h=v("rect");a.canvas&&a.canvas[w](h);a=new t(h,a);a.attrs={x:b,y:c,width:d,height:f,r:e||0,rx:e||0,ry:e||0,fill:"none",stroke:"#000"};a.type="rect";v(h,a.attrs);return a},$a=function(a,b,c,d,f){b=F(b);c=F(c);
54 var e=v("ellipse");a.canvas&&a.canvas[w](e);a=new t(e,a);a.attrs={cx:b,cy:c,rx:d,ry:f,fill:"none",stroke:"#000"};a.type="ellipse";v(e,a.attrs);return a},ab=function(a,b,c,d,f,e){var h=v("image");v(h,{x:c,y:d,width:f,height:e,preserveAspectRatio:"none"});h.setAttributeNS(a.xlink,"href",b);a.canvas&&a.canvas[w](h);a=new t(h,a);a.attrs={x:c,y:d,width:f,height:e,src:b};a.type="image";return a},bb=function(a,b,c,d){var f=v("text");v(f,{x:b,y:c,"text-anchor":"middle"});a.canvas&&a.canvas[w](f);a=new t(f,
55 a);a.attrs={x:b,y:c,"text-anchor":"middle",text:d,font:pa.font,stroke:"none",fill:"#000"};a.type="text";aa(a,a.attrs);return a},cb=function(a,b){this.width=a||this.width;this.height=b||this.height;this.canvas[V]("width",this.width);this.canvas[V]("height",this.height);return this},za=function(){var a=Pa[K](0,arguments),b=a&&a.container,c=a.x,d=a.y,f=a.width;a=a.height;if(!b)throw new Error("SVG container not found.");var e=v("svg");c=c||0;d=d||0;f=f||512;a=a||342;v(e,{xmlns:"http://www.w3.org/2000/svg",
56 version:1.1,width:f,height:a});if(b==1){e.style.cssText="position:absolute;left:"+c+"px;top:"+d+"px";C.body[w](e)}else b.firstChild?b.insertBefore(e,b.firstChild):b[w](e);b=new G;b.width=f;b.height=a;b.canvas=e;Ba.call(b,b,m.fn);b.clear();return b};G[p].clear=function(){for(var a=this.canvas;a.firstChild;)a.removeChild(a.firstChild);this.bottom=this.top=null;(this.desc=v("desc"))[w](C.createTextNode("Created with Rapha\u00ebl"));a[w](this.desc);a[w](this.defs=v("defs"))};G[p].remove=function(){this.canvas.parentNode&&
57 this.canvas.parentNode.removeChild(this.canvas);for(var a in this)this[a]=Ua(a)}}if(m.vml){var db={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},xb=/([clmz]),?([^clmz]*)/gi,yb=/-?[^,\s-]+/g,ja=1000+Q+1000,ka=10,zb=function(a){var b=/[ahqstv]/ig,c=la;(a+s).match(b)&&(c=ta);b=/[clmz]/g;if(c==la&&!(a+s).match(b))return a=(a+s)[I](xb,function(i,j,k){var n=[],r=ca.call(j)=="m",q=db[j];k[I](yb,function(l){if(r&&n[o]==2){q+=n+db[j=="m"?"l":"L"];n=[]}n[E](F(l*ka))});return q+n});b=c(a);var d;a=[];for(var f=
58 0,e=b[o];f<e;f++){c=b[f];d=ca.call(b[f][0]);d=="z"&&(d="x");for(var h=1,g=c[o];h<g;h++)d+=F(c[h]*ka)+(h!=g-1?",":s);a[E](d)}return a[R](Q)};m[O]=function(){return"Your browser doesn\u2019t support SVG. Falling down to VML.\nYou are running Rapha\u00ebl "+this.version};Wa=function(a,b){var c=M("group");c.style.cssText="position:absolute;left:0;top:0;width:"+b.width+"px;height:"+b.height+"px";c.coordsize=b.coordsize;c.coordorigin=b.coordorigin;var d=M("shape"),f=d.style;f.width=b.width+"px";f.height=
59 b.height+"px";d.coordsize=ja;d.coordorigin=b.coordorigin;c[w](d);d=new t(d,c,b);f={fill:"none",stroke:"#000"};a&&(f.path=a);d.isAbsolute=true;d.type="path";d.path=[];d.Path=s;aa(d,f);b.canvas[w](c);return d};aa=function(a,b){a.attrs=a.attrs||{};var c=a.node,d=a.attrs,f=c.style,e,h=a;for(e in b)if(b[B](e))d[e]=b[e];b.href&&(c.href=b.href);b.title&&(c.title=b.title);b.target&&(c.target=b.target);b.cursor&&(f.cursor=b.cursor);"blur"in b&&a.blur(b.blur);if(b.path&&a.type=="path"){d.path=b.path;c.path=
60 zb(d.path)}b.rotation!=null&&a.rotate(b.rotation,true);if(b.translation){e=(b.translation+s)[H](U);xa.call(a,e[0],e[1]);if(a._.rt.cx!=null){a._.rt.cx+=+e[0];a._.rt.cy+=+e[1];a.setBox(a.attrs,e[0],e[1])}}if(b.scale){e=(b.scale+s)[H](U);a.scale(+e[0]||1,+e[1]||+e[0]||1,+e[2]||null,+e[3]||null)}if("clip-rect"in b){e=(b["clip-rect"]+s)[H](U);if(e[o]==4){e[2]=+e[2]+ +e[0];e[3]=+e[3]+ +e[1];var g=c.clipRect||C.createElement("div"),i=g.style,j=c.parentNode;i.clip=m.format("rect({1}px {2}px {3}px {0}px)",
61 e);if(!c.clipRect){i.position="absolute";i.top=0;i.left=0;i.width=a.paper.width+"px";i.height=a.paper.height+"px";j.parentNode.insertBefore(g,j);g[w](j);c.clipRect=g}}if(!b["clip-rect"])c.clipRect&&(c.clipRect.style.clip=s)}if(a.type=="image"&&b.src)c.src=b.src;if(a.type=="image"&&b.opacity){c.filterOpacity=" progid:DXImageTransform.Microsoft.Alpha(opacity="+b.opacity*100+")";f.filter=(c.filterMatrix||s)+(c.filterOpacity||s)}b.font&&(f.font=b.font);b["font-family"]&&(f.fontFamily='"'+b["font-family"][H](",")[0][I](/^['"]+|['"]+$/g,
62 s)+'"');b["font-size"]&&(f.fontSize=b["font-size"]);b["font-weight"]&&(f.fontWeight=b["font-weight"]);b["font-style"]&&(f.fontStyle=b["font-style"]);if(b.opacity!=null||b["stroke-width"]!=null||b.fill!=null||b.stroke!=null||b["stroke-width"]!=null||b["stroke-opacity"]!=null||b["fill-opacity"]!=null||b["stroke-dasharray"]!=null||b["stroke-miterlimit"]!=null||b["stroke-linejoin"]!=null||b["stroke-linecap"]!=null){c=a.shape||c;f=c.getElementsByTagName(ba)&&c.getElementsByTagName(ba)[0];e=false;!f&&(e=
63 f=M(ba));if("fill-opacity"in b||"opacity"in b){a=((+d["fill-opacity"]+1||2)-1)*((+d.opacity+1||2)-1)*((+m.getRGB(b.fill).o+1||2)-1);a<0&&(a=0);a>1&&(a=1);f.opacity=a}b.fill&&(f.on=true);if(f.on==null||b.fill=="none")f.on=false;if(f.on&&b.fill)if(a=b.fill.match(Ka)){f.src=a[1];f.type="tile"}else{f.color=m.getRGB(b.fill).hex;f.src=s;f.type="solid";if(m.getRGB(b.fill).error&&(h.type in{circle:1,ellipse:1}||(b.fill+s).charAt()!="r")&&na(h,b.fill)){d.fill="none";d.gradient=b.fill}}e&&c[w](f);f=c.getElementsByTagName("stroke")&&
64 c.getElementsByTagName("stroke")[0];e=false;!f&&(e=f=M("stroke"));if(b.stroke&&b.stroke!="none"||b["stroke-width"]||b["stroke-opacity"]!=null||b["stroke-dasharray"]||b["stroke-miterlimit"]||b["stroke-linejoin"]||b["stroke-linecap"])f.on=true;(b.stroke=="none"||f.on==null||b.stroke==0||b["stroke-width"]==0)&&(f.on=false);a=m.getRGB(b.stroke);f.on&&b.stroke&&(f.color=a.hex);a=((+d["stroke-opacity"]+1||2)-1)*((+d.opacity+1||2)-1)*((+a.o+1||2)-1);g=(z(b["stroke-width"])||1)*0.75;a<0&&(a=0);a>1&&(a=1);
65 b["stroke-width"]==null&&(g=d["stroke-width"]);b["stroke-width"]&&(f.weight=g);g&&g<1&&(a*=g)&&(f.weight=1);f.opacity=a;b["stroke-linejoin"]&&(f.joinstyle=b["stroke-linejoin"]||"miter");f.miterlimit=b["stroke-miterlimit"]||8;b["stroke-linecap"]&&(f.endcap=b["stroke-linecap"]=="butt"?"flat":b["stroke-linecap"]=="square"?"square":"round");if(b["stroke-dasharray"]){a={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot",
66 "--..":"longdashdotdot"};f.dashstyle=a[B](b["stroke-dasharray"])?a[b["stroke-dasharray"]]:s}e&&c[w](f)}if(h.type=="text"){f=h.paper.span.style;d.font&&(f.font=d.font);d["font-family"]&&(f.fontFamily=d["font-family"]);d["font-size"]&&(f.fontSize=d["font-size"]);d["font-weight"]&&(f.fontWeight=d["font-weight"]);d["font-style"]&&(f.fontStyle=d["font-style"]);h.node.string&&(h.paper.span.innerHTML=(h.node.string+s)[I](/</g,"&#60;")[I](/&/g,"&#38;")[I](/\n/g,"<br>"));h.W=d.w=h.paper.span.offsetWidth;h.H=
67 d.h=h.paper.span.offsetHeight;h.X=d.x;h.Y=d.y+F(h.H/2);switch(d["text-anchor"]){case "start":h.node.style["v-text-align"]="left";h.bbx=F(h.W/2);break;case "end":h.node.style["v-text-align"]="right";h.bbx=-F(h.W/2);break;default:h.node.style["v-text-align"]="center";break}}};na=function(a,b){a.attrs=a.attrs||{};var c="linear",d=".5 .5";a.attrs.gradient=b;b=(b+s)[I](Va,function(i,j,k){c="radial";if(j&&k){j=z(j);k=z(k);D(j-0.5,2)+D(k-0.5,2)>0.25&&(k=x.sqrt(0.25-D(j-0.5,2))*((k>0.5)*2-1)+0.5);d=j+Q+k}return s});
68 b=b[H](/\s*\-\s*/);if(c=="linear"){var f=b.shift();f=-z(f);if(isNaN(f))return null}var e=Oa(b);if(!e)return null;a=a.shape||a.node;b=a.getElementsByTagName(ba)[0]||M(ba);!b.parentNode&&a.appendChild(b);if(e[o]){b.on=true;b.method="none";b.color=e[0].color;b.color2=e[e[o]-1].color;a=[];for(var h=0,g=e[o];h<g;h++)e[h].offset&&a[E](e[h].offset+Q+e[h].color);b.colors&&(b.colors.value=a[o]?a[R]():"0% "+b.color);if(c=="radial"){b.type="gradientradial";b.focus="100%";b.focussize=d;b.focusposition=d}else{b.type=
69 "gradient";b.angle=(270-f)%360}}return 1};t=function(a,b,c){this[0]=a;this.id=m._oid++;this.node=a;a.raphael=this;this.Y=this.X=0;this.attrs={};this.Group=b;this.paper=c;this._={tx:0,ty:0,rt:{deg:0},sx:1,sy:1};!c.bottom&&(c.bottom=this);(this.prev=c.top)&&(c.top.next=this);c.top=this;this.next=null};t[p].rotate=function(a,b,c){if(this.removed)return this;if(a==null){if(this._.rt.cx)return[this._.rt.deg,this._.rt.cx,this._.rt.cy][R](Q);return this._.rt.deg}a=(a+s)[H](U);if(a[o]-1){b=z(a[1]);c=z(a[2])}a=
70 z(a[0]);if(b!=null)this._.rt.deg=a;else this._.rt.deg+=a;c==null&&(b=null);this._.rt.cx=b;this._.rt.cy=c;this.setBox(this.attrs,b,c);this.Group.style.rotation=this._.rt.deg;return this};t[p].setBox=function(a,b,c){if(this.removed)return this;var d=this.Group.style,f=this.shape&&this.shape.style||this.node.style;a=a||{};for(var e in a)if(a[B](e))this.attrs[e]=a[e];b=b||this._.rt.cx;c=c||this._.rt.cy;var h=this.attrs,g,i,j;switch(this.type){case "circle":e=h.cx-h.r;g=h.cy-h.r;i=j=h.r*2;break;case "ellipse":e=
71 h.cx-h.rx;g=h.cy-h.ry;i=h.rx*2;j=h.ry*2;break;case "rect":case "image":e=+h.x;g=+h.y;i=h.width||0;j=h.height||0;break;case "text":this.textpath.v=["m",F(h.x),", ",F(h.y-2),"l",F(h.x)+1,", ",F(h.y-2)][R](s);e=h.x-F(this.W/2);g=h.y-this.H/2;i=this.W;j=this.H;break;case "path":if(this.attrs.path){j=ua(this.attrs.path);e=j.x;g=j.y;i=j.width;j=j.height}else{g=e=0;i=this.paper.width;j=this.paper.height}break;default:g=e=0;i=this.paper.width;j=this.paper.height;break}b=b==null?e+i/2:b;c=c==null?g+j/2:c;
72 b=b-this.paper.width/2;c=c-this.paper.height/2;var k;d.left!=(k=b+"px")&&(d.left=k);d.top!=(k=c+"px")&&(d.top=k);this.X=this.type=="path"?-b:e;this.Y=this.type=="path"?-c:g;this.W=i;this.H=j;if(this.type=="path"){f.left!=(k=-b*ka+"px")&&(f.left=k);f.top!=(k=-c*ka+"px")&&(f.top=k)}else if(this.type=="text"){f.left!=(k=-b+"px")&&(f.left=k);f.top!=(k=-c+"px")&&(f.top=k)}else{d.width!=(k=this.paper.width+"px")&&(d.width=k);d.height!=(k=this.paper.height+"px")&&(d.height=k);f.left!=(k=e-b+"px")&&(f.left=
73 k);f.top!=(k=g-c+"px")&&(f.top=k);f.width!=(k=i+"px")&&(f.width=k);f.height!=(k=j+"px")&&(f.height=k);a=(+a.r||0)/Z(i,j);if(this.type=="rect"&&this.arcsize.toFixed(4)!=a.toFixed(4)&&(a||this.arcsize)){d=M("roundrect");f={};k=this.events&&this.events[o];e=0;d.arcsize=a;d.raphael=this;this.Group[w](d);this.Group.removeChild(this.node);this[0]=this.node=d;this.arcsize=a;for(e in h)f[e]=h[e];delete f.scale;this.attr(f);if(this.events)for(e=0;e<k;e++)this.events[e].unbind=eb(this.node,this.events[e].name,
74 this.events[e].f,this)}}};t[p].hide=function(){!this.removed&&(this.Group.style.display="none");return this};t[p].show=function(){!this.removed&&(this.Group.style.display="block");return this};t[p].getBBox=function(){if(this.removed)return this;if(this.type=="path")return ua(this.attrs.path);return{x:this.X+(this.bbx||0),y:this.Y,width:this.W,height:this.H}};t[p].remove=function(){if(!this.removed){ia(this,this.paper);this.node.parentNode.removeChild(this.node);this.Group.parentNode.removeChild(this.Group);
75 this.shape&&this.shape.parentNode.removeChild(this.shape);for(var a in this)delete this[a];this.removed=true}};t[p].attr=function(a,b){if(this.removed)return this;if(a==null){a={};for(var c in this.attrs)if(this.attrs[B](c))a[c]=this.attrs[c];this._.rt.deg&&(a.rotation=this.rotate());(this._.sx!=1||this._.sy!=1)&&(a.scale=this.scale());a.gradient&&a.fill=="none"&&(a.fill=a.gradient)&&delete a.gradient;return a}if(b==null&&m.is(a,fa)){if(a=="translation")return xa.call(this);if(a=="rotation")return this.rotate();
76 if(a=="scale")return this.scale();if(a==ba&&this.attrs.fill=="none"&&this.attrs.gradient)return this.attrs.gradient;return this.attrs[a]}if(this.attrs&&b==null&&m.is(a,W)){var d={};c=0;for(b=a[o];c<b;c++)d[a[c]]=this.attr(a[c]);return d}if(b!=null){d={};d[a]=b}b==null&&m.is(a,"object")&&(d=a);if(d){if(d.text&&this.type=="text")this.node.string=d.text;aa(this,d);if(d.gradient&&({circle:1,ellipse:1}[B](this.type)||(d.gradient+s).charAt()!="r"))na(this,d.gradient);(this.type!="path"||this._.rt.deg)&&
77 this.setBox(this.attrs)}return this};t[p].toFront=function(){!this.removed&&this.Group.parentNode[w](this.Group);this.paper.top!=this&&Qa(this,this.paper);return this};t[p].toBack=function(){if(this.removed)return this;if(this.Group.parentNode.firstChild!=this.Group){this.Group.parentNode.insertBefore(this.Group,this.Group.parentNode.firstChild);Ra(this,this.paper)}return this};t[p].insertAfter=function(a){if(this.removed)return this;a.Group.nextSibling?a.Group.parentNode.insertBefore(this.Group,
78 a.Group.nextSibling):a.Group.parentNode[w](this.Group);Sa(this,a,this.paper);return this};t[p].insertBefore=function(a){if(this.removed)return this;a.Group.parentNode.insertBefore(this.Group,a.Group);Ta(this,a,this.paper);return this};var Ab=/ progid:\S+Blur\([^\)]+\)/g;t[p].blur=function(a){var b=this.node.style,c=b.filter;c=c.replace(Ab,"");if(+a!==0){this.attrs.blur=a;b.filter=c+" progid:DXImageTransform.Microsoft.Blur(pixelradius="+(+a||1.5)+")";b.margin=Raphael.format("-{0}px 0 0 -{0}px",Math.round(+a||
79 1.5))}else{b.filter=c;b.margin=0;delete this.attrs.blur}};Ya=function(a,b,c,d){var f=M("group"),e=M("oval");f.style.cssText="position:absolute;left:0;top:0;width:"+a.width+"px;height:"+a.height+"px";f.coordsize=ja;f.coordorigin=a.coordorigin;f[w](e);e=new t(e,f,a);e.type="circle";aa(e,{stroke:"#000",fill:"none"});e.attrs.cx=b;e.attrs.cy=c;e.attrs.r=d;e.setBox({x:b-d,y:c-d,width:d*2,height:d*2});a.canvas[w](f);return e};Za=function(a,b,c,d,f,e){var h=M("group"),g=M("roundrect"),i=(+e||0)/Z(d,f);h.style.cssText=
80 "position:absolute;left:0;top:0;width:"+a.width+"px;height:"+a.height+"px";h.coordsize=ja;h.coordorigin=a.coordorigin;h[w](g);g.arcsize=i;g=new t(g,h,a);g.type="rect";aa(g,{stroke:"#000"});g.arcsize=i;g.setBox({x:b,y:c,width:d,height:f,r:e});a.canvas[w](h);return g};$a=function(a,b,c,d,f){var e=M("group"),h=M("oval");e.style.cssText="position:absolute;left:0;top:0;width:"+a.width+"px;height:"+a.height+"px";e.coordsize=ja;e.coordorigin=a.coordorigin;e[w](h);h=new t(h,e,a);h.type="ellipse";aa(h,{stroke:"#000"});
81 h.attrs.cx=b;h.attrs.cy=c;h.attrs.rx=d;h.attrs.ry=f;h.setBox({x:b-d,y:c-f,width:d*2,height:f*2});a.canvas[w](e);return h};ab=function(a,b,c,d,f,e){var h=M("group"),g=M("image");h.style.cssText="position:absolute;left:0;top:0;width:"+a.width+"px;height:"+a.height+"px";h.coordsize=ja;h.coordorigin=a.coordorigin;g.src=b;h[w](g);g=new t(g,h,a);g.type="image";g.attrs.src=b;g.attrs.x=c;g.attrs.y=d;g.attrs.w=f;g.attrs.h=e;g.setBox({x:c,y:d,width:f,height:e});a.canvas[w](h);return g};bb=function(a,b,c,d){var f=
82 M("group"),e=M("shape"),h=e.style,g=M("path"),i=M("textpath");f.style.cssText="position:absolute;left:0;top:0;width:"+a.width+"px;height:"+a.height+"px";f.coordsize=ja;f.coordorigin=a.coordorigin;g.v=m.format("m{0},{1}l{2},{1}",F(b*10),F(c*10),F(b*10)+1);g.textpathok=true;h.width=a.width;h.height=a.height;i.string=d+s;i.on=true;e[w](i);e[w](g);f[w](e);h=new t(i,f,a);h.shape=e;h.textpath=g;h.type="text";h.attrs.text=d;h.attrs.x=b;h.attrs.y=c;h.attrs.w=1;h.attrs.h=1;aa(h,{font:pa.font,stroke:"none",
83 fill:"#000"});h.setBox();a.canvas[w](f);return h};cb=function(a,b){var c=this.canvas.style;a==+a&&(a+="px");b==+b&&(b+="px");c.width=a;c.height=b;c.clip="rect(0 "+a+" "+b+" 0)";return this};var M;C.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)");try{!C.namespaces.rvml&&C.namespaces.add("rvml","urn:schemas-microsoft-com:vml");M=function(a){return C.createElement("<rvml:"+a+' class="rvml">')}}catch(Db){M=function(a){return C.createElement("<"+a+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">')}}za=
84 function(){var a=Pa[K](0,arguments),b=a.container,c=a.height,d=a.width,f=a.x;a=a.y;if(!b)throw new Error("VML container not found.");var e=new G,h=e.canvas=C.createElement("div"),g=h.style;f=f||0;a=a||0;d=d||512;c=c||342;d==+d&&(d+="px");c==+c&&(c+="px");e.width=1000;e.height=1000;e.coordsize=ka*1000+Q+ka*1000;e.coordorigin="0 0";e.span=C.createElement("span");e.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;";h[w](e.span);g.cssText=
85 m.format("width:{0};height:{1};display:inline-block;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden",d,c);if(b==1){C.body[w](h);g.left=f+"px";g.top=a+"px"}else b.firstChild?b.insertBefore(h,b.firstChild):b[w](h);Ba.call(e,e,m.fn);return e};G[p].clear=function(){this.canvas.innerHTML=s;this.span=C.createElement("span");this.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;";this.canvas[w](this.span);this.bottom=this.top=null};G[p].remove=
86 function(){this.canvas.parentNode.removeChild(this.canvas);for(var a in this)this[a]=Ua(a);return true}}G[p].safari=/^Apple|^Google/.test(X.navigator.vendor)&&(!(X.navigator.userAgent.indexOf("Version/4.0")+1)||X.navigator.platform.slice(0,2)=="iP")?function(){var a=this.rect(-99,-99,this.width+99,this.height+99);X.setTimeout(function(){a.remove()})}:function(){};var eb=function(){if(C.addEventListener)return function(a,b,c,d){function f(e){if(e.touches)for(var h=0,g=e.touches.length;h<g;h++)if(e.touches[h].target==
87 a){e=e.touches[h];e.originalEvent=e}return c.call(d,e)}a.addEventListener(b,f,false);return function(){a.removeEventListener(b,f,false);return true}};else if(C.attachEvent)return function(a,b,c,d){function f(h){return c.call(d,h||X.event)}a.attachEvent("on"+b,f);function e(){a.detachEvent("on"+b,f);return true}return e}}();for(ha=Ia[o];ha--;)(function(a){m[a]=t[p][a]=function(b){if(m.is(b,"function")){var c=lb&&Ja[a]?Ja[a]:a;this.events=this.events||[];this.events.push({name:a,f:b,unbind:eb(this.shape||
88 this.node||C,c,b,this)})}return this};m["un"+a]=t[p]["un"+a]=function(b){for(var c=this.events,d=c[o];d--;)if(c[d].name==a&&c[d].f==b){c[d].unbind();c.splice(d,1);!c.length&&delete this.events;return this}return this}})(Ia[ha]);t[p].hover=function(a,b){return this.mouseover(a).mouseout(b)};t[p].unhover=function(a,b){return this.unmouseover(a).unmouseout(b)};t[p].drag=function(a,b,c){this._drag={};var d=this.mousedown(function(h){this._drag.x=h.clientX;this._drag.y=h.clientY;this._drag.id=h.identifier;
89 a&&a.call(this,h.clientX,h.clientY);Raphael.mousemove(f).mouseup(e)});function f(h){if(h.changedTouches)for(var g=0,i=h.changedTouches.length;g<i;g++){var j=h.changedTouches[g];if(j.identifier==d._drag.id){b.call(d,j.clientX-d._drag.x,j.clientY-d._drag.y);h.preventDefault()}}else{b.call(d,h.clientX-d._drag.x,h.clientY-d._drag.y);h.preventDefault()}}function e(h){if(h.changedTouches)for(var g=0,i=h.changedTouches.length;g<i;g++){if(h.changedTouches[g].identifier==d._drag.id){Raphael.unmousemove(f).unmouseup(e);
90 c&&c.call(d)}}else{Raphael.unmousemove(f).unmouseup(e);c&&c.call(d)}}};G[p].circle=function(a,b,c){return Ya(this,a||0,b||0,c||0)};G[p].rect=function(a,b,c,d,f){return Za(this,a||0,b||0,c||0,d||0,f||0)};G[p].ellipse=function(a,b,c,d){return $a(this,a||0,b||0,c||0,d||0)};G[p].path=function(a){a&&!m.is(a,fa)&&!m.is(a[0],W)&&(a+=s);return Wa(m.format[K](m,arguments),this)};G[p].image=function(a,b,c,d,f){return ab(this,a||"about:blank",b||0,c||0,d||0,f||0)};G[p].text=function(a,b,c){return bb(this,a||
91 0,b||0,c||s)};G[p].set=function(a){arguments[o]>1&&(a=Array[p].splice.call(arguments,0,arguments[o]));return new $(a)};G[p].setSize=cb;G[p].top=G[p].bottom=null;G[p].raphael=m;function fb(){return this.x+Q+this.y}t[p].resetScale=function(){if(this.removed)return this;this._.sx=1;this._.sy=1;this.attrs.scale="1 1"};t[p].scale=function(a,b,c,d){if(this.removed)return this;if(a==null&&b==null)return{x:this._.sx,y:this._.sy,toString:fb};b=b||a;!+b&&(b=a);var f,e,h=this.attrs;if(a!=0){var g=this.getBBox(),
92 i=g.x+g.width/2,j=g.y+g.height/2;f=a/this._.sx;e=b/this._.sy;c=+c||c==0?c:i;d=+d||d==0?d:j;g=~~(a/x.abs(a));var k=~~(b/x.abs(b)),n=this.node.style,r=c+(i-c)*f;j=d+(j-d)*e;switch(this.type){case "rect":case "image":var q=h.width*g*f,l=h.height*k*e;this.attr({height:l,r:h.r*Z(g*f,k*e),width:q,x:r-q/2,y:j-l/2});break;case "circle":case "ellipse":this.attr({rx:h.rx*g*f,ry:h.ry*k*e,r:h.r*Z(g*f,k*e),cx:r,cy:j});break;case "text":this.attr({x:r,y:j});break;case "path":i=La(h.path);for(var u=true,L=0,A=i[o];L<
93 A;L++){var y=i[L],J=oa.call(y[0]);if(!(J=="M"&&u)){u=false;if(J=="A"){y[i[L][o]-2]*=f;y[i[L][o]-1]*=e;y[1]*=g*f;y[2]*=k*e;y[5]=+!(g+k?!+y[5]:+y[5])}else if(J=="H"){J=1;for(var ea=y[o];J<ea;J++)y[J]*=f}else if(J=="V"){J=1;for(ea=y[o];J<ea;J++)y[J]*=e}else{J=1;for(ea=y[o];J<ea;J++)y[J]*=J%2?f:e}}}e=ua(i);f=r-e.x-e.width/2;e=j-e.y-e.height/2;i[0][1]+=f;i[0][2]+=e;this.attr({path:i});break}if(this.type in{text:1,image:1}&&(g!=1||k!=1))if(this.transformations){this.transformations[2]="scale("[N](g,",",
94 k,")");this.node[V]("transform",this.transformations[R](Q));f=g==-1?-h.x-(q||0):h.x;e=k==-1?-h.y-(l||0):h.y;this.attr({x:f,y:e});h.fx=g-1;h.fy=k-1}else{this.node.filterMatrix=" progid:DXImageTransform.Microsoft.Matrix(M11="[N](g,", M12=0, M21=0, M22=",k,", Dx=0, Dy=0, sizingmethod='auto expand', filtertype='bilinear')");n.filter=(this.node.filterMatrix||s)+(this.node.filterOpacity||s)}else if(this.transformations){this.transformations[2]=s;this.node[V]("transform",this.transformations[R](Q));h.fx=
95 0;h.fy=0}else{this.node.filterMatrix=s;n.filter=(this.node.filterMatrix||s)+(this.node.filterOpacity||s)}h.scale=[a,b,c,d][R](Q);this._.sx=a;this._.sy=b}return this};t[p].clone=function(){var a=this.attr();delete a.scale;delete a.translation;return this.paper[this.type]().attr(a)};var gb=T(function(a,b,c,d,f,e,h,g,i){for(var j=0,k,n=0;n<1.001;n+=0.0010){var r=m.findDotsAtSegment(a,b,c,d,f,e,h,g,n);n&&(j+=D(D(k.x-r.x,2)+D(k.y-r.y,2),0.5));if(j>=i)return r;k=r}});function Da(a,b){return function(c,
96 d,f){c=ta(c);for(var e,h,g,i,j="",k={},n=0,r=0,q=c.length;r<q;r++){g=c[r];if(g[0]=="M"){e=+g[1];h=+g[2]}else{i=Bb(e,h,g[1],g[2],g[3],g[4],g[5],g[6]);if(n+i>d){if(b&&!k.start){e=gb(e,h,g[1],g[2],g[3],g[4],g[5],g[6],d-n);j+=["C",e.start.x,e.start.y,e.m.x,e.m.y,e.x,e.y];if(f)return j;k.start=j;j=["M",e.x,e.y+"C",e.n.x,e.n.y,e.end.x,e.end.y,g[5],g[6]][R]();n+=i;e=+g[5];h=+g[6];continue}if(!a&&!b){e=gb(e,h,g[1],g[2],g[3],g[4],g[5],g[6],d-n);return{x:e.x,y:e.y,alpha:e.alpha}}}n+=i;e=+g[5];h=+g[6]}j+=g}k.end=
97 j;e=a?n:b?k:m.findDotsAtSegment(e,h,g[1],g[2],g[3],g[4],g[5],g[6],1);e.alpha&&(e={x:e.x,y:e.y,alpha:e.alpha});return e}}var Bb=T(function(a,b,c,d,f,e,h,g){for(var i={x:0,y:0},j=0,k=0;k<1.01;k+=0.01){var n=ma(a,b,c,d,f,e,h,g,k);k&&(j+=D(D(i.x-n.x,2)+D(i.y-n.y,2),0.5));i=n}return j}),hb=Da(1),ya=Da(),Ea=Da(0,1);t[p].getTotalLength=function(){if(this.type=="path"){if(this.node.getTotalLength)return this.node.getTotalLength();return hb(this.attrs.path)}};t[p].getPointAtLength=function(a){if(this.type==
98 "path")return ya(this.attrs.path,a)};t[p].getSubpath=function(a,b){if(this.type=="path"){if(x.abs(this.getTotalLength()-b)<1.0E-6)return Ea(this.attrs.path,a).end;b=Ea(this.attrs.path,b,1);return a?Ea(b,a).end:b}};m.easing_formulas={linear:function(a){return a},"<":function(a){return D(a,3)},">":function(a){return D(a-1,3)+1},"<>":function(a){a*=2;if(a<1)return D(a,3)/2;a-=2;return(D(a,3)+2)/2},backIn:function(a){var b=1.70158;return a*a*((b+1)*a-b)},backOut:function(a){a-=1;var b=1.70158;return a*
99 a*((b+1)*a+b)+1},elastic:function(a){if(a==0||a==1)return a;var b=0.3,c=b/4;return D(2,-10*a)*x.sin((a-c)*2*x.PI/b)+1},bounce:function(a){var b=7.5625,c=2.75;if(a<1/c)a=b*a*a;else if(a<2/c){a-=1.5/c;a=b*a*a+0.75}else if(a<2.5/c){a-=2.25/c;a=b*a*a+0.9375}else{a-=2.625/c;a=b*a*a+0.984375}return a}};var S={length:0};function ib(){var a=+new Date;for(var b in S)if(b!="length"&&S[B](b)){var c=S[b];if(c.stop||c.el.removed){delete S[b];S[o]--}else{var d=a-c.start,f=c.ms,e=c.easing,h=c.from,g=c.diff,i=c.to,
100 j=c.t,k=c.prev||0,n=c.el,r=c.callback,q={},l;if(d<f){r=m.easing_formulas[e]?m.easing_formulas[e](d/f):d/f;for(var u in h)if(h[B](u)){switch(Aa[u]){case "along":l=r*f*g[u];i.back&&(l=i.len-l);e=ya(i[u],l);n.translate(g.sx-g.x||0,g.sy-g.y||0);g.x=e.x;g.y=e.y;n.translate(e.x-g.sx,e.y-g.sy);i.rot&&n.rotate(g.r+e.alpha,e.x,e.y);break;case P:l=+h[u]+r*f*g[u];break;case "colour":l="rgb("+[Fa(F(h[u].r+r*f*g[u].r)),Fa(F(h[u].g+r*f*g[u].g)),Fa(F(h[u].b+r*f*g[u].b))][R](",")+")";break;case "path":l=[];e=0;for(var L=
101 h[u][o];e<L;e++){l[e]=[h[u][e][0]];for(var A=1,y=h[u][e][o];A<y;A++)l[e][A]=+h[u][e][A]+r*f*g[u][e][A];l[e]=l[e][R](Q)}l=l[R](Q);break;case "csv":switch(u){case "translation":l=g[u][0]*(d-k);e=g[u][1]*(d-k);j.x+=l;j.y+=e;l=l+Q+e;break;case "rotation":l=+h[u][0]+r*f*g[u][0];h[u][1]&&(l+=","+h[u][1]+","+h[u][2]);break;case "scale":l=[+h[u][0]+r*f*g[u][0],+h[u][1]+r*f*g[u][1],2 in i[u]?i[u][2]:s,3 in i[u]?i[u][3]:s][R](Q);break;case "clip-rect":l=[];for(e=4;e--;)l[e]=+h[u][e]+r*f*g[u][e];break}break}q[u]=
102 l}n.attr(q);n._run&&n._run.call(n)}else{if(i.along){e=ya(i.along,i.len*!i.back);n.translate(g.sx-(g.x||0)+e.x-g.sx,g.sy-(g.y||0)+e.y-g.sy);i.rot&&n.rotate(g.r+e.alpha,e.x,e.y)}(j.x||j.y)&&n.translate(-j.x,-j.y);i.scale&&(i.scale+=s);n.attr(i);delete S[b];S[o]--;n.in_animation=null;m.is(r,"function")&&r.call(n)}c.prev=d}}m.svg&&n&&n.paper&&n.paper.safari();S[o]&&X.setTimeout(ib)}function Fa(a){return Y(Z(a,255),0)}function xa(a,b){if(a==null)return{x:this._.tx,y:this._.ty,toString:fb};this._.tx+=+a;
103 this._.ty+=+b;switch(this.type){case "circle":case "ellipse":this.attr({cx:+a+this.attrs.cx,cy:+b+this.attrs.cy});break;case "rect":case "image":case "text":this.attr({x:+a+this.attrs.x,y:+b+this.attrs.y});break;case "path":var c=La(this.attrs.path);c[0][1]+=+a;c[0][2]+=+b;this.attr({path:c});break}return this}t[p].animateWith=function(a,b,c,d,f){S[a.id]&&(b.start=S[a.id].start);return this.animate(b,c,d,f)};t[p].animateAlong=jb();t[p].animateAlongBack=jb(1);function jb(a){return function(b,c,d,f){var e=
104 {back:a};m.is(d,"function")?(f=d):(e.rot=d);b&&b.constructor==t&&(b=b.attrs.path);b&&(e.along=b);return this.animate(e,c,f)}}t[p].onAnimation=function(a){this._run=a||0;return this};t[p].animate=function(a,b,c,d){if(m.is(c,"function")||!c)d=c||null;var f={},e={},h={};for(var g in a)if(a[B](g))if(Aa[B](g)){f[g]=this.attr(g);f[g]==null&&(f[g]=pa[g]);e[g]=a[g];switch(Aa[g]){case "along":var i=hb(a[g]),j=ya(a[g],i*!!a.back),k=this.getBBox();h[g]=i/b;h.tx=k.x;h.ty=k.y;h.sx=j.x;h.sy=j.y;e.rot=a.rot;e.back=
105 a.back;e.len=i;a.rot&&(h.r=z(this.rotate())||0);break;case P:h[g]=(e[g]-f[g])/b;break;case "colour":f[g]=m.getRGB(f[g]);i=m.getRGB(e[g]);h[g]={r:(i.r-f[g].r)/b,g:(i.g-f[g].g)/b,b:(i.b-f[g].b)/b};break;case "path":i=ta(f[g],e[g]);f[g]=i[0];j=i[1];h[g]=[];i=0;for(k=f[g][o];i<k;i++){h[g][i]=[0];for(var n=1,r=f[g][i][o];n<r;n++)h[g][i][n]=(j[i][n]-f[g][i][n])/b}break;case "csv":j=(a[g]+s)[H](U);i=(f[g]+s)[H](U);switch(g){case "translation":f[g]=[0,0];h[g]=[j[0]/b,j[1]/b];break;case "rotation":f[g]=i[1]==
106 j[1]&&i[2]==j[2]?i:[0,j[1],j[2]];h[g]=[(j[0]-f[g][0])/b,0,0];break;case "scale":a[g]=j;f[g]=(f[g]+s)[H](U);h[g]=[(j[0]-f[g][0])/b,(j[1]-f[g][1])/b,0,0];break;case "clip-rect":f[g]=(f[g]+s)[H](U);h[g]=[];for(i=4;i--;)h[g][i]=(j[i]-f[g][i])/b;break}e[g]=j}}this.stop();this.in_animation=1;S[this.id]={start:a.start||+new Date,ms:b,easing:c,from:f,diff:h,to:e,el:this,callback:d,t:{x:0,y:0}};++S[o]==1&&ib();return this};t[p].stop=function(){S[this.id]&&S[o]--;delete S[this.id];return this};t[p].translate=
107 function(a,b){return this.attr({translation:a+" "+b})};t[p][O]=function(){return"Rapha\u00ebl\u2019s object"};m.ae=S;function $(a){this.items=[];this[o]=0;this.type="set";if(a)for(var b=0,c=a[o];b<c;b++)if(a[b]&&(a[b].constructor==t||a[b].constructor==$)){this[this.items[o]]=this.items[this.items[o]]=a[b];this[o]++}}$[p][E]=function(){for(var a,b,c=0,d=arguments[o];c<d;c++)if((a=arguments[c])&&(a.constructor==t||a.constructor==$)){b=this.items[o];this[b]=this.items[b]=a;this[o]++}return this};$[p].pop=
108 function(){delete this[this[o]--];return this.items.pop()};for(var Ga in t[p])if(t[p][B](Ga))$[p][Ga]=function(a){return function(){for(var b=0,c=this.items[o];b<c;b++)this.items[b][a][K](this.items[b],arguments);return this}}(Ga);$[p].attr=function(a,b){if(a&&m.is(a,W)&&m.is(a[0],"object")){b=0;for(var c=a[o];b<c;b++)this.items[b].attr(a[b])}else{c=0;for(var d=this.items[o];c<d;c++)this.items[c].attr(a,b)}return this};$[p].animate=function(a,b,c,d){(m.is(c,"function")||!c)&&(d=c||null);var f=this.items[o],
109 e=f,h=this,g;d&&(g=function(){!--f&&d.call(h)});for(this.items[--e].animate(a,b,c||g,g);e--;)this.items[e].animateWith(this.items[f-1],a,b,c||g,g);return this};$[p].insertAfter=function(a){for(var b=this.items[o];b--;)this.items[b].insertAfter(a);return this};$[p].getBBox=function(){for(var a=[],b=[],c=[],d=[],f=this.items[o];f--;){var e=this.items[f].getBBox();a[E](e.x);b[E](e.y);c[E](e.x+e.width);d[E](e.y+e.height)}a=Z[K](0,a);b=Z[K](0,b);return{x:a,y:b,width:Y[K](0,c)-a,height:Y[K](0,d)-b}};$[p].clone=
110 function(a){a=new $;for(var b=0,c=this.items[o];b<c;b++)a[E](this.items[b].clone());return a};m.registerFont=function(a){if(!a.face)return a;this.fonts=this.fonts||{};var b={w:a.w,face:{},glyphs:{}},c=a.face["font-family"];for(var d in a.face)if(a.face[B](d))b.face[d]=a.face[d];if(this.fonts[c])this.fonts[c][E](b);else this.fonts[c]=[b];if(!a.svg){b.face["units-per-em"]=da(a.face["units-per-em"],10);for(var f in a.glyphs)if(a.glyphs[B](f)){c=a.glyphs[f];b.glyphs[f]={w:c.w,k:{},d:c.d&&"M"+c.d[I](/[mlcxtrv]/g,
111 function(h){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[h]||"M"})+"z"};if(c.k)for(var e in c.k)if(c[B](e))b.glyphs[f].k[e]=c.k[e]}}return a};G[p].getFont=function(a,b,c,d){d=d||"normal";c=c||"normal";b=+b||{normal:400,bold:700,lighter:300,bolder:800}[b]||400;if(m.fonts){var f=m.fonts[a];if(!f){a=new RegExp("(^|\\s)"+a[I](/[^\w\d\s+!~.:_-]/g,s)+"(\\s|$)","i");for(var e in m.fonts)if(m.fonts[B](e))if(a.test(e)){f=m.fonts[e];break}}var h;if(f){e=0;for(a=f[o];e<a;e++){h=f[e];if(h.face["font-weight"]==
112 b&&(h.face["font-style"]==c||!h.face["font-style"])&&h.face["font-stretch"]==d)break}}return h}};G[p].print=function(a,b,c,d,f,e){e=e||"middle";var h=this.set(),g=(c+s)[H](s),i=0;m.is(d,c)&&(d=this.getFont(d));if(d){c=(f||16)/d.face["units-per-em"];var j=d.face.bbox.split(U);f=+j[0];e=+j[1]+(e=="baseline"?j[3]-j[1]+ +d.face.descent:(j[3]-j[1])/2);j=0;for(var k=g[o];j<k;j++){var n=j&&d.glyphs[g[j-1]]||{},r=d.glyphs[g[j]];i+=j?(n.w||d.w)+(n.k&&n.k[g[j]]||0):0;r&&r.d&&h[E](this.path(r.d).attr({fill:"#000",
113 stroke:"none",translation:[i,0]}))}h.scale(c,c,f,e).translate(a-f,b-e)}return h};var Cb=/\{(\d+)\}/g;m.format=function(a,b){var c=m.is(b,b)?[0][N](b):arguments;a&&m.is(a,fa)&&c[o]-1&&(a=a[I](Cb,function(d,f){return c[++f]==null?s:c[f]}));return a||s};m.ninja=function(){Ha.was?(Raphael=Ha.is):delete Raphael;return m};m.el=t[p];return m}();