1.0. RC1.6 FIxed bug in IE. From now till 1.0 final, no more API changes are planned...
authorDmitry Baranovskiy <dbaranovskiy@Fresh-Air.sydney.atlassian.com>
Thu, 24 Sep 2009 23:36:46 +0000 (09:36 +1000)
committerDmitry Baranovskiy <dbaranovskiy@Fresh-Air.sydney.atlassian.com>
Thu, 24 Sep 2009 23:36:46 +0000 (09:36 +1000)
raphael-min.js
raphael.js

index 1e77a06..05ef6d8 100644 (file)
@@ -1,7 +1,7 @@
 /*
- * Raphael 1.0 RC1.5 - JavaScript Vector Library
+ * Raphael 1.0 RC1.6 - JavaScript Vector Library
  *
  * Copyright (c) 2008 - 2009 Dmitry Baranovskiy (http://raphaeljs.com)
  * Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) license.
  */
-window.Raphael=(function(){var X=/[, ]+/,g=document,K=window,O={was:"Raphael" in window,is:window.Raphael},f=function(){return l.apply(f,arguments);},b={},p={"clip-rect":"0 0 10e9 10e9",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},t={"clip-rect":"csv",cx:"number",cy:"number",fill:"colour","fill-opacity":"number","font-size":"number",height:"number",opacity:"number",path:"path",r:"number",rotation:"csv",rx:"number",ry:"number",scale:"csv",stroke:"colour","stroke-opacity":"number","stroke-width":"number",translation:"csv",width:"number",x:"number",y:"number"},u=["click","dblclick","mousedown","mousemove","mouseout","mouseover","mouseup"];f.version="1.0 RC1.5";f.type=(window.SVGAngle||document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")?"SVG":"VML");f.svg=!(f.vml=f.type=="VML");f.idGenerator=0;f.fn={};f.is=function(i,e){e=(e+"").toLowerCase();if((e=="object"||e=="undefined")&&typeof i==e){return true;}if(i==null&&e=="null"){return true;}return Object.prototype.toString.call(i).replace(/^\[object\s+|\]$/gi,"").toLowerCase()==e;};f.setWindow=function(e){K=e;g=K.document;};f.hsb2rgb=W(function(ae,ac,ai){if(f.is(ae,"object")&&"h" in ae&&"s" in ae&&"b" in ae){ai=ae.b;ac=ae.s;ae=ae.h;}var Z,aa,aj;if(ai==0){return{r:0,g:0,b:0,hex:"#000"};}if(ae>1||ac>1||ai>1){ae/=255;ac/=255;ai/=255;}var ab=Math.floor(ae*6),af=(ae*6)-ab,Y=ai*(1-ac),R=ai*(1-(ac*af)),ak=ai*(1-(ac*(1-af)));Z=[ai,R,Y,Y,ak,ai,ai][ab];aa=[ak,ai,ai,R,Y,Y,ak][ab];aj=[Y,Y,ak,ai,ai,R,Y][ab];Z*=255;aa*=255;aj*=255;var ag={r:Z,g:aa,b:aj},e=Math.round(Z).toString(16),ad=Math.round(aa).toString(16),ah=Math.round(aj).toString(16);if(e.length==1){e="0"+e;}if(ad.length==1){ad="0"+ad;}if(ah.length==1){ah="0"+ah;}ag.hex="#"+e+ad+ah;return ag;},f);f.rgb2hsb=W(function(e,i,ac){if(f.is(e,"object")&&"r" in e&&"g" in e&&"b" in e){ac=e.b;i=e.g;e=e.r;}if(f.is(e,"string")){var ae=f.getRGB(e);e=ae.r;i=ae.g;ac=ae.b;}if(e>1||i>1||ac>1){e/=255;i/=255;ac/=255;}var ab=Math.max(e,i,ac),R=Math.min(e,i,ac),Z,Y,aa=ab;if(R==ab){return{h:0,s:0,b:ab};}else{var ad=(ab-R);Y=ad/ab;if(e==ab){Z=(i-ac)/ad;}else{if(i==ab){Z=2+((ac-e)/ad);}else{Z=4+((e-i)/ad);}}Z/=6;if(Z<0){Z+=1;}if(Z>1){Z-=1;}}return{h:Z,s:Y,b:aa};},f);f._path2string=function(){var Y="",ab;for(var R=0,Z=this.length;R<Z;R++){for(var e=0,aa=this[R].length;e<aa;e++){Y+=this[R][e];e&&e!=aa-1&&(Y+=",");}R!=Z-1&&(Y+="\n");}return Y.replace(/,(?=-)/g,"");};function W(Y,i,e){function R(){var Z=Array.prototype.splice.call(arguments,0,arguments.length),aa=Z.join("\u25ba");R.cache=R.cache||{};R.count=R.count||[];if(aa in R.cache){return e?e(R.cache[aa]):R.cache[aa];}if(R.count.length>1000){delete R.cache[R.count.unshift()];}R.count.push(aa);R.cache[aa]=Y.apply(i,Z);return e?e(R.cache[aa]):R.cache[aa];}return R;}f.getRGB=W(function(e){var ae={aliceblue:"#f0f8ff",amethyst:"#96c",antiquewhite:"#faebd7",aqua:"#0ff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000",blanchedalmond:"#ffebcd",blue:"#00f",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#0ff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#f0f",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#789",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#0f0",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#f0f",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#f00",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#fff",whitesmoke:"#f5f5f5",yellow:"#ff0",yellowgreen:"#9acd32"},aa;if((e+"").toLowerCase() in ae){e=ae[(e+"").toLowerCase()];}if(!e){return{r:0,g:0,b:0,hex:"#000"};}if(e=="none"){return{r:-1,g:-1,b:-1,hex:"none"};}var R,Y,ad,ab=(e+"").match(/^\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);if(ab){if(ab[2]){ad=parseInt(ab[2].substring(5),16);Y=parseInt(ab[2].substring(3,5),16);R=parseInt(ab[2].substring(1,3),16);}if(ab[3]){ad=parseInt(ab[3].substring(3)+ab[3].substring(3),16);Y=parseInt(ab[3].substring(2,3)+ab[3].substring(2,3),16);R=parseInt(ab[3].substring(1,2)+ab[3].substring(1,2),16);}if(ab[4]){ab=ab[4].split(/\s*,\s*/);R=parseFloat(ab[0]);Y=parseFloat(ab[1]);ad=parseFloat(ab[2]);}if(ab[5]){ab=ab[5].split(/\s*,\s*/);R=parseFloat(ab[0])*2.55;Y=parseFloat(ab[1])*2.55;ad=parseFloat(ab[2])*2.55;}if(ab[6]){ab=ab[6].split(/\s*,\s*/);R=parseFloat(ab[0]);Y=parseFloat(ab[1]);ad=parseFloat(ab[2]);return f.hsb2rgb(R,Y,ad);}if(ab[7]){ab=ab[7].split(/\s*,\s*/);R=parseFloat(ab[0])*2.55;Y=parseFloat(ab[1])*2.55;ad=parseFloat(ab[2])*2.55;return f.hsb2rgb(R,Y,ad);}ab={r:R,g:Y,b:ad};var i=Math.round(R).toString(16),Z=Math.round(Y).toString(16),ac=Math.round(ad).toString(16);(i.length==1)&&(i="0"+i);(Z.length==1)&&(Z="0"+Z);(ac.length==1)&&(ac="0"+ac);ab.hex="#"+i+Z+ac;aa=ab;}else{aa={r:-1,g:-1,b:-1,hex:"none",error:1};}return aa;},f);f.getColor=function(i){var R=this.getColor.start=this.getColor.start||{h:0,s:1,b:i||0.75},e=this.hsb2rgb(R.h,R.s,R.b);R.h+=0.075;if(R.h>1){R.h=0;R.s-=0.2;if(R.s<=0){this.getColor.start={h:0,s:1,b:R.b};}}return e.hex;};f.getColor.reset=function(){delete this.start;};f.parsePathString=W(function(e){if(!e){return null;}var R={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},i=[];if(f.is(e,"array")&&f.is(e[0],"array")){i=s(e);}if(!i.length){(e+"").replace(/([achlmqstvz])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?\s*,?\s*)+)/ig,function(Z,Y,ac){var ab=[],aa=Y.toLowerCase();ac.replace(/(-?\d*\.?\d*(?:e[-+]?\d+)?)\s*,?\s*/ig,function(ae,ad){ad&&ab.push(+ad);});while(ab.length>=R[aa]){i.push([Y].concat(ab.splice(0,R[aa])));if(!R[aa]){break;}}});}i.toString=f._path2string;return i;});var B=W(function(ag){if(!ag){return{x:0,y:0,width:0,height:0};}ag=N(ag);var ad=0,ac=0,Z=[],R=[];for(var aa=0,af=ag.length;aa<af;aa++){if(ag[aa][0]=="M"){ad=ag[aa][1];ac=ag[aa][2];Z.push(ad);R.push(ac);}else{var ab=I(ad,ac,ag[aa][1],ag[aa][2],ag[aa][3],ag[aa][4],ag[aa][5],ag[aa][6]);Z=Z.concat(ab.min.x,ab.max.x);R=R.concat(ab.min.y,ab.max.y);}}var e=Math.min.apply(0,Z),ae=Math.min.apply(0,R);return{x:e,y:ae,width:Math.max.apply(0,Z)-e,height:Math.max.apply(0,R)-ae};}),s=function(ab){var Y=[];if(!f.is(ab,"array")||!f.is(ab&&ab[0],"array")){ab=f.parsePathString(ab);}for(var R=0,Z=ab.length;R<Z;R++){Y[R]=[];for(var e=0,aa=ab[R].length;e<aa;e++){Y[R][e]=ab[R][e];}}Y.toString=f._path2string;return Y;},c=W(function(Z){if(!f.is(Z,"array")||!f.is(Z&&Z[0],"array")){Z=f.parsePathString(Z);}var af=[],ah=0,ag=0,ak=0,aj=0,Y=0;if(Z[0][0]=="M"){ah=Z[0][1];ag=Z[0][2];ak=ah;aj=ag;Y++;af.push(["M",ah,ag]);}for(var ac=Y,al=Z.length;ac<al;ac++){var e=af[ac]=[],ai=Z[ac];if(ai[0]!=ai[0].toLowerCase()){e[0]=ai[0].toLowerCase();switch(e[0]){case"a":e[1]=ai[1];e[2]=ai[2];e[3]=ai[3];e[4]=ai[4];e[5]=ai[5];e[6]=+(ai[6]-ah).toFixed(3);e[7]=+(ai[7]-ag).toFixed(3);break;case"v":e[1]=+(ai[1]-ag).toFixed(3);break;case"m":ak=ai[1];aj=ai[2];default:for(var ab=1,ad=ai.length;ab<ad;ab++){e[ab]=+(ai[ab]-((ab%2)?ah:ag)).toFixed(3);}}}else{e=af[ac]=[];if(ai[0]=="m"){ak=ai[1]+ah;aj=ai[2]+ag;}for(var aa=0,R=ai.length;aa<R;aa++){af[ac][aa]=ai[aa];}}var ae=af[ac].length;switch(af[ac][0]){case"z":ah=ak;ag=aj;break;case"h":ah+=+af[ac][ae-1];break;case"v":ag+=+af[ac][ae-1];break;default:ah+=+af[ac][ae-2];ag+=+af[ac][ae-1];}}af.toString=f._path2string;return af;},0,s),v=W(function(Z){if(!f.is(Z,"array")||!f.is(Z&&Z[0],"array")){Z=f.parsePathString(Z);}var ae=[],ag=0,af=0,aj=0,ai=0,Y=0;if(Z[0][0]=="M"){ag=+Z[0][1];af=+Z[0][2];aj=ag;ai=af;Y++;ae[0]=["M",ag,af];}for(var ac=Y,ak=Z.length;ac<ak;ac++){var e=ae[ac]=[],ah=Z[ac];if(ah[0]!=(ah[0]+"").toUpperCase()){e[0]=(ah[0]+"").toUpperCase();switch(e[0]){case"A":e[1]=ah[1];e[2]=ah[2];e[3]=ah[3];e[4]=ah[4];e[5]=ah[5];e[6]=+(ah[6]+ag);e[7]=+(ah[7]+af);break;case"V":e[1]=+ah[1]+af;break;case"H":e[1]=+ah[1]+ag;break;case"M":aj=+ah[1]+ag;ai=+ah[2]+af;default:for(var ab=1,ad=ah.length;ab<ad;ab++){e[ab]=+ah[ab]+((ab%2)?ag:af);}}}else{for(var aa=0,R=ah.length;aa<R;aa++){ae[ac][aa]=ah[aa];}}switch(e[0]){case"Z":ag=aj;af=ai;break;case"H":ag=e[1];break;case"V":af=e[1];break;default:ag=ae[ac][ae[ac].length-2];af=ae[ac][ae[ac].length-1];}}ae.toString=f._path2string;return ae;},null,s),d=function(i,Y,e,R){return[i,Y,e,R,e,R];},w=function(i,Y,ab,Z,e,R){var aa=1/3,ac=2/3;return[aa*i+ac*ab,aa*Y+ac*Z,aa*e+ac*ab,aa*R+ac*Z,e,R];},q=function(aj,aO,at,aq,ak,ae,Z,ai,aN,al){var ap=Math.PI*120/180,e=Math.PI/180*(+ak||0),ax=[],au,aK=W(function(aP,aS,i){var aR=aP*Math.cos(i)-aS*Math.sin(i),aQ=aP*Math.sin(i)+aS*Math.cos(i);return{x:aR,y:aQ};});if(!al){au=aK(aj,aO,-e);aj=au.x;aO=au.y;au=aK(ai,aN,-e);ai=au.x;aN=au.y;var R=Math.cos(Math.PI/180*ak),ag=Math.sin(Math.PI/180*ak),az=(aj-ai)/2,ay=(aO-aN)/2;at=Math.max(at,Math.abs(az));aq=Math.max(aq,Math.abs(ay));var Y=at*at,aC=aq*aq,aE=(ae==Z?-1:1)*Math.sqrt(Math.abs((Y*aC-Y*ay*ay-aC*az*az)/(Y*ay*ay+aC*az*az))),an=aE*at*ay/aq+(aj+ai)/2,am=aE*-aq*az/at+(aO+aN)/2,ad=Math.asin((aO-am)/aq),ac=Math.asin((aN-am)/aq);ad=aj<an?Math.PI-ad:ad;ac=ai<an?Math.PI-ac:ac;ad<0&&(ad=Math.PI*2+ad);ac<0&&(ac=Math.PI*2+ac);if(Z&&ad>ac){ad=ad-Math.PI*2;}if(!Z&&ac>ad){ac=ac-Math.PI*2;}}else{ad=al[0];ac=al[1];an=al[2];am=al[3];}var ah=ac-ad;if(Math.abs(ah)>ap){var ao=ac,ar=ai,af=aN;ac=ad+ap*(Z&&ac>ad?1:-1);ai=an+at*Math.cos(ac);aN=am+aq*Math.sin(ac);ax=q(ai,aN,at,aq,ak,0,Z,ar,af,[ac,ao,an,am]);}ah=ac-ad;var ab=Math.cos(ad),aM=Math.sin(ad),aa=Math.cos(ac),aL=Math.sin(ac),aA=Math.tan(ah/4),aD=4/3*at*aA,aB=4/3*aq*aA,aJ=[aj,aO],aI=[aj+aD*aM,aO-aB*ab],aH=[ai+aD*aL,aN-aB*aa],aF=[ai,aN];aI[0]=2*aJ[0]-aI[0];aI[1]=2*aJ[1]-aI[1];if(al){return[aI,aH,aF].concat(ax);}else{ax=[aI,aH,aF].concat(ax).join(",").split(",");var av=[];for(var aG=0,aw=ax.length;aG<aw;aG++){av[aG]=aG%2?aK(ax[aG-1],ax[aG],e).y:aK(ax[aG],ax[aG+1],e).x;}return av;}},z=W(function(i,e,an,al,aa,Z,ac,ab,ah){var af=Math.pow(1-ah,3)*i+Math.pow(1-ah,2)*3*ah*an+(1-ah)*3*ah*ah*aa+Math.pow(ah,3)*ac,ad=Math.pow(1-ah,3)*e+Math.pow(1-ah,2)*3*ah*al+(1-ah)*3*ah*ah*Z+Math.pow(ah,3)*ab,aj=i+2*ah*(an-i)+ah*ah*(aa-2*an+i),ai=e+2*ah*(al-e)+ah*ah*(Z-2*al+e),am=an+2*ah*(aa-an)+ah*ah*(ac-2*aa+an),ak=al+2*ah*(Z-al)+ah*ah*(ab-2*Z+al),ag=(1-ah)*i+ah*an,ae=(1-ah)*e+ah*al,Y=(1-ah)*aa+ah*ac,R=(1-ah)*Z+ah*ab;return{x:af,y:ad,m:{x:aj,y:ai},n:{x:am,y:ak},start:{x:ag,y:ae},end:{x:Y,y:R}};}),I=W(function(i,e,Y,R,al,ak,ah,ae){var aj=(al-2*Y+i)-(ah-2*al+Y),ag=2*(Y-i)-2*(al-Y),ad=i-Y,ab=(-ag+Math.sqrt(ag*ag-4*aj*ad))/2/aj,Z=(-ag-Math.sqrt(ag*ag-4*aj*ad))/2/aj,af=[e,ae],ai=[i,ah],ac=z(i,e,Y,R,al,ak,ah,ae,ab>0&&ab<1?ab:0),aa=z(i,e,Y,R,al,ak,ah,ae,Z>0&&Z<1?Z:0);ai=ai.concat(ac.x,aa.x);af=af.concat(ac.y,aa.y);aj=(ak-2*R+e)-(ae-2*ak+R);ag=2*(R-e)-2*(ak-R);ad=e-R;ab=(-ag+Math.sqrt(ag*ag-4*aj*ad))/2/aj;Z=(-ag-Math.sqrt(ag*ag-4*aj*ad))/2/aj;ac=z(i,e,Y,R,al,ak,ah,ae,ab>0&&ab<1?ab:0);aa=z(i,e,Y,R,al,ak,ah,ae,Z>0&&Z<1?Z:0);ai=ai.concat(ac.x,aa.x);af=af.concat(ac.y,aa.y);return{min:{x:Math.min.apply(Math,ai),y:Math.min.apply(Math,af)},max:{x:Math.max.apply(Math,ai),y:Math.max.apply(Math,af)}};}),N=W(function(ak,af){var Z=v(ak),ag=af&&v(af),ah={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},e={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},ab=function(al,am){var i,an;if(!al){return["C",am.x,am.y,am.x,am.y,am.x,am.y];}!(al[0] in {T:1,Q:1})&&(am.qx=am.qy=null);switch(al[0]){case"M":am.X=al[1];am.Y=al[2];break;case"A":al=["C"].concat(q.apply(0,[am.x,am.y].concat(al.slice(1))));break;case"S":i=am.x+(am.x-(am.bx||am.x));an=am.y+(am.y-(am.by||am.y));al=["C",i,an].concat(al.slice(1));break;case"T":am.qx=am.x+(am.x-(am.qx||am.x));am.qy=am.y+(am.y-(am.qy||am.y));al=["C"].concat(w(am.x,am.y,am.qx,am.qy,al[1],al[2]));break;case"Q":am.qx=al[1];am.qy=al[2];al=["C"].concat(w(am.x,am.y,al[1],al[2],al[3],al[4]));break;case"L":al=["C"].concat(d(am.x,am.y,al[1],al[2]));break;case"H":al=["C"].concat(d(am.x,am.y,al[1],am.y));break;case"V":al=["C"].concat(d(am.x,am.y,am.x,al[1]));break;case"Z":al=["C"].concat(d(am.x,am.y,am.X,am.Y));break;}return al;},R=function(al,am){if(al[am].length>7){al[am].shift();var an=al[am];while(an.length){al.splice(am++,0,["C"].concat(an.splice(0,6)));}al.splice(am,1);ai=Math.max(Z.length,ag&&ag.length||0);}},Y=function(ap,ao,am,al,an){if(ap&&ao&&ap[an][0]=="M"&&ao[an][0]!="M"){ao.splice(an,0,["M",al.x,al.y]);am.bx=0;am.by=0;am.x=ap[an][1];am.y=ap[an][2];ai=Math.max(Z.length,ag&&ag.length||0);}};for(var ad=0,ai=Math.max(Z.length,ag&&ag.length||0);ad<ai;ad++){Z[ad]=ab(Z[ad],ah);R(Z,ad);ag&&(ag[ad]=ab(ag[ad],e));ag&&R(ag,ad);Y(Z,ag,ah,e,ad);Y(ag,Z,e,ah,ad);var ac=Z[ad],aj=ag&&ag[ad],aa=ac.length,ae=ag&&aj.length;ah.x=ac[aa-2];ah.y=ac[aa-1];ah.bx=parseFloat(ac[aa-4])||ah.x;ah.by=parseFloat(ac[aa-3])||ah.y;e.bx=ag&&(parseFloat(aj[ae-4])||e.x);e.by=ag&&(parseFloat(aj[ae-3])||e.y);e.x=ag&&aj[ae-2];e.y=ag&&aj[ae-1];}return ag?[Z,ag]:Z;},null,s),n=W(function(ae){var ad=[];for(var aa=0,af=ae.length;aa<af;aa++){var e={},ac=ae[aa].match(/^([^:]*):?([\d\.]*)/);e.color=f.getRGB(ac[1]);if(e.color.error){return null;}e.color=e.color.hex;ac[2]&&(e.offset=ac[2]+"%");ad.push(e);}for(var aa=1,af=ad.length-1;aa<af;aa++){if(!ad[aa].offset){var R=parseFloat(ad[aa-1].offset||0),Y=false;for(var Z=aa+1;Z<af;Z++){if(ad[Z].offset){Y=ad[Z].offset;break;}}if(!Y){Y=100;Z=af;}Y=parseFloat(Y);var ab=(Y-R)/(Z-aa+1);for(;aa<Z;aa++){R+=ab;ad[aa].offset=R+"%";}}}return ad;}),F=function(){var R,i,Z,Y,e;if(f.is(arguments[0],"string")||f.is(arguments[0],"object")){if(f.is(arguments[0],"string")){R=g.getElementById(arguments[0]);}else{R=arguments[0];}if(R.tagName){if(arguments[1]==null){return{container:R,width:R.style.pixelWidth||R.offsetWidth,height:R.style.pixelHeight||R.offsetHeight};}else{return{container:R,width:arguments[1],height:arguments[2]};}}}else{if(f.is(arguments[0],"number")&&arguments.length>3){return{container:1,x:arguments[0],y:arguments[1],width:arguments[2],height:arguments[3]};}}},a=function(e,R){var i=this;for(var Y in R){if(R.hasOwnProperty(Y)&&!(Y in e)){switch(typeof R[Y]){case"function":(function(Z){e[Y]=e===i?Z:function(){return Z.apply(i,arguments);};})(R[Y]);break;case"object":e[Y]=e[Y]||{};a.call(this,e[Y],R[Y]);break;default:e[Y]=R[Y];break;}}}};if(f.svg){b.svgns="http://www.w3.org/2000/svg";b.xlink="http://www.w3.org/1999/xlink";var M=function(e){return +e+(Math.floor(e)==e)*0.5;};var y=function(aa){for(var R=0,Y=aa.length;R<Y;R++){if(aa[R][0].toLowerCase()!="a"){for(var e=1,Z=aa[R].length;e<Z;e++){aa[R][e]=M(aa[R][e]);}}else{aa[R][6]=M(aa[R][6]);aa[R][7]=M(aa[R][7]);}}return aa;};var A=function(R,e){if(e){for(var i in e){if(e.hasOwnProperty(i)){R.setAttribute(i,e[i]);}}}else{return g.createElementNS(b.svgns,R);}};f.toString=function(){return"Your browser supports SVG.\nYou are running Rapha\u00ebl "+this.version;};var V=function(e,Y){var i=A("path");Y.canvas&&Y.canvas.appendChild(i);var R=new m(i,Y);R.type="path";E(R,{fill:"none",stroke:"#000",path:e});return R;};var L=function(Y,ai,e){var af="linear",ac=0.5,aa=0.5,ak=Y.style;ai=(ai+"").replace(/^r(?:\(([^,]+?)\s*,\s*([^\)]+?)\))?/,function(al,i,am){af="radial";if(i&&am){ac=parseFloat(i);aa=parseFloat(am);if(Math.pow(ac-0.5,2)+Math.pow(aa-0.5,2)>0.25){aa=Math.sqrt(0.25-Math.pow(ac-0.5,2))+0.5;}}return"";});ai=ai.split(/\s*\-\s*/);if(af=="linear"){var ab=ai.shift();ab=-parseFloat(ab);if(isNaN(ab)){return null;}var Z=[0,0,Math.cos(ab*Math.PI/180),Math.sin(ab*Math.PI/180)],ah=1/(Math.max(Math.abs(Z[2]),Math.abs(Z[3]))||1);Z[2]*=ah;Z[3]*=ah;if(Z[2]<0){Z[0]=-Z[2];Z[2]=0;}if(Z[3]<0){Z[1]=-Z[3];Z[3]=0;}}var ae=n(ai);if(!ae){return null;}var R=A(af+"Gradient");R.id="r"+(f.idGenerator++).toString(36);af=="radial"?A(R,{fx:ac,fy:aa}):A(R,{x1:Z[0],y1:Z[1],x2:Z[2],y2:Z[3]});e.defs.appendChild(R);for(var ad=0,aj=ae.length;ad<aj;ad++){var ag=A("stop");A(ag,{offset:ae[ad].offset?ae[ad].offset:!ad?"0%":"100%","stop-color":ae[ad].color||"#fff"});R.appendChild(ag);}A(Y,{fill:"url(#"+R.id+")",opacity:1,"fill-opacity":1});ak.fill="";ak.opacity=1;ak.fillOpacity=1;return 1;};var r=function(i){var e=i.getBBox();A(i.pattern,{patternTransform:f.format("translate({0},{1})",e.x,e.y)});};var E=function(ag,ap){var aj={"":[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]},al=ag.node,ah=ag.attrs,ad=ag.attr("rotation"),aa=function(ax,aw){aw=aj[(aw+"").toLowerCase()];if(aw){var au=ax.attrs["stroke-width"]||"1",ar={round:au,square:au,butt:0}[ax.attrs["stroke-linecap"]||ap["stroke-linecap"]]||0,av=[];var at=aw.length;while(at--){av[at]=aw[at]*au+((at%2)?1:-1)*ar;}A(al,{"stroke-dasharray":av.join(",")});}};parseFloat(ad)&&ag.rotate(0,true);for(var ak in ap){if(ap.hasOwnProperty(ak)){if(!(ak in p)){continue;}var ai=ap[ak];ah[ak]=ai;switch(ak){case"href":case"title":case"target":var an=al.parentNode;if(an.tagName.toLowerCase()!="a"){var Y=A("a");an.insertBefore(Y,al);Y.appendChild(al);an=Y;}an.setAttributeNS(ag.paper.xlink,ak,ai);break;case"clip-rect":var i=(ai+"").split(X);if(i.length==4){ag.clip&&ag.clip.parentNode.parentNode.removeChild(ag.clip.parentNode);var R=A("clipPath"),am=A("rect");R.id="r"+(f.idGenerator++).toString(36);A(am,{x:i[0],y:i[1],width:i[2],height:i[3]});R.appendChild(am);ag.paper.defs.appendChild(R);A(al,{"clip-path":"url(#"+R.id+")"});ag.clip=am;}if(!ai){var ao=g.getElementById(al.getAttribute("clip-path").replace(/(^url\(#|\)$)/g,""));ao&&ao.parentNode.removeChild(ao);A(al,{"clip-path":""});delete ag.clip;}break;case"path":if(ai&&ag.type=="path"){ah.path=y(v(ai));A(al,{d:ah.path});}break;case"width":al.setAttribute(ak,ai);if(ah.fx){ak="x";ai=ah.x;}else{break;}case"x":if(ah.fx){ai=-ah.x-(ah.width||0);}case"rx":if(ak=="rx"&&ag.type=="rect"){break;}case"cx":al.setAttribute(ak,ai);ag.pattern&&r(ag);break;case"height":al.setAttribute(ak,ai);if(ah.fy){ak="y";ai=ah.y;}else{break;}case"y":if(ah.fy){ai=-ah.y-(ah.height||0);}case"ry":if(ak=="ry"&&ag.type=="rect"){break;}case"cy":al.setAttribute(ak,ai);ag.pattern&&r(ag);break;case"r":if(ag.type=="rect"){A(al,{rx:ai,ry:ai});}else{al.setAttribute(ak,ai);}break;case"src":if(ag.type=="image"){al.setAttributeNS(ag.paper.xlink,"href",ai);}break;case"stroke-width":al.style.strokeWidth=ai;al.setAttribute(ak,ai);if(ah["stroke-dasharray"]){aa(ag,ah["stroke-dasharray"]);}break;case"stroke-dasharray":aa(ag,ai);break;case"rotation":ad=ai;ag.rotate(ai,true);break;case"translation":var ab=(ai+"").split(X);ag.translate((+ab[0]+1||2)-1,(+ab[1]+1||2)-1);break;case"scale":var ab=(ai+"").split(X);ag.scale(+ab[0]||1,+ab[1]||+ab[0]||1,+ab[2]||null,+ab[3]||null);break;case"fill":var Z=(ai+"").match(/^url\(['"]?([^\)]+)['"]?\)$/i);if(Z){var R=A("pattern"),af=A("image");R.id="r"+(f.idGenerator++).toString(36);A(R,{x:0,y:0,patternUnits:"userSpaceOnUse"});A(af,{x:0,y:0});af.setAttributeNS(ag.paper.xlink,"href",Z[1]);R.appendChild(af);var aq=g.createElement("img");aq.style.position="absolute";aq.style.top="-9999em";aq.style.left="-9999em";aq.onload=function(){A(R,{width:this.offsetWidth,height:this.offsetHeight});A(af,{width:this.offsetWidth,height:this.offsetHeight});g.body.removeChild(this);b.safari();};g.body.appendChild(aq);aq.src=Z[1];ag.paper.defs.appendChild(R);al.style.fill="url(#"+R.id+")";A(al,{fill:"url(#"+R.id+")"});ag.pattern=R;ag.pattern&&r(ag);break;}if(!f.getRGB(ai).error){delete ap.gradient;delete ah.gradient;if(!f.is(ah.opacity,"undefined")&&f.is(ap.opacity,"undefined")){al.style.opacity=ah.opacity;A(al,{opacity:ah.opacity});}if(!f.is(ah["fill-opacity"],"undefined")&&f.is(ap["fill-opacity"],"undefined")){al.style.fillOpacity=ah["fill-opacity"];A(al,{"fill-opacity":ah["fill-opacity"]});}}else{if((ag.type in {circle:1,ellipse:1}||(ai+"").charAt(0)!="r")&&L(al,ai,ag.paper)){ah.gradient=ai;ah.fill="none";break;}}case"stroke":al.style[ak]=f.getRGB(ai).hex;al.setAttribute(ak,f.getRGB(ai).hex);break;case"gradient":(ag.type in {circle:1,ellipse:1}||(ai+"").charAt(0)!="r")&&L(al,ai,ag.paper);break;case"opacity":case"fill-opacity":if(ah.gradient){var e=g.getElementById(al.getAttribute("fill").replace(/^url\(#|\)$/g,""));if(e){var ac=e.getElementsByTagName("stop");ac[ac.length-1].setAttribute("stop-opacity",ai);}break;}default:ak=="font-size"&&(ai=parseInt(ai,10)+"px");var ae=ak.replace(/(\-.)/g,function(ar){return ar.substring(1).toUpperCase();});al.style[ae]=ai;al.setAttribute(ak,ai);break;}}}S(ag,ap);parseInt(ad,10)&&ag.rotate(ad,true);};var J=1.2;var S=function(e,Z){if(e.type!="text"||!("text" in Z||"font" in Z||"font-size" in Z||"x" in Z||"y" in Z)){return;}var ae=e.attrs,R=e.node,ag=R.firstChild?parseInt(g.defaultView.getComputedStyle(R.firstChild,"").getPropertyValue("font-size"),10):10;if("text" in Z){while(R.firstChild){R.removeChild(R.firstChild);}var Y=(Z.text+"").split("\n");for(var aa=0,af=Y.length;aa<af;aa++){var ac=A("tspan");aa&&A(ac,{dy:ag*J,x:ae.x});ac.appendChild(g.createTextNode(Y[aa]));R.appendChild(ac);}}else{var Y=R.getElementsByTagName("tspan");for(var aa=0,af=Y.length;aa<af;aa++){aa&&A(Y[aa],{dy:ag*J,x:ae.x});}}A(R,{y:ae.y});var ab=e.getBBox(),ad=ae.y-(ab.y+ab.height/2);ad&&A(R,{y:ae.y+ad});};var m=function(i,e){var Z=0,R=0;this[0]=i;this.node=i;i.raphael=this;this.paper=e;this.attrs=this.attrs||{};this.transformations=[];this._={tx:0,ty:0,rt:{deg:0,cx:0,cy:0},sx:1,sy:1};};m.prototype.rotate=function(i,e,Y){if(i==null){if(this._.rt.cx){return[this._.rt.deg,this._.rt.cx,this._.rt.cy].join(" ");}return this._.rt.deg;}var R=this.getBBox();i=(i+"").split(X);if(i.length-1){e=parseFloat(i[1]);Y=parseFloat(i[2]);}i=parseFloat(i[0]);if(e!=null){this._.rt.deg=i;}else{this._.rt.deg+=i;}(Y==null)&&(e=null);this._.rt.cx=e;this._.rt.cy=Y;e=e==null?R.x+R.width/2:e;Y=Y==null?R.y+R.height/2:Y;if(this._.rt.deg){this.transformations[0]=f.format("rotate({0} {1} {2})",this._.rt.deg,e,Y);this.clip&&A(this.clip,{transform:f.format("rotate({0} {1} {2})",-this._.rt.deg,e,Y)});}else{this.transformations[0]="";this.clip&&A(this.clip,{transform:""});}A(this.node,{transform:this.transformations.join(" ")});return this;};m.prototype.hide=function(){this.node.style.display="none";return this;};m.prototype.show=function(){this.node.style.display="block";return this;};m.prototype.remove=function(){this.node.parentNode.removeChild(this.node);};m.prototype.getBBox=function(){if(this.type=="path"){return B(this.attrs.path);}if(this.node.style.display=="none"){this.show();var Y=true;}var ac={};try{ac=this.node.getBBox();}catch(aa){}finally{ac=ac||{};}if(this.type=="text"){ac={x:ac.x,y:Infinity,width:ac.width,height:0};for(var R=0,Z=this.node.getNumberOfChars();R<Z;R++){var ab=this.node.getExtentOfChar(R);(ab.y<ac.y)&&(ac.y=ab.y);(ab.y+ab.height-ac.y>ac.height)&&(ac.height=ab.y+ab.height-ac.y);}}Y&&this.hide();return ac;};m.prototype.attr=function(){if(arguments.length==1&&f.is(arguments[0],"string")){if(arguments[0]=="translation"){return this.translate();}if(arguments[0]=="rotation"){return this.rotate();}if(arguments[0]=="scale"){return this.scale();}return this.attrs[arguments[0]];}if(arguments.length==1&&f.is(arguments[0],"array")){var e={};for(var i in arguments[0]){if(arguments[0].hasOwnProperty(i)){e[arguments[0][i]]=this.attrs[arguments[0][i]];}}return e;}if(arguments.length==2){var R={};R[arguments[0]]=arguments[1];E(this,R);}else{if(arguments.length==1&&f.is(arguments[0],"object")){E(this,arguments[0]);}}return this;};m.prototype.toFront=function(){this.node.parentNode.appendChild(this.node);return this;};m.prototype.toBack=function(){if(this.node.parentNode.firstChild!=this.node){this.node.parentNode.insertBefore(this.node,this.node.parentNode.firstChild);}return this;};m.prototype.insertAfter=function(e){if(e.node.nextSibling){e.node.parentNode.insertBefore(this.node,e.node.nextSibling);}else{e.node.parentNode.appendChild(this.node);}return this;};m.prototype.insertBefore=function(e){var i=e.node;i.parentNode.insertBefore(this.node,i);return this;};var C=function(i,e,aa,Z){e=M(e);aa=M(aa);var Y=A("circle");i.canvas&&i.canvas.appendChild(Y);var R=new m(Y,i);R.attrs={cx:e,cy:aa,r:Z,fill:"none",stroke:"#000"};R.type="circle";A(Y,R.attrs);return R;};var H=function(R,e,ac,i,aa,ab){e=M(e);ac=M(ac);var Z=A("rect");R.canvas&&R.canvas.appendChild(Z);var Y=new m(Z,R);Y.attrs={x:e,y:ac,width:i,height:aa,r:ab||0,rx:ab||0,ry:ab||0,fill:"none",stroke:"#000"};Y.type="rect";A(Z,Y.attrs);return Y;};var h=function(i,e,ab,aa,Z){e=M(e);ab=M(ab);var Y=A("ellipse");i.canvas&&i.canvas.appendChild(Y);var R=new m(Y,i);R.attrs={cx:e,cy:ab,rx:aa,ry:Z,fill:"none",stroke:"#000"};R.type="ellipse";A(Y,R.attrs);return R;};var o=function(R,ab,e,ac,i,aa){var Z=A("image");A(Z,{x:e,y:ac,width:i,height:aa,preserveAspectRatio:"none"});Z.setAttributeNS(R.xlink,"href",ab);R.canvas&&R.canvas.appendChild(Z);var Y=new m(Z,R);Y.attrs={x:e,y:ac,width:i,height:aa,src:ab};Y.type="image";return Y;};var G=function(i,e,aa,Z){var Y=A("text");A(Y,{x:e,y:aa,"text-anchor":"middle"});i.canvas&&i.canvas.appendChild(Y);var R=new m(Y,i);R.attrs={x:e,y:aa,"text-anchor":"middle",text:Z,font:p.font,stroke:"none",fill:"#000"};R.type="text";E(R,R.attrs);return R;};var D=function(i,e){this.width=i||this.width;this.height=e||this.height;this.canvas.setAttribute("width",this.width);this.canvas.setAttribute("height",this.height);return this;};var l=function(){var Z=F.apply(null,arguments),R=Z&&Z.container,ab=Z.x,aa=Z.y,Y=Z.width,ac=Z.height;if(!R){throw new Error("SVG container not found.");}b.canvas=A("svg");var e=b.canvas,ad=e.style;e.setAttribute("width",Y||512);b.width=Y||512;e.setAttribute("height",ac||342);b.height=ac||342;if(R==1){g.body.appendChild(e);ad.position="absolute";ad.left=ab+"px";ad.top=aa+"px";}else{if(R.firstChild){R.insertBefore(e,R.firstChild);}else{R.appendChild(e);}}R={canvas:e,clear:function(){while(this.canvas.firstChild){this.canvas.removeChild(this.canvas.firstChild);}this.desc=A("desc");this.defs=A("defs");this.desc.appendChild(g.createTextNode("Created with Rapha\u00ebl"));this.canvas.appendChild(this.desc);this.canvas.appendChild(this.defs);}};for(var i in b){if(b.hasOwnProperty(i)){if(i!="create"){R[i]=b[i];}}}a.call(R,R,f.fn);R.clear();R.raphael=f;return R;};b.remove=function(){this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas);};}if(f.vml){var x=function(ab){var Z=N(ab);for(var R=0,Y=Z.length;R<Y;R++){Z[R][0]=(Z[R][0]+"").toLowerCase();Z[R][0]=="z"&&(Z[R][0]="x");for(var e=1,aa=Z[R].length;e<aa;e++){Z[R][e]=Math.round(Z[R][e]);}}return(Z+"");};f.toString=function(){return"Your browser doesn\u2019t support SVG. Assuming it is Internet Explorer and falling down to VML.\nYou are running Rapha\u00ebl "+this.version;};var V=function(e,aa){var Y=U("group"),ab=Y.style;ab.position="absolute";ab.left=0;ab.top=0;ab.width=aa.width+"px";ab.height=aa.height+"px";Y.coordsize=aa.coordsize;Y.coordorigin=aa.coordorigin;var R=U("shape"),i=R.style;i.width=aa.width+"px";i.height=aa.height+"px";R.path="";R.coordsize=this.coordsize;R.coordorigin=this.coordorigin;Y.appendChild(R);var Z=new m(R,Y,aa);Z.isAbsolute=true;Z.type="path";Z.path=[];Z.Path="";if(e){Z.attrs.path=f.parsePathString(e);Z.node.path=x(Z.attrs.path);}E(Z,{fill:"none",stroke:"#000"});Z.setBox();aa.canvas.appendChild(Y);return Z;};var E=function(ae,ai){ae.attrs=ae.attrs||{};var ag=ae.node,aj=ae.attrs,ab=ag.style,Y,an=ae;for(var ac in ai){if(ai.hasOwnProperty(ac)){aj[ac]=ai[ac];}}ai.href&&(ag.href=ai.href);ai.title&&(ag.title=ai.title);ai.target&&(ag.target=ai.target);if(ai.path&&ae.type=="path"){aj.path=f.parsePathString(ai.path);ag.path=x(aj.path);}if(ai.rotation!=null){ae.rotate(ai.rotation,true);}if(ai.translation){Y=(ai.translation+"").split(X);ae.translate(Y[0],Y[1]);}if(ai.scale){Y=(ai.scale+"").split(X);ae.scale(+Y[0]||1,+Y[1]||+Y[0]||1,+Y[2]||null,+Y[3]||null);}if("clip-rect" in ai){var e=(ai["clip-rect"]+"").split(X);if(e.length==4){e[2]=+e[2]+(+e[0]);e[3]=+e[3]+(+e[1]);var ad=ag.clipRect||g.createElement("div"),am=ad.style,aa=ag.parentNode;am.clip=f.format("rect({1}px {2}px {3}px {0}px)",e);if(!ag.clipRect){am.position="absolute";am.top=0;am.left=0;am.width=ae.paper.width+"px";am.height=ae.paper.height+"px";aa.parentNode.insertBefore(ad,aa);ad.appendChild(aa);ag.clipRect=ad;}}if(!ai["clip-rect"]){ag.clipRect&&(ag.clipRect.style.clip="");}}if(ae.type=="image"&&ai.src){ag.src=ai.src;}if(ae.type=="image"&&ai.opacity){ag.filterOpacity=" progid:DXImageTransform.Microsoft.Alpha(opacity="+(ai.opacity*100)+")";ab.filter=(ag.filterMatrix||"")+(ag.filterOpacity||"");}ai.font&&(ab.font=ai.font);ai["font-family"]&&(ab.fontFamily='"'+ai["font-family"].split(",")[0].replace(/^['"]+|['"]+$/g,"")+'"');ai["font-size"]&&(ab.fontSize=ai["font-size"]);ai["font-weight"]&&(ab.fontWeight=ai["font-weight"]);ai["font-style"]&&(ab.fontStyle=ai["font-style"]);if(ai.opacity!=null||ai["stroke-width"]!=null||ai.fill!=null||ai.stroke!=null||ai["stroke-width"]!=null||ai["stroke-opacity"]!=null||ai["fill-opacity"]!=null||ai["stroke-dasharray"]!=null||ai["stroke-miterlimit"]!=null||ai["stroke-linejoin"]!=null||ai["stroke-linecap"]!=null){ag=ae.shape||ag;var ah=(ag.getElementsByTagName("fill")&&ag.getElementsByTagName("fill")[0]),ak=false;!ah&&(ak=ah=U("fill"));if("fill-opacity" in ai||"opacity" in ai){var i=((+aj["fill-opacity"]+1||2)-1)*((+aj.opacity+1||2)-1);i<0&&(i=0);i>1&&(i=1);ah.opacity=i;}ai.fill&&(ah.on=true);if(ah.on==null||ai.fill=="none"){ah.on=false;}if(ah.on&&ai.fill){var R=ai.fill.match(/^url\(([^\)]+)\)$/i);if(R){ah.src=R[1];ah.type="tile";}else{ah.color=f.getRGB(ai.fill).hex;ah.src="";ah.type="solid";if(f.getRGB(ai.fill).error&&(an.type in {circle:1,ellipse:1}||(ai.fill+"").charAt(0)!="r")&&L(an,ai.fill)){aj.fill="none";aj.gradient=ai.fill;}}}ak&&ag.appendChild(ah);var Z=(ag.getElementsByTagName("stroke")&&ag.getElementsByTagName("stroke")[0]),al=false;!Z&&(al=Z=U("stroke"));if((ai.stroke&&ai.stroke!="none")||ai["stroke-width"]||ai["stroke-opacity"]!=null||ai["stroke-dasharray"]||ai["stroke-miterlimit"]||ai["stroke-linejoin"]||ai["stroke-linecap"]){Z.on=true;}(ai.stroke=="none"||Z.on==null||ai.stroke==0||ai["stroke-width"]==0)&&(Z.on=false);Z.on&&ai.stroke&&(Z.color=f.getRGB(ai.stroke).hex);var i=((+aj["stroke-opacity"]+1||2)-1)*((+aj.opacity+1||2)-1);i<0&&(i=0);i>1&&(i=1);Z.opacity=i;ai["stroke-linejoin"]&&(Z.joinstyle=ai["stroke-linejoin"]||"miter");Z.miterlimit=ai["stroke-miterlimit"]||8;ai["stroke-linecap"]&&(Z.endcap={butt:"flat",square:"square",round:"round"}[ai["stroke-linecap"]]||"miter");ai["stroke-width"]&&(Z.weight=(parseFloat(ai["stroke-width"])||1)*12/16);if(ai["stroke-dasharray"]){var af={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot","--..":"longdashdotdot"};Z.dashstyle=af[ai["stroke-dasharray"]]||"";}al&&ag.appendChild(Z);}if(an.type=="text"){var ab=b.span.style;aj.font&&(ab.font=aj.font);aj["font-family"]&&(ab.fontFamily=aj["font-family"]);aj["font-size"]&&(ab.fontSize=aj["font-size"]);aj["font-weight"]&&(ab.fontWeight=aj["font-weight"]);aj["font-style"]&&(ab.fontStyle=aj["font-style"]);an.node.string&&(b.span.innerHTML=an.node.string.replace(/</g,"&#60;").replace(/&/g,"&#38;").replace(/\n/g,"<br>"));an.W=aj.w=b.span.offsetWidth;an.H=aj.h=b.span.offsetHeight;an.X=aj.x;an.Y=aj.y+Math.round(an.H/2);switch(aj["text-anchor"]){case"start":an.node.style["v-text-align"]="left";an.bbx=Math.round(an.W/2);break;case"end":an.node.style["v-text-align"]="right";an.bbx=-Math.round(an.W/2);break;default:an.node.style["v-text-align"]="center";break;}}};var L=function(e,ac){e.attrs=e.attrs||{};var ad=e.attrs,af=e.node.getElementsByTagName("fill"),aa="linear",ab=".5 .5";e.attrs.gradient=ac;ac=(ac+"").replace(/^r(?:\(([^,]+?)\s*,\s*([^\)]+?)\))?/,function(ah,ai,i){aa="radial";if(ai&&i){ai=parseFloat(ai);i=parseFloat(i);if(Math.pow(ai-0.5,2)+Math.pow(i-0.5,2)>0.25){i=Math.sqrt(0.25-Math.pow(ai-0.5,2))+0.5;}ab=ai+" "+i;}return"";});ac=ac.split(/\s*\-\s*/);if(aa=="linear"){var R=ac.shift();R=-parseFloat(R);if(isNaN(R)){return null;}}var Z=n(ac);if(!Z){return null;}e=e.shape||e.node;af=af[0]||U("fill");if(Z.length){af.on=true;af.method="none";af.type=(aa=="radial")?"gradientradial":"gradient";af.color=Z[0].color;af.color2=Z[Z.length-1].color;var ag=[];for(var Y=0,ae=Z.length;Y<ae;Y++){Z[Y].offset&&ag.push(Z[Y].offset+" "+Z[Y].color);}if(ag.length){af.colors.value=ag.join(",");}else{af.colors&&(af.colors.value="0% "+af.color);}if(aa=="radial"){af.focus="100%";af.focussize=ab;af.focusposition=ab;}else{af.angle=(270-R)%360;}}return 1;};var m=function(Z,ab,e){var aa=0,R=0,i=0,Y=1;this[0]=Z;this.node=Z;Z.raphael=this;this.X=0;this.Y=0;this.attrs={};this.Group=ab;this.paper=e;this._={tx:0,ty:0,rt:{deg:0},sx:1,sy:1};};m.prototype.rotate=function(i,e,R){if(i==null){if(this._.rt.cx){return[this._.rt.deg,this._.rt.cx,this._.rt.cy].join(" ");}return this._.rt.deg;}i=(i+"").split(X);if(i.length-1){e=parseFloat(i[1]);R=parseFloat(i[2]);}i=parseFloat(i[0]);if(e!=null){this._.rt.deg=i;}else{this._.rt.deg+=i;}R==null&&(e=null);this._.rt.cx=e;this._.rt.cy=R;this.setBox(this.attrs,e,R);this.Group.style.rotation=this._.rt.deg;return this;};m.prototype.setBox=function(aa,ab,Z){var R=this.Group.style,ac=(this.shape&&this.shape.style)||this.node.style;aa=aa||{};for(var ad in aa){if(aa.hasOwnProperty(ad)){this.attrs[ad]=aa[ad];}}ab=ab||this._.rt.cx;Z=Z||this._.rt.cy;var ag=this.attrs,aj,ai,ak,af;switch(this.type){case"circle":aj=ag.cx-ag.r;ai=ag.cy-ag.r;ak=af=ag.r*2;break;case"ellipse":aj=ag.cx-ag.rx;ai=ag.cy-ag.ry;ak=ag.rx*2;af=ag.ry*2;break;case"rect":case"image":aj=ag.x;ai=ag.y;ak=ag.width||0;af=ag.height||0;break;case"text":this.textpath.v=["m",Math.round(ag.x),", ",Math.round(ag.y-2),"l",Math.round(ag.x)+1,", ",Math.round(ag.y-2)].join("");aj=ag.x-Math.round(this.W/2);ai=ag.y-this.H/2;ak=this.W;af=this.H;break;case"path":if(!this.attrs.path){aj=0;ai=0;ak=this.paper.width;af=this.paper.height;}else{var ae=B(this.attrs.path);aj=ae.x;ai=ae.y;ak=ae.width;af=ae.height;}break;default:aj=0;ai=0;ak=this.paper.width;af=this.paper.height;break;}ab=(ab==null)?aj+ak/2:ab;Z=(Z==null)?ai+af/2:Z;var Y=ab-this.paper.width/2,ah=Z-this.paper.height/2;if(this.type=="path"||this.type=="text"){(R.left!=Y+"px")&&(R.left=Y+"px");(R.top!=ah+"px")&&(R.top=ah+"px");this.X=this.type=="text"?aj:-Y;this.Y=this.type=="text"?ai:-ah;this.W=ak;this.H=af;(ac.left!=-Y+"px")&&(ac.left=-Y+"px");(ac.top!=-ah+"px")&&(ac.top=-ah+"px");}else{(R.left!=Y+"px")&&(R.left=Y+"px");(R.top!=ah+"px")&&(R.top=ah+"px");this.X=aj;this.Y=ai;this.W=ak;this.H=af;(R.width!=this.paper.width+"px")&&(R.width=this.paper.width+"px");(R.height!=this.paper.height+"px")&&(R.height=this.paper.height+"px");(ac.left!=aj-Y+"px")&&(ac.left=aj-Y+"px");(ac.top!=ai-ah+"px")&&(ac.top=ai-ah+"px");(ac.width!=ak+"px")&&(ac.width=ak+"px");(ac.height!=af+"px")&&(ac.height=af+"px");var al=(+aa.r||0)/(Math.min(ak,af));if(this.type=="rect"&&this.arcsize!=al&&(al||this.arcsize)){var e=U(al?"roundrect":"rect");e.arcsize=al;this.Group.appendChild(e);this.node.parentNode.removeChild(this.node);this.node=e;this.arcsize=al;E(this,this.attrs);this.setBox(this.attrs);}}};m.prototype.hide=function(){this.Group.style.display="none";return this;};m.prototype.show=function(){this.Group.style.display="block";return this;};m.prototype.getBBox=function(){if(this.type=="path"){return B(this.attrs.path);}return{x:this.X+(this.bbx||0),y:this.Y,width:this.W,height:this.H};};m.prototype.remove=function(){this[0].parentNode.removeChild(this[0]);this.Group.parentNode.removeChild(this.Group);this.shape&&this.shape.parentNode.removeChild(this.shape);};m.prototype.attr=function(){if(arguments.length==1&&f.is(arguments[0],"string")){if(arguments[0]=="translation"){return this.translate();}if(arguments[0]=="rotation"){return this.rotate();}if(arguments[0]=="scale"){return this.scale();}return this.attrs[arguments[0]];}if(this.attrs&&arguments.length==1&&f.is(arguments[0],"array")){var e={};for(var R=0,Y=arguments[0].length;R<Y;R++){e[arguments[0][R]]=this.attrs[arguments[0][R]];}return e;}var Z;if(arguments.length==2){Z={};Z[arguments[0]]=arguments[1];}if(arguments.length==1&&f.is(arguments[0],"object")){Z=arguments[0];}if(Z){if(Z.gradient&&(this.type in {circle:1,ellipse:1}||(Z.gradient+"").charAt(0)!="r")){L(this,Z.gradient);}if(Z.text&&this.type=="text"){this.node.string=Z.text;}E(this,Z);this.setBox(this.attrs);}return this;};m.prototype.toFront=function(){this.Group.parentNode.appendChild(this.Group);return this;};m.prototype.toBack=function(){if(this.Group.parentNode.firstChild!=this.Group){this.Group.parentNode.insertBefore(this.Group,this.Group.parentNode.firstChild);}return this;};m.prototype.insertAfter=function(e){if(e.Group.nextSibling){e.Group.parentNode.insertBefore(this.Group,e.Group.nextSibling);}else{e.Group.parentNode.appendChild(this.Group);}return this;};m.prototype.insertBefore=function(e){e.Group.parentNode.insertBefore(this.Group,e.Group);return this;};var C=function(i,ad,ac,e){var Z=U("group"),Y=Z.style,R=U("oval"),ab=R.style;Y.position="absolute";Y.left=0;Y.top=0;Y.width=i.width+"px";Y.height=i.height+"px";Z.coordsize=i.coordsize;Z.coordorigin=i.coordorigin;Z.appendChild(R);var aa=new m(R,Z,i);aa.type="circle";E(aa,{stroke:"#000",fill:"none"});aa.attrs.cx=ad;aa.attrs.cy=ac;aa.attrs.r=e;aa.setBox({x:ad-e,y:ac-e,width:e*2,height:e*2});i.canvas.appendChild(Z);return aa;};var H=function(i,ad,ac,ae,Z,e){var aa=U("group"),Y=aa.style,R=U(e?"roundrect":"rect"),af=(+e||0)/(Math.min(ae,Z));R.arcsize=af;Y.position="absolute";Y.left=0;Y.top=0;Y.width=i.width+"px";Y.height=i.height+"px";aa.coordsize=i.coordsize;aa.coordorigin=i.coordorigin;aa.appendChild(R);var ab=new m(R,aa,i);ab.type="rect";E(ab,{stroke:"#000"});ab.arcsize=af;ab.setBox({x:ad,y:ac,width:ae,height:Z,r:+e});i.canvas.appendChild(aa);return ab;};var h=function(e,ae,ad,R,i){var aa=U("group"),Z=aa.style,Y=U("oval"),ac=Y.style;Z.position="absolute";Z.left=0;Z.top=0;Z.width=e.width+"px";Z.height=e.height+"px";aa.coordsize=e.coordsize;aa.coordorigin=e.coordorigin;aa.appendChild(Y);var ab=new m(Y,aa,e);ab.type="ellipse";E(ab,{stroke:"#000"});ab.attrs.cx=ae;ab.attrs.cy=ad;ab.attrs.rx=R;ab.attrs.ry=i;ab.setBox({x:ae-R,y:ad-i,width:R*2,height:i*2});e.canvas.appendChild(aa);return ab;};var o=function(i,e,ae,ad,af,Z){var aa=U("group"),Y=aa.style,R=U("image"),ac=R.style;Y.position="absolute";Y.left=0;Y.top=0;Y.width=i.width+"px";Y.height=i.height+"px";aa.coordsize=i.coordsize;aa.coordorigin=i.coordorigin;R.src=e;aa.appendChild(R);var ab=new m(R,aa,i);ab.type="image";ab.attrs.src=e;ab.attrs.x=ae;ab.attrs.y=ad;ab.attrs.w=af;ab.attrs.h=Z;ab.setBox({x:ae,y:ad,width:af,height:Z});i.canvas.appendChild(aa);return ab;};var G=function(i,ae,ad,af){var aa=U("group"),Z=aa.style,Y=U("shape"),ac=Y.style,ag=U("path"),e=ag.style,R=U("textpath");Z.position="absolute";Z.left=0;Z.top=0;Z.width=i.width+"px";Z.height=i.height+"px";aa.coordsize=i.coordsize;aa.coordorigin=i.coordorigin;ag.v=["m",Math.round(ae),", ",Math.round(ad),"l",Math.round(ae)+1,", ",Math.round(ad)].join("");ag.textpathok=true;ac.width=i.width;ac.height=i.height;Z.position="absolute";Z.left=0;Z.top=0;Z.width=i.width;Z.height=i.height;R.string=af;R.on=true;Y.appendChild(R);Y.appendChild(ag);aa.appendChild(Y);var ab=new m(R,aa,i);ab.shape=Y;ab.textpath=ag;ab.type="text";ab.attrs.text=af;ab.attrs.x=ae;ab.attrs.y=ad;ab.attrs.w=1;ab.attrs.h=1;E(ab,{font:p.font,stroke:"none",fill:"#000"});ab.setBox();i.canvas.appendChild(aa);return ab;};var D=function(R,e){var i=this.canvas.style;this.width=parseFloat(R||this.width);this.height=parseFloat(e||this.height);i.width=this.width+"px";i.height=this.height+"px";i.clip="rect(0 "+this.width+"px "+this.height+"px 0)";this.coordsize=this.width+" "+this.height;return this;};g.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)");try{!g.namespaces.rvml&&g.namespaces.add("rvml","urn:schemas-microsoft-com:vml");var U=function(e){return g.createElement("<rvml:"+e+' class="rvml">');};}catch(T){var U=function(e){return g.createElement("<"+e+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">');};}var l=function(){var Y=F.apply(null,arguments),i=Y.container,ad=Y.height,ae,R=Y.width,ac=Y.x,ab=Y.y;if(!i){throw new Error("VML container not found.");}var aa=b.canvas=g.createElement("div"),Z=aa.style;R=parseFloat(R)||512;ad=parseFloat(ad)||342;b.width=R;b.height=ad;b.coordsize=R+" "+ad;b.coordorigin="0 0";b.span=g.createElement("span");ae=b.span.style;aa.appendChild(b.span);ae.position="absolute";ae.left="-99999px";ae.top="-99999px";ae.padding=0;ae.margin=0;ae.lineHeight=1;ae.display="inline";Z.width=R+"px";Z.height=ad+"px";Z.position="absolute";Z.clip="rect(0 "+R+"px "+ad+"px 0)";if(i==1){g.body.appendChild(aa);Z.left=ac+"px";Z.top=ab+"px";i={style:{width:R,height:ad}};}else{i.style.width=R;i.style.height=ad;if(i.firstChild){i.insertBefore(aa,i.firstChild);}else{i.appendChild(aa);}}for(var e in b){if(b.hasOwnProperty(e)){i[e]=b[e];}}a.call(i,i,f.fn);i.clear=function(){while(aa.firstChild){aa.removeChild(aa.firstChild);}};i.raphael=f;return i;};b.remove=function(){this.canvas.parentNode.removeChild(this.canvas);};}if({"Apple Computer, Inc.":1,"Google Inc.":1}[navigator.vendor]){b.safari=function(){var e=this.rect(-99,-99,this.width+99,this.height+99);setTimeout(function(){e.remove();});};}else{b.safari=function(){};}var j=(function(){if(g.addEventListener){return function(Z,R,i,e){var Y=function(aa){return i.call(e,aa);};Z.addEventListener(R,Y,false);return function(){Z.removeEventListener(R,Y,false);return true;};};}else{if(g.attachEvent){return function(aa,Y,R,i){var Z=function(ab){return R.call(i,ab||K.event);};aa.attachEvent("on"+Y,Z);var e=function(){aa.detachEvent("on"+Y,Z);return true;};if(Y=="mouseover"){aa.attachEvent("onmouseenter",Z);return function(){aa.detachEvent("onmouseenter",Z);return e();};}else{if(Y=="mouseout"){aa.attachEvent("onmouseleave",Z);return function(){aa.detachEvent("onmouseleave",Z);return e();};}}return e;};}}})();for(var P=u.length;P--;){(function(e){m.prototype[e]=function(i){if(f.is(i,"function")){this.events=this.events||{};this.events[e]=this.events[e]||{};this.events[e][i]=this.events[e][i]||[];this.events[e][i].push(j(this.shape||this.node,e,i,this));}return this;};m.prototype["un"+e]=function(i){this.events&&this.events[e]&&this.events[e][i]&&this.events[e][i].length&&this.events[e][i].shift()()&&!this.events[e][i].length&&delete this.events[e][i];};})(u[P]);}b.circle=function(e,R,i){return C(this,e,R,i);};b.rect=function(e,Z,i,R,Y){return H(this,e,Z,i,R,Y);};b.ellipse=function(e,Y,R,i){return h(this,e,Y,R,i);};b.path=function(e){e&&!f.is(e,"string")&&!f.is(e[0],"array")&&(e+="");return V(f.format.apply(f,arguments),this);};b.image=function(Y,e,Z,i,R){return o(this,Y,e,Z,i,R);};b.text=function(e,R,i){return G(this,e,R,i);};b.set=function(e){arguments.length>1&&(e=Array.prototype.splice.call(arguments,0,arguments.length));return new k(e);};b.setSize=D;m.prototype.stop=function(){clearTimeout(this.animation_in_progress);return this;};m.prototype.scale=function(aj,ai,Y,R){if(aj==null&&ai==null){return{x:this._.sx,y:this._.sy,toString:function(){return this.x+" "+this.y;}};}ai=ai||aj;!+ai&&(ai=aj);var an,al,am,ak,aA=this.attrs;if(aj!=0){var ag=this.getBBox(),ad=ag.x+ag.width/2,aa=ag.y+ag.height/2,az=aj/this._.sx,ay=ai/this._.sy;Y=(+Y||Y==0)?Y:ad;R=(+R||R==0)?R:aa;var af=Math.round(aj/Math.abs(aj)),ac=Math.round(ai/Math.abs(ai)),aq=this.node.style,aC=Y+(ad-Y)*af*az,aB=R+(aa-R)*ac*ay;switch(this.type){case"rect":case"image":var ae=aA.width*af*az,ap=aA.height*ac*ay,ah=aA.r*Math.min(az,ay),ab=aC-ae/2,Z=aB-ap/2;this.attr({width:ae,height:ap,x:ab,y:Z,r:ah});break;case"circle":case"ellipse":this.attr({rx:aA.rx*az,ry:aA.ry*ay,r:aA.r*Math.min(az,ay),cx:aC,cy:aB});break;case"path":var at=c(aA.path),au=true;for(var aw=0,ao=at.length;aw<ao;aw++){var ar=at[aw];if(ar[0].toUpperCase()=="M"&&au){continue;}else{au=false;}if(f.svg&&ar[0].toUpperCase()=="A"){ar[at[aw].length-2]*=az;ar[at[aw].length-1]*=ay;ar[1]*=az;ar[2]*=ay;ar[5]=+(af+ac?!!+ar[5]:!+ar[5]);}else{for(var av=1,ax=ar.length;av<ax;av++){ar[av]*=(av%2)?az:ay;}}}var e=B(at),an=aC-e.x-e.width/2,al=aB-e.y-e.height/2;at[0][1]+=an;at[0][2]+=al;this.attr({path:at});break;}if(this.type in {text:1,image:1}&&(af!=1||ac!=1)){if(this.transformations){this.transformations[2]="scale(".concat(af,",",ac,")");this.node.setAttribute("transform",this.transformations.join(" "));an=(af==-1)?-aA.x-(ae||0):aA.x;al=(ac==-1)?-aA.y-(ap||0):aA.y;this.attr({x:an,y:al});aA.fx=af-1;aA.fy=ac-1;}else{this.node.filterMatrix=" progid:DXImageTransform.Microsoft.Matrix(M11=".concat(af,", M12=0, M21=0, M22=",ac,", Dx=0, Dy=0, sizingmethod='auto expand', filtertype='bilinear')");aq.filter=(this.node.filterMatrix||"")+(this.node.filterOpacity||"");}}else{if(this.transformations){this.transformations[2]="";this.node.setAttribute("transform",this.transformations.join(" "));aA.fx=0;aA.fy=0;}else{this.node.filterMatrix="";aq.filter=(this.node.filterMatrix||"")+(this.node.filterOpacity||"");}}aA.scale=[aj,ai,Y,R].join(" ");this._.sx=aj;this._.sy=ai;}return this;};f.easing_formulas={linear:function(e){return e;},"<":function(e){return Math.pow(e,3);},">":function(e){return Math.pow(e-1,3)+1;},"<>":function(e){e=e*2;if(e<1){return Math.pow(e,3)/2;}e-=2;return(Math.pow(e,3)+2)/2;},backIn:function(i){var e=1.70158;return i*i*((e+1)*i-e);},backOut:function(i){i=i-1;var e=1.70158;return i*i*((e+1)*i+e)+1;},elastic:function(R){if(R==0||R==1){return R;}var i=0.3,e=i/4;return Math.pow(2,-10*R)*Math.sin((R-e)*(2*Math.PI)/i)+1;},bounce:function(Y){var i=7.5625,R=2.75,e;if(Y<(1/R)){e=i*Y*Y;}else{if(Y<(2/R)){Y-=(1.5/R);e=i*Y*Y+0.75;}else{if(Y<(2.5/R)){Y-=(2.25/R);e=i*Y*Y+0.9375;}else{Y-=(2.625/R);e=i*Y*Y+0.984375;}}}return e;}};m.prototype.animate=function(ar,ai,ah,Z){clearTimeout(this.animation_in_progress);if(f.is(ah,"function")||!ah){Z=ah||null;}var al={},R={},af={},ae={x:0,y:0};for(var aj in ar){if(ar.hasOwnProperty(aj)){if(aj in t){al[aj]=this.attr(aj);(al[aj]==null)&&(al[aj]=p[aj]);R[aj]=ar[aj];switch(t[aj]){case"number":af[aj]=(R[aj]-al[aj])/ai;break;case"colour":al[aj]=f.getRGB(al[aj]);var ak=f.getRGB(R[aj]);af[aj]={r:(ak.r-al[aj].r)/ai,g:(ak.g-al[aj].g)/ai,b:(ak.b-al[aj].b)/ai};break;case"path":var aa=N(al[aj],R[aj]);al[aj]=aa[0];R[aj]=aa[1];af[aj]=[];for(var an=0,ad=al[aj].length;an<ad;an++){af[aj][an]=[0];for(var am=1,ap=al[aj][an].length;am<ap;am++){af[aj][an][am]=(R[aj][an][am]-al[aj][an][am])/ai;}}break;case"csv":var e=(ar[aj]+"").split(X),ac=(al[aj]+"").split(X);switch(aj){case"translation":al[aj]=[0,0];af[aj]=[e[0]/ai,e[1]/ai];break;case"rotation":al[aj]=(ac[1]==e[1]&&ac[2]==e[2])?ac:[0,e[1],e[2]];af[aj]=[(e[0]-al[aj][0])/ai,0,0];break;case"scale":ar[aj]=e;al[aj]=(al[aj]+"").split(X);af[aj]=[(e[0]-al[aj][0])/ai,(e[1]-al[aj][1])/ai,0,0];break;case"clip-rect":al[aj]=(al[aj]+"").split(X);af[aj]=[];var an=4;while(an--){af[aj][an]=(e[an]-al[aj][an])/ai;}break;}R[aj]=e;}}}}var Y=+new Date,ag=0,aq=function(i){return +i>255?255:+i;},ab=this;(function ao(){var au=new Date-Y,aC={},at;if(au<ai){var aA=f.easing_formulas[ah]?f.easing_formulas[ah](au/ai):au/ai;for(var ay in al){if(al.hasOwnProperty(ay)){switch(t[ay]){case"number":at=+al[ay]+aA*ai*af[ay];break;case"colour":at="rgb("+[aq(Math.round(al[ay].r+aA*ai*af[ay].r)),aq(Math.round(al[ay].g+aA*ai*af[ay].g)),aq(Math.round(al[ay].b+aA*ai*af[ay].b))].join(",")+")";break;case"path":at=[];for(var aw=0,aD=al[ay].length;aw<aD;aw++){at[aw]=[al[ay][aw][0]];for(var av=1,ax=al[ay][aw].length;av<ax;av++){at[aw][av]=+al[ay][aw][av]+aA*ai*af[ay][aw][av];}at[aw]=at[aw].join(" ");}at=at.join(" ");break;case"csv":switch(ay){case"translation":var aB=af[ay][0]*(au-ag),az=af[ay][1]*(au-ag);ae.x+=aB;ae.y+=az;at=[aB,az].join(" ");break;case"rotation":at=+al[ay][0]+aA*ai*af[ay][0];al[ay][1]&&(at+=","+al[ay][1]+","+al[ay][2]);break;case"scale":at=[+al[ay][0]+aA*ai*af[ay][0],+al[ay][1]+aA*ai*af[ay][1],(2 in ar[ay]?ar[ay][2]:""),(3 in ar[ay]?ar[ay][3]:"")].join(" ");break;case"clip-rect":at=[];var aw=4;while(aw--){at[aw]=+al[ay][aw]+aA*ai*af[ay][aw];}break;}break;}aC[ay]=at;}}ab.attr(aC);ab.animation_in_progress=setTimeout(ao);f.svg&&b.safari();}else{(ae.x||ae.y)&&ab.translate(-ae.x,-ae.y);ab.attr(ar);clearTimeout(ab.animation_in_progress);f.svg&&b.safari();(f.is(Z,"function"))&&Z.call(ab);}ag=au;})();return this;};m.prototype.translate=function(e,R){if(e==null){return{x:this._.tx,y:this._.ty};}this._.tx+=+e;this._.ty+=+R;switch(this.type){case"circle":case"ellipse":this.attr({cx:+e+this.attrs.cx,cy:+R+this.attrs.cy});break;case"rect":case"image":case"text":this.attr({x:+e+this.attrs.x,y:+R+this.attrs.y});break;case"path":var i=c(this.attrs.path);i[0][1]+=+e;i[0][2]+=+R;this.attr({path:i});break;}return this;};m.prototype.toString=function(){return"Rapha\u00ebl\u2019s object";};var k=function(e){this.items=[];this.length=0;if(e){for(var R=0,Y=e.length;R<Y;R++){if(e[R]&&(e[R].constructor==m||e[R].constructor==k)){this[this.items.length]=this.items[this.items.length]=e[R];this.length++;}}}};k.prototype.push=function(){var Z,e;for(var R=0,Y=arguments.length;R<Y;R++){Z=arguments[R];if(Z&&(Z.constructor==m||Z.constructor==k)){e=this.items.length;this[e]=this.items[e]=Z;this.length++;}}return this;};k.prototype.pop=function(){delete this[this.length--];return this.items.pop();};for(var Q in m.prototype){if(m.prototype.hasOwnProperty(Q)){k.prototype[Q]=(function(e){return function(){for(var R=0,Y=this.items.length;R<Y;R++){this.items[R][e].apply(this.items[R],arguments);}return this;};})(Q);}}k.prototype.attr=function(R,ab){if(R&&f.is(R,"array")&&f.is(R[0],"object")){for(var e=0,aa=R.length;e<aa;e++){this.items[e].attr(R[e]);}}else{for(var Y=0,Z=this.items.length;Y<Z;Y++){this.items[Y].attr.apply(this.items[Y],arguments);}}return this;};k.prototype.getBBox=function(){var e=[],ab=[],R=[],Z=[];for(var Y=this.items.length;Y--;){var aa=this.items[Y].getBBox();e.push(aa.x);ab.push(aa.y);R.push(aa.x+aa.width);Z.push(aa.y+aa.height);}e=Math.min.apply(Math,e);ab=Math.min.apply(Math,ab);return{x:e,y:ab,width:Math.max.apply(Math,R)-e,height:Math.max.apply(Math,Z)-ab};};f.registerFont=function(i){if(!i.face){return i;}this.fonts=this.fonts||{};var Y={w:i.w,face:{},glyphs:{}},R=i.face["font-family"];for(var ab in i.face){if(i.face.hasOwnProperty(ab)){Y.face[ab]=i.face[ab];}}if(this.fonts[R]){this.fonts[R].push(Y);}else{this.fonts[R]=[Y];}if(!i.svg){Y.face["units-per-em"]=parseInt(i.face["units-per-em"],10);for(var Z in i.glyphs){if(i.glyphs.hasOwnProperty(Z)){var aa=i.glyphs[Z];Y.glyphs[Z]={w:aa.w,k:{},d:aa.d&&"M"+aa.d.replace(/[mlcxtrv]/g,function(ac){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[ac]||"M";})+"z"};if(aa.k){for(var e in aa.k){if(aa.hasOwnProperty(e)){Y.glyphs[Z].k[e]=aa.k[e];}}}}}}return i;};b.getFont=function(ad,ae,R,Z){Z=Z||"normal";R=R||"normal";ae=+ae||{normal:400,bold:700,lighter:300,bolder:800}[ae]||400;var aa=f.fonts[ad];if(!aa){var Y=new RegExp("(^|\\s)"+ad.replace(/[^\w\d\s+!~.:_-]/g,"")+"(\\s|$)","i");for(var e in f.fonts){if(f.fonts.hasOwnProperty(e)){if(Y.test(e)){aa=f.fonts[e];break;}}}}var ab;if(aa){for(var ac=0,af=aa.length;ac<af;ac++){ab=aa[ac];if(ab.face["font-weight"]==ae&&(ab.face["font-style"]==R||!ab.face["font-style"])&&ab.face["font-stretch"]==Z){break;}}}return ab;};b.print=function(af,ae,ac,R,aj){var aa=this.set(),ad=(ac+"").split(""),e=0,ai="",Z;f.is(R,"string")&&(R=this.getFont(R));if(R){Z=(aj||16)/R.face["units-per-em"];for(var ab=0,ag=ad.length;ab<ag;ab++){var Y=ab&&R.glyphs[ad[ab-1]]||{},ah=R.glyphs[ad[ab]];e+=ab?(Y.w||R.w)+(Y.k&&Y.k[ad[ab]]||0):0;ah&&ah.d&&aa.push(this.path(ah.d).attr({fill:"#000",stroke:"none",translation:[e,0]}));}aa.scale(Z,Z,0,ae).translate(af,(aj||16)/2);}return aa;};f.format=function(i){var e=f.is(arguments[1],"array")?[0].concat(arguments[1]):arguments;i&&f.is(i,"string")&&e.length-1&&(i=i.replace(/\{(\d+)\}/g,function(Y,R){return e[++R]==null?"":e[R];}));return i;};f.ninja=function(){var R=window.Raphael,i;if(O.was){window.Raphael=O.is;}else{try{delete window.Raphael;}catch(Y){window.Raphael=i;}}return R;};f.el=m.prototype;return f;})();
\ No newline at end of file
+window.Raphael=(function(){var X=/[, ]+/,g=document,K=window,O={was:"Raphael" in window,is:window.Raphael},f=function(){return l.apply(f,arguments);},b={},p={"clip-rect":"0 0 10e9 10e9",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},t={"clip-rect":"csv",cx:"number",cy:"number",fill:"colour","fill-opacity":"number","font-size":"number",height:"number",opacity:"number",path:"path",r:"number",rotation:"csv",rx:"number",ry:"number",scale:"csv",stroke:"colour","stroke-opacity":"number","stroke-width":"number",translation:"csv",width:"number",x:"number",y:"number"},u=["click","dblclick","mousedown","mousemove","mouseout","mouseover","mouseup"];f.version="1.0 RC1.6";f.type=(window.SVGAngle||document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")?"SVG":"VML");f.svg=!(f.vml=f.type=="VML");f.idGenerator=0;f.fn={};f.is=function(i,e){e=(e+"").toLowerCase();if((e=="object"||e=="undefined")&&typeof i==e){return true;}if(i==null&&e=="null"){return true;}return Object.prototype.toString.call(i).replace(/^\[object\s+|\]$/gi,"").toLowerCase()==e;};f.setWindow=function(e){K=e;g=K.document;};f.hsb2rgb=W(function(ae,ac,ai){if(f.is(ae,"object")&&"h" in ae&&"s" in ae&&"b" in ae){ai=ae.b;ac=ae.s;ae=ae.h;}var Z,aa,aj;if(ai==0){return{r:0,g:0,b:0,hex:"#000"};}if(ae>1||ac>1||ai>1){ae/=255;ac/=255;ai/=255;}var ab=Math.floor(ae*6),af=(ae*6)-ab,Y=ai*(1-ac),R=ai*(1-(ac*af)),ak=ai*(1-(ac*(1-af)));Z=[ai,R,Y,Y,ak,ai,ai][ab];aa=[ak,ai,ai,R,Y,Y,ak][ab];aj=[Y,Y,ak,ai,ai,R,Y][ab];Z*=255;aa*=255;aj*=255;var ag={r:Z,g:aa,b:aj},e=Math.round(Z).toString(16),ad=Math.round(aa).toString(16),ah=Math.round(aj).toString(16);if(e.length==1){e="0"+e;}if(ad.length==1){ad="0"+ad;}if(ah.length==1){ah="0"+ah;}ag.hex="#"+e+ad+ah;return ag;},f);f.rgb2hsb=W(function(e,i,ac){if(f.is(e,"object")&&"r" in e&&"g" in e&&"b" in e){ac=e.b;i=e.g;e=e.r;}if(f.is(e,"string")){var ae=f.getRGB(e);e=ae.r;i=ae.g;ac=ae.b;}if(e>1||i>1||ac>1){e/=255;i/=255;ac/=255;}var ab=Math.max(e,i,ac),R=Math.min(e,i,ac),Z,Y,aa=ab;if(R==ab){return{h:0,s:0,b:ab};}else{var ad=(ab-R);Y=ad/ab;if(e==ab){Z=(i-ac)/ad;}else{if(i==ab){Z=2+((ac-e)/ad);}else{Z=4+((e-i)/ad);}}Z/=6;if(Z<0){Z+=1;}if(Z>1){Z-=1;}}return{h:Z,s:Y,b:aa};},f);f._path2string=function(){var Y="",ab;for(var R=0,Z=this.length;R<Z;R++){for(var e=0,aa=this[R].length;e<aa;e++){Y+=this[R][e];e&&e!=aa-1&&(Y+=",");}R!=Z-1&&(Y+="\n");}return Y.replace(/,(?=-)/g,"");};function W(Y,i,e){function R(){var Z=Array.prototype.splice.call(arguments,0,arguments.length),aa=Z.join("\u25ba");R.cache=R.cache||{};R.count=R.count||[];if(aa in R.cache){return e?e(R.cache[aa]):R.cache[aa];}if(R.count.length>1000){delete R.cache[R.count.unshift()];}R.count.push(aa);R.cache[aa]=Y.apply(i,Z);return e?e(R.cache[aa]):R.cache[aa];}return R;}f.getRGB=W(function(e){var ae={aliceblue:"#f0f8ff",amethyst:"#96c",antiquewhite:"#faebd7",aqua:"#0ff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000",blanchedalmond:"#ffebcd",blue:"#00f",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#0ff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#f0f",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#789",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#0f0",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#f0f",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#f00",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#fff",whitesmoke:"#f5f5f5",yellow:"#ff0",yellowgreen:"#9acd32"},aa;if((e+"").toLowerCase() in ae){e=ae[(e+"").toLowerCase()];}if(!e){return{r:0,g:0,b:0,hex:"#000"};}if(e=="none"){return{r:-1,g:-1,b:-1,hex:"none"};}var R,Y,ad,ab=(e+"").match(/^\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);if(ab){if(ab[2]){ad=parseInt(ab[2].substring(5),16);Y=parseInt(ab[2].substring(3,5),16);R=parseInt(ab[2].substring(1,3),16);}if(ab[3]){ad=parseInt(ab[3].substring(3)+ab[3].substring(3),16);Y=parseInt(ab[3].substring(2,3)+ab[3].substring(2,3),16);R=parseInt(ab[3].substring(1,2)+ab[3].substring(1,2),16);}if(ab[4]){ab=ab[4].split(/\s*,\s*/);R=parseFloat(ab[0]);Y=parseFloat(ab[1]);ad=parseFloat(ab[2]);}if(ab[5]){ab=ab[5].split(/\s*,\s*/);R=parseFloat(ab[0])*2.55;Y=parseFloat(ab[1])*2.55;ad=parseFloat(ab[2])*2.55;}if(ab[6]){ab=ab[6].split(/\s*,\s*/);R=parseFloat(ab[0]);Y=parseFloat(ab[1]);ad=parseFloat(ab[2]);return f.hsb2rgb(R,Y,ad);}if(ab[7]){ab=ab[7].split(/\s*,\s*/);R=parseFloat(ab[0])*2.55;Y=parseFloat(ab[1])*2.55;ad=parseFloat(ab[2])*2.55;return f.hsb2rgb(R,Y,ad);}ab={r:R,g:Y,b:ad};var i=Math.round(R).toString(16),Z=Math.round(Y).toString(16),ac=Math.round(ad).toString(16);(i.length==1)&&(i="0"+i);(Z.length==1)&&(Z="0"+Z);(ac.length==1)&&(ac="0"+ac);ab.hex="#"+i+Z+ac;aa=ab;}else{aa={r:-1,g:-1,b:-1,hex:"none",error:1};}return aa;},f);f.getColor=function(i){var R=this.getColor.start=this.getColor.start||{h:0,s:1,b:i||0.75},e=this.hsb2rgb(R.h,R.s,R.b);R.h+=0.075;if(R.h>1){R.h=0;R.s-=0.2;if(R.s<=0){this.getColor.start={h:0,s:1,b:R.b};}}return e.hex;};f.getColor.reset=function(){delete this.start;};f.parsePathString=W(function(e){if(!e){return null;}var R={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},i=[];if(f.is(e,"array")&&f.is(e[0],"array")){i=s(e);}if(!i.length){(e+"").replace(/([achlmqstvz])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?\s*,?\s*)+)/ig,function(Z,Y,ac){var ab=[],aa=Y.toLowerCase();ac.replace(/(-?\d*\.?\d*(?:e[-+]?\d+)?)\s*,?\s*/ig,function(ae,ad){ad&&ab.push(+ad);});while(ab.length>=R[aa]){i.push([Y].concat(ab.splice(0,R[aa])));if(!R[aa]){break;}}});}i.toString=f._path2string;return i;});var B=W(function(ag){if(!ag){return{x:0,y:0,width:0,height:0};}ag=N(ag);var ad=0,ac=0,Z=[],R=[];for(var aa=0,af=ag.length;aa<af;aa++){if(ag[aa][0]=="M"){ad=ag[aa][1];ac=ag[aa][2];Z.push(ad);R.push(ac);}else{var ab=I(ad,ac,ag[aa][1],ag[aa][2],ag[aa][3],ag[aa][4],ag[aa][5],ag[aa][6]);Z=Z.concat(ab.min.x,ab.max.x);R=R.concat(ab.min.y,ab.max.y);}}var e=Math.min.apply(0,Z),ae=Math.min.apply(0,R);return{x:e,y:ae,width:Math.max.apply(0,Z)-e,height:Math.max.apply(0,R)-ae};}),s=function(ab){var Y=[];if(!f.is(ab,"array")||!f.is(ab&&ab[0],"array")){ab=f.parsePathString(ab);}for(var R=0,Z=ab.length;R<Z;R++){Y[R]=[];for(var e=0,aa=ab[R].length;e<aa;e++){Y[R][e]=ab[R][e];}}Y.toString=f._path2string;return Y;},c=W(function(Z){if(!f.is(Z,"array")||!f.is(Z&&Z[0],"array")){Z=f.parsePathString(Z);}var af=[],ah=0,ag=0,ak=0,aj=0,Y=0;if(Z[0][0]=="M"){ah=Z[0][1];ag=Z[0][2];ak=ah;aj=ag;Y++;af.push(["M",ah,ag]);}for(var ac=Y,al=Z.length;ac<al;ac++){var e=af[ac]=[],ai=Z[ac];if(ai[0]!=ai[0].toLowerCase()){e[0]=ai[0].toLowerCase();switch(e[0]){case"a":e[1]=ai[1];e[2]=ai[2];e[3]=ai[3];e[4]=ai[4];e[5]=ai[5];e[6]=+(ai[6]-ah).toFixed(3);e[7]=+(ai[7]-ag).toFixed(3);break;case"v":e[1]=+(ai[1]-ag).toFixed(3);break;case"m":ak=ai[1];aj=ai[2];default:for(var ab=1,ad=ai.length;ab<ad;ab++){e[ab]=+(ai[ab]-((ab%2)?ah:ag)).toFixed(3);}}}else{e=af[ac]=[];if(ai[0]=="m"){ak=ai[1]+ah;aj=ai[2]+ag;}for(var aa=0,R=ai.length;aa<R;aa++){af[ac][aa]=ai[aa];}}var ae=af[ac].length;switch(af[ac][0]){case"z":ah=ak;ag=aj;break;case"h":ah+=+af[ac][ae-1];break;case"v":ag+=+af[ac][ae-1];break;default:ah+=+af[ac][ae-2];ag+=+af[ac][ae-1];}}af.toString=f._path2string;return af;},0,s),v=W(function(Z){if(!f.is(Z,"array")||!f.is(Z&&Z[0],"array")){Z=f.parsePathString(Z);}var ae=[],ag=0,af=0,aj=0,ai=0,Y=0;if(Z[0][0]=="M"){ag=+Z[0][1];af=+Z[0][2];aj=ag;ai=af;Y++;ae[0]=["M",ag,af];}for(var ac=Y,ak=Z.length;ac<ak;ac++){var e=ae[ac]=[],ah=Z[ac];if(ah[0]!=(ah[0]+"").toUpperCase()){e[0]=(ah[0]+"").toUpperCase();switch(e[0]){case"A":e[1]=ah[1];e[2]=ah[2];e[3]=ah[3];e[4]=ah[4];e[5]=ah[5];e[6]=+(ah[6]+ag);e[7]=+(ah[7]+af);break;case"V":e[1]=+ah[1]+af;break;case"H":e[1]=+ah[1]+ag;break;case"M":aj=+ah[1]+ag;ai=+ah[2]+af;default:for(var ab=1,ad=ah.length;ab<ad;ab++){e[ab]=+ah[ab]+((ab%2)?ag:af);}}}else{for(var aa=0,R=ah.length;aa<R;aa++){ae[ac][aa]=ah[aa];}}switch(e[0]){case"Z":ag=aj;af=ai;break;case"H":ag=e[1];break;case"V":af=e[1];break;default:ag=ae[ac][ae[ac].length-2];af=ae[ac][ae[ac].length-1];}}ae.toString=f._path2string;return ae;},null,s),d=function(i,Y,e,R){return[i,Y,e,R,e,R];},w=function(i,Y,ab,Z,e,R){var aa=1/3,ac=2/3;return[aa*i+ac*ab,aa*Y+ac*Z,aa*e+ac*ab,aa*R+ac*Z,e,R];},q=function(aj,aO,at,aq,ak,ae,Z,ai,aN,al){var ap=Math.PI*120/180,e=Math.PI/180*(+ak||0),ax=[],au,aK=W(function(aP,aS,i){var aR=aP*Math.cos(i)-aS*Math.sin(i),aQ=aP*Math.sin(i)+aS*Math.cos(i);return{x:aR,y:aQ};});if(!al){au=aK(aj,aO,-e);aj=au.x;aO=au.y;au=aK(ai,aN,-e);ai=au.x;aN=au.y;var R=Math.cos(Math.PI/180*ak),ag=Math.sin(Math.PI/180*ak),az=(aj-ai)/2,ay=(aO-aN)/2;at=Math.max(at,Math.abs(az));aq=Math.max(aq,Math.abs(ay));var Y=at*at,aC=aq*aq,aE=(ae==Z?-1:1)*Math.sqrt(Math.abs((Y*aC-Y*ay*ay-aC*az*az)/(Y*ay*ay+aC*az*az))),an=aE*at*ay/aq+(aj+ai)/2,am=aE*-aq*az/at+(aO+aN)/2,ad=Math.asin((aO-am)/aq),ac=Math.asin((aN-am)/aq);ad=aj<an?Math.PI-ad:ad;ac=ai<an?Math.PI-ac:ac;ad<0&&(ad=Math.PI*2+ad);ac<0&&(ac=Math.PI*2+ac);if(Z&&ad>ac){ad=ad-Math.PI*2;}if(!Z&&ac>ad){ac=ac-Math.PI*2;}}else{ad=al[0];ac=al[1];an=al[2];am=al[3];}var ah=ac-ad;if(Math.abs(ah)>ap){var ao=ac,ar=ai,af=aN;ac=ad+ap*(Z&&ac>ad?1:-1);ai=an+at*Math.cos(ac);aN=am+aq*Math.sin(ac);ax=q(ai,aN,at,aq,ak,0,Z,ar,af,[ac,ao,an,am]);}ah=ac-ad;var ab=Math.cos(ad),aM=Math.sin(ad),aa=Math.cos(ac),aL=Math.sin(ac),aA=Math.tan(ah/4),aD=4/3*at*aA,aB=4/3*aq*aA,aJ=[aj,aO],aI=[aj+aD*aM,aO-aB*ab],aH=[ai+aD*aL,aN-aB*aa],aF=[ai,aN];aI[0]=2*aJ[0]-aI[0];aI[1]=2*aJ[1]-aI[1];if(al){return[aI,aH,aF].concat(ax);}else{ax=[aI,aH,aF].concat(ax).join(",").split(",");var av=[];for(var aG=0,aw=ax.length;aG<aw;aG++){av[aG]=aG%2?aK(ax[aG-1],ax[aG],e).y:aK(ax[aG],ax[aG+1],e).x;}return av;}},z=W(function(i,e,an,al,aa,Z,ac,ab,ah){var af=Math.pow(1-ah,3)*i+Math.pow(1-ah,2)*3*ah*an+(1-ah)*3*ah*ah*aa+Math.pow(ah,3)*ac,ad=Math.pow(1-ah,3)*e+Math.pow(1-ah,2)*3*ah*al+(1-ah)*3*ah*ah*Z+Math.pow(ah,3)*ab,aj=i+2*ah*(an-i)+ah*ah*(aa-2*an+i),ai=e+2*ah*(al-e)+ah*ah*(Z-2*al+e),am=an+2*ah*(aa-an)+ah*ah*(ac-2*aa+an),ak=al+2*ah*(Z-al)+ah*ah*(ab-2*Z+al),ag=(1-ah)*i+ah*an,ae=(1-ah)*e+ah*al,Y=(1-ah)*aa+ah*ac,R=(1-ah)*Z+ah*ab;return{x:af,y:ad,m:{x:aj,y:ai},n:{x:am,y:ak},start:{x:ag,y:ae},end:{x:Y,y:R}};}),I=W(function(i,e,Y,R,al,ak,ah,ae){var aj=(al-2*Y+i)-(ah-2*al+Y),ag=2*(Y-i)-2*(al-Y),ad=i-Y,ab=(-ag+Math.sqrt(ag*ag-4*aj*ad))/2/aj,Z=(-ag-Math.sqrt(ag*ag-4*aj*ad))/2/aj,af=[e,ae],ai=[i,ah],ac=z(i,e,Y,R,al,ak,ah,ae,ab>0&&ab<1?ab:0),aa=z(i,e,Y,R,al,ak,ah,ae,Z>0&&Z<1?Z:0);ai=ai.concat(ac.x,aa.x);af=af.concat(ac.y,aa.y);aj=(ak-2*R+e)-(ae-2*ak+R);ag=2*(R-e)-2*(ak-R);ad=e-R;ab=(-ag+Math.sqrt(ag*ag-4*aj*ad))/2/aj;Z=(-ag-Math.sqrt(ag*ag-4*aj*ad))/2/aj;ac=z(i,e,Y,R,al,ak,ah,ae,ab>0&&ab<1?ab:0);aa=z(i,e,Y,R,al,ak,ah,ae,Z>0&&Z<1?Z:0);ai=ai.concat(ac.x,aa.x);af=af.concat(ac.y,aa.y);return{min:{x:Math.min.apply(Math,ai),y:Math.min.apply(Math,af)},max:{x:Math.max.apply(Math,ai),y:Math.max.apply(Math,af)}};}),N=W(function(ak,af){var Z=v(ak),ag=af&&v(af),ah={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},e={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},ab=function(al,am){var i,an;if(!al){return["C",am.x,am.y,am.x,am.y,am.x,am.y];}!(al[0] in {T:1,Q:1})&&(am.qx=am.qy=null);switch(al[0]){case"M":am.X=al[1];am.Y=al[2];break;case"A":al=["C"].concat(q.apply(0,[am.x,am.y].concat(al.slice(1))));break;case"S":i=am.x+(am.x-(am.bx||am.x));an=am.y+(am.y-(am.by||am.y));al=["C",i,an].concat(al.slice(1));break;case"T":am.qx=am.x+(am.x-(am.qx||am.x));am.qy=am.y+(am.y-(am.qy||am.y));al=["C"].concat(w(am.x,am.y,am.qx,am.qy,al[1],al[2]));break;case"Q":am.qx=al[1];am.qy=al[2];al=["C"].concat(w(am.x,am.y,al[1],al[2],al[3],al[4]));break;case"L":al=["C"].concat(d(am.x,am.y,al[1],al[2]));break;case"H":al=["C"].concat(d(am.x,am.y,al[1],am.y));break;case"V":al=["C"].concat(d(am.x,am.y,am.x,al[1]));break;case"Z":al=["C"].concat(d(am.x,am.y,am.X,am.Y));break;}return al;},R=function(al,am){if(al[am].length>7){al[am].shift();var an=al[am];while(an.length){al.splice(am++,0,["C"].concat(an.splice(0,6)));}al.splice(am,1);ai=Math.max(Z.length,ag&&ag.length||0);}},Y=function(ap,ao,am,al,an){if(ap&&ao&&ap[an][0]=="M"&&ao[an][0]!="M"){ao.splice(an,0,["M",al.x,al.y]);am.bx=0;am.by=0;am.x=ap[an][1];am.y=ap[an][2];ai=Math.max(Z.length,ag&&ag.length||0);}};for(var ad=0,ai=Math.max(Z.length,ag&&ag.length||0);ad<ai;ad++){Z[ad]=ab(Z[ad],ah);R(Z,ad);ag&&(ag[ad]=ab(ag[ad],e));ag&&R(ag,ad);Y(Z,ag,ah,e,ad);Y(ag,Z,e,ah,ad);var ac=Z[ad],aj=ag&&ag[ad],aa=ac.length,ae=ag&&aj.length;ah.x=ac[aa-2];ah.y=ac[aa-1];ah.bx=parseFloat(ac[aa-4])||ah.x;ah.by=parseFloat(ac[aa-3])||ah.y;e.bx=ag&&(parseFloat(aj[ae-4])||e.x);e.by=ag&&(parseFloat(aj[ae-3])||e.y);e.x=ag&&aj[ae-2];e.y=ag&&aj[ae-1];}return ag?[Z,ag]:Z;},null,s),n=W(function(ae){var ad=[];for(var aa=0,af=ae.length;aa<af;aa++){var e={},ac=ae[aa].match(/^([^:]*):?([\d\.]*)/);e.color=f.getRGB(ac[1]);if(e.color.error){return null;}e.color=e.color.hex;ac[2]&&(e.offset=ac[2]+"%");ad.push(e);}for(var aa=1,af=ad.length-1;aa<af;aa++){if(!ad[aa].offset){var R=parseFloat(ad[aa-1].offset||0),Y=false;for(var Z=aa+1;Z<af;Z++){if(ad[Z].offset){Y=ad[Z].offset;break;}}if(!Y){Y=100;Z=af;}Y=parseFloat(Y);var ab=(Y-R)/(Z-aa+1);for(;aa<Z;aa++){R+=ab;ad[aa].offset=R+"%";}}}return ad;}),F=function(){var R,i,Z,Y,e;if(f.is(arguments[0],"string")||f.is(arguments[0],"object")){if(f.is(arguments[0],"string")){R=g.getElementById(arguments[0]);}else{R=arguments[0];}if(R.tagName){if(arguments[1]==null){return{container:R,width:R.style.pixelWidth||R.offsetWidth,height:R.style.pixelHeight||R.offsetHeight};}else{return{container:R,width:arguments[1],height:arguments[2]};}}}else{if(f.is(arguments[0],"number")&&arguments.length>3){return{container:1,x:arguments[0],y:arguments[1],width:arguments[2],height:arguments[3]};}}},a=function(e,R){var i=this;for(var Y in R){if(R.hasOwnProperty(Y)&&!(Y in e)){switch(typeof R[Y]){case"function":(function(Z){e[Y]=e===i?Z:function(){return Z.apply(i,arguments);};})(R[Y]);break;case"object":e[Y]=e[Y]||{};a.call(this,e[Y],R[Y]);break;default:e[Y]=R[Y];break;}}}};if(f.svg){b.svgns="http://www.w3.org/2000/svg";b.xlink="http://www.w3.org/1999/xlink";var M=function(e){return +e+(Math.floor(e)==e)*0.5;};var y=function(aa){for(var R=0,Y=aa.length;R<Y;R++){if(aa[R][0].toLowerCase()!="a"){for(var e=1,Z=aa[R].length;e<Z;e++){aa[R][e]=M(aa[R][e]);}}else{aa[R][6]=M(aa[R][6]);aa[R][7]=M(aa[R][7]);}}return aa;};var A=function(R,e){if(e){for(var i in e){if(e.hasOwnProperty(i)){R.setAttribute(i,e[i]);}}}else{return g.createElementNS(b.svgns,R);}};f.toString=function(){return"Your browser supports SVG.\nYou are running Rapha\u00ebl "+this.version;};var V=function(e,Y){var i=A("path");Y.canvas&&Y.canvas.appendChild(i);var R=new m(i,Y);R.type="path";E(R,{fill:"none",stroke:"#000",path:e});return R;};var L=function(Y,ai,e){var af="linear",ac=0.5,aa=0.5,ak=Y.style;ai=(ai+"").replace(/^r(?:\(([^,]+?)\s*,\s*([^\)]+?)\))?/,function(al,i,am){af="radial";if(i&&am){ac=parseFloat(i);aa=parseFloat(am);if(Math.pow(ac-0.5,2)+Math.pow(aa-0.5,2)>0.25){aa=Math.sqrt(0.25-Math.pow(ac-0.5,2))+0.5;}}return"";});ai=ai.split(/\s*\-\s*/);if(af=="linear"){var ab=ai.shift();ab=-parseFloat(ab);if(isNaN(ab)){return null;}var Z=[0,0,Math.cos(ab*Math.PI/180),Math.sin(ab*Math.PI/180)],ah=1/(Math.max(Math.abs(Z[2]),Math.abs(Z[3]))||1);Z[2]*=ah;Z[3]*=ah;if(Z[2]<0){Z[0]=-Z[2];Z[2]=0;}if(Z[3]<0){Z[1]=-Z[3];Z[3]=0;}}var ae=n(ai);if(!ae){return null;}var R=A(af+"Gradient");R.id="r"+(f.idGenerator++).toString(36);af=="radial"?A(R,{fx:ac,fy:aa}):A(R,{x1:Z[0],y1:Z[1],x2:Z[2],y2:Z[3]});e.defs.appendChild(R);for(var ad=0,aj=ae.length;ad<aj;ad++){var ag=A("stop");A(ag,{offset:ae[ad].offset?ae[ad].offset:!ad?"0%":"100%","stop-color":ae[ad].color||"#fff"});R.appendChild(ag);}A(Y,{fill:"url(#"+R.id+")",opacity:1,"fill-opacity":1});ak.fill="";ak.opacity=1;ak.fillOpacity=1;return 1;};var r=function(i){var e=i.getBBox();A(i.pattern,{patternTransform:f.format("translate({0},{1})",e.x,e.y)});};var E=function(ag,ap){var aj={"":[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]},al=ag.node,ah=ag.attrs,ad=ag.attr("rotation"),aa=function(ax,aw){aw=aj[(aw+"").toLowerCase()];if(aw){var au=ax.attrs["stroke-width"]||"1",ar={round:au,square:au,butt:0}[ax.attrs["stroke-linecap"]||ap["stroke-linecap"]]||0,av=[];var at=aw.length;while(at--){av[at]=aw[at]*au+((at%2)?1:-1)*ar;}A(al,{"stroke-dasharray":av.join(",")});}};parseFloat(ad)&&ag.rotate(0,true);for(var ak in ap){if(ap.hasOwnProperty(ak)){if(!(ak in p)){continue;}var ai=ap[ak];ah[ak]=ai;switch(ak){case"href":case"title":case"target":var an=al.parentNode;if(an.tagName.toLowerCase()!="a"){var Y=A("a");an.insertBefore(Y,al);Y.appendChild(al);an=Y;}an.setAttributeNS(ag.paper.xlink,ak,ai);break;case"clip-rect":var i=(ai+"").split(X);if(i.length==4){ag.clip&&ag.clip.parentNode.parentNode.removeChild(ag.clip.parentNode);var R=A("clipPath"),am=A("rect");R.id="r"+(f.idGenerator++).toString(36);A(am,{x:i[0],y:i[1],width:i[2],height:i[3]});R.appendChild(am);ag.paper.defs.appendChild(R);A(al,{"clip-path":"url(#"+R.id+")"});ag.clip=am;}if(!ai){var ao=g.getElementById(al.getAttribute("clip-path").replace(/(^url\(#|\)$)/g,""));ao&&ao.parentNode.removeChild(ao);A(al,{"clip-path":""});delete ag.clip;}break;case"path":if(ai&&ag.type=="path"){ah.path=y(v(ai));A(al,{d:ah.path});}break;case"width":al.setAttribute(ak,ai);if(ah.fx){ak="x";ai=ah.x;}else{break;}case"x":if(ah.fx){ai=-ah.x-(ah.width||0);}case"rx":if(ak=="rx"&&ag.type=="rect"){break;}case"cx":al.setAttribute(ak,ai);ag.pattern&&r(ag);break;case"height":al.setAttribute(ak,ai);if(ah.fy){ak="y";ai=ah.y;}else{break;}case"y":if(ah.fy){ai=-ah.y-(ah.height||0);}case"ry":if(ak=="ry"&&ag.type=="rect"){break;}case"cy":al.setAttribute(ak,ai);ag.pattern&&r(ag);break;case"r":if(ag.type=="rect"){A(al,{rx:ai,ry:ai});}else{al.setAttribute(ak,ai);}break;case"src":if(ag.type=="image"){al.setAttributeNS(ag.paper.xlink,"href",ai);}break;case"stroke-width":al.style.strokeWidth=ai;al.setAttribute(ak,ai);if(ah["stroke-dasharray"]){aa(ag,ah["stroke-dasharray"]);}break;case"stroke-dasharray":aa(ag,ai);break;case"rotation":ad=ai;ag.rotate(ai,true);break;case"translation":var ab=(ai+"").split(X);ag.translate((+ab[0]+1||2)-1,(+ab[1]+1||2)-1);break;case"scale":var ab=(ai+"").split(X);ag.scale(+ab[0]||1,+ab[1]||+ab[0]||1,+ab[2]||null,+ab[3]||null);break;case"fill":var Z=(ai+"").match(/^url\(['"]?([^\)]+)['"]?\)$/i);if(Z){var R=A("pattern"),af=A("image");R.id="r"+(f.idGenerator++).toString(36);A(R,{x:0,y:0,patternUnits:"userSpaceOnUse"});A(af,{x:0,y:0});af.setAttributeNS(ag.paper.xlink,"href",Z[1]);R.appendChild(af);var aq=g.createElement("img");aq.style.position="absolute";aq.style.top="-9999em";aq.style.left="-9999em";aq.onload=function(){A(R,{width:this.offsetWidth,height:this.offsetHeight});A(af,{width:this.offsetWidth,height:this.offsetHeight});g.body.removeChild(this);b.safari();};g.body.appendChild(aq);aq.src=Z[1];ag.paper.defs.appendChild(R);al.style.fill="url(#"+R.id+")";A(al,{fill:"url(#"+R.id+")"});ag.pattern=R;ag.pattern&&r(ag);break;}if(!f.getRGB(ai).error){delete ap.gradient;delete ah.gradient;if(!f.is(ah.opacity,"undefined")&&f.is(ap.opacity,"undefined")){al.style.opacity=ah.opacity;A(al,{opacity:ah.opacity});}if(!f.is(ah["fill-opacity"],"undefined")&&f.is(ap["fill-opacity"],"undefined")){al.style.fillOpacity=ah["fill-opacity"];A(al,{"fill-opacity":ah["fill-opacity"]});}}else{if((ag.type in {circle:1,ellipse:1}||(ai+"").charAt(0)!="r")&&L(al,ai,ag.paper)){ah.gradient=ai;ah.fill="none";break;}}case"stroke":al.style[ak]=f.getRGB(ai).hex;al.setAttribute(ak,f.getRGB(ai).hex);break;case"gradient":(ag.type in {circle:1,ellipse:1}||(ai+"").charAt(0)!="r")&&L(al,ai,ag.paper);break;case"opacity":case"fill-opacity":if(ah.gradient){var e=g.getElementById(al.getAttribute("fill").replace(/^url\(#|\)$/g,""));if(e){var ac=e.getElementsByTagName("stop");ac[ac.length-1].setAttribute("stop-opacity",ai);}break;}default:ak=="font-size"&&(ai=parseInt(ai,10)+"px");var ae=ak.replace(/(\-.)/g,function(ar){return ar.substring(1).toUpperCase();});al.style[ae]=ai;al.setAttribute(ak,ai);break;}}}S(ag,ap);parseInt(ad,10)&&ag.rotate(ad,true);};var J=1.2;var S=function(e,Z){if(e.type!="text"||!("text" in Z||"font" in Z||"font-size" in Z||"x" in Z||"y" in Z)){return;}var ae=e.attrs,R=e.node,ag=R.firstChild?parseInt(g.defaultView.getComputedStyle(R.firstChild,"").getPropertyValue("font-size"),10):10;if("text" in Z){while(R.firstChild){R.removeChild(R.firstChild);}var Y=(Z.text+"").split("\n");for(var aa=0,af=Y.length;aa<af;aa++){var ac=A("tspan");aa&&A(ac,{dy:ag*J,x:ae.x});ac.appendChild(g.createTextNode(Y[aa]));R.appendChild(ac);}}else{var Y=R.getElementsByTagName("tspan");for(var aa=0,af=Y.length;aa<af;aa++){aa&&A(Y[aa],{dy:ag*J,x:ae.x});}}A(R,{y:ae.y});var ab=e.getBBox(),ad=ae.y-(ab.y+ab.height/2);ad&&A(R,{y:ae.y+ad});};var m=function(i,e){var Z=0,R=0;this[0]=i;this.node=i;i.raphael=this;this.paper=e;this.attrs=this.attrs||{};this.transformations=[];this._={tx:0,ty:0,rt:{deg:0,cx:0,cy:0},sx:1,sy:1};};m.prototype.rotate=function(i,e,Y){if(i==null){if(this._.rt.cx){return[this._.rt.deg,this._.rt.cx,this._.rt.cy].join(" ");}return this._.rt.deg;}var R=this.getBBox();i=(i+"").split(X);if(i.length-1){e=parseFloat(i[1]);Y=parseFloat(i[2]);}i=parseFloat(i[0]);if(e!=null){this._.rt.deg=i;}else{this._.rt.deg+=i;}(Y==null)&&(e=null);this._.rt.cx=e;this._.rt.cy=Y;e=e==null?R.x+R.width/2:e;Y=Y==null?R.y+R.height/2:Y;if(this._.rt.deg){this.transformations[0]=f.format("rotate({0} {1} {2})",this._.rt.deg,e,Y);this.clip&&A(this.clip,{transform:f.format("rotate({0} {1} {2})",-this._.rt.deg,e,Y)});}else{this.transformations[0]="";this.clip&&A(this.clip,{transform:""});}A(this.node,{transform:this.transformations.join(" ")});return this;};m.prototype.hide=function(){this.node.style.display="none";return this;};m.prototype.show=function(){this.node.style.display="block";return this;};m.prototype.remove=function(){this.node.parentNode.removeChild(this.node);};m.prototype.getBBox=function(){if(this.type=="path"){return B(this.attrs.path);}if(this.node.style.display=="none"){this.show();var Y=true;}var ac={};try{ac=this.node.getBBox();}catch(aa){}finally{ac=ac||{};}if(this.type=="text"){ac={x:ac.x,y:Infinity,width:ac.width,height:0};for(var R=0,Z=this.node.getNumberOfChars();R<Z;R++){var ab=this.node.getExtentOfChar(R);(ab.y<ac.y)&&(ac.y=ab.y);(ab.y+ab.height-ac.y>ac.height)&&(ac.height=ab.y+ab.height-ac.y);}}Y&&this.hide();return ac;};m.prototype.attr=function(){if(arguments.length==1&&f.is(arguments[0],"string")){if(arguments[0]=="translation"){return this.translate();}if(arguments[0]=="rotation"){return this.rotate();}if(arguments[0]=="scale"){return this.scale();}return this.attrs[arguments[0]];}if(arguments.length==1&&f.is(arguments[0],"array")){var e={};for(var i in arguments[0]){if(arguments[0].hasOwnProperty(i)){e[arguments[0][i]]=this.attrs[arguments[0][i]];}}return e;}if(arguments.length==2){var R={};R[arguments[0]]=arguments[1];E(this,R);}else{if(arguments.length==1&&f.is(arguments[0],"object")){E(this,arguments[0]);}}return this;};m.prototype.toFront=function(){this.node.parentNode.appendChild(this.node);return this;};m.prototype.toBack=function(){if(this.node.parentNode.firstChild!=this.node){this.node.parentNode.insertBefore(this.node,this.node.parentNode.firstChild);}return this;};m.prototype.insertAfter=function(e){if(e.node.nextSibling){e.node.parentNode.insertBefore(this.node,e.node.nextSibling);}else{e.node.parentNode.appendChild(this.node);}return this;};m.prototype.insertBefore=function(e){var i=e.node;i.parentNode.insertBefore(this.node,i);return this;};var C=function(i,e,aa,Z){e=M(e);aa=M(aa);var Y=A("circle");i.canvas&&i.canvas.appendChild(Y);var R=new m(Y,i);R.attrs={cx:e,cy:aa,r:Z,fill:"none",stroke:"#000"};R.type="circle";A(Y,R.attrs);return R;};var H=function(R,e,ac,i,aa,ab){e=M(e);ac=M(ac);var Z=A("rect");R.canvas&&R.canvas.appendChild(Z);var Y=new m(Z,R);Y.attrs={x:e,y:ac,width:i,height:aa,r:ab||0,rx:ab||0,ry:ab||0,fill:"none",stroke:"#000"};Y.type="rect";A(Z,Y.attrs);return Y;};var h=function(i,e,ab,aa,Z){e=M(e);ab=M(ab);var Y=A("ellipse");i.canvas&&i.canvas.appendChild(Y);var R=new m(Y,i);R.attrs={cx:e,cy:ab,rx:aa,ry:Z,fill:"none",stroke:"#000"};R.type="ellipse";A(Y,R.attrs);return R;};var o=function(R,ab,e,ac,i,aa){var Z=A("image");A(Z,{x:e,y:ac,width:i,height:aa,preserveAspectRatio:"none"});Z.setAttributeNS(R.xlink,"href",ab);R.canvas&&R.canvas.appendChild(Z);var Y=new m(Z,R);Y.attrs={x:e,y:ac,width:i,height:aa,src:ab};Y.type="image";return Y;};var G=function(i,e,aa,Z){var Y=A("text");A(Y,{x:e,y:aa,"text-anchor":"middle"});i.canvas&&i.canvas.appendChild(Y);var R=new m(Y,i);R.attrs={x:e,y:aa,"text-anchor":"middle",text:Z,font:p.font,stroke:"none",fill:"#000"};R.type="text";E(R,R.attrs);return R;};var D=function(i,e){this.width=i||this.width;this.height=e||this.height;this.canvas.setAttribute("width",this.width);this.canvas.setAttribute("height",this.height);return this;};var l=function(){var Z=F.apply(null,arguments),R=Z&&Z.container,ab=Z.x,aa=Z.y,Y=Z.width,ac=Z.height;if(!R){throw new Error("SVG container not found.");}b.canvas=A("svg");var e=b.canvas,ad=e.style;e.setAttribute("width",Y||512);b.width=Y||512;e.setAttribute("height",ac||342);b.height=ac||342;if(R==1){g.body.appendChild(e);ad.position="absolute";ad.left=ab+"px";ad.top=aa+"px";}else{if(R.firstChild){R.insertBefore(e,R.firstChild);}else{R.appendChild(e);}}R={canvas:e,clear:function(){while(this.canvas.firstChild){this.canvas.removeChild(this.canvas.firstChild);}this.desc=A("desc");this.defs=A("defs");this.desc.appendChild(g.createTextNode("Created with Rapha\u00ebl"));this.canvas.appendChild(this.desc);this.canvas.appendChild(this.defs);}};for(var i in b){if(b.hasOwnProperty(i)){if(i!="create"){R[i]=b[i];}}}a.call(R,R,f.fn);R.clear();R.raphael=f;return R;};b.remove=function(){this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas);};}if(f.vml){var x=function(ab){var Z=N(ab);for(var R=0,Y=Z.length;R<Y;R++){Z[R][0]=(Z[R][0]+"").toLowerCase();Z[R][0]=="z"&&(Z[R][0]="x");for(var e=1,aa=Z[R].length;e<aa;e++){Z[R][e]=Math.round(Z[R][e]);}}return(Z+"");};f.toString=function(){return"Your browser doesn\u2019t support SVG. Assuming it is Internet Explorer and falling down to VML.\nYou are running Rapha\u00ebl "+this.version;};var V=function(e,aa){var Y=U("group"),ab=Y.style;ab.position="absolute";ab.left=0;ab.top=0;ab.width=aa.width+"px";ab.height=aa.height+"px";Y.coordsize=aa.coordsize;Y.coordorigin=aa.coordorigin;var R=U("shape"),i=R.style;i.width=aa.width+"px";i.height=aa.height+"px";R.path="";R.coordsize=this.coordsize;R.coordorigin=this.coordorigin;Y.appendChild(R);var Z=new m(R,Y,aa);Z.isAbsolute=true;Z.type="path";Z.path=[];Z.Path="";if(e){Z.attrs.path=f.parsePathString(e);Z.node.path=x(Z.attrs.path);}E(Z,{fill:"none",stroke:"#000"});Z.setBox();aa.canvas.appendChild(Y);return Z;};var E=function(ae,ai){ae.attrs=ae.attrs||{};var ag=ae.node,aj=ae.attrs,ab=ag.style,Y,an=ae;for(var ac in ai){if(ai.hasOwnProperty(ac)){aj[ac]=ai[ac];}}ai.href&&(ag.href=ai.href);ai.title&&(ag.title=ai.title);ai.target&&(ag.target=ai.target);if(ai.path&&ae.type=="path"){aj.path=f.parsePathString(ai.path);ag.path=x(aj.path);}if(ai.rotation!=null){ae.rotate(ai.rotation,true);}if(ai.translation){Y=(ai.translation+"").split(X);ae.translate(Y[0],Y[1]);}if(ai.scale){Y=(ai.scale+"").split(X);ae.scale(+Y[0]||1,+Y[1]||+Y[0]||1,+Y[2]||null,+Y[3]||null);}if("clip-rect" in ai){var e=(ai["clip-rect"]+"").split(X);if(e.length==4){e[2]=+e[2]+(+e[0]);e[3]=+e[3]+(+e[1]);var ad=ag.clipRect||g.createElement("div"),am=ad.style,aa=ag.parentNode;am.clip=f.format("rect({1}px {2}px {3}px {0}px)",e);if(!ag.clipRect){am.position="absolute";am.top=0;am.left=0;am.width=ae.paper.width+"px";am.height=ae.paper.height+"px";aa.parentNode.insertBefore(ad,aa);ad.appendChild(aa);ag.clipRect=ad;}}if(!ai["clip-rect"]){ag.clipRect&&(ag.clipRect.style.clip="");}}if(ae.type=="image"&&ai.src){ag.src=ai.src;}if(ae.type=="image"&&ai.opacity){ag.filterOpacity=" progid:DXImageTransform.Microsoft.Alpha(opacity="+(ai.opacity*100)+")";ab.filter=(ag.filterMatrix||"")+(ag.filterOpacity||"");}ai.font&&(ab.font=ai.font);ai["font-family"]&&(ab.fontFamily='"'+ai["font-family"].split(",")[0].replace(/^['"]+|['"]+$/g,"")+'"');ai["font-size"]&&(ab.fontSize=ai["font-size"]);ai["font-weight"]&&(ab.fontWeight=ai["font-weight"]);ai["font-style"]&&(ab.fontStyle=ai["font-style"]);if(ai.opacity!=null||ai["stroke-width"]!=null||ai.fill!=null||ai.stroke!=null||ai["stroke-width"]!=null||ai["stroke-opacity"]!=null||ai["fill-opacity"]!=null||ai["stroke-dasharray"]!=null||ai["stroke-miterlimit"]!=null||ai["stroke-linejoin"]!=null||ai["stroke-linecap"]!=null){ag=ae.shape||ag;var ah=(ag.getElementsByTagName("fill")&&ag.getElementsByTagName("fill")[0]),ak=false;!ah&&(ak=ah=U("fill"));if("fill-opacity" in ai||"opacity" in ai){var i=((+aj["fill-opacity"]+1||2)-1)*((+aj.opacity+1||2)-1);i<0&&(i=0);i>1&&(i=1);ah.opacity=i;}ai.fill&&(ah.on=true);if(ah.on==null||ai.fill=="none"){ah.on=false;}if(ah.on&&ai.fill){var R=ai.fill.match(/^url\(([^\)]+)\)$/i);if(R){ah.src=R[1];ah.type="tile";}else{ah.color=f.getRGB(ai.fill).hex;ah.src="";ah.type="solid";if(f.getRGB(ai.fill).error&&(an.type in {circle:1,ellipse:1}||(ai.fill+"").charAt(0)!="r")&&L(an,ai.fill)){aj.fill="none";aj.gradient=ai.fill;}}}ak&&ag.appendChild(ah);var Z=(ag.getElementsByTagName("stroke")&&ag.getElementsByTagName("stroke")[0]),al=false;!Z&&(al=Z=U("stroke"));if((ai.stroke&&ai.stroke!="none")||ai["stroke-width"]||ai["stroke-opacity"]!=null||ai["stroke-dasharray"]||ai["stroke-miterlimit"]||ai["stroke-linejoin"]||ai["stroke-linecap"]){Z.on=true;}(ai.stroke=="none"||Z.on==null||ai.stroke==0||ai["stroke-width"]==0)&&(Z.on=false);Z.on&&ai.stroke&&(Z.color=f.getRGB(ai.stroke).hex);var i=((+aj["stroke-opacity"]+1||2)-1)*((+aj.opacity+1||2)-1);i<0&&(i=0);i>1&&(i=1);Z.opacity=i;ai["stroke-linejoin"]&&(Z.joinstyle=ai["stroke-linejoin"]||"miter");Z.miterlimit=ai["stroke-miterlimit"]||8;ai["stroke-linecap"]&&(Z.endcap={butt:"flat",square:"square",round:"round"}[ai["stroke-linecap"]]||"miter");ai["stroke-width"]&&(Z.weight=(parseFloat(ai["stroke-width"])||1)*12/16);if(ai["stroke-dasharray"]){var af={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot","--..":"longdashdotdot"};Z.dashstyle=af[ai["stroke-dasharray"]]||"";}al&&ag.appendChild(Z);}if(an.type=="text"){var ab=b.span.style;aj.font&&(ab.font=aj.font);aj["font-family"]&&(ab.fontFamily=aj["font-family"]);aj["font-size"]&&(ab.fontSize=aj["font-size"]);aj["font-weight"]&&(ab.fontWeight=aj["font-weight"]);aj["font-style"]&&(ab.fontStyle=aj["font-style"]);an.node.string&&(b.span.innerHTML=an.node.string.replace(/</g,"&#60;").replace(/&/g,"&#38;").replace(/\n/g,"<br>"));an.W=aj.w=b.span.offsetWidth;an.H=aj.h=b.span.offsetHeight;an.X=aj.x;an.Y=aj.y+Math.round(an.H/2);switch(aj["text-anchor"]){case"start":an.node.style["v-text-align"]="left";an.bbx=Math.round(an.W/2);break;case"end":an.node.style["v-text-align"]="right";an.bbx=-Math.round(an.W/2);break;default:an.node.style["v-text-align"]="center";break;}}};var L=function(e,ac){e.attrs=e.attrs||{};var ad=e.attrs,af=e.node.getElementsByTagName("fill"),aa="linear",ab=".5 .5";e.attrs.gradient=ac;ac=(ac+"").replace(/^r(?:\(([^,]+?)\s*,\s*([^\)]+?)\))?/,function(ah,ai,i){aa="radial";if(ai&&i){ai=parseFloat(ai);i=parseFloat(i);if(Math.pow(ai-0.5,2)+Math.pow(i-0.5,2)>0.25){i=Math.sqrt(0.25-Math.pow(ai-0.5,2))+0.5;}ab=ai+" "+i;}return"";});ac=ac.split(/\s*\-\s*/);if(aa=="linear"){var R=ac.shift();R=-parseFloat(R);if(isNaN(R)){return null;}}var Z=n(ac);if(!Z){return null;}e=e.shape||e.node;af=af[0]||U("fill");if(Z.length){af.on=true;af.method="none";af.type=(aa=="radial")?"gradientradial":"gradient";af.color=Z[0].color;af.color2=Z[Z.length-1].color;var ag=[];for(var Y=0,ae=Z.length;Y<ae;Y++){Z[Y].offset&&ag.push(Z[Y].offset+" "+Z[Y].color);}if(ag.length){af.colors.value=ag.join(",");}else{af.colors&&(af.colors.value="0% "+af.color);}if(aa=="radial"){af.focus="100%";af.focussize=ab;af.focusposition=ab;}else{af.angle=(270-R)%360;}}return 1;};var m=function(Z,ab,e){var aa=0,R=0,i=0,Y=1;this[0]=Z;this.node=Z;Z.raphael=this;this.X=0;this.Y=0;this.attrs={};this.Group=ab;this.paper=e;this._={tx:0,ty:0,rt:{deg:0},sx:1,sy:1};};m.prototype.rotate=function(i,e,R){if(i==null){if(this._.rt.cx){return[this._.rt.deg,this._.rt.cx,this._.rt.cy].join(" ");}return this._.rt.deg;}i=(i+"").split(X);if(i.length-1){e=parseFloat(i[1]);R=parseFloat(i[2]);}i=parseFloat(i[0]);if(e!=null){this._.rt.deg=i;}else{this._.rt.deg+=i;}R==null&&(e=null);this._.rt.cx=e;this._.rt.cy=R;this.setBox(this.attrs,e,R);this.Group.style.rotation=this._.rt.deg;return this;};m.prototype.setBox=function(aa,ab,Z){var R=this.Group.style,ac=(this.shape&&this.shape.style)||this.node.style;aa=aa||{};for(var ad in aa){if(aa.hasOwnProperty(ad)){this.attrs[ad]=aa[ad];}}ab=ab||this._.rt.cx;Z=Z||this._.rt.cy;var ag=this.attrs,aj,ai,ak,af;switch(this.type){case"circle":aj=ag.cx-ag.r;ai=ag.cy-ag.r;ak=af=ag.r*2;break;case"ellipse":aj=ag.cx-ag.rx;ai=ag.cy-ag.ry;ak=ag.rx*2;af=ag.ry*2;break;case"rect":case"image":aj=ag.x;ai=ag.y;ak=ag.width||0;af=ag.height||0;break;case"text":this.textpath.v=["m",Math.round(ag.x),", ",Math.round(ag.y-2),"l",Math.round(ag.x)+1,", ",Math.round(ag.y-2)].join("");aj=ag.x-Math.round(this.W/2);ai=ag.y-this.H/2;ak=this.W;af=this.H;break;case"path":if(!this.attrs.path){aj=0;ai=0;ak=this.paper.width;af=this.paper.height;}else{var ae=B(this.attrs.path);aj=ae.x;ai=ae.y;ak=ae.width;af=ae.height;}break;default:aj=0;ai=0;ak=this.paper.width;af=this.paper.height;break;}ab=(ab==null)?aj+ak/2:ab;Z=(Z==null)?ai+af/2:Z;var Y=ab-this.paper.width/2,ah=Z-this.paper.height/2;if(this.type=="path"||this.type=="text"){(R.left!=Y+"px")&&(R.left=Y+"px");(R.top!=ah+"px")&&(R.top=ah+"px");this.X=this.type=="text"?aj:-Y;this.Y=this.type=="text"?ai:-ah;this.W=ak;this.H=af;(ac.left!=-Y+"px")&&(ac.left=-Y+"px");(ac.top!=-ah+"px")&&(ac.top=-ah+"px");}else{(R.left!=Y+"px")&&(R.left=Y+"px");(R.top!=ah+"px")&&(R.top=ah+"px");this.X=aj;this.Y=ai;this.W=ak;this.H=af;(R.width!=this.paper.width+"px")&&(R.width=this.paper.width+"px");(R.height!=this.paper.height+"px")&&(R.height=this.paper.height+"px");(ac.left!=aj-Y+"px")&&(ac.left=aj-Y+"px");(ac.top!=ai-ah+"px")&&(ac.top=ai-ah+"px");(ac.width!=ak+"px")&&(ac.width=ak+"px");(ac.height!=af+"px")&&(ac.height=af+"px");var al=(+aa.r||0)/(Math.min(ak,af));if(this.type=="rect"&&this.arcsize!=al&&(al||this.arcsize)){var e=U(al?"roundrect":"rect");e.arcsize=al;this.Group.appendChild(e);this.node.parentNode.removeChild(this.node);this.node=e;this.arcsize=al;E(this,this.attrs);this.setBox(this.attrs);}}};m.prototype.hide=function(){this.Group.style.display="none";return this;};m.prototype.show=function(){this.Group.style.display="block";return this;};m.prototype.getBBox=function(){if(this.type=="path"){return B(this.attrs.path);}return{x:this.X+(this.bbx||0),y:this.Y,width:this.W,height:this.H};};m.prototype.remove=function(){this[0].parentNode.removeChild(this[0]);this.Group.parentNode.removeChild(this.Group);this.shape&&this.shape.parentNode.removeChild(this.shape);};m.prototype.attr=function(){if(arguments.length==1&&f.is(arguments[0],"string")){if(arguments[0]=="translation"){return this.translate();}if(arguments[0]=="rotation"){return this.rotate();}if(arguments[0]=="scale"){return this.scale();}return this.attrs[arguments[0]];}if(this.attrs&&arguments.length==1&&f.is(arguments[0],"array")){var e={};for(var R=0,Y=arguments[0].length;R<Y;R++){e[arguments[0][R]]=this.attrs[arguments[0][R]];}return e;}var Z;if(arguments.length==2){Z={};Z[arguments[0]]=arguments[1];}if(arguments.length==1&&f.is(arguments[0],"object")){Z=arguments[0];}if(Z){if(Z.gradient&&(this.type in {circle:1,ellipse:1}||(Z.gradient+"").charAt(0)!="r")){L(this,Z.gradient);}if(Z.text&&this.type=="text"){this.node.string=Z.text;}E(this,Z);this.setBox(this.attrs);}return this;};m.prototype.toFront=function(){this.Group.parentNode.appendChild(this.Group);return this;};m.prototype.toBack=function(){if(this.Group.parentNode.firstChild!=this.Group){this.Group.parentNode.insertBefore(this.Group,this.Group.parentNode.firstChild);}return this;};m.prototype.insertAfter=function(e){if(e.Group.nextSibling){e.Group.parentNode.insertBefore(this.Group,e.Group.nextSibling);}else{e.Group.parentNode.appendChild(this.Group);}return this;};m.prototype.insertBefore=function(e){e.Group.parentNode.insertBefore(this.Group,e.Group);return this;};var C=function(i,ad,ac,e){var Z=U("group"),Y=Z.style,R=U("oval"),ab=R.style;Y.position="absolute";Y.left=0;Y.top=0;Y.width=i.width+"px";Y.height=i.height+"px";Z.coordsize=i.coordsize;Z.coordorigin=i.coordorigin;Z.appendChild(R);var aa=new m(R,Z,i);aa.type="circle";E(aa,{stroke:"#000",fill:"none"});aa.attrs.cx=ad;aa.attrs.cy=ac;aa.attrs.r=e;aa.setBox({x:ad-e,y:ac-e,width:e*2,height:e*2});i.canvas.appendChild(Z);return aa;};var H=function(i,ad,ac,ae,Z,e){var aa=U("group"),Y=aa.style,R=U(e?"roundrect":"rect"),af=(+e||0)/(Math.min(ae,Z));R.arcsize=af;Y.position="absolute";Y.left=0;Y.top=0;Y.width=i.width+"px";Y.height=i.height+"px";aa.coordsize=i.coordsize;aa.coordorigin=i.coordorigin;aa.appendChild(R);var ab=new m(R,aa,i);ab.type="rect";E(ab,{stroke:"#000"});ab.arcsize=af;ab.setBox({x:ad,y:ac,width:ae,height:Z,r:+e});i.canvas.appendChild(aa);return ab;};var h=function(e,ae,ad,R,i){var aa=U("group"),Z=aa.style,Y=U("oval"),ac=Y.style;Z.position="absolute";Z.left=0;Z.top=0;Z.width=e.width+"px";Z.height=e.height+"px";aa.coordsize=e.coordsize;aa.coordorigin=e.coordorigin;aa.appendChild(Y);var ab=new m(Y,aa,e);ab.type="ellipse";E(ab,{stroke:"#000"});ab.attrs.cx=ae;ab.attrs.cy=ad;ab.attrs.rx=R;ab.attrs.ry=i;ab.setBox({x:ae-R,y:ad-i,width:R*2,height:i*2});e.canvas.appendChild(aa);return ab;};var o=function(i,e,ae,ad,af,Z){var aa=U("group"),Y=aa.style,R=U("image"),ac=R.style;Y.position="absolute";Y.left=0;Y.top=0;Y.width=i.width+"px";Y.height=i.height+"px";aa.coordsize=i.coordsize;aa.coordorigin=i.coordorigin;R.src=e;aa.appendChild(R);var ab=new m(R,aa,i);ab.type="image";ab.attrs.src=e;ab.attrs.x=ae;ab.attrs.y=ad;ab.attrs.w=af;ab.attrs.h=Z;ab.setBox({x:ae,y:ad,width:af,height:Z});i.canvas.appendChild(aa);return ab;};var G=function(i,ae,ad,af){var aa=U("group"),Z=aa.style,Y=U("shape"),ac=Y.style,ag=U("path"),e=ag.style,R=U("textpath");Z.position="absolute";Z.left=0;Z.top=0;Z.width=i.width+"px";Z.height=i.height+"px";aa.coordsize=i.coordsize;aa.coordorigin=i.coordorigin;ag.v=["m",Math.round(ae),", ",Math.round(ad),"l",Math.round(ae)+1,", ",Math.round(ad)].join("");ag.textpathok=true;ac.width=i.width;ac.height=i.height;Z.position="absolute";Z.left=0;Z.top=0;Z.width=i.width;Z.height=i.height;R.string=af;R.on=true;Y.appendChild(R);Y.appendChild(ag);aa.appendChild(Y);var ab=new m(R,aa,i);ab.shape=Y;ab.textpath=ag;ab.type="text";ab.attrs.text=af;ab.attrs.x=ae;ab.attrs.y=ad;ab.attrs.w=1;ab.attrs.h=1;E(ab,{font:p.font,stroke:"none",fill:"#000"});ab.setBox();i.canvas.appendChild(aa);return ab;};var D=function(R,e){var i=this.canvas.style;this.width=parseFloat(R||this.width);this.height=parseFloat(e||this.height);i.width=this.width+"px";i.height=this.height+"px";i.clip="rect(0 "+this.width+"px "+this.height+"px 0)";this.coordsize=this.width+" "+this.height;return this;};g.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)");try{!g.namespaces.rvml&&g.namespaces.add("rvml","urn:schemas-microsoft-com:vml");var U=function(e){return g.createElement("<rvml:"+e+' class="rvml">');};}catch(T){var U=function(e){return g.createElement("<"+e+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">');};}var l=function(){var Y=F.apply(null,arguments),i=Y.container,ae=Y.height,af,R=Y.width,ad=Y.x,ac=Y.y;if(!i){throw new Error("VML container not found.");}var aa={},ab=aa.canvas=g.createElement("div"),Z=ab.style;R=parseFloat(R)||512;ae=parseFloat(ae)||342;aa.width=R;aa.height=ae;aa.coordsize=R+" "+ae;aa.coordorigin="0 0";aa.span=g.createElement("span");af=aa.span.style;ab.appendChild(aa.span);af.position="absolute";af.left="-99999px";af.top="-99999px";af.padding=0;af.margin=0;af.lineHeight=1;af.display="inline";Z.width=R+"px";Z.height=ae+"px";Z.position="absolute";Z.clip="rect(0 "+R+"px "+ae+"px 0)";if(i==1){g.body.appendChild(ab);Z.left=ad+"px";Z.top=ac+"px";i={style:{width:R,height:ae}};}else{i.style.width=R;i.style.height=ae;if(i.firstChild){i.insertBefore(ab,i.firstChild);}else{i.appendChild(ab);}}for(var e in b){if(b.hasOwnProperty(e)){aa[e]=b[e];}}a.call(aa,aa,f.fn);aa.clear=function(){while(ab.firstChild){ab.removeChild(ab.firstChild);}};aa.raphael=f;return aa;};b.remove=function(){this.canvas.parentNode.removeChild(this.canvas);};}if({"Apple Computer, Inc.":1,"Google Inc.":1}[navigator.vendor]){b.safari=function(){var e=this.rect(-99,-99,this.width+99,this.height+99);setTimeout(function(){e.remove();});};}else{b.safari=function(){};}var j=(function(){if(g.addEventListener){return function(Z,R,i,e){var Y=function(aa){return i.call(e,aa);};Z.addEventListener(R,Y,false);return function(){Z.removeEventListener(R,Y,false);return true;};};}else{if(g.attachEvent){return function(aa,Y,R,i){var Z=function(ab){return R.call(i,ab||K.event);};aa.attachEvent("on"+Y,Z);var e=function(){aa.detachEvent("on"+Y,Z);return true;};if(Y=="mouseover"){aa.attachEvent("onmouseenter",Z);return function(){aa.detachEvent("onmouseenter",Z);return e();};}else{if(Y=="mouseout"){aa.attachEvent("onmouseleave",Z);return function(){aa.detachEvent("onmouseleave",Z);return e();};}}return e;};}}})();for(var P=u.length;P--;){(function(e){m.prototype[e]=function(i){if(f.is(i,"function")){this.events=this.events||{};this.events[e]=this.events[e]||{};this.events[e][i]=this.events[e][i]||[];this.events[e][i].push(j(this.shape||this.node,e,i,this));}return this;};m.prototype["un"+e]=function(i){this.events&&this.events[e]&&this.events[e][i]&&this.events[e][i].length&&this.events[e][i].shift()()&&!this.events[e][i].length&&delete this.events[e][i];};})(u[P]);}b.circle=function(e,R,i){return C(this,e,R,i);};b.rect=function(e,Z,i,R,Y){return H(this,e,Z,i,R,Y);};b.ellipse=function(e,Y,R,i){return h(this,e,Y,R,i);};b.path=function(e){e&&!f.is(e,"string")&&!f.is(e[0],"array")&&(e+="");return V(f.format.apply(f,arguments),this);};b.image=function(Y,e,Z,i,R){return o(this,Y,e,Z,i,R);};b.text=function(e,R,i){return G(this,e,R,i);};b.set=function(e){arguments.length>1&&(e=Array.prototype.splice.call(arguments,0,arguments.length));return new k(e);};b.setSize=D;m.prototype.stop=function(){clearTimeout(this.animation_in_progress);return this;};m.prototype.scale=function(aj,ai,Y,R){if(aj==null&&ai==null){return{x:this._.sx,y:this._.sy,toString:function(){return this.x+" "+this.y;}};}ai=ai||aj;!+ai&&(ai=aj);var an,al,am,ak,aA=this.attrs;if(aj!=0){var ag=this.getBBox(),ad=ag.x+ag.width/2,aa=ag.y+ag.height/2,az=aj/this._.sx,ay=ai/this._.sy;Y=(+Y||Y==0)?Y:ad;R=(+R||R==0)?R:aa;var af=Math.round(aj/Math.abs(aj)),ac=Math.round(ai/Math.abs(ai)),aq=this.node.style,aC=Y+(ad-Y)*af*az,aB=R+(aa-R)*ac*ay;switch(this.type){case"rect":case"image":var ae=aA.width*af*az,ap=aA.height*ac*ay,ah=aA.r*Math.min(az,ay),ab=aC-ae/2,Z=aB-ap/2;this.attr({width:ae,height:ap,x:ab,y:Z,r:ah});break;case"circle":case"ellipse":this.attr({rx:aA.rx*az,ry:aA.ry*ay,r:aA.r*Math.min(az,ay),cx:aC,cy:aB});break;case"path":var at=c(aA.path),au=true;for(var aw=0,ao=at.length;aw<ao;aw++){var ar=at[aw];if(ar[0].toUpperCase()=="M"&&au){continue;}else{au=false;}if(f.svg&&ar[0].toUpperCase()=="A"){ar[at[aw].length-2]*=az;ar[at[aw].length-1]*=ay;ar[1]*=az;ar[2]*=ay;ar[5]=+(af+ac?!!+ar[5]:!+ar[5]);}else{for(var av=1,ax=ar.length;av<ax;av++){ar[av]*=(av%2)?az:ay;}}}var e=B(at),an=aC-e.x-e.width/2,al=aB-e.y-e.height/2;at[0][1]+=an;at[0][2]+=al;this.attr({path:at});break;}if(this.type in {text:1,image:1}&&(af!=1||ac!=1)){if(this.transformations){this.transformations[2]="scale(".concat(af,",",ac,")");this.node.setAttribute("transform",this.transformations.join(" "));an=(af==-1)?-aA.x-(ae||0):aA.x;al=(ac==-1)?-aA.y-(ap||0):aA.y;this.attr({x:an,y:al});aA.fx=af-1;aA.fy=ac-1;}else{this.node.filterMatrix=" progid:DXImageTransform.Microsoft.Matrix(M11=".concat(af,", M12=0, M21=0, M22=",ac,", Dx=0, Dy=0, sizingmethod='auto expand', filtertype='bilinear')");aq.filter=(this.node.filterMatrix||"")+(this.node.filterOpacity||"");}}else{if(this.transformations){this.transformations[2]="";this.node.setAttribute("transform",this.transformations.join(" "));aA.fx=0;aA.fy=0;}else{this.node.filterMatrix="";aq.filter=(this.node.filterMatrix||"")+(this.node.filterOpacity||"");}}aA.scale=[aj,ai,Y,R].join(" ");this._.sx=aj;this._.sy=ai;}return this;};f.easing_formulas={linear:function(e){return e;},"<":function(e){return Math.pow(e,3);},">":function(e){return Math.pow(e-1,3)+1;},"<>":function(e){e=e*2;if(e<1){return Math.pow(e,3)/2;}e-=2;return(Math.pow(e,3)+2)/2;},backIn:function(i){var e=1.70158;return i*i*((e+1)*i-e);},backOut:function(i){i=i-1;var e=1.70158;return i*i*((e+1)*i+e)+1;},elastic:function(R){if(R==0||R==1){return R;}var i=0.3,e=i/4;return Math.pow(2,-10*R)*Math.sin((R-e)*(2*Math.PI)/i)+1;},bounce:function(Y){var i=7.5625,R=2.75,e;if(Y<(1/R)){e=i*Y*Y;}else{if(Y<(2/R)){Y-=(1.5/R);e=i*Y*Y+0.75;}else{if(Y<(2.5/R)){Y-=(2.25/R);e=i*Y*Y+0.9375;}else{Y-=(2.625/R);e=i*Y*Y+0.984375;}}}return e;}};m.prototype.animate=function(ar,ai,ah,Z){clearTimeout(this.animation_in_progress);if(f.is(ah,"function")||!ah){Z=ah||null;}var al={},R={},af={},ae={x:0,y:0};for(var aj in ar){if(ar.hasOwnProperty(aj)){if(aj in t){al[aj]=this.attr(aj);(al[aj]==null)&&(al[aj]=p[aj]);R[aj]=ar[aj];switch(t[aj]){case"number":af[aj]=(R[aj]-al[aj])/ai;break;case"colour":al[aj]=f.getRGB(al[aj]);var ak=f.getRGB(R[aj]);af[aj]={r:(ak.r-al[aj].r)/ai,g:(ak.g-al[aj].g)/ai,b:(ak.b-al[aj].b)/ai};break;case"path":var aa=N(al[aj],R[aj]);al[aj]=aa[0];R[aj]=aa[1];af[aj]=[];for(var an=0,ad=al[aj].length;an<ad;an++){af[aj][an]=[0];for(var am=1,ap=al[aj][an].length;am<ap;am++){af[aj][an][am]=(R[aj][an][am]-al[aj][an][am])/ai;}}break;case"csv":var e=(ar[aj]+"").split(X),ac=(al[aj]+"").split(X);switch(aj){case"translation":al[aj]=[0,0];af[aj]=[e[0]/ai,e[1]/ai];break;case"rotation":al[aj]=(ac[1]==e[1]&&ac[2]==e[2])?ac:[0,e[1],e[2]];af[aj]=[(e[0]-al[aj][0])/ai,0,0];break;case"scale":ar[aj]=e;al[aj]=(al[aj]+"").split(X);af[aj]=[(e[0]-al[aj][0])/ai,(e[1]-al[aj][1])/ai,0,0];break;case"clip-rect":al[aj]=(al[aj]+"").split(X);af[aj]=[];var an=4;while(an--){af[aj][an]=(e[an]-al[aj][an])/ai;}break;}R[aj]=e;}}}}var Y=+new Date,ag=0,aq=function(i){return +i>255?255:+i;},ab=this;(function ao(){var au=new Date-Y,aC={},at;if(au<ai){var aA=f.easing_formulas[ah]?f.easing_formulas[ah](au/ai):au/ai;for(var ay in al){if(al.hasOwnProperty(ay)){switch(t[ay]){case"number":at=+al[ay]+aA*ai*af[ay];break;case"colour":at="rgb("+[aq(Math.round(al[ay].r+aA*ai*af[ay].r)),aq(Math.round(al[ay].g+aA*ai*af[ay].g)),aq(Math.round(al[ay].b+aA*ai*af[ay].b))].join(",")+")";break;case"path":at=[];for(var aw=0,aD=al[ay].length;aw<aD;aw++){at[aw]=[al[ay][aw][0]];for(var av=1,ax=al[ay][aw].length;av<ax;av++){at[aw][av]=+al[ay][aw][av]+aA*ai*af[ay][aw][av];}at[aw]=at[aw].join(" ");}at=at.join(" ");break;case"csv":switch(ay){case"translation":var aB=af[ay][0]*(au-ag),az=af[ay][1]*(au-ag);ae.x+=aB;ae.y+=az;at=[aB,az].join(" ");break;case"rotation":at=+al[ay][0]+aA*ai*af[ay][0];al[ay][1]&&(at+=","+al[ay][1]+","+al[ay][2]);break;case"scale":at=[+al[ay][0]+aA*ai*af[ay][0],+al[ay][1]+aA*ai*af[ay][1],(2 in ar[ay]?ar[ay][2]:""),(3 in ar[ay]?ar[ay][3]:"")].join(" ");break;case"clip-rect":at=[];var aw=4;while(aw--){at[aw]=+al[ay][aw]+aA*ai*af[ay][aw];}break;}break;}aC[ay]=at;}}ab.attr(aC);ab.animation_in_progress=setTimeout(ao);f.svg&&b.safari();}else{(ae.x||ae.y)&&ab.translate(-ae.x,-ae.y);ab.attr(ar);clearTimeout(ab.animation_in_progress);f.svg&&b.safari();(f.is(Z,"function"))&&Z.call(ab);}ag=au;})();return this;};m.prototype.translate=function(e,R){if(e==null){return{x:this._.tx,y:this._.ty};}this._.tx+=+e;this._.ty+=+R;switch(this.type){case"circle":case"ellipse":this.attr({cx:+e+this.attrs.cx,cy:+R+this.attrs.cy});break;case"rect":case"image":case"text":this.attr({x:+e+this.attrs.x,y:+R+this.attrs.y});break;case"path":var i=c(this.attrs.path);i[0][1]+=+e;i[0][2]+=+R;this.attr({path:i});break;}return this;};m.prototype.toString=function(){return"Rapha\u00ebl\u2019s object";};var k=function(e){this.items=[];this.length=0;if(e){for(var R=0,Y=e.length;R<Y;R++){if(e[R]&&(e[R].constructor==m||e[R].constructor==k)){this[this.items.length]=this.items[this.items.length]=e[R];this.length++;}}}};k.prototype.push=function(){var Z,e;for(var R=0,Y=arguments.length;R<Y;R++){Z=arguments[R];if(Z&&(Z.constructor==m||Z.constructor==k)){e=this.items.length;this[e]=this.items[e]=Z;this.length++;}}return this;};k.prototype.pop=function(){delete this[this.length--];return this.items.pop();};for(var Q in m.prototype){if(m.prototype.hasOwnProperty(Q)){k.prototype[Q]=(function(e){return function(){for(var R=0,Y=this.items.length;R<Y;R++){this.items[R][e].apply(this.items[R],arguments);}return this;};})(Q);}}k.prototype.attr=function(R,ab){if(R&&f.is(R,"array")&&f.is(R[0],"object")){for(var e=0,aa=R.length;e<aa;e++){this.items[e].attr(R[e]);}}else{for(var Y=0,Z=this.items.length;Y<Z;Y++){this.items[Y].attr.apply(this.items[Y],arguments);}}return this;};k.prototype.getBBox=function(){var e=[],ab=[],R=[],Z=[];for(var Y=this.items.length;Y--;){var aa=this.items[Y].getBBox();e.push(aa.x);ab.push(aa.y);R.push(aa.x+aa.width);Z.push(aa.y+aa.height);}e=Math.min.apply(Math,e);ab=Math.min.apply(Math,ab);return{x:e,y:ab,width:Math.max.apply(Math,R)-e,height:Math.max.apply(Math,Z)-ab};};f.registerFont=function(i){if(!i.face){return i;}this.fonts=this.fonts||{};var Y={w:i.w,face:{},glyphs:{}},R=i.face["font-family"];for(var ab in i.face){if(i.face.hasOwnProperty(ab)){Y.face[ab]=i.face[ab];}}if(this.fonts[R]){this.fonts[R].push(Y);}else{this.fonts[R]=[Y];}if(!i.svg){Y.face["units-per-em"]=parseInt(i.face["units-per-em"],10);for(var Z in i.glyphs){if(i.glyphs.hasOwnProperty(Z)){var aa=i.glyphs[Z];Y.glyphs[Z]={w:aa.w,k:{},d:aa.d&&"M"+aa.d.replace(/[mlcxtrv]/g,function(ac){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[ac]||"M";})+"z"};if(aa.k){for(var e in aa.k){if(aa.hasOwnProperty(e)){Y.glyphs[Z].k[e]=aa.k[e];}}}}}}return i;};b.getFont=function(ad,ae,R,Z){Z=Z||"normal";R=R||"normal";ae=+ae||{normal:400,bold:700,lighter:300,bolder:800}[ae]||400;var aa=f.fonts[ad];if(!aa){var Y=new RegExp("(^|\\s)"+ad.replace(/[^\w\d\s+!~.:_-]/g,"")+"(\\s|$)","i");for(var e in f.fonts){if(f.fonts.hasOwnProperty(e)){if(Y.test(e)){aa=f.fonts[e];break;}}}}var ab;if(aa){for(var ac=0,af=aa.length;ac<af;ac++){ab=aa[ac];if(ab.face["font-weight"]==ae&&(ab.face["font-style"]==R||!ab.face["font-style"])&&ab.face["font-stretch"]==Z){break;}}}return ab;};b.print=function(af,ae,ac,R,aj){var aa=this.set(),ad=(ac+"").split(""),e=0,ai="",Z;f.is(R,"string")&&(R=this.getFont(R));if(R){Z=(aj||16)/R.face["units-per-em"];for(var ab=0,ag=ad.length;ab<ag;ab++){var Y=ab&&R.glyphs[ad[ab-1]]||{},ah=R.glyphs[ad[ab]];e+=ab?(Y.w||R.w)+(Y.k&&Y.k[ad[ab]]||0):0;ah&&ah.d&&aa.push(this.path(ah.d).attr({fill:"#000",stroke:"none",translation:[e,0]}));}aa.scale(Z,Z,0,ae).translate(af,(aj||16)/2);}return aa;};f.format=function(i){var e=f.is(arguments[1],"array")?[0].concat(arguments[1]):arguments;i&&f.is(i,"string")&&e.length-1&&(i=i.replace(/\{(\d+)\}/g,function(Y,R){return e[++R]==null?"":e[R];}));return i;};f.ninja=function(){var R=window.Raphael,i;if(O.was){window.Raphael=O.is;}else{try{delete window.Raphael;}catch(Y){window.Raphael=i;}}return R;};f.el=m.prototype;return f;})();
\ No newline at end of file
index 637e170..cc64fdd 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Raphael 1.0 RC1.5 - JavaScript Vector Library
+ * Raphael 1.0 RC1.6 - JavaScript Vector Library
  *
  * Copyright (c) 2008 - 2009 Dmitry Baranovskiy (http://raphaeljs.com)
  * Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) license.
@@ -21,7 +21,7 @@ window.Raphael = (function () {
         availableAttrs = {"clip-rect": "0 0 10e9 10e9", cx: 0, cy: 0, fill: "#fff", "fill-opacity": 1, font: '10px "Arial"', "font-family": '"Arial"', "font-size": "10", "font-style": "normal", "font-weight": 400, gradient: 0, height: 0, href: "http://raphaeljs.com/", opacity: 1, path: "M0,0", r: 0, rotation: 0, rx: 0, ry: 0, scale: "1 1", src: "", stroke: "#000", "stroke-dasharray": "", "stroke-linecap": "butt", "stroke-linejoin": "butt", "stroke-miterlimit": 0, "stroke-opacity": 1, "stroke-width": 1, target: "_blank", "text-anchor": "middle", title: "Raphael", translation: "0 0", width: 0, x: 0, y: 0},
         availableAnimAttrs = {"clip-rect": "csv", cx: "number", cy: "number", fill: "colour", "fill-opacity": "number", "font-size": "number", height: "number", opacity: "number", path: "path", r: "number", rotation: "csv", rx: "number", ry: "number", scale: "csv", stroke: "colour", "stroke-opacity": "number", "stroke-width": "number", translation: "csv", width: "number", x: "number", y: "number"},
         events = ["click", "dblclick", "mousedown", "mousemove", "mouseout", "mouseover", "mouseup"];
-    R.version = "1.0 RC1.5";
+    R.version = "1.0 RC1.6";
     R.type = (window.SVGAngle || document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure", "1.1") ? "SVG" : "VML");
     R.svg = !(R.vml = R.type == "VML");
     R.idGenerator = 0;
@@ -2094,17 +2094,18 @@ window.Raphael = (function () {
             if (!container) {
                 throw new Error("VML container not found.");
             }
-            var c = paper.canvas = doc.createElement("div"),
+            var res = {},
+                c = res.canvas = doc.createElement("div"),
                 cs = c.style;
             width = parseFloat(width) || 512;
             height = parseFloat(height) || 342;
-            paper.width = width;
-            paper.height = height;
-            paper.coordsize = width + " " + height;
-            paper.coordorigin = "0 0";
-            paper.span = doc.createElement("span");
-            s = paper.span.style;
-            c.appendChild(paper.span);
+            res.width = width;
+            res.height = height;
+            res.coordsize = width + " " + height;
+            res.coordorigin = "0 0";
+            res.span = doc.createElement("span");
+            s = res.span.style;
+            c.appendChild(res.span);
             s.position = "absolute";
             s.left = "-99999px";
             s.top = "-99999px";
@@ -2136,16 +2137,16 @@ window.Raphael = (function () {
                 }
             }
             for (var prop in paper) if (paper.hasOwnProperty(prop)) {
-                container[prop] = paper[prop];
+                res[prop] = paper[prop];
             }
-            plugins.call(container, container, R.fn);
-            container.clear = function () {
+            plugins.call(res, res, R.fn);
+            res.clear = function () {
                 while (c.firstChild) {
                     c.removeChild(c.firstChild);
                 }
             };
-            container.raphael = R;
-            return container;
+            res.raphael = R;
+            return res;
         };
         paper.remove = function () {
             this.canvas.parentNode.removeChild(this.canvas);