if(!document.createElement("canvas").getContext){(function(){var G=Math;var F=G.round;var L=G.sin;var K=G.cos;var S=G.abs;var N=G.sqrt;var ab=10;var R=ab/2;function V(){return this.context_||(this.context_=new O(this))}var H=Array.prototype.slice;function J(b,a,d){var c=H.call(arguments,2);return function(){return b.apply(a,c.concat(H.call(arguments)))}}var U={init:function(b){if(/MSIE/.test(navigator.userAgent)&&!window.opera){var a=b||document;a.createElement("canvas");a.attachEvent("onreadystatechange",J(this.init_,this,a))}},init_:function(c){if(!c.namespaces.g_vml_){c.namespaces.add("g_vml_","urn:schemas-microsoft-com:vml","#default#VML")}if(!c.namespaces.g_o_){c.namespaces.add("g_o_","urn:schemas-microsoft-com:office:office","#default#VML")}if(!c.styleSheets.ex_canvas_){var d=c.createStyleSheet();d.owningElement.id="ex_canvas_";d.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}g_vml_\\:*{behavior:url(#default#VML)}g_o_\\:*{behavior:url(#default#VML)}"}var a=c.getElementsByTagName("canvas");for(var b=0;b<a.length;b++){this.initElement(a[b])}},initElement:function(a){if(!a.getContext){a.getContext=V;a.innerHTML="";a.attachEvent("onpropertychange",P);a.attachEvent("onresize",aa);var b=a.attributes;if(b.width&&b.width.specified){a.style.width=b.width.nodeValue+"px"}else{a.width=a.clientWidth}if(b.height&&b.height.specified){a.style.height=b.height.nodeValue+"px"}else{a.height=a.clientHeight}}return a}};function P(a){var b=a.srcElement;switch(a.propertyName){case"width":b.style.width=b.attributes.width.nodeValue+"px";b.getContext().clearRect();break;case"height":b.style.height=b.attributes.height.nodeValue+"px";b.getContext().clearRect();break}}function aa(a){var b=a.srcElement;if(b.firstChild){b.firstChild.style.width=b.clientWidth+"px";b.firstChild.style.height=b.clientHeight+"px"}}U.init();var X=[];for(var j=0;j<16;j++){for(var m=0;m<16;m++){X[j*16+m]=j.toString(16)+m.toString(16)}}function M(){return[[1,0,0],[0,1,0],[0,0,1]]}function Y(g,a){var b=M();for(var d=0;d<3;d++){for(var c=0;c<3;c++){var f=0;for(var e=0;e<3;e++){f+=g[d][e]*a[e][c]}b[d][c]=f}}return b}function E(a,b){b.fillStyle=a.fillStyle;b.lineCap=a.lineCap;b.lineJoin=a.lineJoin;b.lineWidth=a.lineWidth;b.miterLimit=a.miterLimit;b.shadowBlur=a.shadowBlur;b.shadowColor=a.shadowColor;b.shadowOffsetX=a.shadowOffsetX;b.shadowOffsetY=a.shadowOffsetY;b.strokeStyle=a.strokeStyle;b.globalAlpha=a.globalAlpha;b.arcScaleX_=a.arcScaleX_;b.arcScaleY_=a.arcScaleY_;b.lineScale_=a.lineScale_}function Z(a){var e,f=1;a=String(a);if(a.substring(0,3)=="rgb"){var c=a.indexOf("(",3);var b=a.indexOf(")",c+1);var d=a.substring(c+1,b).split(",");e="#";for(var g=0;g<3;g++){e+=X[Number(d[g])]}if(d.length==4&&a.substr(3,1)=="a"){f=d[3]}}else{e=a}return{color:e,alpha:f}}function I(a){switch(a){case"butt":return"flat";case"round":return"round";case"square":default:return"square"}}function O(a){this.m_=M();this.mStack_=[];this.aStack_=[];this.currentPath_=[];this.strokeStyle="#000";this.fillStyle="#000";this.lineWidth=1;this.lineJoin="miter";this.lineCap="butt";this.miterLimit=ab*1;this.globalAlpha=1;this.canvas=a;var b=a.ownerDocument.createElement("div");b.style.width=a.clientWidth+"px";b.style.height=a.clientHeight+"px";b.style.overflow="hidden";b.style.position="absolute";a.appendChild(b);this.element_=b;this.arcScaleX_=1;this.arcScaleY_=1;this.lineScale_=1}var T=O.prototype;T.clearRect=function(){this.element_.innerHTML=""};T.beginPath=function(){this.currentPath_=[]};T.moveTo=function(b,c){var a=this.getCoords_(b,c);this.currentPath_.push({type:"moveTo",x:a.x,y:a.y});this.currentX_=a.x;this.currentY_=a.y};T.lineTo=function(b,c){var a=this.getCoords_(b,c);this.currentPath_.push({type:"lineTo",x:a.x,y:a.y});this.currentX_=a.x;this.currentY_=a.y};T.bezierCurveTo=function(a,b,d,e,f,h){var c=this.getCoords_(f,h);var g=this.getCoords_(a,b);var k=this.getCoords_(d,e);Q(this,g,k,c)};function Q(c,d,a,b){c.currentPath_.push({type:"bezierCurveTo",cp1x:d.x,cp1y:d.y,cp2x:a.x,cp2y:a.y,x:b.x,y:b.y});c.currentX_=b.x;c.currentY_=b.y}T.quadraticCurveTo=function(e,a,c,d){var f=this.getCoords_(e,a);var g=this.getCoords_(c,d);var b={x:this.currentX_+2/3*(f.x-this.currentX_),y:this.currentY_+2/3*(f.y-this.currentY_)};var h={x:b.x+(g.x-this.currentX_)/3,y:b.y+(g.y-this.currentY_)/3};Q(this,b,h,g)};T.arc=function(h,l,k,p,b,a){k*=ab;var d=a?"at":"wa";var g=h+K(p)*k-R;var e=l+L(p)*k-R;var c=h+K(b)*k-R;var f=l+L(b)*k-R;if(g==c&&!a){g+=0.125}var q=this.getCoords_(h,l);var n=this.getCoords_(g,e);var o=this.getCoords_(c,f);this.currentPath_.push({type:d,x:q.x,y:q.y,radius:k,xStart:n.x,yStart:n.y,xEnd:o.x,yEnd:o.y})};T.rect=function(a,b,c,d){this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+d);this.lineTo(a,b+d);this.closePath()};T.strokeRect=function(a,b,c,e){var d=this.currentPath_;this.beginPath();this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+e);this.lineTo(a,b+e);this.closePath();this.stroke();this.currentPath_=d};T.fillRect=function(a,b,c,e){var d=this.currentPath_;this.beginPath();this.moveTo(a,b);this.lineTo(a+c,b);this.lineTo(a+c,b+e);this.lineTo(a,b+e);this.closePath();this.fill();this.currentPath_=d};T.createLinearGradient=function(b,e,c,a){var d=new i("gradient");d.x0_=b;d.y0_=e;d.x1_=c;d.y1_=a;return d};T.createRadialGradient=function(g,e,a,b,f,d){var c=new i("gradientradial");c.x0_=g;c.y0_=e;c.r0_=a;c.x1_=b;c.y1_=f;c.r1_=d;return c};T.drawImage=function(h,x){var r,t,p,a,l,o,f,A;var q=h.runtimeStyle.width;var k=h.runtimeStyle.height;h.runtimeStyle.width="auto";h.runtimeStyle.height="auto";var s=h.width;var c=h.height;h.runtimeStyle.width=q;h.runtimeStyle.height=k;if(arguments.length==3){r=arguments[1];t=arguments[2];l=o=0;f=p=s;A=a=c}else{if(arguments.length==5){r=arguments[1];t=arguments[2];p=arguments[3];a=arguments[4];l=o=0;f=s;A=c}else{if(arguments.length==9){l=arguments[1];o=arguments[2];f=arguments[3];A=arguments[4];r=arguments[5];t=arguments[6];p=arguments[7];a=arguments[8]}else{throw Error("Invalid number of arguments")}}}var B=this.getCoords_(r,t);var w=f/2;var y=A/2;var b=[];var z=10;var u=10;b.push(" <g_vml_:group",' coordsize="',ab*z,",",ab*u,'"',' coordorigin="0,0"',' style="width:',z,"px;height:",u,"px;position:absolute;");if(this.m_[0][0]!=1||this.m_[0][1]){var v=[];v.push("M11=",this.m_[0][0],",","M12=",this.m_[1][0],",","M21=",this.m_[0][1],",","M22=",this.m_[1][1],",","Dx=",F(B.x/ab),",","Dy=",F(B.y/ab),"");var d=B;var e=this.getCoords_(r+p,t);var g=this.getCoords_(r,t+a);var n=this.getCoords_(r+p,t+a);d.x=G.max(d.x,e.x,g.x,n.x);d.y=G.max(d.y,e.y,g.y,n.y);b.push("padding:0 ",F(d.x/ab),"px ",F(d.y/ab),"px 0;filter:progid:DXImageTransform.Microsoft.Matrix(",v.join(""),", sizingmethod='clip');")}else{b.push("top:",F(B.y/ab),"px;left:",F(B.x/ab),"px;")}b.push(' ">','<g_vml_:image src="',h.src,'"',' style="width:',ab*p,"px;"," height:",ab*a,'px;"',' cropleft="',l/s,'"',' croptop="',o/c,'"',' cropright="',(s-l-f)/s,'"',' cropbottom="',(c-o-A)/c,'"'," />","</g_vml_:group>");this.element_.insertAdjacentHTML("BeforeEnd",b.join(""))};T.stroke=function(am){var z=[];var x=false;var o=Z(am?this.fillStyle:this.strokeStyle);var aq=o.color;var y=o.alpha*this.globalAlpha;var aj=10;var t=10;z.push("<g_vml_:shape",' filled="',!!am,'"',' style="position:absolute;width:',aj,"px;height:",t,'px;"',' coordorigin="0 0" coordsize="',ab*aj," ",ab*t,'"',' stroked="',!am,'"',' path="');var v=false;var q={x:null,y:null};var d={x:null,y:null};for(var A=0;A<this.currentPath_.length;A++){var C=this.currentPath_[A];var s;switch(C.type){case"moveTo":s=C;z.push(" m ",F(C.x),",",F(C.y));break;case"lineTo":z.push(" l ",F(C.x),",",F(C.y));break;case"close":z.push(" x ");C=null;break;case"bezierCurveTo":z.push(" c ",F(C.cp1x),",",F(C.cp1y),",",F(C.cp2x),",",F(C.cp2y),",",F(C.x),",",F(C.y));break;case"at":case"wa":z.push(" ",C.type," ",F(C.x-this.arcScaleX_*C.radius),",",F(C.y-this.arcScaleY_*C.radius)," ",F(C.x+this.arcScaleX_*C.radius),",",F(C.y+this.arcScaleY_*C.radius)," ",F(C.xStart),",",F(C.yStart)," ",F(C.xEnd),",",F(C.yEnd));break}if(C){if(q.x==null||C.x<q.x){q.x=C.x}if(d.x==null||C.x>d.x){d.x=C.x}if(q.y==null||C.y<q.y){q.y=C.y}if(d.y==null||C.y>d.y){d.y=C.y}}}z.push(' ">');if(!am){var e=this.lineScale_*this.lineWidth;if(e<1){y*=e}z.push("<g_vml_:stroke",' opacity="',y,'"',' joinstyle="',this.lineJoin,'"',' miterlimit="',this.miterLimit,'"',' endcap="',I(this.lineCap),'"',' weight="',e,'px"',' color="',aq,'" />')}else{if(typeof this.fillStyle=="object"){var r=this.fillStyle;var g=0;var D={x:0,y:0};var ap=0;var k=1;if(r.type_=="gradient"){var n=r.x0_/this.arcScaleX_;var ar=r.y0_/this.arcScaleY_;var p=r.x1_/this.arcScaleX_;var l=r.y1_/this.arcScaleY_;var u=this.getCoords_(n,ar);var w=this.getCoords_(p,l);var B=w.x-u.x;var ah=w.y-u.y;g=Math.atan2(B,ah)*180/Math.PI;if(g<0){g+=360}if(g<0.000001){g=0}}else{var u=this.getCoords_(r.x0_,r.y0_);var at=d.x-q.x;var al=d.y-q.y;D={x:(u.x-q.x)/at,y:(u.y-q.y)/al};at/=this.arcScaleX_*ab;al/=this.arcScaleY_*ab;var ai=G.max(at,al);ap=2*r.r0_/ai;k=2*r.r1_/ai-ap}var a=r.colors_;a.sort(function(ad,ac){return ad.offset-ac.offset});var f=a.length;var b=a[0].color;var c=a[f-1].color;var an=a[0].alpha*this.globalAlpha;var ao=a[f-1].alpha*this.globalAlpha;var ak=[];for(var A=0;A<f;A++){var h=a[A];ak.push(h.offset*k+ap+" "+h.color)}z.push('<g_vml_:fill type="',r.type_,'"',' method="none" focus="100%"',' color="',b,'"',' color2="',c,'"',' colors="',ak.join(","),'"',' opacity="',ao,'"',' g_o_:opacity2="',an,'"',' angle="',g,'"',' focusposition="',D.x,",",D.y,'" />')}else{z.push('<g_vml_:fill color="',aq,'" opacity="',y,'" />')}}z.push("</g_vml_:shape>");this.element_.insertAdjacentHTML("beforeEnd",z.join(""))};T.fill=function(){this.stroke(true)};T.closePath=function(){this.currentPath_.push({type:"close"})};T.getCoords_=function(c,a){var b=this.m_;return{x:ab*(c*b[0][0]+a*b[1][0]+b[2][0])-R,y:ab*(c*b[0][1]+a*b[1][1]+b[2][1])-R}};T.save=function(){var a={};E(this,a);this.aStack_.push(a);this.mStack_.push(this.m_);this.m_=Y(M(),this.m_)};T.restore=function(){E(this.aStack_.pop(),this);this.m_=this.mStack_.pop()};T.translate=function(a,b){var c=[[1,0,0],[0,1,0],[a,b,1]];this.m_=Y(c,this.m_)};T.rotate=function(b){var d=K(b);var a=L(b);var c=[[d,a,0],[-a,d,0],[0,0,1]];this.m_=Y(c,this.m_)};T.scale=function(c,d){this.arcScaleX_*=c;this.arcScaleY_*=d;var a=[[c,0,0],[0,d,0],[0,0,1]];var b=this.m_=Y(a,this.m_);var e=b[0][0]*b[1][1]-b[0][1]*b[1][0];this.lineScale_=N(S(e))};T.clip=function(){};T.arcTo=function(){};T.createPattern=function(){return new W};function i(a){this.type_=a;this.x0_=0;this.y0_=0;this.r0_=0;this.x1_=0;this.y1_=0;this.r1_=0;this.colors_=[]}i.prototype.addColorStop=function(a,b){b=Z(b);this.colors_.push({offset:a,color:b.color,alpha:b.alpha})};function W(){}G_vmlCanvasManager=U;CanvasRenderingContext2D=O;CanvasGradient=i;CanvasPattern=W})()};
function Animator(options){this.setOptions(options);var _this=this;this.timerDelegate=function(){_this.onTimerEvent()};this.subjects=[];this.subjectScopes=[];this.target=0;this.state=0;this.lastTime=null}Animator.prototype={setOptions:function(options){this.options=Animator.applyDefaults({interval:20,duration:400,onComplete:function(){},onStep:function(){},transition:Animator.tx.easeInOut},options)},seekTo:function(to){this.seekFromTo(this.state,to)},seekFromTo:function(from,to){this.target=Math.max(0,Math.min(1,to));this.state=Math.max(0,Math.min(1,from));this.lastTime=new Date().getTime();if(!this.intervalId){this.intervalId=window.setInterval(this.timerDelegate,this.options.interval)}},jumpTo:function(to){this.target=this.state=Math.max(0,Math.min(1,to));this.propagate()},toggle:function(){this.seekTo(1-this.target)},addSubject:function(subject,scope){this.subjects[this.subjects.length]=subject;this.subjectScopes[this.subjectScopes.length]=scope;return this},clearSubjects:function(){this.subjects=[];this.subjectScopes=[]},propagate:function(){var value=this.options.transition(this.state);for(var i=0;i<this.subjects.length;i++){if(this.subjects[i].setState){this.subjects[i].setState(value)}else{this.subjects[i].apply(this.subjectScopes[i],[value])}}},onTimerEvent:function(){var now=new Date().getTime();var timePassed=now-this.lastTime;this.lastTime=now;var movement=(timePassed/this.options.duration)*(this.state<this.target?1:-1);if(Math.abs(movement)>=Math.abs(this.state-this.target)){this.state=this.target}else{this.state+=movement}try{this.propagate()}finally{this.options.onStep.call(this);if(this.target==this.state){window.clearInterval(this.intervalId);this.intervalId=null;this.options.onComplete.call(this)}}},play:function(){this.seekFromTo(0,1)},reverse:function(){this.seekFromTo(1,0)},inspect:function(){var str="#<Animator:\n";for(var i=0;i<this.subjects.length;i++){str+=this.subjects[i].inspect()}str+=">";return str}};Animator.applyDefaults=function(defaults,prefs){prefs=prefs||{};var prop,result={};for(prop in defaults){result[prop]=prefs[prop]!==undefined?prefs[prop]:defaults[prop]}return result};Animator.makeArray=function(o){if(o==null){return[]}if(!o.length){return[o]}var result=[];for(var i=0;i<o.length;i++){result[i]=o[i]}return result};Animator.camelize=function(string){var oStringList=string.split("-");if(oStringList.length==1){return oStringList[0]}var camelizedString=string.indexOf("-")==0?oStringList[0].charAt(0).toUpperCase()+oStringList[0].substring(1):oStringList[0];for(var i=1,len=oStringList.length;i<len;i++){var s=oStringList[i];camelizedString+=s.charAt(0).toUpperCase()+s.substring(1)}return camelizedString};Animator.apply=function(el,style,options){if(style instanceof Array){return new Animator(options).addSubject(new CSSStyleSubject(el,style[0],style[1]))}return new Animator(options).addSubject(new CSSStyleSubject(el,style))};Animator.makeEaseIn=function(a){return function(state){return Math.pow(state,a*2)}};Animator.makeEaseOut=function(a){return function(state){return 1-Math.pow(1-state,a*2)}};Animator.makeElastic=function(bounces){return function(state){state=Animator.tx.easeInOut(state);return((1-Math.cos(state*Math.PI*bounces))*(1-state))+state}};Animator.makeADSR=function(attackEnd,decayEnd,sustainEnd,sustainLevel){if(sustainLevel==null){sustainLevel=0.5}return function(state){if(state<attackEnd){return state/attackEnd}if(state<decayEnd){return 1-((state-attackEnd)/(decayEnd-attackEnd)*(1-sustainLevel))}if(state<sustainEnd){return sustainLevel}return sustainLevel*(1-((state-sustainEnd)/(1-sustainEnd)))}};Animator.makeBounce=function(bounces){var fn=Animator.makeElastic(bounces);return function(state){state=fn(state);return state<=1?state:2-state}};Animator.tx={easeInOut:function(pos){return((-Math.cos(pos*Math.PI)/2)+0.5)},linear:function(x){return x},easeIn:Animator.makeEaseIn(1.5),easeOut:Animator.makeEaseOut(1.5),strongEaseIn:Animator.makeEaseIn(2.5),strongEaseOut:Animator.makeEaseOut(2.5),elastic:Animator.makeElastic(1),veryElastic:Animator.makeElastic(3),bouncy:Animator.makeBounce(1),veryBouncy:Animator.makeBounce(3)};function NumericalStyleSubject(els,property,from,to,units){this.els=Animator.makeArray(els);if(property=="opacity"&&window.ActiveXObject){this.property="filter"}else{this.property=Animator.camelize(property)}this.from=parseFloat(from);this.to=parseFloat(to);this.units=units!=null?units:"px"}NumericalStyleSubject.prototype={setState:function(state){var style=this.getStyle(state);var visibility=(this.property=="opacity"&&state==0)?"hidden":"";var j=0;for(var i=0;i<this.els.length;i++){try{this.els[i].style[this.property]=style}catch(e){if(this.property!="fontWeight"){throw e}}if(j++>20){return}}},getStyle:function(state){state=this.from+((this.to-this.from)*state);if(this.property=="filter"){return"alpha(opacity="+Math.round(state*100)+")"}if(this.property=="opacity"){return state}return Math.round(state)+this.units},inspect:function(){return"\t"+this.property+"("+this.from+this.units+" to "+this.to+this.units+")\n"}};function ColorStyleSubject(els,property,from,to){this.els=Animator.makeArray(els);this.property=Animator.camelize(property);this.to=this.expandColor(to);this.from=this.expandColor(from);this.origFrom=from;this.origTo=to}ColorStyleSubject.prototype={expandColor:function(color){var hexColor,red,green,blue;hexColor=ColorStyleSubject.parseColor(color);if(hexColor){red=parseInt(hexColor.slice(1,3),16);green=parseInt(hexColor.slice(3,5),16);blue=parseInt(hexColor.slice(5,7),16);return[red,green,blue]}if(window.DEBUG){alert("Invalid colour: '"+color+"'")}},getValueForState:function(color,state){return Math.round(this.from[color]+((this.to[color]-this.from[color])*state))},setState:function(state){var color="#"+ColorStyleSubject.toColorPart(this.getValueForState(0,state))+ColorStyleSubject.toColorPart(this.getValueForState(1,state))+ColorStyleSubject.toColorPart(this.getValueForState(2,state));for(var i=0;i<this.els.length;i++){this.els[i].style[this.property]=color}},inspect:function(){return"\t"+this.property+"("+this.origFrom+" to "+this.origTo+")\n"}};ColorStyleSubject.parseColor=function(string){var color="#",match;if(match=ColorStyleSubject.parseColor.rgbRe.exec(string)){var part;for(var i=1;i<=3;i++){part=Math.max(0,Math.min(255,parseInt(match[i])));color+=ColorStyleSubject.toColorPart(part)}return color}if(match=ColorStyleSubject.parseColor.hexRe.exec(string)){if(match[1].length==3){for(var i=0;i<3;i++){color+=match[1].charAt(i)+match[1].charAt(i)}return color}return"#"+match[1]}return false};ColorStyleSubject.toColorPart=function(number){if(number>255){number=255}var digits=number.toString(16);if(number<16){return"0"+digits}return digits};ColorStyleSubject.parseColor.rgbRe=/^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i;ColorStyleSubject.parseColor.hexRe=/^\#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/;function DiscreteStyleSubject(els,property,from,to,threshold){this.els=Animator.makeArray(els);this.property=Animator.camelize(property);this.from=from;this.to=to;this.threshold=threshold||0.5}DiscreteStyleSubject.prototype={setState:function(state){var j=0;for(var i=0;i<this.els.length;i++){this.els[i].style[this.property]=state<=this.threshold?this.from:this.to}},inspect:function(){return"\t"+this.property+"("+this.from+" to "+this.to+" @ "+this.threshold+")\n"}};function CSSStyleSubject(els,style1,style2){els=Animator.makeArray(els);this.subjects=[];if(els.length==0){return}var prop,toStyle,fromStyle;if(style2){fromStyle=this.parseStyle(style1,els[0]);toStyle=this.parseStyle(style2,els[0])}else{toStyle=this.parseStyle(style1,els[0]);fromStyle={};for(prop in toStyle){fromStyle[prop]=CSSStyleSubject.getStyle(els[0],prop)}}var prop;for(prop in fromStyle){if(fromStyle[prop]==toStyle[prop]){delete fromStyle[prop];delete toStyle[prop]}}var prop,units,match,type,from,to;for(prop in fromStyle){var fromProp=String(fromStyle[prop]);var toProp=String(toStyle[prop]);if(toStyle[prop]==null){if(window.DEBUG){alert("No to style provided for '"+prop+'"')}continue}if(from=ColorStyleSubject.parseColor(fromProp)){to=ColorStyleSubject.parseColor(toProp);type=ColorStyleSubject}else{if(fromProp.match(CSSStyleSubject.numericalRe)&&toProp.match(CSSStyleSubject.numericalRe)){from=parseFloat(fromProp);to=parseFloat(toProp);type=NumericalStyleSubject;match=CSSStyleSubject.numericalRe.exec(fromProp);var reResult=CSSStyleSubject.numericalRe.exec(toProp);if(match[1]!=null){units=match[1]}else{if(reResult[1]!=null){units=reResult[1]}else{units=reResult}}}else{if(fromProp.match(CSSStyleSubject.discreteRe)&&toProp.match(CSSStyleSubject.discreteRe)){from=fromProp;to=toProp;type=DiscreteStyleSubject;units=0}else{if(window.DEBUG){alert("Unrecognised format for value of "+prop+": '"+fromStyle[prop]+"'")}continue}}}this.subjects[this.subjects.length]=new type(els,prop,from,to,units)}}CSSStyleSubject.prototype={parseStyle:function(style,el){var rtn={};if(style.indexOf(":")!=-1){var styles=style.split(";");for(var i=0;i<styles.length;i++){var parts=CSSStyleSubject.ruleRe.exec(styles[i]);if(parts){rtn[parts[1]]=parts[2]}}}else{var prop,value,oldClass;oldClass=el.className;el.className=style;for(var i=0;i<CSSStyleSubject.cssProperties.length;i++){prop=CSSStyleSubject.cssProperties[i];value=CSSStyleSubject.getStyle(el,prop);if(value!=null){rtn[prop]=value}}el.className=oldClass}return rtn},setState:function(state){for(var i=0;i<this.subjects.length;i++){this.subjects[i].setState(state)}},inspect:function(){var str="";for(var i=0;i<this.subjects.length;i++){str+=this.subjects[i].inspect()}return str}};CSSStyleSubject.getStyle=function(el,property){var style;if(document.defaultView&&document.defaultView.getComputedStyle){style=document.defaultView.getComputedStyle(el,"").getPropertyValue(property);if(style){return style}}property=Animator.camelize(property);if(el.currentStyle){style=el.currentStyle[property]}return style||el.style[property]};CSSStyleSubject.ruleRe=/^\s*([a-zA-Z\-]+)\s*:\s*(\S(.+\S)?)\s*$/;CSSStyleSubject.numericalRe=/^-?\d+(?:\.\d+)?(%|[a-zA-Z]{2})?$/;CSSStyleSubject.discreteRe=/^\w+$/;CSSStyleSubject.cssProperties=["azimuth","background","background-attachment","background-color","background-image","background-position","background-repeat","border-collapse","border-color","border-spacing","border-style","border-top","border-top-color","border-right-color","border-bottom-color","border-left-color","border-top-style","border-right-style","border-bottom-style","border-left-style","border-top-width","border-right-width","border-bottom-width","border-left-width","border-width","bottom","clear","clip","color","content","cursor","direction","display","elevation","empty-cells","css-float","font","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","height","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-top","margin-right","margin-bottom","margin-left","max-height","max-width","min-height","min-width","orphans","outline","outline-color","outline-style","outline-width","overflow","padding","padding-top","padding-right","padding-bottom","padding-left","pause","position","right","size","table-layout","text-align","text-decoration","text-indent","text-shadow","text-transform","top","vertical-align","visibility","white-space","width","word-spacing","z-index","opacity","outline-offset","overflow-x","overflow-y"];function AnimatorChain(animators,options){this.animators=animators;this.setOptions(options);for(var i=0;i<this.animators.length;i++){this.listenTo(this.animators[i])}this.forwards=false;this.current=0}AnimatorChain.prototype={setOptions:function(options){this.options=Animator.applyDefaults({resetOnPlay:true},options)},play:function(){this.forwards=true;this.current=-1;if(this.options.resetOnPlay){for(var i=0;i<this.animators.length;i++){this.animators[i].jumpTo(0)}}this.advance()},reverse:function(){this.forwards=false;this.current=this.animators.length;if(this.options.resetOnPlay){for(var i=0;i<this.animators.length;i++){this.animators[i].jumpTo(1)}}this.advance()},toggle:function(){if(this.forwards){this.seekTo(0)}else{this.seekTo(1)}},listenTo:function(animator){var oldOnComplete=animator.options.onComplete;var _this=this;animator.options.onComplete=function(){if(oldOnComplete){oldOnComplete.call(animator)}_this.advance()}},advance:function(){if(this.forwards){if(this.animators[this.current+1]==null){return}this.current++;this.animators[this.current].play()}else{if(this.animators[this.current-1]==null){return}this.current--;this.animators[this.current].reverse()}},seekTo:function(target){if(target<=0){this.forwards=false;this.animators[this.current].seekTo(0)}else{this.forwards=true;this.animators[this.current].seekTo(1)}}};function Accordion(options){this.setOptions(options);var selected=this.options.initialSection,current;if(this.options.rememberance){current=document.location.hash.substring(1)}this.rememberanceTexts=[];this.ans=[];var _this=this;for(var i=0;i<this.options.sections.length;i++){var el=this.options.sections[i];var an=new Animator(this.options.animatorOptions);var from=this.options.from+(this.options.shift*i);var to=this.options.to+(this.options.shift*i);an.addSubject(new NumericalStyleSubject(el,this.options.property,from,to,this.options.units));an.jumpTo(0);var activator=this.options.getActivator(el);activator.index=i;activator.onclick=function(){_this.show(this.index)};this.ans[this.ans.length]=an;this.rememberanceTexts[i]=activator.innerHTML.replace(/\s/g,"");if(this.rememberanceTexts[i]===current){selected=i}}this.show(selected)}Accordion.prototype={setOptions:function(options){this.options=Object.extend({sections:null,getActivator:function(el){return document.getElementById(el.getAttribute("activator"))},shift:0,initialSection:0,rememberance:true,animatorOptions:{}},options||{})},show:function(section){for(var i=0;i<this.ans.length;i++){this.ans[i].seekTo(i>section?1:0)}if(this.options.rememberance){document.location.hash=this.rememberanceTexts[section]}}};
(function($){function qa(Ga,Ha){function o(c){return function(a){return !this._t||!this._t._a?null:c.call(this,a)}}function ra(){if(b.debugURLParam.test(R)){b.debugMode=true}}this.flashVersion=8;this.debugFlash=this.debugMode=false;this.useConsole=true;this.waitForWindowLoad=this.consoleOnly=false;this.nullURL="about:blank";this.allowPolling=true;this.useFastPolling=false;this.useMovieStar=true;this.bgColor="#ffffff";this.useHighPerformance=false;this.flashPollingInterval=null;this.flashLoadTimeout=1000;this.wmode=null;this.allowScriptAccess="always";this.useHTML5Audio=this.useFlashBlock=false;this.html5Test=/^probably$/i;this.useGlobalHTML5Audio=true;this.requireFlash=false;this.audioFormats={mp3:{type:['audio/mpeg; codecs="mp3"',"audio/mpeg","audio/mp3","audio/MPA","audio/mpa-robust"],required:true},mp4:{related:["aac","m4a"],type:['audio/mp4; codecs="mp4a.40.2"',"audio/aac","audio/x-m4a","audio/MP4A-LATM","audio/mpeg4-generic"],required:true},ogg:{type:["audio/ogg; codecs=vorbis"],required:false},wav:{type:['audio/wav; codecs="1"',"audio/wav","audio/wave","audio/x-wav"],required:false}};this.defaultOptions={autoLoad:false,stream:true,autoPlay:false,loops:1,onid3:null,onload:null,whileloading:null,onplay:null,onpause:null,onresume:null,whileplaying:null,onstop:null,onfailure:null,onfinish:null,onbeforefinish:null,onbeforefinishtime:5000,onbeforefinishcomplete:null,onjustbeforefinish:null,onjustbeforefinishtime:200,multiShot:true,multiShotEvents:false,position:null,pan:0,type:null,usePolicyFile:false,volume:100};this.flash9Options={isMovieStar:null,usePeakData:false,useWaveformData:false,useEQData:false,onbufferchange:null,ondataerror:null};this.movieStarOptions={bufferTime:3,serverURL:null,onconnect:null,duration:null};this.version=null;this.versionNumber="V2.97a.20110306";this.movieURL=null;this.url=Ga||null;this.altURL=null;this.enabled=this.swfLoaded=false;this.o=null;this.movieID="sm2-container";this.id=Ha||"sm2movie";this.swfCSS={swfBox:"sm2-object-box",swfDefault:"movieContainer",swfError:"swf_error",swfTimedout:"swf_timedout",swfLoaded:"swf_loaded",swfUnblocked:"swf_unblocked",sm2Debug:"sm2_debug",highPerf:"high_performance",flashDebug:"flash_debug"};this.oMC=null;this.sounds={};this.soundIDs=[];this.muted=false;this.debugID="soundmanager-debug";this.debugURLParam=/([#?&])debug=1/i;this.didFlashBlock=this.specialWmodeCase=false;this.filePattern=null;this.filePatterns={flash8:/\.mp3(\?.*)?$/i,flash9:/\.mp3(\?.*)?$/i};this.baseMimeTypes=/^\s*audio\/(?:x-)?(?:mp(?:eg|3))\s*(?:$|;)/i;this.netStreamMimeTypes=/^\s*audio\/(?:x-)?(?:mp(?:eg|3))\s*(?:$|;)/i;this.netStreamTypes=["aac","flv","mov","mp4","m4v","f4v","m4a","mp4v","3gp","3g2"];this.netStreamPattern=RegExp("\\.("+this.netStreamTypes.join("|")+")(\\?.*)?$","i");this.mimePattern=this.baseMimeTypes;this.features={buffering:false,peakData:false,waveformData:false,eqData:false,movieStar:false};this.sandbox={};this.hasHTML5=null;this.html5={usingFlash:null};this.ignoreFlash=false;var aa,b=this,D,t=navigator.userAgent,k=$,R=k.location.href.toString(),l=this.flashVersion,j=document,ba,S,w=[],J=false,K=false,r=false,y=false,sa=false,L,s,ca,z,E,da,T,ta,ea,A,ua,M,F,fa,ga,U,ha,va,wa,V,xa,N=null,ia=null,B,ja,G,W,X,ka,p,Y=false,la=false,ya,za,C=null,Aa,Z,u=false,O,x,ma,Ba,q,Ia=Array.prototype.slice,P=false,na,H,Ca,Da=t.match(/pre\//i),Ja=t.match(/(ipad|iphone|ipod)/i);t.match(/mobile/i);var v=t.match(/msie/i),Ka=t.match(/webkit/i),Q=t.match(/safari/i)&&!t.match(/chrome/i),oa=!R.match(/usehtml5audio/i)&&!R.match(/sm2\-ignorebadua/i)&&Q&&t.match(/OS X 10_6_(3|4|5|6)/i),pa=typeof j.hasFocus!=="undefined"?j.hasFocus():null,I=typeof j.hasFocus==="undefined"&&Q,Ea=!I;this._use_maybe=R.match(/sm2\-useHTML5Maybe\=1/i);this._overHTTP=j.location?j.location.protocol.match(/http/i):null;this.useAltURL=!this._overHTTP;this._global_a=null;if(Ja||Da){b.useHTML5Audio=true;b.ignoreFlash=true;if(b.useGlobalHTML5Audio){P=true}}if(Da||this._use_maybe){b.html5Test=/^(probably|maybe)$/i}this.supported=this.ok=function(){return C?r&&!y:b.useHTML5Audio&&b.hasHTML5};this.getMovie=function(c){return v?k[c]:Q?D(c)||j[c]:D(c)};this.createSound=function(c){function a(){g=W(g);b.sounds[e.id]=new aa(e);b.soundIDs.push(e.id);return b.sounds[e.id]}var g=null,h=null,e=null;if(!r||!b.ok()){ka("soundManager.createSound(): "+B(!r?"notReady":"notOK"));return false}if(arguments.length===2){c={id:arguments[0],url:arguments[1]}}e=g=s(c);if(p(e.id,true)){return b.sounds[e.id]}if(Z(e)){h=a();h._setup_html5(e)}else{if(l>8&&b.useMovieStar){if(e.isMovieStar===null){e.isMovieStar=e.serverURL||(e.type?e.type.match(b.netStreamPattern):false)||e.url.match(b.netStreamPattern)?true:false}if(e.isMovieStar){if(e.usePeakData){e.usePeakData=false}}}e=X(e,"soundManager.createSound(): ");h=a();if(l===8){b.o._createSound(e.id,e.onjustbeforefinishtime,e.loops||1,e.usePolicyFile)}else{b.o._createSound(e.id,e.url,e.onjustbeforefinishtime,e.usePeakData,e.useWaveformData,e.useEQData,e.isMovieStar,e.isMovieStar?e.bufferTime:false,e.loops||1,e.serverURL,e.duration||null,e.autoPlay,true,e.autoLoad,e.usePolicyFile);if(!e.serverURL){h.connected=true;e.onconnect&&e.onconnect.apply(h)}}if((e.autoLoad||e.autoPlay)&&!e.serverURL){h.load(e)}}e.autoPlay&&!e.serverURL&&h.play();return h};this.destroySound=function(c,a){if(!p(c)){return false}var g=b.sounds[c],h;g._iO={};g.stop();g.unload();for(h=0;h<b.soundIDs.length;h++){if(b.soundIDs[h]===c){b.soundIDs.splice(h,1);break}}a||g.destruct(true);delete b.sounds[c];return true};this.load=function(c,a){if(!p(c)){return false}return b.sounds[c].load(a)};this.unload=function(c){if(!p(c)){return false}return b.sounds[c].unload()};this.start=this.play=function(c,a){if(!r||!b.ok()){ka("soundManager.play(): "+B(!r?"notReady":"notOK"));return false}if(!p(c)){a instanceof Object||(a={url:a});if(a&&a.url){a.id=c;return b.createSound(a).play()}else{return false}}return b.sounds[c].play(a)};this.setPosition=function(c,a){if(!p(c)){return false}return b.sounds[c].setPosition(a)};this.stop=function(c){if(!p(c)){return false}return b.sounds[c].stop()};this.stopAll=function(){for(var c in b.sounds){b.sounds[c] instanceof aa&&b.sounds[c].stop()}};this.pause=function(c){if(!p(c)){return false}return b.sounds[c].pause()};this.pauseAll=function(){for(var c=b.soundIDs.length;c--;){b.sounds[b.soundIDs[c]].pause()}};this.resume=function(c){if(!p(c)){return false}return b.sounds[c].resume()};this.resumeAll=function(){for(var c=b.soundIDs.length;c--;){b.sounds[b.soundIDs[c]].resume()}};this.togglePause=function(c){if(!p(c)){return false}return b.sounds[c].togglePause()};this.setPan=function(c,a){if(!p(c)){return false}return b.sounds[c].setPan(a)};this.setVolume=function(c,a){if(!p(c)){return false}return b.sounds[c].setVolume(a)};this.mute=function(c){var a=0;if(typeof c!=="string"){c=null}if(c){if(!p(c)){return false}return b.sounds[c].mute()}else{for(a=b.soundIDs.length;a--;){b.sounds[b.soundIDs[a]].mute()}b.muted=true}return true};this.muteAll=function(){b.mute()};this.unmute=function(c){if(typeof c!=="string"){c=null}if(c){if(!p(c)){return false}return b.sounds[c].unmute()}else{for(c=b.soundIDs.length;c--;){b.sounds[b.soundIDs[c]].unmute()}b.muted=false}return true};this.unmuteAll=function(){b.unmute()};this.toggleMute=function(c){if(!p(c)){return false}return b.sounds[c].toggleMute()};this.getMemoryUse=function(){if(l===8){return 0}if(b.o){return parseInt(b.o._getMemoryUse(),10)}};this.disable=function(c){if(typeof c==="undefined"){c=false}if(y){return false}y=true;for(var a=b.soundIDs.length;a--;){wa(b.sounds[b.soundIDs[a]])}L(c);q.remove(k,"load",E);return true};this.canPlayMIME=function(c){var a;if(b.hasHTML5){a=O({type:c})}return !C||a?a:c?c.match(b.mimePattern)?true:false:null};this.canPlayURL=function(c){var a;if(b.hasHTML5){a=O(c)}return !C||a?a:c?c.match(b.filePattern)?true:false:null};this.canPlayLink=function(c){if(typeof c.type!=="undefined"&&c.type){if(b.canPlayMIME(c.type)){return true}}return b.canPlayURL(c.href)};this.getSoundById=function(c){if(!c){throw Error("soundManager.getSoundById(): sID is null/undefined")}return b.sounds[c]};this.onready=function(c,a){if(c&&c instanceof Function){a||(a=k);ca("onready",c,a);z();return true}else{throw B("needFunction","onready")}};this.ontimeout=function(c,a){if(c&&c instanceof Function){a||(a=k);ca("ontimeout",c,a);z({type:"ontimeout"});return true}else{throw B("needFunction","ontimeout")}};this.getMoviePercent=function(){return b.o&&typeof b.o.PercentLoaded!=="undefined"?b.o.PercentLoaded():null};this._wD=this._writeDebug=function(){return true};this._debug=function(){};this.reboot=function(){var c,a;for(c=b.soundIDs.length;c--;){b.sounds[b.soundIDs[c]].destruct()}try{if(v){ia=b.o.innerHTML}N=b.o.parentNode.removeChild(b.o)}catch(g){}ia=N=null;b.enabled=r=Y=la=J=K=y=b.swfLoaded=false;b.soundIDs=b.sounds=[];b.o=null;for(c in w){if(w.hasOwnProperty(c)){for(a=w[c].length;a--;){w[c][a].fired=false}}}k.setTimeout(function(){b.beginDelayedInit()},20)};this.destruct=function(){b.disable(true)};this.beginDelayedInit=function(){sa=true;F();setTimeout(ua,20);T()};this._html5_events={abort:o(function(){}),canplay:o(function(){this._t._onbufferchange(0);var c=!isNaN(this._t.position)?this._t.position/1000:null;this._t._html5_canplay=true;if(this._t.position&&this.currentTime!==c){try{this.currentTime=c}catch(a){}}}),load:o(function(){if(!this._t.loaded){this._t._onbufferchange(0);this._t._whileloading(this._t.bytesTotal,this._t.bytesTotal,this._t._get_html5_duration());this._t._onload(true)}}),emptied:o(function(){}),ended:o(function(){this._t._onfinish()}),error:o(function(){this._t._onload(false)}),loadeddata:o(function(){}),loadedmetadata:o(function(){}),loadstart:o(function(){this._t._onbufferchange(1)}),play:o(function(){this._t._onbufferchange(0)}),playing:o(function(){this._t._onbufferchange(0)}),progress:o(function(c){if(this._t.loaded){return false}var a,g=0,h=c.type==="progress",e=c.target.buffered;a=c.loaded||0;var d=c.total||1;if(e&&e.length){for(a=e.length;a--;){g=e.end(a)-e.start(a)}a=g/c.target.duration;h&&isNaN(a)}if(!isNaN(a)){this._t._onbufferchange(0);this._t._whileloading(a,d,this._t._get_html5_duration());a&&d&&a===d&&b._html5_events.load.call(this,c)}}),ratechange:o(function(){}),suspend:o(function(c){b._html5_events.progress.call(this,c)}),stalled:o(function(){}),timeupdate:o(function(){this._t._onTimer()}),waiting:o(function(){this._t._onbufferchange(1)})};aa=function(c){var a=this,g,h,e;this.sID=c.id;this.url=c.url;this._iO=this.instanceOptions=this.options=s(c);this.pan=this.options.pan;this.volume=this.options.volume;this._lastURL=null;this.isHTML5=false;this._a=null;this.id3={};this._debug=function(){};this._debug();this.load=function(d){var f=null;if(typeof d!=="undefined"){a._iO=s(d);a.instanceOptions=a._iO}else{d=a.options;a._iO=d;a.instanceOptions=a._iO;if(a._lastURL&&a._lastURL!==a.url){a._iO.url=a.url;a.url=null}}if(!a._iO.url){a._iO.url=a.url}if(a._iO.url===a.url&&a.readyState!==0&&a.readyState!==2){return a}a._lastURL=a.url;a.loaded=false;a.readyState=1;a.playState=0;if(Z(a._iO)){f=a._setup_html5(a._iO);if(!f._called_load){f.load();f._called_load=true;a._iO.autoPlay&&a.play()}}else{try{a.isHTML5=false;a._iO=X(W(a._iO));l===8?b.o._load(a.sID,a._iO.url,a._iO.stream,a._iO.autoPlay,a._iO.whileloading?1:0,a._iO.loops||1,a._iO.usePolicyFile):b.o._load(a.sID,a._iO.url,a._iO.stream?true:false,a._iO.autoPlay?true:false,a._iO.loops||1,a._iO.autoLoad?true:false,a._iO.usePolicyFile)}catch(i){ha()}}return a};this.unload=function(){if(a.readyState!==0){if(a.isHTML5){h();if(a._a){a._a.pause();a._a.src=""}}else{l===8?b.o._unload(a.sID,b.nullURL):b.o._unload(a.sID)}g()}return a};this.destruct=function(d){if(a.isHTML5){h();if(a._a){a._a.pause();a._a.src="";P||a._remove_html5_events()}}else{a._iO.onfailure=null;b.o._destroySound(a.sID)}d||b.destroySound(a.sID,true)};this.start=this.play=function(d,f){var i;f=f===undefined?true:f;d||(d={});a._iO=s(d,a._iO);a._iO=s(a._iO,a.options);a.instanceOptions=a._iO;if(a._iO.serverURL){if(!a.connected){a.getAutoPlay()||a.setAutoPlay(true);return a}}if(Z(a._iO)){a._setup_html5(a._iO);e()}if(a.playState===1&&!a.paused){if(i=a._iO.multiShot){a.isHTML5&&a.setPosition(a._iO.position)}else{return a}}if(!a.loaded){if(a.readyState===0){if(!a.isHTML5){a._iO.autoPlay=true}a.load(a._iO)}else{if(a.readyState===2){return a}}}if(a.paused&&a.position&&a.position>0){a.resume()}else{a.playState=1;a.paused=false;if(!a.instanceCount||a._iO.multiShotEvents||l>8&&!a.isHTML5&&!a.getAutoPlay()){a.instanceCount++}a.position=typeof a._iO.position!=="undefined"&&!isNaN(a._iO.position)?a._iO.position:0;if(!a.isHTML5){a._iO=X(W(a._iO))}if(a._iO.onplay&&f){a._iO.onplay.apply(a);a._onplay_called=true}a.setVolume(a._iO.volume,true);a.setPan(a._iO.pan,true);if(a.isHTML5){e();a._setup_html5().play()}else{b.o._start(a.sID,a._iO.loops||1,l===9?a.position:a.position/1000)}}return a};this.stop=function(d){if(a.playState===1){a._onbufferchange(0);a.resetOnPosition(0);if(!a.isHTML5){a.playState=0}a.paused=false;a._iO.onstop&&a._iO.onstop.apply(a);if(a.isHTML5){if(a._a){a.setPosition(0);a._a.pause();a.playState=0;a._onTimer();h();a.unload()}}else{b.o._stop(a.sID,d);a._iO.serverURL&&a.unload()}a.instanceCount=0;a._iO={}}return a};this.setAutoPlay=function(d){a._iO.autoPlay=d;if(a.isHTML5){a._a&&d&&a.play()}else{b.o._setAutoPlay(a.sID,d)}d&&!a.instanceCount&&a.readyState===1&&a.instanceCount++};this.getAutoPlay=function(){return a._iO.autoPlay};this.setPosition=function(d){if(d===undefined){d=0}var f=a.isHTML5?Math.max(d,0):Math.min(a.duration||a._iO.duration,Math.max(d,0));a.position=f;d=a.position/1000;a.resetOnPosition(a.position);a._iO.position=f;if(a.isHTML5){if(a._a){if(a._html5_canplay){if(a._a.currentTime!==d){try{a._a.currentTime=d}catch(i){}}}}}else{d=l===9?a.position:d;if(a.readyState&&a.readyState!==2){b.o._setPosition(a.sID,d,a.paused||!a.playState)}}a.isHTML5&&a.paused&&a._onTimer(true);return a};this.pause=function(d){if(a.paused||a.playState===0&&a.readyState!==1){return a}a.paused=true;if(a.isHTML5){a._setup_html5().pause();h()}else{if(d||d===undefined){b.o._pause(a.sID)}}a._iO.onpause&&a._iO.onpause.apply(a);return a};this.resume=function(){if(!a.paused){return a}a.paused=false;a.playState=1;if(a.isHTML5){a._setup_html5().play();e()}else{a._iO.isMovieStar&&a.setPosition(a.position);b.o._pause(a.sID)}if(!a._onplay_called&&a._iO.onplay){a._iO.onplay.apply(a);a._onplay_called=true}else{a._iO.onresume&&a._iO.onresume.apply(a)}return a};this.togglePause=function(){if(a.playState===0){a.play({position:l===9&&!a.isHTML5?a.position:a.position/1000});return a}a.paused?a.resume():a.pause();return a};this.setPan=function(d,f){if(typeof d==="undefined"){d=0}if(typeof f==="undefined"){f=false}a.isHTML5||b.o._setPan(a.sID,d);a._iO.pan=d;if(!f){a.pan=d}return a};this.setVolume=function(d,f){if(typeof d==="undefined"){d=100}if(typeof f==="undefined"){f=false}if(a.isHTML5){if(a._a){a._a.volume=d/100}}else{b.o._setVolume(a.sID,b.muted&&!a.muted||a.muted?0:d)}a._iO.volume=d;if(!f){a.volume=d}return a};this.mute=function(){a.muted=true;if(a.isHTML5){if(a._a){a._a.muted=true}}else{b.o._setVolume(a.sID,0)}return a};this.unmute=function(){a.muted=false;var d=typeof a._iO.volume!=="undefined";if(a.isHTML5){if(a._a){a._a.muted=false}}else{b.o._setVolume(a.sID,d?a._iO.volume:a.options.volume)}return a};this.toggleMute=function(){return a.muted?a.unmute():a.mute()};this.onposition=function(d,f,i){a._onPositionItems.push({position:d,method:f,scope:typeof i!=="undefined"?i:a,fired:false});return a};this.processOnPosition=function(){var d,f;d=a._onPositionItems.length;if(!d||!a.playState||a._onPositionFired>=d){return false}for(d=d;d--;){f=a._onPositionItems[d];if(!f.fired&&a.position>=f.position){f.method.apply(f.scope,[f.position]);f.fired=true;b._onPositionFired++}}return true};this.resetOnPosition=function(d){var f,i;f=a._onPositionItems.length;if(!f){return false}for(f=f;f--;){i=a._onPositionItems[f];if(i.fired&&d<=i.position){i.fired=false;b._onPositionFired--}}return true};this._onTimer=function(d){var f={};if(a._hasTimer||d){if(a._a&&(d||(a.playState>0||a.readyState===1)&&!a.paused)){a.duration=a._get_html5_duration();a.durationEstimate=a.duration;d=a._a.currentTime?a._a.currentTime*1000:0;a._whileplaying(d,f,f,f,f);return true}else{return false}}};this._get_html5_duration=function(){var d=a._a?a._a.duration*1000:a._iO?a._iO.duration:undefined;return d&&!isNaN(d)&&d!==Infinity?d:a._iO?a._iO.duration:null};e=function(){a.isHTML5&&ya(a)};h=function(){a.isHTML5&&za(a)};g=function(){a._onPositionItems=[];a._onPositionFired=0;a._hasTimer=null;a._onplay_called=false;a._a=null;a._html5_canplay=false;a.bytesLoaded=null;a.bytesTotal=null;a.position=null;a.duration=a._iO&&a._iO.duration?a._iO.duration:null;a.durationEstimate=null;a.failures=0;a.loaded=false;a.playState=0;a.paused=false;a.readyState=0;a.muted=false;a.didBeforeFinish=false;a.didJustBeforeFinish=false;a.isBuffering=false;a.instanceOptions={};a.instanceCount=0;a.peakData={left:0,right:0};a.waveformData={left:[],right:[]};a.eqData=[];a.eqData.left=[];a.eqData.right=[]};g();this._setup_html5=function(d){d=s(a._iO,d);var f=P?b._global_a:a._a;decodeURI(d.url);var i=f&&f._t?f._t.instanceOptions:null;if(f){if(f._t&&i.url===d.url){return f}P&&f._t.playState&&f._t&&d.url!==i.url&&f._t.stop();g();f.src=d.url}else{f=new Audio(d.url);if(P){b._global_a=f}}f._called_load=false;a.isHTML5=true;a._a=f;f._t=a;a._add_html5_events();f.loop=d.loops>1?"loop":"";if(d.autoLoad||d.autoPlay){f.autobuffer="auto";f.preload="auto";a.load()}else{f.autobuffer=false;f.preload="none"}f.loop=d.loops>1?"loop":"";return f};this._add_html5_events=function(){if(a._a._added_events){return false}var d;a._a._added_events=true;for(d in b._html5_events){b._html5_events.hasOwnProperty(d)&&a._a&&a._a.addEventListener(d,b._html5_events[d],false)}return true};this._remove_html5_events=function(){a._a._added_events=false;for(var d in b._html5_events){b._html5_events.hasOwnProperty(d)&&a._a&&a._a.removeEventListener(d,b._html5_events[d],false)}};this._whileloading=function(d,f,i,m){a.bytesLoaded=d;a.bytesTotal=f;a.duration=Math.floor(i);a.bufferLength=m;if(a._iO.isMovieStar){a.durationEstimate=a.duration}else{a.durationEstimate=a._iO.duration?a.duration>a._iO.duration?a.duration:a._iO.duration:parseInt(a.bytesTotal/a.bytesLoaded*a.duration,10);if(a.durationEstimate===undefined){a.durationEstimate=a.duration}}a.readyState!==3&&a._iO.whileloading&&a._iO.whileloading.apply(a)};this._onid3=function(d,f){var i=[],m,n;m=0;for(n=d.length;m<n;m++){i[d[m]]=f[m]}a.id3=s(a.id3,i);a._iO.onid3&&a._iO.onid3.apply(a)};this._whileplaying=function(d,f,i,m,n){if(isNaN(d)||d===null){return false}if(a.playState===0&&d>0){d=0}a.position=d;a.processOnPosition();if(l>8&&!a.isHTML5){if(a._iO.usePeakData&&typeof f!=="undefined"&&f){a.peakData={left:f.leftPeak,right:f.rightPeak}}if(a._iO.useWaveformData&&typeof i!=="undefined"&&i){a.waveformData={left:i.split(","),right:m.split(",")}}if(a._iO.useEQData){if(typeof n!=="undefined"&&n&&n.leftEQ){d=n.leftEQ.split(",");a.eqData=d;a.eqData.left=d;if(typeof n.rightEQ!=="undefined"&&n.rightEQ){a.eqData.right=n.rightEQ.split(",")}}}}if(a.playState===1){!a.isHTML5&&b.flashVersion===8&&!a.position&&a.isBuffering&&a._onbufferchange(0);a._iO.whileplaying&&a._iO.whileplaying.apply(a);if((a.loaded||!a.loaded&&a._iO.isMovieStar)&&a._iO.onbeforefinish&&a._iO.onbeforefinishtime&&!a.didBeforeFinish&&a.duration-a.position<=a._iO.onbeforefinishtime){a._onbeforefinish()}}return true};this._onconnect=function(d){d=d===1;if(a.connected=d){a.failures=0;if(p(a.sID)){if(a.getAutoPlay()){a.play(undefined,a.getAutoPlay())}else{a._iO.autoLoad&&a.load()}}a._iO.onconnect&&a._iO.onconnect.apply(a,[d])}};this._onload=function(d){d=d?true:false;a.loaded=d;a.readyState=d?3:2;a._onbufferchange(0);a._iO.onload&&a._iO.onload.apply(a,[d]);return true};this._onfailure=function(d,f,i){a.failures++;a._iO.onfailure&&a.failures===1&&a._iO.onfailure(a,d,f,i)};this._onbeforefinish=function(){if(!a.didBeforeFinish){a.didBeforeFinish=true;a._iO.onbeforefinish&&a._iO.onbeforefinish.apply(a)}};this._onjustbeforefinish=function(){if(!a.didJustBeforeFinish){a.didJustBeforeFinish=true;a._iO.onjustbeforefinish&&a._iO.onjustbeforefinish.apply(a)}};this._onfinish=function(){var d=a._iO.onfinish;a._onbufferchange(0);a.resetOnPosition(0);a._iO.onbeforefinishcomplete&&a._iO.onbeforefinishcomplete.apply(a);a.didBeforeFinish=false;a.didJustBeforeFinish=false;if(a.instanceCount){a.instanceCount--;if(!a.instanceCount){a.playState=0;a.paused=false;a.instanceCount=0;a.instanceOptions={};a._iO={};h()}if(!a.instanceCount||a._iO.multiShotEvents){d&&d.apply(a)}}};this._onbufferchange=function(d){if(a.playState===0){return false}if(d&&a.isBuffering||!d&&!a.isBuffering){return false}a.isBuffering=d===1;a._iO.onbufferchange&&a._iO.onbufferchange.apply(a);return true};this._ondataerror=function(){a.playState>0&&a._iO.ondataerror&&a._iO.ondataerror.apply(a)}};ga=function(){return j.body?j.body:j._docElement?j.documentElement:j.getElementsByTagName("div")[0]};D=function(c){return j.getElementById(c)};s=function(c,a){var g={},h,e;for(h in c){if(c.hasOwnProperty(h)){g[h]=c[h]}}h=typeof a==="undefined"?b.defaultOptions:a;for(e in h){if(h.hasOwnProperty(e)&&typeof g[e]==="undefined"){g[e]=h[e]}}return g};q=function(){function c(e){e=Ia.call(e);var d=e.length;if(g){e[1]="on"+e[1];d>3&&e.pop()}else{d===3&&e.push(false)}return e}function a(e,d){var f=e.shift(),i=[h[d]];g?f[i](e[0],e[1]):f[i].apply(f,e)}var g=k.attachEvent,h={add:g?"attachEvent":"addEventListener",remove:g?"detachEvent":"removeEventListener"};return{add:function(){a(c(arguments),"add")},remove:function(){a(c(arguments),"remove")}}}();Z=function(c){return !c.serverURL&&(c.type?O({type:c.type}):O(c.url)||u)};O=function(c){if(!b.useHTML5Audio||!b.hasHTML5){return false}var a,g=b.audioFormats;if(!x){x=[];for(a in g){if(g.hasOwnProperty(a)){x.push(a);if(g[a].related){x=x.concat(g[a].related)}}}x=RegExp("\\.("+x.join("|")+")","i")}a=typeof c.type!=="undefined"?c.type:null;c=typeof c==="string"?c.toLowerCase().match(x):null;if(!c||!c.length){if(a){c=a.indexOf(";");c=(c!==-1?a.substr(0,c):a).substr(6)}else{return false}}else{c=c[0].substr(1)}if(c&&typeof b.html5[c]!=="undefined"){return b.html5[c]}else{if(!a){if(c&&b.html5[c]){return b.html5[c]}else{a="audio/"+c}}a=b.html5.canPlayType(a);return b.html5[c]=a}};Ba=function(){function c(f){var i,m,n=false;if(!a||typeof a.canPlayType!=="function"){return false}if(f instanceof Array){i=0;for(m=f.length;i<m&&!n;i++){if(b.html5[f[i]]||a.canPlayType(f[i]).match(b.html5Test)){n=true;b.html5[f[i]]=true}}return n}else{return(f=a&&typeof a.canPlayType==="function"?a.canPlayType(f):false)&&(f.match(b.html5Test)?true:false)}}if(!b.useHTML5Audio||typeof Audio==="undefined"){return false}var a=typeof Audio!=="undefined"?new Audio(null):null,g,h={},e,d;H();e=b.audioFormats;for(g in e){if(e.hasOwnProperty(g)){h[g]=c(e[g].type);if(e[g]&&e[g].related){for(d=e[g].related.length;d--;){b.html5[e[g].related[d]]=h[g]}}}}h.canPlayType=a?c:null;b.html5=s(b.html5,h);return true};B=function(){};W=function(c){if(l===8&&c.loops>1&&c.stream){c.stream=false}return c};X=function(c){if(c&&!c.usePolicyFile&&(c.onid3||c.usePeakData||c.useWaveformData||c.useEQData)){c.usePolicyFile=true}return c};ka=function(c){typeof console!=="undefined"&&typeof console.warn!=="undefined"&&console.warn(c)};ba=function(){return false};wa=function(c){for(var a in c){if(c.hasOwnProperty(a)&&typeof c[a]==="function"){c[a]=ba}}};V=function(c){if(typeof c==="undefined"){c=false}if(y||c){b.disable(c)}};xa=function(c){var a=null;if(c){if(c.match(/\.swf(\?.*)?$/i)){if(a=c.substr(c.toLowerCase().lastIndexOf(".swf?")+4)){return c}}else{if(c.lastIndexOf("/")!==c.length-1){c+="/"}}}return(c&&c.lastIndexOf("/")!==-1?c.substr(0,c.lastIndexOf("/")+1):"./")+b.movieURL};ea=function(){if(l!==8&&l!==9){b.flashVersion=8}var c=b.debugMode||b.debugFlash?"_debug.swf":".swf";if(b.useHTML5Audio&&!u&&b.audioFormats.mp4.required&&b.flashVersion<9){b.flashVersion=9}l=b.flashVersion;b.version=b.versionNumber+(u?" (HTML5-only mode)":l===9?" (AS3/Flash 9)":" (AS2/Flash 8)");if(l>8){b.defaultOptions=s(b.defaultOptions,b.flash9Options);b.features.buffering=true}if(l>8&&b.useMovieStar){b.defaultOptions=s(b.defaultOptions,b.movieStarOptions);b.filePatterns.flash9=RegExp("\\.(mp3|"+b.netStreamTypes.join("|")+")(\\?.*)?$","i");b.mimePattern=b.netStreamMimeTypes;b.features.movieStar=true}else{b.useMovieStar=false;b.features.movieStar=false}b.filePattern=b.filePatterns[l!==8?"flash9":"flash8"];b.movieURL=(l===8?"soundmanager2.swf":"soundmanager2_flash9.swf").replace(".swf",c);b.features.peakData=b.features.waveformData=b.features.eqData=l>8};va=function(c,a){if(!b.o||!b.allowPolling){return false}b.o._setPolling(c,a)};U=function(c,a){var g=a?a:b.url,h=b.altURL?b.altURL:g,e;e=ga();var d,f,i=G(),m,n=null;n=(n=j.getElementsByTagName("html")[0])&&n.dir&&n.dir.match(/rtl/i);c=typeof c==="undefined"?b.id:c;if(J&&K){return false}if(u){ea();b.oMC=D(b.movieID);S();K=J=true;return false}J=true;ea();b.url=xa(b._overHTTP?g:h);a=b.url;b.wmode=!b.wmode&&b.useHighPerformance&&!b.useMovieStar?"transparent":b.wmode;if(b.wmode!==null&&(t.match(/msie 8/i)||!v&&!b.useHighPerformance)&&navigator.platform.match(/win32|win64/i)){b.specialWmodeCase=true;b.wmode=null}e={name:c,id:c,src:a,width:"100%",height:"100%",quality:"high",allowScriptAccess:b.allowScriptAccess,bgcolor:b.bgColor,pluginspage:"http://www.macromedia.com/go/getflashplayer",type:"application/x-shockwave-flash",wmode:b.wmode,hasPriority:"true"};if(b.debugFlash){e.FlashVars="debug=1"}b.wmode||delete e.wmode;if(v){g=j.createElement("div");f='<object id="'+c+'" data="'+a+'" type="'+e.type+'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" width="'+e.width+'" height="'+e.height+'"><param name="movie" value="'+a+'" /><param name="AllowScriptAccess" value="'+b.allowScriptAccess+'" /><param name="quality" value="'+e.quality+'" />'+(b.wmode?'<param name="wmode" value="'+b.wmode+'" /> ':"")+'<param name="bgcolor" value="'+b.bgColor+'" />'+(b.debugFlash?'<param name="FlashVars" value="'+e.FlashVars+'" />':"")+"</object>"}else{g=j.createElement("embed");for(d in e){e.hasOwnProperty(d)&&g.setAttribute(d,e[d])}}ra();i=G();if(e=ga()){b.oMC=D(b.movieID)?D(b.movieID):j.createElement("div");if(b.oMC.id){m=b.oMC.className;b.oMC.className=(m?m+" ":b.swfCSS.swfDefault)+(i?" "+i:"");b.oMC.appendChild(g);if(v){d=b.oMC.appendChild(j.createElement("div"));d.className=b.swfCSS.swfBox;d.innerHTML=f}K=true}else{b.oMC.id=b.movieID;b.oMC.className=b.swfCSS.swfDefault+" "+i;d=i=null;if(!b.useFlashBlock){if(b.useHighPerformance){i={position:"fixed",width:"8px",height:"8px",bottom:"0px",left:"0px",overflow:"hidden"}}else{i={position:"absolute",width:"6px",height:"6px",top:"-9999px",left:"-9999px"};if(n){i.left=Math.abs(parseInt(i.left,10))+"px"}}}if(Ka){b.oMC.style.zIndex=10000}if(!b.debugFlash){for(m in i){if(i.hasOwnProperty(m)){b.oMC.style[m]=i[m]}}}try{v||b.oMC.appendChild(g);e.appendChild(b.oMC);if(v){d=b.oMC.appendChild(j.createElement("div"));d.className=b.swfCSS.swfBox;d.innerHTML=f}K=true}catch(La){throw Error(B("appXHTML"))}}}return true};p=this.getSoundById;M=function(){if(u){U();return false}if(b.o){return false}b.o=b.getMovie(b.id);if(!b.o){if(N){if(v){b.oMC.innerHTML=ia}else{b.oMC.appendChild(N)}N=null;J=true}else{U(b.id,b.url)}b.o=b.getMovie(b.id)}b.oninitmovie instanceof Function&&setTimeout(b.oninitmovie,1);return true};da=function(c){if(c){b.url=c}M()};T=function(){setTimeout(ta,500)};ta=function(){if(Y){return false}Y=true;q.remove(k,"load",T);if(I&&!pa){return false}var c;r||(c=b.getMoviePercent());setTimeout(function(){c=b.getMoviePercent();if(!r&&Ea){if(c===null){if(b.useFlashBlock||b.flashLoadTimeout===0){b.useFlashBlock&&ja()}else{V(true)}}else{b.flashLoadTimeout!==0&&V(true)}}},b.flashLoadTimeout)};da=function(c){if(c){b.url=c}M()};G=function(){var c=[];b.debugMode&&c.push(b.swfCSS.sm2Debug);b.debugFlash&&c.push(b.swfCSS.flashDebug);b.useHighPerformance&&c.push(b.swfCSS.highPerf);return c.join(" ")};ja=function(){B("fbHandler");var c=b.getMoviePercent(),a=b.swfCSS;if(b.ok()){if(b.oMC){b.oMC.className=[G(),a.swfDefault,a.swfLoaded+(b.didFlashBlock?" "+a.swfUnblocked:"")].join(" ")}}else{if(C){b.oMC.className=G()+" "+a.swfDefault+" "+(c===null?a.swfTimedout:a.swfError)}b.didFlashBlock=true;z({type:"ontimeout",ignoreInit:true});b.onerror instanceof Function&&b.onerror.apply(k)}};A=function(){function c(){q.remove(k,"focus",A);q.remove(k,"load",A)}if(pa||!I){c();return true}pa=Ea=true;Q&&I&&q.remove(k,"mousemove",A);Y=false;c();return true};L=function(c){if(r){return false}if(u){r=true;z();E();return true}b.useFlashBlock&&b.flashLoadTimeout&&!b.getMoviePercent()||(r=true);if(y||c){if(b.useFlashBlock){b.oMC.className=G()+" "+(b.getMoviePercent()===null?b.swfCSS.swfTimedout:b.swfCSS.swfError)}z({type:"ontimeout"});b.onerror instanceof Function&&b.onerror.apply(k);return false}q.add(k,"unload",ba);if(b.waitForWindowLoad&&!sa){q.add(k,"load",E);return false}else{E()}return true};ca=function(c,a,g){if(typeof w[c]==="undefined"){w[c]=[]}w[c].push({method:a,scope:g||null,fired:false})};z=function(c){c||(c={type:"onready"});if(!r&&c&&!c.ignoreInit){return false}var a={success:c&&c.ignoreInit?b.ok():!y},g=c&&c.type?w[c.type]||[]:[];c=[];var h,e=C&&b.useFlashBlock&&!b.ok();for(h=0;h<g.length;h++){g[h].fired!==true&&c.push(g[h])}if(c.length){h=0;for(g=c.length;h<g;h++){c[h].scope?c[h].method.apply(c[h].scope,[a]):c[h].method(a);if(!e){c[h].fired=true}}}return true};E=function(){k.setTimeout(function(){b.useFlashBlock&&ja();z();b.onload instanceof Function&&b.onload.apply(k);b.waitForWindowLoad&&q.add(k,"load",E)},1)};H=function(){if(na!==undefined){return na}var c=false,a=navigator,g=a.plugins,h,e=k.ActiveXObject;if(g&&g.length){if((a=a.mimeTypes)&&a["application/x-shockwave-flash"]&&a["application/x-shockwave-flash"].enabledPlugin&&a["application/x-shockwave-flash"].enabledPlugin.description){c=true}}else{if(typeof e!=="undefined"){try{h=new e("ShockwaveFlash.ShockwaveFlash")}catch(d){}c=!!h}}return na=c};Aa=function(){var c,a;if(t.match(/iphone os (1|2|3_0|3_1)/i)?true:false){b.hasHTML5=false;u=true;if(b.oMC){b.oMC.style.display="none"}return false}if(b.useHTML5Audio){if(!b.html5||!b.html5.canPlayType){b.hasHTML5=false;return true}else{b.hasHTML5=true}if(oa){if(H()){return true}}}else{return true}for(a in b.audioFormats){if(b.audioFormats.hasOwnProperty(a)&&b.audioFormats[a].required&&!b.html5.canPlayType(b.audioFormats[a].type)){c=true}}if(b.ignoreFlash){c=false}u=b.useHTML5Audio&&b.hasHTML5&&!c&&!b.requireFlash;return H()&&c};S=function(){var c,a=[];if(r){return false}if(b.hasHTML5){for(c in b.audioFormats){b.audioFormats.hasOwnProperty(c)&&a.push(c+": "+b.html5[c])}}if(u){if(!r){q.remove(k,"load",b.beginDelayedInit);b.enabled=true;L()}return true}M();try{b.o._externalInterfaceTest(false);if(b.allowPolling){va(true,b.flashPollingInterval?b.flashPollingInterval:b.useFastPolling?10:50)}b.debugMode||b.o._disableDebug();b.enabled=true}catch(g){V(true);L();return false}L();q.remove(k,"load",b.beginDelayedInit);return true};ua=function(){if(la){return false}U();M();return la=true};F=function(){if(fa){return false}fa=true;ra();if(!b.useHTML5Audio){if(!H()){b.useHTML5Audio=true}}Ba();b.html5.usingFlash=Aa();C=b.html5.usingFlash;fa=true;j.removeEventListener&&j.removeEventListener("DOMContentLoaded",F,false);da();return true};ya=function(c){if(!c._hasTimer){c._hasTimer=true}};za=function(c){if(c._hasTimer){c._hasTimer=false}};ha=function(){b.onerror instanceof Function&&b.onerror();b.disable()};Ca=function(){if(!oa||!H()){return false}var c=b.audioFormats,a,g;for(g in c){if(c.hasOwnProperty(g)){if(g==="mp3"||g==="mp4"){b.html5[g]=false;if(c[g]&&c[g].related){for(;a--;){b.html5[c[g].related[a]]=false}}}}}};this._setSandboxType=function(){};this._externalInterfaceOK=function(){if(b.swfLoaded){return false}(new Date).getTime();b.swfLoaded=true;I=false;oa&&Ca();v?setTimeout(S,100):S()};ma=function(){if(j.readyState==="complete"){F();j.detachEvent("onreadystatechange",ma)}return true};if(!b.hasHTML5||C){q.add(k,"focus",A);q.add(k,"load",A);q.add(k,"load",T);Q&&I&&q.add(k,"mousemove",A)}if(j.addEventListener){j.addEventListener("DOMContentLoaded",F,false)}else{j.attachEvent?j.attachEvent("onreadystatechange",ma):ha()}j.readyState==="complete"&&setTimeout(F,100)}var Fa=null;if(typeof SM2_DEFER==="undefined"||!SM2_DEFER){Fa=new qa}$.SoundManager=qa;$.soundManager=Fa})(window);
var threeSixtyPlayer,ThreeSixtyPlayer;(function(window){function ThreeSixtyPlayer(){var self=this,pl=this,sm=soundManager,uA=navigator.userAgent,isIE=(uA.match(/msie/i)),isOpera=(uA.match(/opera/i)),isSafari=(uA.match(/safari/i)),isChrome=(uA.match(/chrome/i)),isFirefox=(uA.match(/firefox/i)),isTouchDevice=(uA.match(/ipad|iphone/i)),hasRealCanvas=(typeof window.G_vmlCanvasManager==="undefined"&&typeof document.createElement("canvas").getContext("2d")!=="undefined"),fullCircle=(isOpera||isChrome?359.9:360);this.excludeClass="threesixty-exclude";this.links=[];this.sounds=[];this.soundsByURL=[];this.indexByURL=[];this.lastSound=null;this.lastTouchedSound=null;this.soundCount=0;this.oUITemplate=null;this.oUIImageMap=null;this.vuMeter=null;this.callbackCount=0;this.peakDataHistory=[];this.config={playNext:false,autoPlay:false,allowMultiple:false,loadRingColor:"#ccc",playRingColor:"#000",backgroundRingColor:"#eee",segmentRingColor:"rgba(255,255,255,0.33)",segmentRingColorAlt:"rgba(0,0,0,0.1)",loadRingColorMetadata:"#ddd",playRingColorMetadata:"rgba(128,192,256,0.9)",circleDiameter:null,circleRadius:null,animDuration:500,animTransition:window.Animator.tx.bouncy,showHMSTime:false,scaleFont:true,useWaveformData:false,waveformDataColor:"#0099ff",waveformDataDownsample:3,waveformDataOutside:false,waveformDataConstrain:false,waveformDataLineRatio:0.64,useEQData:false,eqDataColor:"#339933",eqDataDownsample:4,eqDataOutside:true,eqDataLineRatio:0.54,usePeakData:true,peakDataColor:"#ff33ff",peakDataOutside:true,peakDataLineRatio:0.5,useAmplifier:true,fontSizeMax:null,useFavIcon:false};this.css={sDefault:"sm2_link",sBuffering:"sm2_buffering",sPlaying:"sm2_playing",sPaused:"sm2_paused"};this.addEventHandler=function(o,evtName,evtHandler){return typeof(window.attachEvent)==="undefined"?o.addEventListener(evtName,evtHandler,false):o.attachEvent("on"+evtName,evtHandler)};this.removeEventHandler=function(o,evtName,evtHandler){return typeof(window.attachEvent)==="undefined"?o.removeEventListener(evtName,evtHandler,false):o.detachEvent("on"+evtName,evtHandler)};this.hasClass=function(o,cStr){return typeof(o.className)!=="undefined"?o.className.match(new RegExp("(\\s|^)"+cStr+"(\\s|$)")):false};this.addClass=function(o,cStr){if(!o||!cStr||self.hasClass(o,cStr)){return false}o.className=(o.className?o.className+" ":"")+cStr};this.removeClass=function(o,cStr){if(!o||!cStr||!self.hasClass(o,cStr)){return false}o.className=o.className.replace(new RegExp("( "+cStr+")|("+cStr+")","g"),"")};this.getElementsByClassName=function(className,tagNames,oParent){var doc=(oParent||document),matches=[],i,j,nodes=[];if(typeof tagNames!=="undefined"&&typeof tagNames!=="string"){for(i=tagNames.length;i--;){if(!nodes||!nodes[tagNames[i]]){nodes[tagNames[i]]=doc.getElementsByTagName(tagNames[i])}}}else{if(tagNames){nodes=doc.getElementsByTagName(tagNames)}else{nodes=doc.all||doc.getElementsByTagName("*")}}if(typeof(tagNames)!=="string"){for(i=tagNames.length;i--;){for(j=nodes[tagNames[i]].length;j--;){if(self.hasClass(nodes[tagNames[i]][j],className)){matches.push(nodes[tagNames[i]][j])}}}}else{for(i=0;i<nodes.length;i++){if(self.hasClass(nodes[i],className)){matches.push(nodes[i])}}}return matches};this.getParentByNodeName=function(oChild,sParentNodeName){if(!oChild||!sParentNodeName){return false}sParentNodeName=sParentNodeName.toLowerCase();while(oChild.parentNode&&sParentNodeName!==oChild.parentNode.nodeName.toLowerCase()){oChild=oChild.parentNode}return(oChild.parentNode&&sParentNodeName===oChild.parentNode.nodeName.toLowerCase()?oChild.parentNode:null)};this.getParentByClassName=function(oChild,sParentClassName){if(!oChild||!sParentClassName){return false}while(oChild.parentNode&&!self.hasClass(oChild.parentNode,sParentClassName)){oChild=oChild.parentNode}return(oChild.parentNode&&self.hasClass(oChild.parentNode,sParentClassName)?oChild.parentNode:null)};this.getSoundByURL=function(sURL){return(typeof self.soundsByURL[sURL]!=="undefined"?self.soundsByURL[sURL]:null)};this.isChildOfNode=function(o,sNodeName){if(!o||!o.parentNode){return false}sNodeName=sNodeName.toLowerCase();do{o=o.parentNode}while(o&&o.parentNode&&o.nodeName.toLowerCase()!==sNodeName);return(o&&o.nodeName.toLowerCase()===sNodeName?o:null)};this.isChildOfClass=function(oChild,oClass){if(!oChild||!oClass){return false}while(oChild.parentNode&&!self.hasClass(oChild,oClass)){oChild=self.findParent(oChild)}return(self.hasClass(oChild,oClass))};this.findParent=function(o){if(!o||!o.parentNode){return false}o=o.parentNode;if(o.nodeType===2){while(o&&o.parentNode&&o.parentNode.nodeType===2){o=o.parentNode}}return o};this.getStyle=function(o,sProp){try{if(o.currentStyle){return o.currentStyle[sProp]}else{if(window.getComputedStyle){return document.defaultView.getComputedStyle(o,null).getPropertyValue(sProp)}}}catch(e){}return null};this.findXY=function(obj){var curleft=0,curtop=0;do{curleft+=obj.offsetLeft;curtop+=obj.offsetTop}while(!!(obj=obj.offsetParent));return[curleft,curtop]};this.getMouseXY=function(e){e=e?e:window.event;if(isTouchDevice&&e.touches){e=e.touches[0]}if(e.pageX||e.pageY){return[e.pageX,e.pageY]}else{if(e.clientX||e.clientY){return[e.clientX+self.getScrollLeft(),e.clientY+self.getScrollTop()]}}};this.getScrollLeft=function(){return(document.body.scrollLeft+document.documentElement.scrollLeft)};this.getScrollTop=function(){return(document.body.scrollTop+document.documentElement.scrollTop)};this.events={play:function(){pl.removeClass(this._360data.oUIBox,this._360data.className);this._360data.className=pl.css.sPlaying;pl.addClass(this._360data.oUIBox,this._360data.className);self.fanOut(this)},stop:function(){pl.removeClass(this._360data.oUIBox,this._360data.className);this._360data.className="";self.fanIn(this)},pause:function(){pl.removeClass(this._360data.oUIBox,this._360data.className);this._360data.className=pl.css.sPaused;pl.addClass(this._360data.oUIBox,this._360data.className)},resume:function(){pl.removeClass(this._360data.oUIBox,this._360data.className);this._360data.className=pl.css.sPlaying;pl.addClass(this._360data.oUIBox,this._360data.className)},finish:function(){var nextLink;pl.removeClass(this._360data.oUIBox,this._360data.className);this._360data.className="";this._360data.didFinish=true;self.fanIn(this);if(pl.config.playNext){nextLink=(pl.indexByURL[this._360data.oLink.href]+1);if(nextLink<pl.links.length){pl.handleClick({target:pl.links[nextLink]})}}},whileloading:function(){if(this.paused){self.updatePlaying.apply(this)}},whileplaying:function(){self.updatePlaying.apply(this);this._360data.fps++},bufferchange:function(){if(this.isBuffering){pl.addClass(this._360data.oUIBox,pl.css.sBuffering)}else{pl.removeClass(this._360data.oUIBox,pl.css.sBuffering)}}};this.stopEvent=function(e){if(typeof e!=="undefined"&&typeof e.preventDefault!=="undefined"){e.preventDefault()}else{if(typeof window.event!=="undefined"&&typeof window.event.returnValue!=="undefined"){window.event.returnValue=false}}return false};this.getTheDamnLink=(isIE)?function(e){return(e&&e.target?e.target:window.event.srcElement)}:function(e){return e.target};this.handleClick=function(e){if(e.button>1){return true}var o=self.getTheDamnLink(e),sURL,soundURL,thisSound,oContainer,has_vis,diameter;if(o.nodeName.toLowerCase()!=="a"){o=self.isChildOfNode(o,"a");if(!o){return true}}if(!self.isChildOfClass(o,"ui360")){return true}sURL=o.getAttribute("href");if(!o.href||!sm.canPlayLink(o)||self.hasClass(o,self.excludeClass)){return true}sm._writeDebug("handleClick()");soundURL=(o.href);thisSound=self.getSoundByURL(soundURL);if(thisSound){if(thisSound===self.lastSound){thisSound.togglePause()}else{thisSound.togglePause();sm._writeDebug("sound different than last sound: "+self.lastSound.sID);if(!self.config.allowMultiple&&self.lastSound){self.stopSound(self.lastSound)}}}else{oContainer=o.parentNode;has_vis=(self.getElementsByClassName("ui360-vis","div",oContainer.parentNode).length);thisSound=sm.createSound({id:"ui360Sound"+(self.soundCount++),url:soundURL,onplay:self.events.play,onstop:self.events.stop,onpause:self.events.pause,onresume:self.events.resume,onfinish:self.events.finish,onbufferchange:self.events.bufferchange,whileloading:self.events.whileloading,whileplaying:self.events.whileplaying,useWaveformData:(has_vis&&self.config.useWaveformData),useEQData:(has_vis&&self.config.useEQData),usePeakData:(has_vis&&self.config.usePeakData)});diameter=parseInt(self.getElementsByClassName("sm2-360ui","div",oContainer)[0].offsetWidth,10);thisSound._360data={oUI360:self.getParentByClassName(o,"ui360"),oLink:o,className:self.css.sPlaying,oUIBox:self.getElementsByClassName("sm2-360ui","div",oContainer)[0],oCanvas:self.getElementsByClassName("sm2-canvas","canvas",oContainer)[0],oButton:self.getElementsByClassName("sm2-360btn","span",oContainer)[0],oTiming:self.getElementsByClassName("sm2-timing","div",oContainer)[0],oCover:self.getElementsByClassName("sm2-cover","div",oContainer)[0],circleDiameter:diameter,circleRadius:diameter/2,lastTime:null,didFinish:null,pauseCount:0,radius:0,fontSize:1,fontSizeMax:self.config.fontSizeMax,scaleFont:(has_vis&&self.config.scaleFont),showHMSTime:has_vis,amplifier:(has_vis&&self.config.usePeakData?0.9:1),radiusMax:diameter*0.175,width:0,widthMax:diameter*0.4,lastValues:{bytesLoaded:0,bytesTotal:0,position:0,durationEstimate:0},animating:false,oAnim:new window.Animator({duration:self.config.animDuration,transition:self.config.animTransition,onComplete:function(){}}),oAnimProgress:function(nProgress){var thisSound=this;thisSound._360data.radius=parseInt(thisSound._360data.radiusMax*thisSound._360data.amplifier*nProgress,10);thisSound._360data.width=parseInt(thisSound._360data.widthMax*thisSound._360data.amplifier*nProgress,10);if(thisSound._360data.scaleFont&&thisSound._360data.fontSizeMax!==null){thisSound._360data.oTiming.style.fontSize=parseInt(Math.max(1,thisSound._360data.fontSizeMax*nProgress),10)+"px";thisSound._360data.oTiming.style.opacity=nProgress}if(thisSound.paused||thisSound.playState===0||thisSound._360data.lastValues.bytesLoaded===0||thisSound._360data.lastValues.position===0){self.updatePlaying.apply(thisSound)}},fps:0};if(typeof self.Metadata!=="undefined"&&self.getElementsByClassName("metadata","div",thisSound._360data.oUI360).length){thisSound._360data.metadata=new self.Metadata(thisSound,self)}if(thisSound._360data.scaleFont&&thisSound._360data.fontSizeMax!==null){thisSound._360data.oTiming.style.fontSize="1px"}thisSound._360data.oAnim.addSubject(thisSound._360data.oAnimProgress,thisSound);self.refreshCoords(thisSound);self.updatePlaying.apply(thisSound);self.soundsByURL[soundURL]=thisSound;self.sounds.push(thisSound);if(!self.config.allowMultiple&&self.lastSound){self.stopSound(self.lastSound)}thisSound.play()}self.lastSound=thisSound;if(typeof e!=="undefined"&&typeof e.preventDefault!=="undefined"){e.preventDefault()}else{if(typeof window.event!=="undefined"){window.event.returnValue=false}}return false};this.fanOut=function(oSound){var thisSound=oSound;if(thisSound._360data.animating===1){return false}thisSound._360data.animating=0;soundManager._writeDebug("fanOut: "+thisSound.sID+": "+thisSound._360data.oLink.href);thisSound._360data.oAnim.seekTo(1);window.setTimeout(function(){thisSound._360data.animating=0},self.config.animDuration+20)};this.fanIn=function(oSound){var thisSound=oSound;if(thisSound._360data.animating===-1){return false}thisSound._360data.animating=-1;soundManager._writeDebug("fanIn: "+thisSound.sID+": "+thisSound._360data.oLink.href);thisSound._360data.oAnim.seekTo(0);window.setTimeout(function(){thisSound._360data.didFinish=false;thisSound._360data.animating=0;self.resetLastValues(thisSound)},self.config.animDuration+20)};this.resetLastValues=function(oSound){oSound._360data.lastValues.position=0};this.refreshCoords=function(thisSound){thisSound._360data.canvasXY=self.findXY(thisSound._360data.oCanvas);thisSound._360data.canvasMid=[thisSound._360data.circleRadius,thisSound._360data.circleRadius];thisSound._360data.canvasMidXY=[thisSound._360data.canvasXY[0]+thisSound._360data.canvasMid[0],thisSound._360data.canvasXY[1]+thisSound._360data.canvasMid[1]]};this.stopSound=function(oSound){soundManager._writeDebug("stopSound: "+oSound.sID);soundManager.stop(oSound.sID);soundManager.unload(oSound.sID)};this.buttonClick=function(e){var o=e?(e.target?e.target:e.srcElement):window.event.srcElement;self.handleClick({target:self.getParentByClassName(o,"sm2-360ui").nextSibling});return false};this.buttonMouseDown=function(e){if(!isTouchDevice){document.onmousemove=function(e){self.mouseDown(e)}}else{self.addEventHandler(document,"touchmove",self.mouseDown)}self.stopEvent(e);return false};this.mouseDown=function(e){if(!isTouchDevice&&e.button>1){return true}if(!self.lastSound){self.stopEvent(e);return false}var evt=e?e:window.event,target,thisSound,oData;if(isTouchDevice&&evt.touches){evt=evt.touches[0]}target=(evt.target||evt.srcElement);thisSound=self.getSoundByURL(self.getElementsByClassName("sm2_link","a",self.getParentByClassName(target,"ui360"))[0].href);self.lastTouchedSound=thisSound;self.refreshCoords(thisSound);oData=thisSound._360data;self.addClass(oData.oUIBox,"sm2_dragging");oData.pauseCount=(self.lastTouchedSound.paused?1:0);self.mmh(e?e:window.event);if(isTouchDevice){self.removeEventHandler(document,"touchmove",self.mouseDown);self.addEventHandler(document,"touchmove",self.mmh);self.addEventHandler(document,"touchend",self.mouseUp)}else{document.onmousemove=self.mmh;document.onmouseup=self.mouseUp}self.stopEvent(e);return false};this.mouseUp=function(e){var oData=self.lastTouchedSound._360data;self.removeClass(oData.oUIBox,"sm2_dragging");if(oData.pauseCount===0){self.lastTouchedSound.resume()}if(!isTouchDevice){document.onmousemove=null;document.onmouseup=null}else{self.removeEventHandler(document,"touchmove",self.mmh);self.removeEventHandler(document,"touchend",self.mouseUP)}};this.mmh=function(e){if(typeof e==="undefined"){e=window.event}var oSound=self.lastTouchedSound,coords=self.getMouseXY(e),x=coords[0],y=coords[1],deltaX=x-oSound._360data.canvasMidXY[0],deltaY=y-oSound._360data.canvasMidXY[1],angle=Math.floor(fullCircle-(self.rad2deg(Math.atan2(deltaX,deltaY))+180));oSound.setPosition(oSound.durationEstimate*(angle/fullCircle));self.stopEvent(e);return false};this.drawSolidArc=function(oCanvas,color,radius,width,radians,startAngle,noClear){var x=radius,y=radius,canvas=oCanvas,ctx,innerRadius,doesntLikeZero,endPoint;if(canvas.getContext){ctx=canvas.getContext("2d")}oCanvas=ctx;if(!noClear){self.clearCanvas(canvas)}if(color){ctx.fillStyle=color}oCanvas.beginPath();if(isNaN(radians)){radians=0}innerRadius=radius-width;doesntLikeZero=(isOpera||isSafari);if(!doesntLikeZero||(doesntLikeZero&&radius>0)){oCanvas.arc(0,0,radius,startAngle,radians,false);endPoint=self.getArcEndpointCoords(innerRadius,radians);oCanvas.lineTo(endPoint.x,endPoint.y);oCanvas.arc(0,0,innerRadius,radians,startAngle,true);oCanvas.closePath();oCanvas.fill()}};this.getArcEndpointCoords=function(radius,radians){return{x:radius*Math.cos(radians),y:radius*Math.sin(radians)}};this.deg2rad=function(nDeg){return(nDeg*Math.PI/180)};this.rad2deg=function(nRad){return(nRad*180/Math.PI)};this.getTime=function(nMSec,bAsString){var nSec=Math.floor(nMSec/1000),min=Math.floor(nSec/60),sec=nSec-(min*60);return(bAsString?(min+":"+(sec<10?"0"+sec:sec)):{min:min,sec:sec})};this.clearCanvas=function(oCanvas){var canvas=oCanvas,ctx=null,width,height;if(canvas.getContext){ctx=canvas.getContext("2d")}width=canvas.offsetWidth;height=canvas.offsetHeight;ctx.clearRect(-(width/2),-(height/2),width,height)};this.updatePlaying=function(){var timeNow=(this._360data.showHMSTime?self.getTime(this.position,true):parseInt(this.position/1000,10));if(this.bytesLoaded){this._360data.lastValues.bytesLoaded=this.bytesLoaded;this._360data.lastValues.bytesTotal=this.bytesTotal}if(this.position){this._360data.lastValues.position=this.position}if(this.durationEstimate){this._360data.lastValues.durationEstimate=this.durationEstimate}self.drawSolidArc(this._360data.oCanvas,self.config.backgroundRingColor,this._360data.width,this._360data.radius,self.deg2rad(fullCircle),false);self.drawSolidArc(this._360data.oCanvas,(this._360data.metadata?self.config.loadRingColorMetadata:self.config.loadRingColor),this._360data.width,this._360data.radius,self.deg2rad(fullCircle*(this._360data.lastValues.bytesLoaded/this._360data.lastValues.bytesTotal)),0,true);if(this._360data.lastValues.position!==0){self.drawSolidArc(this._360data.oCanvas,(this._360data.metadata?self.config.playRingColorMetadata:self.config.playRingColor),this._360data.width,this._360data.radius,self.deg2rad((this._360data.didFinish===1?fullCircle:fullCircle*(this._360data.lastValues.position/this._360data.lastValues.durationEstimate))),0,true)}if(this._360data.metadata){this._360data.metadata.events.whileplaying()}if(timeNow!==this._360data.lastTime){this._360data.lastTime=timeNow;this._360data.oTiming.innerHTML=timeNow}if(this.instanceOptions.useWaveformData&&hasRealCanvas){self.updateWaveform(this)}if(self.config.useFavIcon&&self.vuMeter){self.vuMeter.updateVU(this)}};this.updateWaveform=function(oSound){if((!self.config.useWaveformData&&!self.config.useEQData)||(!sm.features.waveformData&&!sm.features.eqData)){return false}if(!oSound.waveformData.left.length&&!oSound.eqData.length&&!oSound.peakData.left){return false}var oCanvas=oSound._360data.oCanvas.getContext("2d"),offX=0,offY=parseInt(oSound._360data.circleDiameter/2,10),scale=offY/2,lineWidth=1,lineHeight=1,thisY=0,offset=offY,i,j,direction,downSample,dataLength,sampleCount,startAngle,endAngle,waveData,innerRadius,perItemAngle,yDiff,eqSamples,playedAngle,iAvg,nPeak;if(self.config.useWaveformData){downSample=self.config.waveformDataDownsample;downSample=Math.max(1,downSample);dataLength=256;sampleCount=(dataLength/downSample);startAngle=0;endAngle=0;waveData=null;innerRadius=(self.config.waveformDataOutside?1:(self.config.waveformDataConstrain?0.5:0.565));scale=(self.config.waveformDataOutside?0.7:0.75);perItemAngle=self.deg2rad((360/sampleCount)*self.config.waveformDataLineRatio);for(i=0;i<dataLength;i+=downSample){startAngle=self.deg2rad(360*(i/(sampleCount)*1/downSample));endAngle=startAngle+perItemAngle;waveData=oSound.waveformData.left[i];if(waveData<0&&self.config.waveformDataConstrain){waveData=Math.abs(waveData)}self.drawSolidArc(oSound._360data.oCanvas,self.config.waveformDataColor,oSound._360data.width*innerRadius,oSound._360data.radius*scale*1.25*waveData,endAngle,startAngle,true)}}if(self.config.useEQData){downSample=self.config.eqDataDownsample;yDiff=0;downSample=Math.max(1,downSample);eqSamples=192;sampleCount=(eqSamples/downSample);innerRadius=(self.config.eqDataOutside?1:0.565);direction=(self.config.eqDataOutside?-1:1);scale=(self.config.eqDataOutside?0.5:0.75);startAngle=0;endAngle=0;perItemAngle=self.deg2rad((360/sampleCount)*self.config.eqDataLineRatio);playedAngle=self.deg2rad((oSound._360data.didFinish===1?360:360*(oSound._360data.lastValues.position/oSound._360data.lastValues.durationEstimate)));j=0;iAvg=0;for(i=0;i<eqSamples;i+=downSample){startAngle=self.deg2rad(360*(i/eqSamples));endAngle=startAngle+perItemAngle;self.drawSolidArc(oSound._360data.oCanvas,(endAngle>playedAngle?self.config.eqDataColor:self.config.playRingColor),oSound._360data.width*innerRadius,oSound._360data.radius*scale*(oSound.eqData.left[i]*direction),endAngle,startAngle,true)}}if(self.config.usePeakData){if(!oSound._360data.animating){nPeak=(oSound.peakData.left||oSound.peakData.right);eqSamples=3;for(i=0;i<eqSamples;i++){nPeak=(nPeak||oSound.eqData[i])}oSound._360data.amplifier=(self.config.useAmplifier?(0.9+(nPeak*0.1)):1);oSound._360data.radiusMax=oSound._360data.circleDiameter*0.175*oSound._360data.amplifier;oSound._360data.widthMax=oSound._360data.circleDiameter*0.4*oSound._360data.amplifier;oSound._360data.radius=parseInt(oSound._360data.radiusMax*oSound._360data.amplifier,10);oSound._360data.width=parseInt(oSound._360data.widthMax*oSound._360data.amplifier,10)}}};this.getUIHTML=function(diameter){return['<canvas class="sm2-canvas" width="'+diameter+'" height="'+diameter+'"></canvas>',' <span class="sm2-360btn sm2-360btn-default"></span>',' <div class="sm2-timing'+(navigator.userAgent.match(/safari/i)?" alignTweak":"")+'"></div>',' <div class="sm2-cover"></div>']};this.uiTest=function(sClass){var oTemplate=document.createElement("div"),oFakeUI,oFakeUIBox,oTemp,fakeDiameter,uiHTML,circleDiameter,circleRadius,fontSizeMax,oTiming;oTemplate.className="sm2-360ui";oFakeUI=document.createElement("div");oFakeUI.className="ui360"+(sClass?" "+sClass:"");oFakeUIBox=oFakeUI.appendChild(oTemplate.cloneNode(true));oFakeUI.style.position="absolute";oFakeUI.style.left="-9999px";oTemp=document.body.appendChild(oFakeUI);fakeDiameter=oFakeUIBox.offsetWidth;uiHTML=self.getUIHTML(fakeDiameter);oFakeUIBox.innerHTML=uiHTML[1]+uiHTML[2]+uiHTML[3];circleDiameter=parseInt(oFakeUIBox.offsetWidth,10);circleRadius=parseInt(circleDiameter/2,10);oTiming=self.getElementsByClassName("sm2-timing","div",oTemp)[0];fontSizeMax=parseInt(self.getStyle(oTiming,"font-size"),10);if(isNaN(fontSizeMax)){fontSizeMax=null}oFakeUI.parentNode.removeChild(oFakeUI);uiHTML=oFakeUI=oFakeUIBox=oTemp=null;return{circleDiameter:circleDiameter,circleRadius:circleRadius,fontSizeMax:fontSizeMax}};this.init=function(){sm._writeDebug("threeSixtyPlayer.init()");var oItems=self.getElementsByClassName("ui360","div"),i,j,oLinks=[],is_vis=false,foundItems=0,oCanvas,oCanvasCTX,oCover,diameter,radius,uiData,uiDataVis,oUI,oBtn,o,o2,oID;for(i=0,j=oItems.length;i<j;i++){oLinks.push(oItems[i].getElementsByTagName("a")[0]);oItems[i].style.backgroundImage="none"}self.oUITemplate=document.createElement("div");self.oUITemplate.className="sm2-360ui";self.oUITemplateVis=document.createElement("div");self.oUITemplateVis.className="sm2-360ui";uiData=self.uiTest();self.config.circleDiameter=uiData.circleDiameter;self.config.circleRadius=uiData.circleRadius;uiDataVis=self.uiTest("ui360-vis");self.config.fontSizeMax=uiDataVis.fontSizeMax;self.oUITemplate.innerHTML=self.getUIHTML(self.config.circleDiameter).join("");self.oUITemplateVis.innerHTML=self.getUIHTML(uiDataVis.circleDiameter).join("");for(i=0,j=oLinks.length;i<j;i++){if(sm.canPlayLink(oLinks[i])&&!self.hasClass(oLinks[i],self.excludeClass)){self.addClass(oLinks[i],self.css.sDefault);self.links[foundItems]=(oLinks[i]);self.indexByURL[oLinks[i].href]=foundItems;foundItems++;is_vis=self.hasClass(oLinks[i].parentNode,"ui360-vis");diameter=(is_vis?uiDataVis:uiData).circleDiameter;radius=(is_vis?uiDataVis:uiData).circleRadius;oUI=oLinks[i].parentNode.insertBefore((is_vis?self.oUITemplateVis:self.oUITemplate).cloneNode(true),oLinks[i]);if(isIE&&typeof window.G_vmlCanvasManager!=="undefined"){o=oLinks[i].parentNode;o2=document.createElement("canvas");o2.className="sm2-canvas";oID="sm2_canvas_"+parseInt(Math.random()*1048576,10);o2.id=oID;o2.width=diameter;o2.height=diameter;oUI.appendChild(o2);window.G_vmlCanvasManager.initElement(o2);oCanvas=document.getElementById(oID)}else{oCanvas=oLinks[i].parentNode.getElementsByTagName("canvas")[0]}oCover=self.getElementsByClassName("sm2-cover","div",oLinks[i].parentNode)[0];oBtn=oLinks[i].parentNode.getElementsByTagName("span")[0];self.addEventHandler(oBtn,"click",self.buttonClick);if(!isTouchDevice){self.addEventHandler(oCover,"mousedown",self.mouseDown)}else{self.addEventHandler(oCover,"touchstart",self.mouseDown)}oCanvasCTX=oCanvas.getContext("2d");oCanvasCTX.translate(radius,radius);oCanvasCTX.rotate(self.deg2rad(-90))}}if(foundItems>0){self.addEventHandler(document,"click",self.handleClick);if(self.config.autoPlay){self.handleClick({target:self.links[0],preventDefault:function(){}})}}sm._writeDebug("threeSixtyPlayer.init(): Found "+foundItems+" relevant items.");if(self.config.useFavIcon&&typeof this.VUMeter!=="undefined"){this.vuMeter=new this.VUMeter(this)}}}ThreeSixtyPlayer.prototype.VUMeter=function(oParent){var self=oParent,me=this,_head=document.getElementsByTagName("head")[0],isOpera=(navigator.userAgent.match(/opera/i)),isFirefox=(navigator.userAgent.match(/firefox/i));this.vuMeterData=[];this.vuDataCanvas=null;this.setPageIcon=function(sDataURL){if(!self.config.useFavIcon||!self.config.usePeakData||!sDataURL){return false}var link=document.getElementById("sm2-favicon");if(link){_head.removeChild(link);link=null}if(!link){link=document.createElement("link");link.id="sm2-favicon";link.rel="shortcut icon";link.type="image/png";link.href=sDataURL;document.getElementsByTagName("head")[0].appendChild(link)}};this.resetPageIcon=function(){if(!self.config.useFavIcon){return false}var link=document.getElementById("favicon");if(link){link.href="/favicon.ico"}};this.updateVU=function(oSound){if(soundManager.flashVersion>=9&&self.config.useFavIcon&&self.config.usePeakData){me.setPageIcon(me.vuMeterData[parseInt(16*oSound.peakData.left,10)][parseInt(16*oSound.peakData.right,10)])}};this.createVUData=function(){var i=0,j=0,canvas=me.vuDataCanvas.getContext("2d"),vuGrad=canvas.createLinearGradient(0,16,0,0),bgGrad=canvas.createLinearGradient(0,16,0,0),outline="rgba(0,0,0,0.2)";vuGrad.addColorStop(0,"rgb(0,192,0)");vuGrad.addColorStop(0.3,"rgb(0,255,0)");vuGrad.addColorStop(0.625,"rgb(255,255,0)");vuGrad.addColorStop(0.85,"rgb(255,0,0)");bgGrad.addColorStop(0,outline);bgGrad.addColorStop(1,"rgba(0,0,0,0.5)");for(i=0;i<16;i++){me.vuMeterData[i]=[]}for(i=0;i<16;i++){for(j=0;j<16;j++){me.vuDataCanvas.setAttribute("width",16);me.vuDataCanvas.setAttribute("height",16);canvas.fillStyle=bgGrad;canvas.fillRect(0,0,7,15);canvas.fillRect(8,0,7,15);canvas.fillStyle=vuGrad;canvas.fillRect(0,15-i,7,16-(16-i));canvas.fillRect(8,15-j,7,16-(16-j));canvas.clearRect(0,3,16,1);canvas.clearRect(0,7,16,1);canvas.clearRect(0,11,16,1);me.vuMeterData[i][j]=me.vuDataCanvas.toDataURL("image/png")}}};this.testCanvas=function(){var c=document.createElement("canvas"),ctx=null,ok;if(!c||typeof c.getContext==="undefined"){return null}ctx=c.getContext("2d");if(!ctx||typeof c.toDataURL!=="function"){return null}try{ok=c.toDataURL("image/png")}catch(e){return null}return c};this.init=function(){if(self.config.useFavIcon){me.vuDataCanvas=me.testCanvas();if(me.vuDataCanvas&&(isFirefox||isOpera)){me.createVUData()}else{self.config.useFavIcon=false}}};this.init()};ThreeSixtyPlayer.prototype.Metadata=function(oSound,oParent){soundManager._wD("Metadata()");var me=this,oBox=oSound._360data.oUI360,o=oBox.getElementsByTagName("ul")[0],oItems=o.getElementsByTagName("li"),isFirefox=(navigator.userAgent.match(/firefox/i)),isAlt=false,i,oDuration;this.lastWPExec=0;this.refreshInterval=250;this.totalTime=0;this.events={whileplaying:function(){var width=oSound._360data.width,radius=oSound._360data.radius,fullDuration=(oSound.durationEstimate||(me.totalTime*1000)),isAlt=null,i,j,d;for(i=0,j=me.data.length;i<j;i++){isAlt=(i%2===0);oParent.drawSolidArc(oSound._360data.oCanvas,(isAlt?oParent.config.segmentRingColorAlt:oParent.config.segmentRingColor),isAlt?width:width,isAlt?radius/2:radius/2,oParent.deg2rad(360*(me.data[i].endTimeMS/fullDuration)),oParent.deg2rad(360*((me.data[i].startTimeMS||1)/fullDuration)),true)}d=new Date();if(d-me.lastWPExec>me.refreshInterval){me.refresh();me.lastWPExec=d}}};this.refresh=function(){var i,j,index=null,now=oSound.position,metadata=oSound._360data.metadata.data;for(i=0,j=metadata.length;i<j;i++){if(now>=metadata[i].startTimeMS&&now<=metadata[i].endTimeMS){index=i;break}}if(index!==metadata.currentItem&&index<metadata.length){oSound._360data.oLink.innerHTML=metadata.mainTitle+' <span class="metadata"><span class="sm2_divider"> | </span><span class="sm2_metadata">'+metadata[index].title+"</span></span>";metadata.currentItem=index}};this.strToTime=function(sTime){var segments=sTime.split(":"),seconds=0,i;for(i=segments.length;i--;){seconds+=parseInt(segments[i],10)*Math.pow(60,segments.length-1-i)}return seconds};this.data=[];this.data.givenDuration=null;this.data.currentItem=null;this.data.mainTitle=oSound._360data.oLink.innerHTML;for(i=0;i<oItems.length;i++){this.data[i]={o:null,title:oItems[i].getElementsByTagName("p")[0].innerHTML,startTime:oItems[i].getElementsByTagName("span")[0].innerHTML,startSeconds:me.strToTime(oItems[i].getElementsByTagName("span")[0].innerHTML.replace(/[()]/g,"")),duration:0,durationMS:null,startTimeMS:null,endTimeMS:null,oNote:null}}oDuration=oParent.getElementsByClassName("duration","div",oBox);this.data.givenDuration=(oDuration.length?me.strToTime(oDuration[0].innerHTML)*1000:0);for(i=0;i<this.data.length;i++){this.data[i].duration=parseInt(this.data[i+1]?this.data[i+1].startSeconds:(me.data.givenDuration?me.data.givenDuration:oSound.durationEstimate)/1000,10)-this.data[i].startSeconds;this.data[i].startTimeMS=this.data[i].startSeconds*1000;this.data[i].durationMS=this.data[i].duration*1000;this.data[i].endTimeMS=this.data[i].startTimeMS+this.data[i].durationMS;this.totalTime+=this.data[i].duration}};if(navigator.userAgent.match(/webkit/i)&&navigator.userAgent.match(/mobile/i)){soundManager.useHTML5Audio=true}soundManager.debugMode=(window.location.href.match(/debug=1/i));soundManager.consoleOnly=true;soundManager.flashVersion=9;soundManager.useHighPerformance=true;soundManager.useFlashBlock=true;if(soundManager.debugMode){window.setInterval(function(){var p=window.threeSixtyPlayer;if(p&&p.lastSound&&p.lastSound._360data.fps&&typeof window.isHome==="undefined"){soundManager._writeDebug("fps: ~"+p.lastSound._360data.fps);p.lastSound._360data.fps=0}},1000)}window.ThreeSixtyPlayer=ThreeSixtyPlayer;threeSixtyPlayer=new ThreeSixtyPlayer();soundManager.onready(threeSixtyPlayer.init);}(window));
