if(!window.console)
{(function()
{var names=["log","debug","info","warn","error","assert","dir","dirxml","group","groupEnd","time","timeEnd","count","trace","profile","profileEnd"];window.console={};for(var i=0;i<names.length;++i)
{window.console[names[i]]=function(){};}})();}
(function()
{var sGlobal='global_namespace';if(window[sGlobal])
return;var ns=window[sGlobal]=new Namespace(null);function Namespace(nsParent,sName)
{if(sName)
sName=sName.replace(/-/g,'_');this._nsParent=nsParent;if(this._nsParent)
{this._nsParent[sName]=this;this._sPath=this._nsParent._sPath;if(this._sPath!='')
this._sPath+='.';this._sPath+=sName;}
else
this._sPath='';};Namespace.prototype.Extend=function(oDest)
{for(var i=1;i<arguments.length;i++)
{var oSource=arguments[i];for(var prop in oSource)
{if(oSource.hasOwnProperty(prop))
oDest[prop]=oSource[prop];}}
return oDest;};ns.Extend(Namespace.prototype,{Define:function(sPath,fnCallback)
{sPath=sPath.replace(/-/g,'_');var aPath=sPath.split('.');var nsCur=this;for(var i=0;i<aPath.length;i++)
{var sName=aPath[i];if(nsCur[sName]==undefined)
new Namespace(nsCur,sName);nsCur=nsCur[sName];}
if(fnCallback)
{if(!nsCur._fDefined)
{nsCur._fDefined=true;fnCallback(nsCur);console.info("Namespace '"+nsCur._sPath+"' defined.");}
else
console.warn("WARNING: Namespace '"+nsCur._sPath+"' redefinition.");}
else if(!nsCur._fDefined)
console.warn("Namespace '"+nsCur._sPath+"' forward reference.");return nsCur;},Import:function(sPath)
{return window.global_namespace.Define(sPath);},SGlobalName:function(sInNamespace)
{sInNamespace=sInNamespace.replace(/-/g,'_');return sGlobal+'.'+this._sPath+'.'+sInNamespace;}});})();global_namespace.Define('startpad.base',function(NS){NS.Extend(NS,{Browser:{version:parseInt(window.navigator.appVersion),fIE:window.navigator.appName.indexOf("Microsoft")!==-1},Enum:function(aEnum)
{if(!aEnum)
return;var j=0;for(var i=0;i<aEnum.length;i++)
{if(typeof aEnum[i]=="string")
this[aEnum[i]]=j++;else
j=aEnum[i];}},Project:function(obj,asProps)
{var objT={};for(var i=0;i<asProps.length;i++)
objT[asProps[i]]=obj[asProps[i]];return objT;}});NS.StBuf=function()
{this.rgst=[];this.Append.apply(this,arguments);this.sListSep=", ";};NS.StBuf.prototype={constructor:NS.StBuf,Append:function()
{for(var ist=0;ist<arguments.length;ist++)
this.rgst.push(arguments[ist].toString());return this;},Clear:function()
{this.rgst=[];},toString:function()
{return this.rgst.join("");},AppendList:function()
{var sSep="";for(var ist=0;ist<arguments.length;ist++)
{var sT=arguments[ist];if(sT)
{this.Append(sSep+sT);sSep=this.sListSep;}}
return this;}};Function.prototype.FnMethod=function(obj)
{var _fn=this;return function(){return _fn.apply(obj,arguments);};};Function.prototype.FnArgs=function()
{var _fn=this;var _args=[];for(var i=0;i<arguments.length;i++)
{_args.push(arguments[i]);}
return function(){var args=[];var self=this;for(var i=0;i<arguments.length;i++)
{args.push(arguments[i]);}
for(i=0;i<_args.length;i++)
{args.push(_args[i]);}
return _fn.apply(self,args);};};});global_namespace.Define('JSON',function(JSON){function f(n){return n<10?'0'+n:n;}
if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return this.valueOf()?this.getUTCFullYear()+'-'+
f(this.getUTCMonth()+1)+'-'+
f(this.getUTCDate())+'T'+
f(this.getUTCHours())+':'+
f(this.getUTCMinutes())+':'+
f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}
var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}
if(typeof rep==='function'){value=rep.call(holder,key,value);}
switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}
v=partial.length===0?'[]':gap?'[\n'+gap+
partial.join(',\n'+gap)+'\n'+
mind+']':'['+partial.join(',')+']';gap=mind;return v;}
if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==='string'){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}
v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+
mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}
if(typeof JSON.stringify!=='function'){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}
rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}
return str('',{'':value});};}
if(typeof JSON.parse!=='function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}
return reviver.call(holder,key,value);}
cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+
('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}
if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}
throw new SyntaxError('JSON.parse');};}});global_namespace.Define('startpad.timer',function(NS){NS.Extend(NS,{MSNow:function()
{return new Date().getTime();}});NS.Timer=function(ms,fnCallback)
{this.ms=ms;this.fnCallback=fnCallback;return this;};NS.Timer.prototype={constructor:NS.Timer,fActive:false,fRepeat:false,fInCallback:false,fReschedule:false,Repeat:function(f)
{if(f===undefined)
{f=true;}
this.fRepeat=f;return this;},Ping:function()
{if(!this.fActive)
{return;}
if(this.fInCallback)
{this.fReschedule=true;return;}
this.fInCallback=true;try
{this.fnCallback();}
catch(e)
{console.error("Error in timer callback: "+e.message+"("+e.name+")");}
this.fInCallback=false;if(this.fActive&&(this.fRepeat||this.fReschedule))
{this.Active(true);}},Active:function(fActive)
{if(fActive===undefined)
{fActive=true;}
this.fActive=fActive;this.fReschedule=false;if(this.iTimer)
{window.clearTimeout(this.iTimer);this.iTimer=undefined;}
if(fActive)
{this.iTimer=window.setTimeout(this.Ping.FnMethod(this),this.ms);}
return this;}};});global_namespace.Define('startpad.vector',function(NS){NS.Extend(NS,{x:0,y:1,x2:2,y2:3,SubFrom:function(v1,v2)
{for(var i=0;i<v1.length;i++)
{v1[i]=v1[i]-v2[i%v2.length];}
return v1;},Sub:function(v1,v2)
{var vDiff=NS.Copy(v1);return NS.SubFrom(vDiff,v2);},AddTo:function(vSum)
{for(var iarg=1;iarg<arguments.length;iarg++)
{var v=arguments[iarg];for(var i=0;i<vSum.length;i++)
{vSum[i]+=v[i%v.length];}}
return vSum;},Add:function()
{var vSum=NS.Copy(arguments[0]);var args=NS.Copy(arguments);args[0]=vSum;return NS.AddTo.apply(undefined,args);},Max:function()
{var vMax=NS.Copy(arguments[0]);for(var iarg=1;iarg<arguments.length;iarg++)
{var v=arguments[iarg];for(var i=0;i<vMax.length;i++)
{if(v[i]>vMax[i])
{vMax[i]=v[i];}}}
return vMax;},Mult:function()
{var vProd=1;var i;for(var iarg=0;iarg<arguments.length;iarg++)
{var v=arguments[iarg];if(typeof v==="number")
{if(typeof vProd==="number")
{vProd*=v;}
else
{for(i=0;i<vProd.length;i++)
{vProd[i]*=v;}}}
else
{if(typeof vProd==="number")
{var vT=vProd;vProd=NS.Copy(v);for(i=0;i<vProd.length;i++)
{vProd[i]*=vT;}}
else
{if(v.length!==vProd.length)
{throw new Error("Mismatched Vector Size");}
for(i=0;i<vProd.length;i++)
{vProd[i]*=v[i];}}}}
return vProd;},Floor:function(v)
{var vFloor=[];for(var i=0;i<v.length;i++)
{vFloor[i]=Math.floor(v[i]);}
return vFloor;},DotProduct:function()
{var v=NS.Mult.apply(undefined,arguments);var s=0;for(var i=0;i<v.length;i++)
{s+=v[i];}
return s;},Append:function()
{var vAppend=[];for(var iarg=0;iarg<arguments.length;iarg++)
{var v=arguments[iarg];for(var i=0;i<v.length;i++)
{vAppend.push(v[i]);}}
return vAppend;},Equal:function(v1,v2)
{if(typeof v1!=typeof v2)
return false;if(typeof v1=='undefined')
return true;for(var i=0;i<v1.length;i++)
{if(v1[i]!==v2[i])
{return false;}}
return true;},UL:function(rc)
{return rc.slice(0,2);},LR:function(rc)
{return rc.slice(2,4);},Size:function(rc)
{return NS.Sub(NS.LR(rc),NS.UL(rc));},NumInRange:function(num,numMin,numMax)
{return num>=numMin&&num<=numMax;},ClipToRange:function(num,numMin,numMax)
{if(num<numMin)
return numMin;if(num>numMax)
return numMax;return num;},PtInRect:function(pt,rc)
{return NS.NumInRange(pt[NS.x],rc[NS.x],rc[NS.x2])&&NS.NumInRange(pt[NS.y],rc[NS.y],rc[NS.y2]);},PtClipToRect:function(pt,rc)
{return[NS.ClipToRange(pt[NS.x],rc[NS.x],rc[NS.x2]),NS.ClipToRange(pt[NS.y],rc[NS.y],rc[NS.y2])];},RcClipToRect:function(rc,rcClip)
{return NS.Append(NS.PtClipToRect(NS.UL(rc),rcClip),NS.PtClipToRect(NS.LR(rc),rcClip));},RcExpand:function(rc,ptSize)
{return NS.Append(NS.Sub(NS.UL(rc),ptSize),NS.Add(NS.LR(rc),ptSize));},KeepInRect:function(rcIn,rcBound)
{var ptFixSize=NS.Max([0,0],NS.Sub(NS.Size(rcIn),NS.Size(rcBound)));rcIn[NS.x2]-=ptFixSize[NS.x];rcIn[NS.y2]-=ptFixSize[NS.y];var dx=0;dy=0;dx=Math.max(0,rcBound[NS.x]-rcIn[NS.x]);dy=Math.max(0,rcBound[NS.y]-rcIn[NS.y]);if(dx==0)
dx=Math.min(0,rcBound[NS.x2]-rcIn[NS.x2]);if(dy==0)
dy=Math.min(0,rcBound[NS.y2]-rcIn[NS.y2]);NS.AddTo(rcIn,[dx,dy]);},PtCenter:function(rc,scale)
{if(scale===undefined)
{scale=0.5;}
if(typeof scale==="number")
{scale=[scale,scale];}
var pt=NS.Mult(scale,NS.LR(rc));scale=NS.Sub([1,1],scale);NS.AddTo(pt,NS.Mult(scale,NS.UL(rc)));return pt;},PtRegistration:function(rc,iReg)
{var xScale=(iReg%3)*0.5;var yScale=Math.floor(iReg/3)*0.5;return NS.PtCenter(rc,[xScale,yScale]);},IRegClosest:function(pt,rc)
{var aPoints=[];for(var i=0;i<9;i++)
{aPoints.push(NS.PtRegistration(rc,i));}
return NS.IPtClosest(pt,aPoints)[0];},RectDeltaReg:function(rc,dpt,iReg,ptSizeMin,rcBounds)
{if(iReg==4)
{var rcT=NS.Add(rc,dpt);if(rcBounds)
NS.KeepInRect(rcT,rcBounds);return rcT;}
var iX=iReg%3;if(iX==1)
iX=undefined;var iY=Math.floor(iReg/3);if(iY==1)
iY=undefined;function ApplyDelta(rc,dpt)
{var rcDelta=[0,0,0,0];if(iX!=undefined)
rcDelta[iX]=dpt[0];if(iY!=undefined)
rcDelta[iY+1]=dpt[1];return NS.Add(rc,rcDelta);}
var rcT=ApplyDelta(rc,dpt);if(!ptSizeMin)
ptSizeMin=[0,0];var ptSize=NS.Size(rcT);var ptFixSize=NS.Max([0,0],NS.Sub(ptSizeMin,ptSize));if(iX==0)
ptFixSize[0]*=-1;if(iY==0)
ptFixSize[1]*=-1;rcT=ApplyDelta(rcT,ptFixSize);if(rcBounds)
NS.KeepInRect(rcT,rcBounds);return rcT;},IPtClosest:function(pt)
{var d2Min=undefined;var ptClosest=undefined;var iClosest=undefined;var iPt=0;for(var iarg=1;iarg<arguments.length;iarg++)
{var v=arguments[iarg];if(typeof v[0]=="number")
{var d2=NS.Distance2(pt,v);if(d2Min==undefined||d2<d2Min)
{d2Min=d2;ptClosest=v;iClosest=iPt;}
iPt++;}
else
{for(var i=0;i<v.length;i++)
{vT=v[i];var d2=NS.Distance2(pt,vT);if(d2Min==undefined||d2<d2Min)
{d2Min=d2;ptClosest=vT;iClosest=iPt;}
iPt++;}}}
return[iClosest,ptClosest];},Distance2:function(v1,v2)
{var d2=0;for(var i=0;i<v1.length;i++)
d2+=Math.pow((v2[i]-v1[i]),2);return d2;},BoundingBox:function()
{var vPoints=NS.Append.apply(undefined,arguments);if(vPoints.length%2!==0)
{throw Error("Invalid arguments to BoundingBox");}
var ptMin=vPoints.slice(0,2),ptMax=vPoints.slice(0,2);for(var ipt=2;ipt<vPoints.length;ipt+=2)
{var pt=vPoints.slice(ipt,ipt+2);if(pt[0]<ptMin[0])
{ptMin[0]=pt[0];}
if(pt[1]<ptMin[1])
{ptMin[1]=pt[1];}
if(pt[0]>ptMax[0])
{ptMax[0]=pt[0];}
if(pt[1]>ptMax[1])
{ptMax[1]=pt[1];}}
return[ptMin[0],ptMin[1],ptMax[0],ptMax[1]];},JSON:function(v)
{var sRect="[";var chSep="";for(i=0;i<v.length;i++)
{sRect+=chSep+v[i];chSep=",";}
sRect+="]";return sRect;}});NS.Copy=NS.Append;});global_namespace.Define('startpad.DOM',function(NS){var Vector=NS.Import('startpad.vector');NS.Extend(NS,{x:0,y:1,x2:2,y2:3,PtClient:function(elt)
{var pt=[0,0];while(elt.offsetParent!==null)
{pt[0]+=elt.offsetLeft;pt[1]+=elt.offsetTop;elt=elt.offsetParent;}
return pt;},PtSize:function(elt)
{return[elt.offsetWidth,elt.offsetHeight];},RcClient:function(elt)
{var rc=NS.PtClient(elt);var ptSize=NS.PtSize(elt);rc.push(rc[NS.x]+ptSize[NS.x],rc[NS.y]+ptSize[NS.y]);return rc;},RcOffset:function(elt)
{var rc=[elt.offsetLeft,elt.offsetTop];var ptSize=NS.PtSize(elt);rc.push(rc[NS.x]+ptSize[NS.x],rc[NS.y]+ptSize[NS.y]);return rc;},PtMouse:function(evt)
{var x=document.documentElement.scrollLeft||document.body.scrollLeft;var y=document.documentElement.scrollTop||document.body.scrollTop;return[x+evt.clientX,y+evt.clientY];},RcWindow:function()
{var x=document.documentElement.scrollLeft||document.body.scrollLeft;var y=document.documentElement.scrollTop||document.body.scrollTop;var dx=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth;var dy=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight;return[x,y,x+dx,y+dy];},SetAbsPosition:function(elt,pt)
{elt.style.top=pt[1]+'px';elt.style.left=pt[0]+'px';},SetSize:function(elt,pt)
{elt.style.width=pt[0]+'px';elt.style.height=pt[1]+'px';},SetRc:function(elt,rc)
{this.SetAbsPosition(elt,Vector.UL(rc));this.SetSize(elt,Vector.Size(rc));},RemoveChildren:function(node)
{for(var child=node.firstChild;child;child=node.firstChild)
{node.removeChild(child);}},SetFocusIfVisible:function(elt)
{if(!elt)
return;var rcElt=NS.RcClient(elt);var rcWin=NS.RcWindow();if(Vector.PtInRect(Vector.UL(rcElt),rcWin)||Vector.PtInRect(Vector.LR(rcElt),rcWin))
{elt.focus();}},ScrollToBottom:function(elt)
{elt.scrollTop=elt.scrollHeight;},BindIDs:function(aIDs)
{var mParts={};if(aIDs===undefined)
{var aAll=document.getElementsByTagName("*");for(var i=0;i<aAll.length;i++)
{var elt=aAll[i];if(elt.id&&elt.id[0]!='_')
mParts[elt.id]=elt;}
return mParts;}
for(var i=0;i<aIDs.length;i++)
{var sID=aIDs[i];mParts[sID]=document.getElementById(sID);}
return mParts;},$:function(sSelector)
{var ch=sSelector.substr(0,1);if(ch=='.'||ch=='#')
sSelector=sSelector.substr(1);if(ch=='#')
return document.getElementById(sSelector);if(ch=='.')
return NS.GetElementsByClassName(sSelector);return document.getElementsByTagName(sSelector);},GetElementsByClassName:function(sClassName)
{if(document.getElementsByClassName)
return document.getElementsByClassName(sClassName);return NS.GetElementsByTagClassName(document,"*",sClassName);},GetElementsByTagClassName:function(oElm,strTagName,strClassName)
{var arrElements=(strTagName=="*"&&oElm.all)?oElm.all:oElm.getElementsByTagName(strTagName);var arrReturnElements=new Array();strClassName=strClassName.replace(/\-/g,"\\-");var oRegExp=new RegExp("(^|\\s)"+strClassName+"(\\s|$)");var oElement;for(var i=0;i<arrElements.length;i++)
{oElement=arrElements[i];if(oRegExp.test(oElement.className))
{arrReturnElements.push(oElement);}}
return(arrReturnElements)},GetText:function(elt)
{return elt.textContent||elt.innerText||"";},SetText:function(elt,st)
{if(elt.textContent!=undefined)
elt.textContent=st;else
elt.innerText=st;}});});global_namespace.Define('startpad.cookies',function(NS){NS.Extend(NS,{SetCookie:function(name,value,days,fSecure)
{var st=encodeURIComponent(name)+"="+encodeURIComponent(value);if(days!==undefined)
{st+=";max-age="+days*60*60*24;}
if(fSecure)
{st+=";secure";}
st+=";path=/";document.cookie=st;},GetCookies:function()
{var st=document.cookie;var rgPairs=st.split(";");var obj={};for(var i=0;i<rgPairs.length;i++)
{rgPairs[i]=rgPairs[i].Trim();var rgC=rgPairs[i].split("=");var val=decodeURIComponent(rgC[1]);var rg=val.match('^"(.*)"$');if(rg)
{val=rg[1].replace('\\"','"');}
obj[decodeURIComponent(rgC[0])]=val;}
return obj;}});});global_namespace.Define('startpad.events',function(NS){var DOM=NS.Import('startpad.DOM');var Vector=NS.Import('startpad.vector');NS.Extend(NS,{fnHandlers:[],AddEventFn:function(elem,stEvt,fnCallback,fCapture)
{if(!fCapture)
fCapture=false;var fnWrap=function(){arguments[0]=NS.WrapEvent(arguments[0]);return fnCallback.apply(elem,arguments);};if(elem.addEventListener)
{elem.addEventListener(stEvt,fnWrap,fCapture);}
else if(elem.attachEvent)
{elem.attachEvent('on'+stEvt,fnWrap);}
else
{elem['on'+stEvt]=fnWrap;}
NS.fnHandlers.push({elem:elem,evt:stEvt,fCapture:fCapture,fn:fnWrap});return NS.fnHandlers.length-1;},RemoveEventFn:function(ifn)
{var fnHand=NS.fnHandlers[ifn];if(!fnHand)
{return;}
NS.fnHandlers[ifn]=undefined;var elem=fnHand.elem;if(elem.removeEventListener)
{elem.removeEventListener(fnHand.evt,fnHand.fn,fnHand.fCapture);}
else if(elem.attachEvent)
{elem.detachEvent('on'+fnHand.evt,fnHand.fn);}
else
{elem['on'+fnHand.evt]=undefined;}},WrapEvent:function(evt)
{evt=evt||window.evt||{};if(!evt.preventDefault)
{evt.preventDefault=function(){this.returnValue=false;};}
if(!evt.stopPropagation)
evt.stopPropagation=function(){this.cancelBubble=true;};if(!evt.target)
evt.target=evt.srcElement||document;if(evt.pageX==null&&evt.clientX!=null){var doc=document.documentElement,body=document.body;evt.pageX=evt.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);evt.pageY=evt.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}
return evt;},GetChar:function(evt)
{var code=evt.keyCode||evt.which;return String.fromCharCode(code);},DisableSelection:function(elt)
{elt.style.cursor="default";NS.AddEventFn(elt,'mousedown',function(evt){evt.preventDefault();return false;});},aCursors:['nw-resize','n-resize','ne-resize','w-resize','move','e-resize','sw-resize','s-resize','se-resize'],Draggable:function(elem,fnCallback,opt)
{var fDragging=false;var ptMouse,ptStart,ptLast;var dResize=4;var iReg=4;opt=NS.Extend({fInclusive:false,fResize:false,rcBounds:null,fnCallback:null},opt);var rcElem;var rcClient;NS.AddEventFn(elem,'mousedown',function(evt){if(!opt.fInclusive&&evt.target!=elem)
return;evt.preventDefault();evt.stopPropagation();fDragging=true;ptStart=[evt.pageX,evt.pageY];ptLast=ptStart;if(opt.fnStart)
opt.fnStart();return false;},false);NS.AddEventFn(document,'mousemove',function(evt){var ptNow=[evt.pageX,evt.pageY];if(!fDragging)
{rcElem=DOM.RcOffset(elem);rcClient=DOM.RcClient(elem);if(!Vector.PtInRect(ptNow,rcClient))
return true;iReg=opt.fResize?Vector.IRegClosest(ptNow,rcClient):4;elem.style.cursor=NS.aCursors[iReg];return true;}
evt.preventDefault();evt.stopPropagation();if(Vector.Equal(ptNow,ptLast))
return false;ptLast=ptNow;if(opt.fnMove)
{opt.fnMove(Vector.Sub(ptNow,ptStart));return false;}
var dpt=Vector.Sub(ptNow,ptStart);var rcNew=Vector.RectDeltaReg(rcElem,dpt,iReg,[12,12],opt.rcBounds);DOM.SetRc(elem,rcNew);return false;},false);NS.AddEventFn(document,'mouseup',function(evt){if(!fDragging)
return true;fDragging=false;evt.preventDefault();evt.stopPropagation();if(fnCallback)
fnCallback(Vector.Sub(ptLast,ptStart));return false;},false);}});});global_namespace.Define('startpad.data',function(NS){var DateUtil=NS.Import('startpad.date-util');var Timer=NS.Import('startpad.timer');var JSON=NS.Import('JSON');NS.Extend(NS,{sSiteName:"web",SetSiteName:function(sName)
{NS.sSiteName=sName;},StParams:function(obj)
{if(obj===undefined||obj===null)
{return"";}
var stDelim="?";var stParams="";for(var prop in obj)
{var sVal;if(!obj.hasOwnProperty(prop)||obj[prop]===undefined||obj[prop]==null)
continue;stParams+=stDelim;stParams+=encodeURIComponent(prop);if(typeof obj[prop]=="object")
{if(obj[prop].constructor===Date)
sVal=DateUtil.ISO.FromDate(obj[prop]);else
sVal=JSON.stringify(obj[prop]);}
else
sVal=obj[prop].toString();stParams+="="+encodeURIComponent(sVal);stDelim="&";}
if(obj._anchor)
{stParams+="#"+encodeURIComponent(obj._anchor);}
return stParams;},ParseParams:function(stURL)
{var rgQuery=stURL.match(/([^?#]*)(#.*)?$/);if(!rgQuery)
{return{};}
var objParse={};if(rgQuery[2])
{objParse._anchor=decodeURIComponent(rgQuery[2].substring(1));}
var rgParams=rgQuery[1].split("&");for(var i=0;i<rgParams.length;i++)
{var ich=rgParams[i].indexOf("=");var stName;var stValue;if(ich===-1)
{stName=rgParams[i];stValue="";continue;}
else
{stName=rgParams[i].substring(0,ich);stValue=rgParams[i].substring(ich+1);}
objParse[decodeURIComponent(stName)]=decodeURIComponent(stValue);}
return objParse;}});NS.ScriptData=function(stURL,fnCallback)
{this.stURL=stURL;this.fnCallback=fnCallback;this.rid=0;this.fInCall=false;this.Activate();return this;};NS.ScriptData.ActiveCalls=[];NS.ScriptData.ridNext=1;NS.ScriptData.stMsg={errBusy:"Call made while another call is in progress.",errUnmatched:"Callback received for inactive call: ",errTimeout:"Server did not respond before timeout."};NS.ScriptData.prototype={constructor:NS.ScriptData,rid:0,msTimeout:5000,cchMax:1500,Activate:function()
{if(this.rid!=0)
return;this.rid=NS.ScriptData.ridNext++;NS.ScriptData.ActiveCalls[this.rid]=this;},Call:function(objParams,fnCallback)
{this.Activate();if(this.fInCall)
throw(new Error(NS.ScriptData.stMsg.errBusy));this.fInCall=true;if(fnCallback)
this.fnCallback=fnCallback;if(objParams===undefined)
objParams={};objParams.callback=this.CallbackName();this.script=document.createElement('script');this.script.src=this.stURL+NS.StParams(objParams);if(this.script.src.length>this.cchMax)
{var pd=new NS.PostData(this.stURL,this.fnCallback);pd.Call(objParams);this.Cancel();return;}
this.tm=new Timer.Timer(this.msTimeout,this.Timeout.FnMethod(this)).Active(true);this.dCall=new Date();document.body.appendChild(this.script);console.info("script["+this.rid+"]: "+this.script.src);return this;},CallbackName:function()
{return NS.SGlobalName("ScriptData.ActiveCalls")+"["+this.rid+"].Callback"},Callback:function()
{var rid=this.rid;this.Cancel();console.info("("+rid+") -> ",arguments);if(this.fnCallback)
this.fnCallback.apply(undefined,arguments);},Timeout:function()
{var rid=this.rid;console.info("("+rid+") -> TIMEOUT");this.Cancel();if(this.fnCallback)
this.fnCallback({status:"Fail/Timeout",message:"The "+NS.sSiteName+" server failed to respond."});},Cancel:function()
{NS.ScriptData.Cancel(this.rid);}};NS.ScriptData.Cancel=function(rid)
{if(rid==0)
return;var sd=NS.ScriptData.ActiveCalls[rid];NS.ScriptData.ActiveCalls[rid]=undefined;if(sd&&sd.rid==rid)
{sd.rid=0;sd.fInCall=false;if(sd.tm)
sd.tm.Active(false);}};NS.PostData=function(stURL,fnCallback)
{this.stURL=stURL;this.fnCallback=fnCallback;return this;}
NS.PostData.prototype={constructor:NS.PostData,msTimeout:5000,Call:function(objParams,fnCallback)
{if(fnCallback)
this.fnCallback=fnCallback;var reDomain=/^http:\/\/[^\/]+/;var sDomain='';var aDomain=reDomain.exec(this.stURL);if(aDomain!=null)
sDomain=aDomain[0];var sGetResult=sDomain+'/get-result.json';this.sd=new NS.ScriptData(sGetResult,this.fnCallback);if(objParams===undefined)
objParams={};objParams.rid=this.sd.rid;objParams.sid=NS.sid;objParams.callback=this.sd.CallbackName();this.iframe=document.createElement("iframe");this.iframe.style.width="0px";this.iframe.style.height="0px";this.iframe.style.border="0px";document.body.appendChild(this.iframe);this.doc=this.iframe.contentDocument||this.iframe.contentWindow.document;console.info("post["+this.sd.rid+"]: "+this.stURL);var stb=new NS.StBuf();stb.Append("<html><body><form name=\"PostData\" action=\""+this.stURL+"\" method=\"post\">");for(prop in objParams)
{var sValue;if(!objParams.hasOwnProperty(prop))
continue;stb.Append("<input type=\"text\" name=\""+prop+"\" value=");if(typeof objParams[prop]=='object')
sValue=NS.StAttrQuote(JSON.stringify(objParams[prop]));else
sValue=NS.StAttrQuote(objParams[prop]);stb.Append(sValue);stb.Append(">");console.info("    "+prop+": "+sValue);}
stb.Append("</input></form></body></html>");NS.AddEventFn(this.iframe,"load",this.Loaded.FnMethod(this).FnArgs(this.rid));this.doc.write(stb.toString());this.tm=new Timer.Timer(this.msTimeout,this.Timeout.FnMethod(this)).Active(true);this.msCallStart=new Date().getTime();this.doc.PostData.submit();},Loaded:function(evt)
{this.msResponse=new Date().getTime()-this.msCallStart;console.info("("+this.sd.rid+") -> POST COMPLETE "+this.msResponse+" ms");this.sd.Call({sid:NS.sid,ridPost:this.sd.rid});},GetResult:function(obj,rid)
{console.info("Get Result",obj)
if(this.rid!=rid)
return;this.Cancel();this.fnCallback(obj);},Timeout:function()
{this.sd.Timeout();},Cancel:function()
{NS.ScriptData.Cancel(this.rid);}};});global_namespace.Define('startpad.date-util',function(NS){var Base=NS.Import('startpad.base');var Format=NS.Import('startpad.format-util');NS.ISO={tz:-(new Date().getTimezoneOffset())/60,enumMatch:new Base.Enum([1,"YYYY","MM","DD",5,"hh","mm",8,"ss",10,"sss","tz"]),FromDate:function(dt,fTime)
{var dtT=new Date();dtT.setTime(dt.getTime());var tz=dt.__tz;if(tz==undefined)
tz=NS.ISO.tz;if(tz)
dtT.setTime(dtT.getTime()+60*60*1000*tz);var s=dtT.getUTCFullYear()+"-"+Format.SDigits(dtT.getUTCMonth()+1,2)+"-"+Format.SDigits(dtT.getUTCDate(),2);var ms=dtT%(24*60*60*1000);if(ms||fTime||tz!=0)
{s+="T"+Format.SDigits(dtT.getUTCHours(),2)+":"+Format.SDigits(dtT.getUTCMinutes(),2);ms=ms%(60*1000);if(ms)
s+=":"+Format.SDigits(dtT.getUTCSeconds(),2);if(ms%1000)
s+="."+Format.SDigits(dtT.getUTCMilliseconds(),3);if(tz==0)
s+="Z";else
s+=Format.SDigits(tz,2,true);}
return s;},ToDate:function(sISO,objExtra)
{var e=NS.ISO.enumMatch;var aParts=sISO.match(/^(\d{4})-?(\d\d)-?(\d\d)(T(\d\d):?(\d\d):?((\d\d)(\.(\d{0,6}))?)?(Z|[\+-]\d\d))?$/);if(!aParts)
return undefined;aParts[e.mm]=aParts[e.mm]||0;aParts[e.ss]=aParts[e.ss]||0;aParts[e.sss]=aParts[e.sss]||0;aParts[e.sss]=Math.round(+('0.'+aParts[e.sss])*1000);if(!aParts[e.tz]||aParts[e.tz]==="Z")
aParts[e.tz]=0;else
aParts[e.tz]=parseInt(aParts[e.tz]);if(aParts[e.MM]>59||aParts[e.DD]>31||aParts[e.hh]>23||aParts[e.mm]>59||aParts[e.ss]>59||aParts[e.tz]<-23||aParts[e.tz]>23)
return undefined;var dt=new Date();dt.setUTCFullYear(aParts[e.YYYY],aParts[e.MM]-1,aParts[e.DD]);if(aParts[e.hh])
{dt.setUTCHours(aParts[e.hh],aParts[e.mm],aParts[e.ss],aParts[e.sss]);}
else
dt.setUTCHours(0,0,0,0);dt.__tz=aParts[e.tz];if(aParts[e.tz])
dt.setTime(dt.getTime()-dt.__tz*(60*60*1000));if(objExtra)
NS.Extend(dt,objExtra);return dt;}};});global_namespace.Define('startpad.bar-charts',function(NS){var Timer=NS.Import('startpad.timer');var DOM=NS.Import('startpad.DOM');NS.Extend(NS,{DisplayBars:function(widthMax)
{var scaleMax=10.0;var aBars=DOM.$('.bar');var aBarHolders=DOM.$('.bar-holder');if(aBars.length===0)
{return;}
for(var i=0;i<aBarHolders.length;i++)
{var divHolder=aBarHolders[i];divHolder.style.width=widthMax+"px";}
var width=0;for(i=0;i<aBars.length;i++)
{var divBar=aBars[i];var widthT=parseFloat(divBar.getAttribute('bar_value'));if(widthT>width)
{width=widthT;}}
if(width*scaleMax>widthMax)
{scaleMax=widthMax/width;}
i=1;var tm=new Timer.Timer(75,function()
{NS.ScaleBars(scaleMax*i/10);if(i===10)
{tm.Active(false);}
i++;}).Repeat().Active();},ScaleBars:function(scale)
{var aBars=DOM.$('.bar');for(var i=0;i<aBars.length;i++)
{var divBar=aBars[i];var width=parseFloat(divBar.getAttribute('bar_value'));divBar.style.width=(width*scale)+"px";}}});});global_namespace.Define('schillmania.soundmanager2',function(NS){NS.soundManager=null;function SoundManager(smURL,smID){this.flashVersion=8;this.debugMode=true;this.useConsole=true;this.consoleOnly=false;this.waitForWindowLoad=false;this.nullURL='null.mp3';this.allowPolling=true;this.useMovieStar=false;this.bgColor='#ffffff';this.useHighPerformance=false;this.flashLoadTimeout=750;this.wmode=null;this.allowFullScreen=true;this.defaultOptions={'autoLoad':false,'stream':true,'autoPlay':false,'onid3':null,'onload':null,'whileloading':null,'onplay':null,'onpause':null,'onresume':null,'whileplaying':null,'onstop':null,'onfinish':null,'onbeforefinish':null,'onbeforefinishtime':5000,'onbeforefinishcomplete':null,'onjustbeforefinish':null,'onjustbeforefinishtime':200,'multiShot':true,'position':null,'pan':0,'volume':100};this.flash9Options={'isMovieStar':null,'usePeakData':false,'useWaveformData':false,'useEQData':false,'onbufferchange':null,'ondataerror':null};this.movieStarOptions={'onmetadata':null,'useVideo':false,'bufferTime':null};var SMSound=null;var _s=this;this.version=null;this.versionNumber='V2.95a.20090501';this.movieURL=null;this.url=null;this.altURL=null;this.swfLoaded=false;this.enabled=false;this.o=null;this.id=(smID||'sm2movie');this.oMC=null;this.sounds={};this.soundIDs=[];this.muted=false;this.isFullScreen=false;this.isIE=(navigator.userAgent.match(/MSIE/i));this.isSafari=(navigator.userAgent.match(/safari/i));this.isGecko=(navigator.userAgent.match(/gecko/i));this.debugID='soundmanager-debug';this.specialWmodeCase=false;this._debugOpen=true;this._didAppend=false;this._appendSuccess=false;this._didInit=false;this._disabled=false;this._windowLoaded=false;this._hasConsole=(typeof console!='undefined'&&typeof console.log!='undefined');this._debugLevels=['log','info','warn','error'];this._defaultFlashVersion=8;this._oRemoved=null;this._oRemovedHTML=null;var _$=function(sID){return document.getElementById(sID);};this.filePatterns={flash8:/\.mp3(\?.*)?$/i,flash9:/\.mp3(\?.*)?$/i};this.netStreamTypes=['aac','flv','mov','mp4','m4v','f4v','m4a','mp4v','3gp','3g2'];this.netStreamPattern=new RegExp('\\.('+this.netStreamTypes.join('|')+')(\\?.*)?$','i');this.filePattern=null;this.features={buffering:false,peakData:false,waveformData:false,eqData:false,movieStar:false};this.sandbox={'type':null,'types':{'remote':'remote (domain-based) rules','localWithFile':'local with file access (no internet access)','localWithNetwork':'local with network (internet access only, no local access)','localTrusted':'local, trusted (local + internet access)'},'description':null,'noRemote':null,'noLocal':null};this._setVersionInfo=function(){if(_s.flashVersion!=8&&_s.flashVersion!=9){alert('soundManager.flashVersion must be 8 or 9. "'+_s.flashVersion+'" is invalid. Reverting to '+_s._defaultFlashVersion+'.');_s.flashVersion=_s._defaultFlashVersion;}
_s.version=_s.versionNumber+(_s.flashVersion==9?' (AS3/Flash 9)':' (AS2/Flash 8)');if(_s.flashVersion>8){_s.defaultOptions=_s._mergeObjects(_s.defaultOptions,_s.flash9Options);_s.features.buffering=true;}
if(_s.flashVersion>8&&_s.useMovieStar){_s.defaultOptions=_s._mergeObjects(_s.defaultOptions,_s.movieStarOptions);_s.filePatterns.flash9=new RegExp('\\.(mp3|'+_s.netStreamTypes.join('|')+')(\\?.*)?$','i');_s.features.movieStar=true;}else{_s.useMovieStar=false;_s.features.movieStar=false;}
_s.filePattern=_s.filePatterns[(_s.flashVersion!=8?'flash9':'flash8')];_s.movieURL=(_s.flashVersion==8?'soundmanager2.swf':'soundmanager2_flash9.swf');_s.features.peakData=_s.features.waveformData=_s.features.eqData=(_s.flashVersion>8);};this._overHTTP=(document.location?document.location.protocol.match(/http/i):null);this._waitingforEI=false;this._initPending=false;this._tryInitOnFocus=(this.isSafari&&typeof document.hasFocus=='undefined');this._isFocused=(typeof document.hasFocus!='undefined'?document.hasFocus():null);this._okToDisable=!this._tryInitOnFocus;this.useAltURL=!this._overHTTP;var flashCPLink='http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html';this.strings={notReady:'Not loaded yet - wait for soundManager.onload() before calling sound-related methods',appXHTML:'soundManager._createMovie(): appendChild/innerHTML set failed. May be app/xhtml+xml DOM-related.'};this.supported=function(){return(_s._didInit&&!_s._disabled);};this.getMovie=function(smID){return _s.isIE?window[smID]:(_s.isSafari?_$(smID)||document[smID]:_$(smID));};this.loadFromXML=function(sXmlUrl){try{_s.o._loadFromXML(sXmlUrl);}catch(e){_s._failSafely();return true;}};this.createSound=function(oOptions){if(!_s._didInit){throw _s._complain('soundManager.createSound(): '+_s.strings.notReady,arguments.callee.caller);}
if(arguments.length==2){oOptions={'id':arguments[0],'url':arguments[1]};}
var thisOptions=_s._mergeObjects(oOptions);var _tO=thisOptions;_s._wD('soundManager.createSound(): '+_tO.id+' ('+_tO.url+')',1);if(_s._idCheck(_tO.id,true)){_s._wD('soundManager.createSound(): '+_tO.id+' exists',1);return _s.sounds[_tO.id];}
if(_s.flashVersion>8&&_s.useMovieStar){if(_tO.isMovieStar===null){_tO.isMovieStar=(_tO.url.match(_s.netStreamPattern)?true:false);}
if(_tO.isMovieStar){_s._wD('soundManager.createSound(): using MovieStar handling');}
if(_tO.isMovieStar&&(_tO.usePeakData||_tO.useWaveformData||_tO.useEQData)){_s._wD('Warning: peak/waveform/eqData features unsupported for non-MP3 formats');_tO.usePeakData=false;_tO.useWaveformData=false;_tO.useEQData=false;}}
_s.sounds[_tO.id]=new SMSound(_tO);_s.soundIDs[_s.soundIDs.length]=_tO.id;if(_s.flashVersion==8){_s.o._createSound(_tO.id,_tO.onjustbeforefinishtime);}else{_s.o._createSound(_tO.id,_tO.url,_tO.onjustbeforefinishtime,_tO.usePeakData,_tO.useWaveformData,_tO.useEQData,_tO.isMovieStar,(_tO.isMovieStar?_tO.useVideo:false),(_tO.isMovieStar?_tO.bufferTime:false));}
if(_tO.autoLoad||_tO.autoPlay){if(_s.sounds[_tO.id]){_s.sounds[_tO.id].load(_tO);}}
if(_tO.autoPlay){_s.sounds[_tO.id].play();}
return _s.sounds[_tO.id];};this.createVideo=function(oOptions){if(arguments.length==2){oOptions={'id':arguments[0],'url':arguments[1]};}
if(_s.flashVersion>=9){oOptions.isMovieStar=true;oOptions.useVideo=true;}else{_s._wD('soundManager.createVideo(): flash 9 required for video. Exiting.',2);return false;}
if(!_s.useMovieStar){_s._wD('soundManager.createVideo(): MovieStar mode not enabled. Exiting.',2);}
return _s.createSound(oOptions);};this.destroySound=function(sID,bFromSound){if(!_s._idCheck(sID)){return false;}
for(var i=0;i<_s.soundIDs.length;i++){if(_s.soundIDs[i]==sID){_s.soundIDs.splice(i,1);continue;}}
_s.sounds[sID].unload();if(!bFromSound){_s.sounds[sID].destruct();}
delete _s.sounds[sID];};this.destroyVideo=this.destroySound;this.load=function(sID,oOptions){if(!_s._idCheck(sID)){return false;}
_s.sounds[sID].load(oOptions);};this.unload=function(sID){if(!_s._idCheck(sID)){return false;}
_s.sounds[sID].unload();};this.play=function(sID,oOptions){if(!_s._didInit){throw _s._complain('soundManager.play(): '+_s.strings.notReady,arguments.callee.caller);}
if(!_s._idCheck(sID)){if(typeof oOptions!='Object'){oOptions={url:oOptions};}
if(oOptions&&oOptions.url){_s._wD('soundController.play(): attempting to create "'+sID+'"',1);oOptions.id=sID;_s.createSound(oOptions);}else{return false;}}
_s.sounds[sID].play(oOptions);};this.start=this.play;this.setPosition=function(sID,nMsecOffset){if(!_s._idCheck(sID)){return false;}
_s.sounds[sID].setPosition(nMsecOffset);};this.stop=function(sID){if(!_s._idCheck(sID)){return false;}
_s._wD('soundManager.stop('+sID+')',1);_s.sounds[sID].stop();};this.stopAll=function(){_s._wD('soundManager.stopAll()',1);for(var oSound in _s.sounds){if(_s.sounds[oSound]instanceof SMSound){_s.sounds[oSound].stop();}}};this.pause=function(sID){if(!_s._idCheck(sID)){return false;}
_s.sounds[sID].pause();};this.pauseAll=function(){for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].pause();}};this.resume=function(sID){if(!_s._idCheck(sID)){return false;}
_s.sounds[sID].resume();};this.resumeAll=function(){for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].resume();}};this.togglePause=function(sID){if(!_s._idCheck(sID)){return false;}
_s.sounds[sID].togglePause();};this.setPan=function(sID,nPan){if(!_s._idCheck(sID)){return false;}
_s.sounds[sID].setPan(nPan);};this.setVolume=function(sID,nVol){if(!_s._idCheck(sID)){return false;}
_s.sounds[sID].setVolume(nVol);};this.mute=function(sID){if(typeof sID!='string'){sID=null;}
if(!sID){_s._wD('soundManager.mute(): Muting all sounds');for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].mute();}
_s.muted=true;}else{if(!_s._idCheck(sID)){return false;}
_s._wD('soundManager.mute(): Muting "'+sID+'"');_s.sounds[sID].mute();}};this.muteAll=function(){_s.mute();};this.unmute=function(sID){if(typeof sID!='string'){sID=null;}
if(!sID){_s._wD('soundManager.unmute(): Unmuting all sounds');for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].unmute();}
_s.muted=false;}else{if(!_s._idCheck(sID)){return false;}
_s._wD('soundManager.unmute(): Unmuting "'+sID+'"');_s.sounds[sID].unmute();}};this.unmuteAll=function(){_s.unmute();};this.getMemoryUse=function(){if(_s.flashVersion==8){return 0;}
if(_s.o){return parseInt(_s.o._getMemoryUse(),10);}};this.setPolling=function(bPolling){if(!_s.o||!_s.allowPolling){return false;}
_s.o._setPolling(bPolling);};this.disable=function(bNoDisable){if(typeof bNoDisable=='undefined'){bNoDisable=false;}
if(_s._disabled){return false;}
_s._disabled=true;_s._wD('soundManager.disable(): Shutting down',1);for(var i=_s.soundIDs.length;i--;){_s._disableObject(_s.sounds[_s.soundIDs[i]]);}
_s.initComplete(bNoDisable);};this.canPlayURL=function(sURL){return(sURL?(sURL.match(_s.filePattern)?true:false):null);};this.getSoundById=function(sID,suppressDebug){if(!sID){throw new Error('SoundManager.getSoundById(): sID is null/undefined');}
var result=_s.sounds[sID];if(!result&&!suppressDebug){_s._wD('"'+sID+'" is an invalid sound ID.',2);}
return result;};this.onload=function(){NS.soundManager._wD('Warning: soundManager.onload() is undefined.',2);};this.onerror=function(){};this._idCheck=this.getSoundById;this._complain=function(sMsg,oCaller){var sPre='Error: ';if(!oCaller){return new Error(sPre+sMsg);}
var e=new Error('');var stackMsg=null;if(e.stack){try{var splitChar='@';var stackTmp=e.stack.split(splitChar);stackMsg=stackTmp[4];}catch(ee){stackMsg=e.stack;}}
if(typeof console!='undefined'&&typeof console.trace!='undefined'){console.trace();}
var errorDesc=sPre+sMsg+'. \nCaller: '+oCaller.toString()+(e.stack?' \nTop of stacktrace: '+stackMsg:(e.message?' \nMessage: '+e.message:''));return new Error(errorDesc);};var _doNothing=function(){return false;};_doNothing._protected=true;this._disableObject=function(o){for(var oProp in o){if(typeof o[oProp]=='function'&&typeof o[oProp]._protected=='undefined'){o[oProp]=_doNothing;}}
oProp=null;};this._failSafely=function(bNoDisable){if(typeof bNoDisable=='undefined'){bNoDisable=false;}
if(!_s._disabled||bNoDisable){_s._wD('soundManager: Failed to initialise.',2);_s.disable(bNoDisable);}};this._normalizeMovieURL=function(smURL){var urlParams=null;if(smURL){if(smURL.match(/\.swf(\?.*)?$/i)){urlParams=smURL.substr(smURL.toLowerCase().lastIndexOf('.swf?')+4);if(urlParams){return smURL;}}else if(smURL.lastIndexOf('/')!=smURL.length-1){smURL=smURL+'/';}}
return(smURL&&smURL.lastIndexOf('/')!=-1?smURL.substr(0,smURL.lastIndexOf('/')+1):'./')+_s.movieURL;};this._getDocument=function(){return(document.body?document.body:(document.documentElement?document.documentElement:document.getElementsByTagName('div')[0]));};this._getDocument._protected=true;this._createMovie=function(smID,smURL){if(_s._didAppend&&_s._appendSuccess){return false;}
if(window.location.href.indexOf('debug=1')+1){_s.debugMode=true;}
_s._didAppend=true;_s._setVersionInfo();var remoteURL=(smURL?smURL:_s.url);var localURL=(_s.altURL?_s.altURL:remoteURL);_s.url=_s._normalizeMovieURL(_s._overHTTP?remoteURL:localURL);smURL=_s.url;var specialCase=null;if(_s.useHighPerformance&&_s.useMovieStar&&_s.defaultOptions.useVideo===true){specialCase='soundManager note: disabling highPerformance, not applicable with movieStar mode + useVideo';_s.useHighPerformance=false;}
_s.wmode=(!_s.wmode&&_s.useHighPerformance&&!_s.useMovieStar?'transparent':_s.wmode);if(_s.wmode!==null&&_s.flashLoadTimeout!==0&&!_s.useHighPerformance&&!_s.isIE&&navigator.platform.match(/win32/i)){_s.specialWmodeCase=true;_s._wD('soundManager note: Removing wmode, preventing off-screen SWF loading issue');_s.wmode=null;}
if(_s.flashVersion==8){_s.allowFullScreen=false;}
var oEmbed={name:smID,id:smID,src:smURL,width:'100%',height:'100%',quality:'high',allowScriptAccess:'always',bgcolor:_s.bgColor,pluginspage:'http://www.macromedia.com/go/getflashplayer',type:'application/x-shockwave-flash',wmode:_s.wmode,allowfullscreen:(_s.allowFullScreen?'true':'false')};if(!_s.wmode){delete oEmbed.wmode;}
var oObject={id:smID,data:smURL,type:'application/x-shockwave-flash',width:'100%',height:'100%',wmode:_s.wmode};var oMovie=null;var tmp=null;if(_s.isIE){oMovie=document.createElement('div');var movieHTML='<object id="'+smID+'" data="'+smURL+'" type="application/x-shockwave-flash" width="100%" height="100%"><param name="movie" value="'+smURL+'" /><param name="AllowScriptAccess" value="always" /><param name="quality" value="high" />'+(_s.wmode?'<param name="wmode" value="'+_s.wmode+'" /> ':'')+'<param name="bgcolor" value="'+_s.bgColor+'" /><param name="allowFullScreen" value="'+(_s.allowFullScreen?'true':'false')+'" /><!-- --></object>';}else{oMovie=document.createElement('embed');for(tmp in oEmbed){if(oEmbed.hasOwnProperty(tmp)){oMovie.setAttribute(tmp,oEmbed[tmp]);}}}
var oD=document.createElement('div');oD.id=_s.debugID+'-toggle';var oToggle={position:'fixed',bottom:'0px',right:'0px',width:'1.2em',height:'1.2em',lineHeight:'1.2em',margin:'2px',textAlign:'center',border:'1px solid #999',cursor:'pointer',background:'#fff',color:'#333',zIndex:10001};oD.appendChild(document.createTextNode('-'));oD.onclick=_s._toggleDebug;oD.title='Toggle SM2 debug console';if(navigator.userAgent.match(/msie 6/i)){oD.style.position='absolute';oD.style.cursor='hand';}
for(tmp in oToggle){if(oToggle.hasOwnProperty(tmp)){oD.style[tmp]=oToggle[tmp];}}
var oTarget=_s._getDocument();if(oTarget){_s.oMC=_$('sm2-container')?_$('sm2-container'):document.createElement('div');if(!_s.oMC.id){_s.oMC.id='sm2-container';_s.oMC.className='movieContainer';var s=null;var oEl=null;if(_s.useHighPerformance){s={position:'fixed',width:'8px',height:'8px',bottom:'0px',left:'0px'};}else{s={position:'absolute',width:'1px',height:'1px',top:'-999px',left:'-999px'};}
var x=null;for(x in s){if(s.hasOwnProperty(x)){_s.oMC.style[x]=s[x];}}
try{if(!_s.isIE){_s.oMC.appendChild(oMovie);}
oTarget.appendChild(_s.oMC);if(_s.isIE){oEl=_s.oMC.appendChild(document.createElement('div'));oEl.className='sm2-object-box';oEl.innerHTML=movieHTML;}
_s._appendSuccess=true;}catch(e){throw new Error(_s.strings.appXHTML);}}else{_s.oMC.appendChild(oMovie);if(_s.isIE){oEl=_s.oMC.appendChild(document.createElement('div'));oEl.className='sm2-object-box';oEl.innerHTML=movieHTML;}
_s._appendSuccess=true;}
if(!_$(_s.debugID)&&((!_s._hasConsole||!_s.useConsole)||(_s.useConsole&&_s._hasConsole&&!_s.consoleOnly))){var oDebug=document.createElement('div');oDebug.id=_s.debugID;oDebug.style.display=(_s.debugMode?'block':'none');if(_s.debugMode&&!_$(oD.id)){try{oTarget.appendChild(oD);}catch(e2){throw new Error(_s.strings.appXHTML);}
oTarget.appendChild(oDebug);}}
oTarget=null;}
if(specialCase){_s._wD(specialCase);}
_s._wD('-- SoundManager 2 '+_s.version+(_s.useMovieStar?', MovieStar mode':'')+(_s.useHighPerformance?', high performance mode':'')+(_s.wmode?', wmode: '+_s.wmode:'')+' --',1);_s._wD('soundManager._createMovie(): Trying to load '+smURL+(!_s._overHTTP&&_s.altURL?' (alternate URL)':''),1);};this._writeDebug=function(sText,sType,bTimestamp){if(!_s.debugMode){return false;}
if(typeof bTimestamp!='undefined'&&bTimestamp){sText=sText+' | '+new Date().getTime();}
if(_s._hasConsole&&_s.useConsole){var sMethod=_s._debugLevels[sType];if(typeof console[sMethod]!='undefined'){console[sMethod](sText);}else{console.log(sText);}
if(_s.useConsoleOnly){return true;}}
var sDID='soundmanager-debug';try{var o=_$(sDID);if(!o){return false;}
var oItem=document.createElement('div');if(++_s._wdCount%2===0){oItem.className='sm2-alt';}
if(typeof sType=='undefined'){sType=0;}else{sType=parseInt(sType,10);}
oItem.appendChild(document.createTextNode(sText));if(sType){if(sType>=2){oItem.style.fontWeight='bold';}
if(sType==3){oItem.style.color='#ff3333';}}
o.insertBefore(oItem,o.firstChild);}catch(e){}
o=null;};this._writeDebug._protected=true;this._wdCount=0;this._wdCount._protected=true;this._wD=this._writeDebug;this._wDAlert=function(sText){alert(sText);};if(window.location.href.indexOf('debug=alert')+1&&_s.debugMode){_s._wD=_s._wDAlert;}
this._toggleDebug=function(){var o=_$(_s.debugID);var oT=_$(_s.debugID+'-toggle');if(!o){return false;}
if(_s._debugOpen){oT.innerHTML='+';o.style.display='none';}else{oT.innerHTML='-';o.style.display='block';}
_s._debugOpen=!_s._debugOpen;};this._toggleDebug._protected=true;this._debug=function(){_s._wD('--- soundManager._debug(): Current sound objects ---',1);for(var i=0,j=_s.soundIDs.length;i<j;i++){_s.sounds[_s.soundIDs[i]]._debug();}};this._debugTS=function(sEventType,bSuccess,sMessage){if(typeof sm2Debugger!='undefined'){try{sm2Debugger.handleEvent(sEventType,bSuccess,sMessage);}catch(e){}}};this._debugTS._protected=true;this._mergeObjects=function(oMain,oAdd){var o1={};for(var i in oMain){if(oMain.hasOwnProperty(i)){o1[i]=oMain[i];}}
var o2=(typeof oAdd=='undefined'?_s.defaultOptions:oAdd);for(var o in o2){if(o2.hasOwnProperty(o)&&typeof o1[o]=='undefined'){o1[o]=o2[o];}}
return o1;};this.createMovie=function(sURL){if(sURL){_s.url=sURL;}
_s._initMovie();};this.go=this.createMovie;this._initMovie=function(){if(_s.o){return false;}
_s.o=_s.getMovie(_s.id);if(!_s.o){if(!_s.oRemoved){_s._createMovie(_s.id,_s.url);}else{if(!_s.isIE){_s.oMC.appendChild(_s.oRemoved);}else{_s.oMC.innerHTML=_s.oRemovedHTML;}
_s.oRemoved=null;_s._didAppend=true;}
_s.o=_s.getMovie(_s.id);}
if(_s.o){_s._wD('soundManager._initMovie(): Got '+_s.o.nodeName+' element ('+(_s._didAppend?'created via JS':'static HTML')+')',1);if(_s.flashLoadTimeout>0){_s._wD('soundManager._initMovie(): Waiting for ExternalInterface call from Flash..');}}};this.waitForExternalInterface=function(){if(_s._waitingForEI){return false;}
_s._waitingForEI=true;if(_s._tryInitOnFocus&&!_s._isFocused){_s._wD('soundManager: Special case: Waiting for focus-related event..');return false;}
if(_s.flashLoadTimeout>0){if(!_s._didInit){_s._wD('soundManager: Getting impatient, still waiting for Flash.. ;)');}
setTimeout(function(){if(!_s._didInit){_s._wD('soundManager: No Flash response within reasonable time after document load.\nPossible causes: Loading '+_s.movieURL+' failed, Flash version under '+_s.flashVersion+', no support, flash blocked or JS-Flash security error.',2);if(!_s._overHTTP){_s._wD('soundManager: Loading this page from local/network file system (not over HTTP?) Flash security likely restricting JS-Flash access. Consider adding current URL to "trusted locations" in the Flash player security settings manager at '+flashCPLink+', or simply serve this content over HTTP.',2);}
_s._debugTS('flashtojs',false,': Timed out'+(_s._overHTTP)?' (Check flash security)':' (No plugin/missing SWF?)');}
if(!_s._didInit&&_s._okToDisable){_s._failSafely(true);}},_s.flashLoadTimeout);}else if(!_s.didInit){_s._wD('soundManager: Waiting indefinitely for Flash...');}};this.handleFocus=function(){if(_s._isFocused||!_s._tryInitOnFocus){return true;}
_s._okToDisable=true;_s._isFocused=true;_s._wD('soundManager.handleFocus()');if(_s._tryInitOnFocus){window.removeEventListener('mousemove',_s.handleFocus,false);}
_s._waitingForEI=false;setTimeout(_s.waitForExternalInterface,500);if(window.removeEventListener){window.removeEventListener('focus',_s.handleFocus,false);}else if(window.detachEvent){window.detachEvent('onfocus',_s.handleFocus);}};this.initComplete=function(bNoDisable){if(_s._didInit){return false;}
_s._didInit=true;_s._wD('-- SoundManager 2 '+(_s._disabled?'failed to load':'loaded')+' ('+(_s._disabled?'security/load error':'OK')+') --',1);if(_s._disabled||bNoDisable){_s._wD('soundManager.initComplete(): calling soundManager.onerror()',1);_s._debugTS('onload',false);_s.onerror.apply(window);return false;}else{_s._debugTS('onload',true);}
if(_s.waitForWindowLoad&&!_s._windowLoaded){_s._wD('soundManager: Waiting for window.onload()');if(window.addEventListener){window.addEventListener('load',_s.initUserOnload,false);}else if(window.attachEvent){window.attachEvent('onload',_s.initUserOnload);}
return false;}else{if(_s.waitForWindowLoad&&_s._windowLoaded){_s._wD('soundManager: Document already loaded');}
_s.initUserOnload();}};this.initUserOnload=function(){_s._wD('soundManager.initComplete(): calling soundManager.onload()',1);_s.onload.apply(window);_s._wD('soundManager.onload() complete',1);};this.init=function(){_s._wD('-- soundManager.init() --');_s._initMovie();if(_s._didInit){_s._wD('soundManager.init(): Already called?');return false;}
if(window.removeEventListener){window.removeEventListener('load',_s.beginDelayedInit,false);}else if(window.detachEvent){window.detachEvent('onload',_s.beginDelayedInit);}
try{_s._wD('Attempting to call Flash from JS..');_s.o._externalInterfaceTest(false);if(!_s.allowPolling){_s._wD('Polling (whileloading/whileplaying support) is disabled.',1);}
_s.setPolling(true);if(!_s.debugMode){_s.o._disableDebug();}
_s.enabled=true;_s._debugTS('jstoflash',true);}catch(e){_s._debugTS('jstoflash',false);_s._failSafely(true);_s.initComplete();return false;}
_s.initComplete();};this.beginDelayedInit=function(){_s._wD('soundManager.beginDelayedInit()');_s._windowLoaded=true;setTimeout(_s.waitForExternalInterface,500);setTimeout(_s.beginInit,20);};this.beginInit=function(){if(_s._initPending){return false;}
_s.createMovie();_s._initMovie();_s._initPending=true;return true;};this.domContentLoaded=function(){_s._wD('soundManager.domContentLoaded()');if(document.removeEventListener){document.removeEventListener('DOMContentLoaded',_s.domContentLoaded,false);}
_s.go();};this._externalInterfaceOK=function(){if(_s.swfLoaded){return false;}
_s._wD('soundManager._externalInterfaceOK()');_s._debugTS('swf',true);_s._debugTS('flashtojs',true);_s.swfLoaded=true;_s._tryInitOnFocus=false;if(_s.isIE){setTimeout(_s.init,100);}else{_s.init();}};this._setSandboxType=function(sandboxType){var sb=_s.sandbox;sb.type=sandboxType;sb.description=sb.types[(typeof sb.types[sandboxType]!='undefined'?sandboxType:'unknown')];_s._wD('Flash security sandbox type: '+sb.type);if(sb.type=='localWithFile'){sb.noRemote=true;sb.noLocal=false;_s._wD('Flash security note: Network/internet URLs will not load due to security restrictions. Access can be configured via Flash Player Global Security Settings Page: http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html',2);}else if(sb.type=='localWithNetwork'){sb.noRemote=false;sb.noLocal=true;}else if(sb.type=='localTrusted'){sb.noRemote=false;sb.noLocal=false;}};this.reboot=function(){_s._wD('soundManager.reboot()');if(_s.soundIDs.length){_s._wD('Destroying '+_s.soundIDs.length+' SMSound objects...');}
for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].destruct();}
try{if(_s.isIE){_s.oRemovedHTML=_s.o.innerHTML;}
_s.oRemoved=_s.o.parentNode.removeChild(_s.o);_s._wD('Flash movie removed.');}catch(e){_s._wD('Warning: Failed to remove flash movie.',2);}
_s.enabled=false;_s._didInit=false;_s._waitingForEI=false;_s._initPending=false;_s._didInit=false;_s._didAppend=false;_s._appendSuccess=false;_s._didInit=false;_s._disabled=false;_s._waitingforEI=true;_s.swfLoaded=false;_s.soundIDs={};_s.sounds=[];_s.o=null;_s._wD('soundManager: Rebooting...');window.setTimeout(function(){soundManager.beginDelayedInit();},20);};this.destruct=function(){_s._wD('soundManager.destruct()');_s.disable(true);};SMSound=function(oOptions){var _t=this;this.sID=oOptions.id;this.url=oOptions.url;this.options=_s._mergeObjects(oOptions);this.instanceOptions=this.options;this._iO=this.instanceOptions;this.pan=this.options.pan;this.volume=this.options.volume;this._lastURL=null;this._debug=function(){if(_s.debugMode){var stuff=null;var msg=[];var sF=null;var sfBracket=null;var maxLength=64;for(stuff in _t.options){if(_t.options[stuff]!==null){if(_t.options[stuff]instanceof Function){sF=_t.options[stuff].toString();sF=sF.replace(/\s\s+/g,' ');sfBracket=sF.indexOf('{');msg[msg.length]=' '+stuff+': {'+sF.substr(sfBracket+1,(Math.min(Math.max(sF.indexOf('\n')-1,maxLength),maxLength))).replace(/\n/g,'')+'... }';}else{msg[msg.length]=' '+stuff+': '+_t.options[stuff];}}}
_s._wD('SMSound() merged options: {\n'+msg.join(', \n')+'\n}');}};this._debug();this.id3={};this.resetProperties=function(bLoaded){_t.bytesLoaded=null;_t.bytesTotal=null;_t.position=null;_t.duration=null;_t.durationEstimate=null;_t.loaded=false;_t.playState=0;_t.paused=false;_t.readyState=0;_t.muted=false;_t.didBeforeFinish=false;_t.didJustBeforeFinish=false;_t.isBuffering=false;_t.instanceOptions={};_t.instanceCount=0;_t.peakData={left:0,right:0};_t.waveformData={left:[],right:[]};_t.eqData=[];};_t.resetProperties();this.load=function(oOptions){if(typeof oOptions!='undefined'){_t._iO=_s._mergeObjects(oOptions);_t.instanceOptions=_t._iO;}else{oOptions=_t.options;_t._iO=oOptions;_t.instanceOptions=_t._iO;if(_t._lastURL&&_t._lastURL!=_t.url){_s._wD('SMSound.load(): Using manually-assigned URL');_t._iO.url=_t.url;_t.url=null;}}
if(typeof _t._iO.url=='undefined'){_t._iO.url=_t.url;}
_s._wD('soundManager.load(): '+_t._iO.url,1);if(_t._iO.url==_t.url&&_t.readyState!==0&&_t.readyState!=2){_s._wD('soundManager.load(): current URL already assigned.',1);return false;}
_t.url=_t._iO.url;_t._lastURL=_t._iO.url;_t.loaded=false;_t.readyState=1;_t.playState=0;try{if(_s.flashVersion==8){_s.o._load(_t.sID,_t._iO.url,_t._iO.stream,_t._iO.autoPlay,(_t._iO.whileloading?1:0));}else{_s.o._load(_t.sID,_t._iO.url,_t._iO.stream?true:false,_t._iO.autoPlay?true:false);if(_t._iO.isMovieStar&&_t._iO.autoLoad&&!_t._iO.autoPlay){_t.pause();}}}catch(e){_s._wD('SMSound.load(): Exception: JS-Flash communication failed, or JS error.',2);_s._debugTS('onload',false);_s.onerror();_s.disable();}};this.unload=function(){if(_t.readyState!==0){_s._wD('SMSound.unload(): "'+_t.sID+'"');if(_t.readyState!=2){_t.setPosition(0,true);}
_s.o._unload(_t.sID,_s.nullURL);_t.resetProperties();}};this.destruct=function(){_s._wD('SMSound.destruct(): "'+_t.sID+'"');_s.o._destroySound(_t.sID);_s.destroySound(_t.sID,true);};this.play=function(oOptions){if(!oOptions){oOptions={};}
_t._iO=_s._mergeObjects(oOptions,_t._iO);_t._iO=_s._mergeObjects(_t._iO,_t.options);_t.instanceOptions=_t._iO;if(_t.playState==1){var allowMulti=_t._iO.multiShot;if(!allowMulti){_s._wD('SMSound.play(): "'+_t.sID+'" already playing (one-shot)',1);return false;}else{_s._wD('SMSound.play(): "'+_t.sID+'" already playing (multi-shot)',1);}}
if(!_t.loaded){if(_t.readyState===0){_s._wD('SMSound.play(): Attempting to load "'+_t.sID+'"',1);_t._iO.stream=true;_t._iO.autoPlay=true;_t.load(_t._iO);}else if(_t.readyState==2){_s._wD('SMSound.play(): Could not load "'+_t.sID+'" - exiting',2);return false;}else{_s._wD('SMSound.play(): "'+_t.sID+'" is loading - attempting to play..',1);}}else{_s._wD('SMSound.play(): "'+_t.sID+'"');}
if(_t.paused){_t.resume();}else{_t.playState=1;if(!_t.instanceCount||_s.flashVersion>8){_t.instanceCount++;}
_t.position=(typeof _t._iO.position!='undefined'&&!isNaN(_t._iO.position)?_t._iO.position:0);if(_t._iO.onplay){_t._iO.onplay.apply(_t);}
_t.setVolume(_t._iO.volume,true);_t.setPan(_t._iO.pan,true);_s.o._start(_t.sID,_t._iO.loop||1,(_s.flashVersion==9?_t.position:_t.position/1000));}};this.start=this.play;this.stop=function(bAll){if(_t.playState==1){_t.playState=0;_t.paused=false;if(_t._iO.onstop){_t._iO.onstop.apply(_t);}
_s.o._stop(_t.sID,bAll);_t.instanceCount=0;_t._iO={};}};this.setPosition=function(nMsecOffset,bNoDebug){if(typeof nMsecOffset=='undefined'){nMsecOffset=0;}
var offset=Math.min(_t.duration,Math.max(nMsecOffset,0));_t._iO.position=offset;if(!bNoDebug){}
_s.o._setPosition(_t.sID,(_s.flashVersion==9?_t._iO.position:_t._iO.position/1000),(_t.paused||!_t.playState));};this.pause=function(){if(_t.paused||_t.playState===0){return false;}
_s._wD('SMSound.pause()');_t.paused=true;_s.o._pause(_t.sID);if(_t._iO.onpause){_t._iO.onpause.apply(_t);}};this.resume=function(){if(!_t.paused||_t.playState===0){return false;}
_s._wD('SMSound.resume()');_t.paused=false;_s.o._pause(_t.sID);if(_t._iO.onresume){_t._iO.onresume.apply(_t);}};this.togglePause=function(){_s._wD('SMSound.togglePause()');if(_t.playState===0){_t.play({position:(_s.flashVersion==9?_t.position:_t.position/1000)});return false;}
if(_t.paused){_t.resume();}else{_t.pause();}};this.setPan=function(nPan,bInstanceOnly){if(typeof nPan=='undefined'){nPan=0;}
if(typeof bInstanceOnly=='undefined'){bInstanceOnly=false;}
_s.o._setPan(_t.sID,nPan);_t._iO.pan=nPan;if(!bInstanceOnly){_t.pan=nPan;}};this.setVolume=function(nVol,bInstanceOnly){if(typeof nVol=='undefined'){nVol=100;}
if(typeof bInstanceOnly=='undefined'){bInstanceOnly=false;}
_s.o._setVolume(_t.sID,(_s.muted&&!_t.muted)||_t.muted?0:nVol);_t._iO.volume=nVol;if(!bInstanceOnly){_t.volume=nVol;}};this.mute=function(){_t.muted=true;_s.o._setVolume(_t.sID,0);};this.unmute=function(){_t.muted=false;var hasIO=typeof _t._iO.volume!='undefined';_s.o._setVolume(_t.sID,hasIO?_t._iO.volume:_t.options.volume);};this._whileloading=function(nBytesLoaded,nBytesTotal,nDuration){if(!_t._iO.isMovieStar){_t.bytesLoaded=nBytesLoaded;_t.bytesTotal=nBytesTotal;_t.duration=Math.floor(nDuration);_t.durationEstimate=parseInt((_t.bytesTotal/_t.bytesLoaded)*_t.duration,10);if(_t.readyState!=3&&_t._iO.whileloading){_t._iO.whileloading.apply(_t);}}else{_t.bytesLoaded=nBytesLoaded;_t.bytesTotal=nBytesTotal;_t.duration=Math.floor(nDuration);_t.durationEstimate=_t.duration;if(_t.readyState!=3&&_t._iO.whileloading){_t._iO.whileloading.apply(_t);}}};this._onid3=function(oID3PropNames,oID3Data){_s._wD('SMSound._onid3(): "'+this.sID+'" ID3 data received.');var oData=[];for(var i=0,j=oID3PropNames.length;i<j;i++){oData[oID3PropNames[i]]=oID3Data[i];}
_t.id3=_s._mergeObjects(_t.id3,oData);if(_t._iO.onid3){_t._iO.onid3.apply(_t);}};this._whileplaying=function(nPosition,oPeakData,oWaveformDataLeft,oWaveformDataRight,oEQData){if(isNaN(nPosition)||nPosition===null){return false;}
if(_t.playState===0&&nPosition>0){nPosition=0;}
_t.position=nPosition;if(_t._iO.usePeakData&&typeof oPeakData!='undefined'&&oPeakData){_t.peakData={left:oPeakData.leftPeak,right:oPeakData.rightPeak};}
if(_t._iO.useWaveformData&&typeof oWaveformDataLeft!='undefined'&&oWaveformDataLeft){_t.waveformData={left:oWaveformDataLeft.split(','),right:oWaveformDataRight.split(',')};}
if(_t._iO.useEQData&&typeof oEQData!='undefined'&&oEQData){_t.eqData=oEQData;}
if(_t.playState==1){if(_t.isBuffering){_t._onbufferchange(0);}
if(_t._iO.whileplaying){_t._iO.whileplaying.apply(_t);}
if(_t.loaded&&_t._iO.onbeforefinish&&_t._iO.onbeforefinishtime&&!_t.didBeforeFinish&&_t.duration-_t.position<=_t._iO.onbeforefinishtime){_s._wD('duration-position &lt;= onbeforefinishtime: '+_t.duration+' - '+_t.position+' &lt= '+_t._iO.onbeforefinishtime+' ('+(_t.duration-_t.position)+')');_t._onbeforefinish();}}};this._onload=function(bSuccess){bSuccess=(bSuccess==1?true:false);_s._wD('SMSound._onload(): "'+_t.sID+'"'+(bSuccess?' loaded.':' failed to load? - '+_t.url),(bSuccess?1:2));if(!bSuccess){if(_s.sandbox.noRemote===true){_s._wD('SMSound._onload(): Reminder: Flash security is denying network/internet access',1);}
if(_s.sandbox.noLocal===true){_s._wD('SMSound._onload(): Reminder: Flash security is denying local access',1);}}
_t.loaded=bSuccess;_t.readyState=bSuccess?3:2;if(_t._iO.onload){_t._iO.onload.apply(_t);}};this._onbeforefinish=function(){if(!_t.didBeforeFinish){_t.didBeforeFinish=true;if(_t._iO.onbeforefinish){_s._wD('SMSound._onbeforefinish(): "'+_t.sID+'"');_t._iO.onbeforefinish.apply(_t);}}};this._onjustbeforefinish=function(msOffset){if(!_t.didJustBeforeFinish){_t.didJustBeforeFinish=true;if(_t._iO.onjustbeforefinish){_s._wD('SMSound._onjustbeforefinish(): "'+_t.sID+'"');_t._iO.onjustbeforefinish.apply(_t);}}};this._onfinish=function(){if(_t._iO.onbeforefinishcomplete){_t._iO.onbeforefinishcomplete.apply(_t);}
_t.didBeforeFinish=false;_t.didJustBeforeFinish=false;if(_t.instanceCount){_t.instanceCount--;if(!_t.instanceCount){_t.playState=0;_t.paused=false;_t.instanceCount=0;_t.instanceOptions={};if(_t._iO.onfinish){_s._wD('SMSound._onfinish(): "'+_t.sID+'"');_t._iO.onfinish.apply(_t);}}}else{if(_t.useVideo){}}};this._onmetadata=function(oMetaData){_s._wD('SMSound.onmetadata()');if(!oMetaData.width&&!oMetaData.height){_s._wD('No width/height given, assuming defaults');oMetaData.width=320;oMetaData.height=240;}
_t.metadata=oMetaData;_t.width=oMetaData.width;_t.height=oMetaData.height;if(_t._iO.onmetadata){_s._wD('SMSound._onmetadata(): "'+_t.sID+'"');_t._iO.onmetadata.apply(_t);}
_s._wD('SMSound.onmetadata() complete');};this._onbufferchange=function(bIsBuffering){if(_t.playState===0){return false;}
if(bIsBuffering==_t.isBuffering){_s._wD('_onbufferchange: ignoring false default / loaded sound');return false;}
_t.isBuffering=(bIsBuffering==1?true:false);if(_t._iO.onbufferchange){_s._wD('SMSound._onbufferchange(): '+bIsBuffering);_t._iO.onbufferchange.apply(_t);}};this._ondataerror=function(sError){if(_t.playState>0){_s._wD('SMSound._ondataerror(): '+sError);if(_t._iO.ondataerror){_t._iO.ondataerror.apply(_t);}}else{}};};this._onfullscreenchange=function(bFullScreen){_s._wD('onfullscreenchange(): '+bFullScreen);_s.isFullScreen=(bFullScreen==1?true:false);if(!_s.isFullScreen){try{window.focus();_s._wD('window.focus()');}catch(e){}}};if(window.addEventListener){window.addEventListener('focus',_s.handleFocus,false);window.addEventListener('load',_s.beginDelayedInit,false);window.addEventListener('unload',_s.destruct,false);if(_s._tryInitOnFocus){window.addEventListener('mousemove',_s.handleFocus,false);}}else if(window.attachEvent){window.attachEvent('onfocus',_s.handleFocus);window.attachEvent('onload',_s.beginDelayedInit);window.attachEvent('unload',_s.destruct);}else{_s._debugTS('onload',false);soundManager.onerror();soundManager.disable();}
if(document.addEventListener){document.addEventListener('DOMContentLoaded',_s.domContentLoaded,false);}}
NS.Init=function()
{if(NS.soundManager!=null)
return NS.soundManager;NS.soundManager=new SoundManager();window.soundManager=NS.soundManager;return NS.soundManager;};});global_namespace.Define('entertonement.soundmanager2',function(NS){var SoundManagerMovieUrl="EntPlaylist.swf?e=&id=SiteHeadlessPlaylist&image_size=flash&type=siteHeadless";function SoundManager(smURL,smID){this.flashVersion=9;this.debugMode=true;this.useConsole=true;this.consoleOnly=true;this.waitForWindowLoad=true;this.nullURL='null.mp3';this.allowPolling=true;this.useMovieStar=false;this.useHighPerformance=true;this.bgColor='#ffffff';this.defaultOptions={'autoLoad':false,'stream':true,'autoPlay':false,'onid3':null,'onload':null,'whileloading':null,'onplay':null,'onpause':null,'onresume':null,'whileplaying':null,'onstop':null,'onfinish':null,'onbeforefinish':null,'onbeforefinishtime':5000,'onbeforefinishcomplete':null,'onjustbeforefinish':null,'onjustbeforefinishtime':200,'multiShot':true,'position':null,'pan':0,'volume':100};this.flash9Options={'isMovieStar':null,'usePeakData':false,'useWaveformData':false,'useEQData':false};this.movieStarOptions={'onmetadata':null,'useVideo':false}
this.flashBlockHelper={'enabled':false,'message':[]};var _s=this;this.version=null;this.versionNumber='V2.90a.20081028';this.movieURL=null;this.url=null;this.altURL=null;this.swfLoaded=false;this.enabled=false;this.o=null;this.id=(smID||'sm2movie');this.oMC=null;this.sounds=[];this.soundIDs=[];this.muted=false;this.isIE=(navigator.userAgent.match(/MSIE/i));this.isSafari=(navigator.userAgent.match(/safari/i));this.isGecko=(navigator.userAgent.match(/gecko/i));this.debugID='soundmanager-debug';this._debugOpen=true;this._didAppend=false;this._appendSuccess=false;this._didInit=false;this._disabled=false;this._windowLoaded=false;this._hasConsole=(typeof console!='undefined'&&typeof console.log!='undefined');this._debugLevels=['log','info','warn','error'];this._defaultFlashVersion=8;this.filePatterns={flash8:/\.(mp3)/i,flash9:/\.(mp3)/i};this.netStreamTypes=['aac','flv','mov','mp4','m4v','f4v','m4a','mp4v','3gp','3g2'];this.netStreamPattern=new RegExp('.('+this.netStreamTypes.join('|')+')','i');this.filePattern=null;this.features={peakData:false,waveformData:false,eqData:false};this.sandbox={'type':null,'types':{'remote':'remote (domain-based) rules','localWithFile':'local with file access (no internet access)','localWithNetwork':'local with network (internet access only, no local access)','localTrusted':'local, trusted (local + internet access)'},'description':null,'noRemote':null,'noLocal':null};this._setVersionInfo=function(){if(_s.flashVersion!=8&&_s.flashVersion!=9){alert('soundManager.flashVersion must be 8 or 9. "'+_s.flashVersion+'" is invalid. Reverting to '+_s._defaultFlashVersion+'.');_s.flashVersion=_s._defaultFlashVersion;}
_s.version=_s.versionNumber+(_s.flashVersion==9?' (AS3/Flash 9)':' (AS2/Flash 8)');if(_s.flashVersion>8){_s.defaultOptions=_s._mergeObjects(_s.defaultOptions,_s.flash9Options);}
if(_s.flashVersion>8&&_s.useMovieStar){_s.defaultOptions=_s._mergeObjects(_s.defaultOptions,_s.movieStarOptions);_s.filePatterns.flash9=new RegExp('.(mp3|'+_s.netStreamTypes.join('|')+')','i');}else{_s.useMovieStar=false;}
_s.filePattern=_s.filePatterns[(_s.flashVersion!=8?'flash9':'flash8')];_s.movieURL=SoundManagerMovieUrl;_s.features.peakData=_s.features.waveformData=_s.features.eqData=(_s.flashVersion==9);}
this._overHTTP=(document.location?document.location.protocol.match(/http/i):null);this._waitingforEI=false;this._initPending=false;this._tryInitOnFocus=(this.isSafari&&typeof document.hasFocus=='undefined');this._isFocused=(typeof document.hasFocus!='undefined'?document.hasFocus():null);this._okToDisable=!this._tryInitOnFocus;this.useAltURL=!this._overHTTP;var flashCPLink='http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html';this.supported=function(){return(_s._didInit&&!_s._disabled);};this.getMovie=function(smID){return _s.isIE?window[smID]:(_s.isSafari?document.getElementById(smID)||document[smID]:document.getElementById(smID));};this.loadFromXML=function(sXmlUrl){try{_s.o._loadFromXML(sXmlUrl);}catch(e){_s._failSafely();return true;};};this.createSound=function(oOptions){if(!_s._didInit)throw new Error('soundManager.createSound(): Not loaded yet - wait for soundManager.onload() before calling sound-related methods');if(arguments.length==2){var oOptions={'id':arguments[0],'url':arguments[1]};};var thisOptions=_s._mergeObjects(oOptions);var _tO=thisOptions;_s._wD('soundManager.createSound(): '+_tO.id+' ('+_tO.url+')',1);if(_s._idCheck(_tO.id,true)){_s._wD('soundManager.createSound(): '+_tO.id+' exists',1);return _s.sounds[_tO.id];};if(_s.flashVersion>8&&_s.useMovieStar){if(_tO.isMovieStar==null){_tO.isMovieStar=(_tO.url.match(_s.netStreamPattern)?true:false);}
if(_tO.isMovieStar){_s._wD('soundManager.createSound(): using MovieStar handling');}
if(_tO.isMovieStar&&(_tO.usePeakData||_tO.useWaveformData||_tO.useEQData)){_s._wD('Warning: peak/waveform/eqData features unsupported for non-MP3 formats');_tO.usePeakData=false;_tO.useWaveformData=false;_tO.useEQData=false;}};_s.sounds[_tO.id]=new SMSound(_tO);_s.soundIDs[_s.soundIDs.length]=_tO.id;if(_s.flashVersion==8){_s.o._createSound(_tO.id,_tO.onjustbeforefinishtime);}else{_s.o._createSound(_tO.id,_tO.url,_tO.onjustbeforefinishtime,_tO.usePeakData,_tO.useWaveformData,_tO.useEQData,_tO.isMovieStar,(_tO.isMovieStar?_tO.useVideo:false));};if(_tO.autoLoad||_tO.autoPlay){window.setTimeout(function(){if(_s.sounds[_tO.id]){_s.sounds[_tO.id].load(_tO);}},20);}
if(_tO.autoPlay){if(_s.flashVersion==8){_s.sounds[_tO.id].playState=1;}else{_s.sounds[_tO.id].play();}}
return _s.sounds[_tO.id];};this.createVideo=function(oOptions){if(arguments.length==2){var oOptions={'id':arguments[0],'url':arguments[1]};};if(_s.flashVersion>=9){oOptions.isMovieStar=true;oOptions.useVideo=true;}else{_s._wD('soundManager.createVideo(): flash 9 required for video. Exiting.',2);return false;}
if(!_s.useMovieStar){_s._wD('soundManager.createVideo(): MovieStar mode not enabled. Exiting.',2);}
return _s.createSound(oOptions);}
this.destroySound=function(sID,bFromSound){if(!_s._idCheck(sID))return false;for(var i=0;i<_s.soundIDs.length;i++){if(_s.soundIDs[i]==sID){_s.soundIDs.splice(i,1);continue;};};_s.sounds[sID].unload();if(!bFromSound){_s.sounds[sID].destruct();};delete _s.sounds[sID];};this.destroyVideo=this.destroySound;this.load=function(sID,oOptions){if(!_s._idCheck(sID))return false;_s.sounds[sID].load(oOptions);};this.unload=function(sID){if(!_s._idCheck(sID))return false;_s.sounds[sID].unload();};this.play=function(sID,oOptions){if(!_s._idCheck(sID)){if(typeof oOptions!='Object')oOptions={url:oOptions};if(oOptions&&oOptions.url){_s._wD('soundController.play(): attempting to create "'+sID+'"',1);oOptions.id=sID;_s.createSound(oOptions);}else{return false;};};_s.sounds[sID].play(oOptions);};this.start=this.play;this.setPosition=function(sID,nMsecOffset){if(!_s._idCheck(sID))return false;nMsecOffset=Math.min((nMsecOffset||0),_s.duration);_s.sounds[sID].setPosition(nMsecOffset);};this.stop=function(sID){if(!_s._idCheck(sID))return false;_s._wD('soundManager.stop('+sID+')',1);_s.sounds[sID].stop();};this.stopAll=function(){_s._wD('soundManager.stopAll()',1);for(var oSound in _s.sounds){if(_s.sounds[oSound]instanceof SMSound)_s.sounds[oSound].stop();};};this.pause=function(sID){if(!_s._idCheck(sID))return false;_s.sounds[sID].pause();};this.pauseAll=function(){for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].pause();}};this.resume=function(sID){if(!_s._idCheck(sID))return false;_s.sounds[sID].resume();};this.resumeAll=function(){for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].resume();}};this.togglePause=function(sID){if(!_s._idCheck(sID))return false;_s.sounds[sID].togglePause();};this.setPan=function(sID,nPan){if(!_s._idCheck(sID))return false;_s.sounds[sID].setPan(nPan);};this.setVolume=function(sID,nVol){if(!_s._idCheck(sID))return false;_s.sounds[sID].setVolume(nVol);};this.mute=function(sID){if(typeof sID!='string')sID=null;if(!sID){var o=null;_s._wD('soundManager.mute(): Muting all sounds');for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].mute();}
_s.muted=true;}else{if(!_s._idCheck(sID))return false;_s._wD('soundManager.mute(): Muting "'+sID+'"');_s.sounds[sID].mute();}};this.muteAll=function(){_s.mute();};this.unmute=function(sID){if(typeof sID!='string')sID=null;if(!sID){var o=null;_s._wD('soundManager.unmute(): Unmuting all sounds');for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].unmute();}
_s.muted=false;}else{if(!_s._idCheck(sID))return false;_s._wD('soundManager.unmute(): Unmuting "'+sID+'"');_s.sounds[sID].unmute();}};this.unmuteAll=function(){_s.unmute();};this.setPolling=function(bPolling){if(!_s.o||!_s.allowPolling)return false;_s.o._setPolling(bPolling);};this.disable=function(bUnload){if(_s._disabled)return false;_s._disabled=true;_s._wD('soundManager.disable(): Disabling all functions - future calls will return false.',1);for(var i=_s.soundIDs.length;i--;){_s._disableObject(_s.sounds[_s.soundIDs[i]]);};_s.initComplete();_s._disableObject(_s);};this.handleFlashBlock=function(bForce){return false;};this.canPlayURL=function(sURL){return(sURL?(sURL.match(_s.filePattern)?true:false):null);};this.getSoundById=function(sID,suppressDebug){if(!sID)throw new Error('SoundManager.getSoundById(): sID is null/undefined');var result=_s.sounds[sID];if(!result&&!suppressDebug){_s._wD('"'+sID+'" is an invalid sound ID.',2);};return result;};this.onload=function(){soundManager._wD('<em>Warning</em>: soundManager.onload() is undefined.',2);};this.onerror=function(){};this._idCheck=this.getSoundById;this._disableObject=function(o){for(var oProp in o){if(typeof o[oProp]=='function'&&typeof o[oProp]._protected=='undefined')o[oProp]=function(){return false;};};oProp=null;};this._failSafely=function(){var fpgssTitle='You may need to whitelist this location/domain eg. file:///C:/ or C:/ or mysite.com, or set ALWAYS ALLOW under the Flash Player Global Security Settings page. The latter is probably less-secure.';var flashCPL='<a href="'+flashCPLink+'" title="'+fpgssTitle+'">view/edit</a>';var FPGSS='<a href="'+flashCPLink+'" title="Flash Player Global Security Settings">FPGSS</a>';if(!_s._disabled){_s._wD('soundManager: Failed to initialise.',2);_s.disable();};};this._normalizeMovieURL=function(smURL){if(smURL){if(smURL.match(/\.swf/)){smURL=smURL.substr(0,smURL.lastIndexOf('.swf'));}
if(smURL.lastIndexOf('/')!=smURL.length-1){smURL=smURL+'/';}}
return(smURL&&smURL.lastIndexOf('/')!=-1?smURL.substr(0,smURL.lastIndexOf('/')+1):'./')+_s.movieURL;};this._getDocument=function(){return(document.body?document.body:(document.documentElement?document.documentElement:document.getElementsByTagName('div')[0]));};this._getDocument._protected=true;this._createMovie=function(smID,smURL){if(_s._didAppend&&_s._appendSuccess)return false;if(window.location.href.indexOf('debug=1')+1)_s.debugMode=true;_s._didAppend=true;_s._setVersionInfo();var remoteURL=(smURL?smURL:_s.url);var localURL=(_s.altURL?_s.altURL:remoteURL);_s.url=_s._normalizeMovieURL(_s._overHTTP?remoteURL:localURL);smURL=_s.url;var htmlEmbed='<embed name="'+smID+'" id="'+smID+'" src="'+smURL+'" width="100%" height="100%" quality="high" allowScriptAccess="always" quality="high" '+(_s.useHighPerformance&&!_s.useMovieStar?'wmode="transparent" ':'')+'bgcolor="'+_s.bgColor+'" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"></embed>';var htmlObject='<object id="'+smID+'" data="'+smURL+'" type="application/x-shockwave-flash" width="100%" height="100%"><param name="movie" value="'+smURL+'" /><param name="AllowScriptAccess" value="always" /><param name="quality" value="high" />'+(_s.useHighPerformance&&!_s.useMovieStar?'<param name="wmode" value="transparent" /> ':'')+'<param name="bgcolor" value="'+_s.bgColor+'" /><!-- --></object>';var html=(!_s.isIE?htmlEmbed:htmlObject);var toggleElement='<div id="'+_s.debugID+'-toggle" style="position:fixed;_position:absolute;right:0px;bottom:0px;_top:0px;width:1.2em;height:1.2em;line-height:1.2em;margin:2px;padding:0px;text-align:center;border:1px solid #999;cursor:pointer;background:#fff;color:#333;z-index:10001" title="Toggle SM2 debug console" onclick="soundManager._toggleDebug()">-</div>';var debugHTML='<div id="'+_s.debugID+'" style="display:'+(_s.debugMode&&((!_s._hasConsole||!_s.useConsole)||(_s.useConsole&&_s._hasConsole&&!_s.consoleOnly))?'block':'none')+';opacity:0.85"></div>';var appXHTML='soundManager._createMovie(): appendChild/innerHTML set failed. May be app/xhtml+xml DOM-related.';var oTarget=_s._getDocument();if(oTarget){_s.oMC=document.getElementById('sm2-container')?document.getElementById('sm2-container'):document.createElement('div');if(!_s.oMC.id){_s.oMC.id='sm2-container';_s.oMC.className='movieContainer';var s=null;if(_s.useHighPerformance){s={position:'fixed',width:'8px',height:'8px',bottom:'0px',left:'0px',zIndex:-1}}else{s={position:'absolute',width:'1px',height:'1px',bottom:'0px',left:'0px'}}
var x=null;for(x in s){_s.oMC.style[x]=s[x];}
try{oTarget.appendChild(_s.oMC);_s.oMC.innerHTML=html;_s._appendSuccess=true;}catch(e){throw new Error(appXHTML);}}else{_s.oMC.innerHTML=html;_s._appendSuccess=true;}
if(!document.getElementById(_s.debugID)&&((!_s._hasConsole||!_s.useConsole)||(_s.useConsole&&_s._hasConsole&&!_s.consoleOnly))){var oDebug=document.createElement('div');oDebug.id=_s.debugID;oDebug.style.display=(_s.debugMode?'block':'none');if(_s.debugMode){try{var oD=document.createElement('div');oTarget.appendChild(oD);oD.innerHTML=toggleElement;}catch(e){throw new Error(appXHTML);};};oTarget.appendChild(oDebug);};oTarget=null;};_s._wD('-- SoundManager 2 '+_s.version+(_s.useMovieStar?', MovieStar mode':'')+(_s._wD?', high performance mode':'')+' --',1);_s._wD('soundManager._createMovie(): Trying to load '+smURL+(!_s._overHTTP&&_s.altURL?'(alternate URL)':''),1);};this._writeDebug=function(sText,sType,bTimestamp){if(!_s.debugMode)return false;if(typeof bTimestamp!='undefined'&&bTimestamp){sText=sText+' | '+new Date().getTime();};if(_s._hasConsole&&_s.useConsole){var sMethod=_s._debugLevels[sType];if(typeof console[sMethod]!='undefined'){console[sMethod](sText);}else{console.log(sText);};if(_s.useConsoleOnly)return true;};var sDID='soundmanager-debug';try{var o=document.getElementById(sDID);if(!o)return false;var oItem=document.createElement('div');sText=sText.replace(/\n/g,'<br />');if(typeof sType=='undefined'){var sType=0;}else{sType=parseInt(sType);};oItem.innerHTML=sText;if(sType){if(sType>=2)oItem.style.fontWeight='bold';if(sType==3)oItem.style.color='#ff3333';};o.insertBefore(oItem,o.firstChild);}catch(e){};o=null;};this._writeDebug._protected=true;this._wD=this._writeDebug;this._wDAlert=function(sText){alert(sText);};if(window.location.href.indexOf('debug=alert')+1&&_s.debugMode){_s._wD=_s._wDAlert;};this._toggleDebug=function(){var o=document.getElementById(_s.debugID);var oT=document.getElementById(_s.debugID+'-toggle');if(!o)return false;if(_s._debugOpen){oT.innerHTML='+';o.style.display='none';}else{oT.innerHTML='-';o.style.display='block';};_s._debugOpen=!_s._debugOpen;};this._toggleDebug._protected=true;this._debug=function(){_s._wD('--- soundManager._debug(): Current sound objects ---',1);for(var i=0,j=_s.soundIDs.length;i<j;i++){_s.sounds[_s.soundIDs[i]]._debug();};};this._mergeObjects=function(oMain,oAdd){var o1={};for(var i in oMain){o1[i]=oMain[i];}
var o2=(typeof oAdd=='undefined'?_s.defaultOptions:oAdd);for(var o in o2){if(typeof o1[o]=='undefined')o1[o]=o2[o];};return o1;};this.createMovie=function(sURL){if(sURL)_s.url=sURL;_s._initMovie();};this.go=this.createMovie;this._initMovie=function(){if(_s.o)return false;_s.o=_s.getMovie(_s.id);if(!_s.o){_s._createMovie(_s.id,_s.url);_s.o=_s.getMovie(_s.id);};if(_s.o){_s._wD('soundManager._initMovie(): Got '+_s.o.nodeName+' element ('+(_s._didAppend?'created via JS':'static HTML')+')',1);_s._wD('soundManager._initMovie(): Waiting for ExternalInterface call from Flash..');};};this.waitForExternalInterface=function(){if(_s._waitingForEI)return false;_s._waitingForEI=true;if(_s._tryInitOnFocus&&!_s._isFocused){_s._wD('soundManager: Special case: Flash may not have started due to non-focused tab (Safari is lame), and/or focus cannot be detected. Waiting for focus-related event..');return false;};if(!_s._didInit){_s._wD('soundManager: Getting impatient, still waiting for Flash.. ;)');};setTimeout(function(){if(!_s._didInit){_s._wD('soundManager: No Flash response within reasonable time after document load.\nPossible causes: Flash version under 8, no support, or Flash security denying JS-Flash communication.',2);if(!_s._overHTTP){_s._wD('soundManager: Loading this page from local/network file system (not over HTTP?) Flash security likely restricting JS-Flash access. Consider adding current URL to "trusted locations" in the Flash player security settings manager at '+flashCPLink+', or simply serve this content over HTTP.',2);};};if(!_s._didInit&&_s._okToDisable)
{_s._failSafely();}},750);};this.handleFocus=function(){if(_s._isFocused||!_s._tryInitOnFocus)return true;_s._okToDisable=true;_s._isFocused=true;_s._wD('soundManager.handleFocus()');if(_s._tryInitOnFocus){window.removeEventListener('mousemove',_s.handleFocus,false);};_s._waitingForEI=false;setTimeout(_s.waitForExternalInterface,500);if(window.removeEventListener){window.removeEventListener('focus',_s.handleFocus,false);}else if(window.detachEvent){window.detachEvent('onfocus',_s.handleFocus);};};this.initComplete=function(){if(_s._didInit)return false;_s._didInit=true;_s._wD('-- SoundManager 2 '+(_s._disabled?'failed to load':'loaded')+' ('+(_s._disabled?'security/load error':'OK')+') --',1);if(_s._disabled){_s._wD('soundManager.initComplete(): calling soundManager.onerror()',1);_s.onerror.apply(window);return false;};if(_s.waitForWindowLoad&&!_s._windowLoaded){_s._wD('soundManager: Waiting for window.onload()');if(window.addEventListener){window.addEventListener('load',_s.initUserOnload,false);}else if(window.attachEvent){window.attachEvent('onload',_s.initUserOnload);};return false;}else{if(_s.waitForWindowLoad&&_s._windowLoaded){_s._wD('soundManager: Document already loaded');};_s.initUserOnload();};};this.initUserOnload=function(){_s._wD('soundManager.initComplete(): calling soundManager.onload()',1);try{_s.onload.apply(window);}catch(e){_s._wD('soundManager.onload() threw an exception: '+e.message,2);setTimeout(function(){throw new Error(e)},20);return false;};_s._wD('soundManager.onload() complete',1);};this.init=function(){_s._wD('-- soundManager.init() --');_s._initMovie();if(_s._didInit){_s._wD('soundManager.init(): Already called?');return false;};if(window.removeEventListener){window.removeEventListener('load',_s.beginDelayedInit,false);}else if(window.detachEvent){window.detachEvent('onload',_s.beginDelayedInit);};try{_s._wD('Attempting to call JS -&gt; Flash..');_s.o._externalInterfaceTest(false);if(!_s.allowPolling){_s._wD('Polling (whileloading/whileplaying support) is disabled.',1);}
_s.setPolling(true);if(!_s.debugMode)_s.o._disableDebug();_s.enabled=true;}catch(e){console.error("failed to init: %s",e.message);_s._failSafely();_s.initComplete();return false;};_s.initComplete();};this.beginDelayedInit=function(){_s._wD('soundManager.beginDelayedInit(): Document loaded');_s._windowLoaded=true;setTimeout(_s.waitForExternalInterface,500);setTimeout(_s.beginInit,20);};this.beginInit=function(){if(_s._initPending)return false;_s.createMovie();_s._initMovie();_s._initPending=true;return true;};this.domContentLoaded=function(){_s._wD('soundManager.domContentLoaded()');if(document.removeEventListener)document.removeEventListener('DOMContentLoaded',_s.domContentLoaded,false);_s.go();};this._externalInterfaceOK=function(){if(_s.swfLoaded)return false;_s._wD('soundManager._externalInterfaceOK()');_s.swfLoaded=true;_s._tryInitOnFocus=false;if(_s.isIE){setTimeout(_s.init,100);}else{_s.init();};};this._setSandboxType=function(sandboxType){var sb=_s.sandbox;sb.type=sandboxType;sb.description=sb.types[(typeof sb.types[sandboxType]!='undefined'?sandboxType:'unknown')];_s._wD('Flash security sandbox type: '+sb.type);if(sb.type=='localWithFile'){sb.noRemote=true;sb.noLocal=false;_s._wD('Flash security note: Network/internet URLs will not load due to security restrictions. Access can be configured via Flash Player Global Security Settings Page: http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html',2);}else if(sb.type=='localWithNetwork'){sb.noRemote=false;sb.noLocal=true;}else if(sb.type=='localTrusted'){sb.noRemote=false;sb.noLocal=false;};};this.destruct=function(){_s._wD('soundManager.destruct()');_s.disable(true);};function SMSound(oOptions){var _t=this;this.sID=oOptions.id;this.url=oOptions.url;this.options=_s._mergeObjects(oOptions);this.instanceOptions=this.options;this._iO=this.instanceOptions;this._debug=function(){if(_s.debugMode){var stuff=null;var msg=[];var sF=null;var sfBracket=null;var maxLength=64;for(stuff in _t.options){if(_t.options[stuff]!=null){if(_t.options[stuff]instanceof Function){sF=_t.options[stuff].toString();sF=sF.replace(/\s\s+/g,' ');sfBracket=sF.indexOf('{');msg[msg.length]=' '+stuff+': {'+sF.substr(sfBracket+1,(Math.min(Math.max(sF.indexOf('\n')-1,maxLength),maxLength))).replace(/\n/g,'')+'... }';}else{msg[msg.length]=' '+stuff+': '+_t.options[stuff];};};};_s._wD('SMSound() merged options: {\n'+msg.join(', \n')+'\n}');};};this._debug();this.id3={};this.resetProperties=function(bLoaded){_t.bytesLoaded=null;_t.bytesTotal=null;_t.position=null;_t.duration=null;_t.durationEstimate=null;_t.loaded=false;_t.playState=0;_t.paused=false;_t.readyState=0;_t.muted=false;_t.didBeforeFinish=false;_t.didJustBeforeFinish=false;_t.instanceOptions={};_t.instanceCount=0;_t.peakData={left:0,right:0};_t.waveformData=[];_t.eqData=[];};_t.resetProperties();this.load=function(oOptions){if(typeof oOptions!='undefined'){_t._iO=_s._mergeObjects(oOptions);_t.instanceOptions=_t._iO;}else{var oOptions=_t.options;_t._iO=oOptions;_t.instanceOptions=_t._iO;}
if(typeof _t._iO.url=='undefined')_t._iO.url=_t.url;_s._wD('soundManager.load(): '+_t._iO.url,1);if(_t._iO.url==_t.url&&_t.readyState!=0&&_t.readyState!=2){_s._wD('soundManager.load(): current URL already assigned.',1);return false;}
_t.loaded=false;_t.readyState=1;_t.playState=(oOptions.autoPlay?1:0);try{if(_s.flashVersion==8){_s.o._load(_t.sID,_t._iO.url,_t._iO.stream,_t._iO.autoPlay,(_t._iO.whileloading?1:0));}else{_s.o._load(_t.sID,_t._iO.url,_t._iO.stream?true:false,_t._iO.autoPlay?true:false);if(_t._iO.isMovieStar&&_t._iO.autoLoad&&!_t._iO.autoPlay){_t.pause();}};}catch(e){_s._wD('SMSound.load(): Exception: JS-Flash communication failed, or JS error.',2);_s.onerror();_s.disable();};};this.unload=function(){if(_t.readyState!=0){_s._wD('SMSound.unload(): "'+_t.sID+'"');if(_t.readyState!=2){_t.setPosition(0);}
_s.o._unload(_t.sID,_s.nullURL);_t.resetProperties();}};this.destruct=function(){_s._wD('SMSound.destruct(): "'+_t.sID+'"');_s.o._destroySound(_t.sID);_s.destroySound(_t.sID,true);}
this.play=function(oOptions){if(!oOptions)oOptions={};_t._iO=_s._mergeObjects(oOptions,_t._iO);_t._iO=_s._mergeObjects(_t._iO,_t.options);_t.instanceOptions=_t._iO;if(_t.playState==1){var allowMulti=_t._iO.multiShot;if(!allowMulti){_s._wD('SMSound.play(): "'+_t.sID+'" already playing (one-shot)',1);return false;}else{_s._wD('SMSound.play(): "'+_t.sID+'" already playing (multi-shot)',1);};};if(!_t.loaded){if(_t.readyState==0){_s._wD('SMSound.play(): Attempting to load "'+_t.sID+'"',1);_t._iO.stream=true;_t._iO.autoPlay=true;_t.load(_t._iO);}else if(_t.readyState==2){_s._wD('SMSound.play(): Could not load "'+_t.sID+'" - exiting',2);return false;}else{_s._wD('SMSound.play(): "'+_t.sID+'" is loading - attempting to play..',1);};}else{_s._wD('SMSound.play(): "'+_t.sID+'"');};if(_t.paused){_t.resume();}else{_t.playState=1;if(!_t.instanceCount||_s.flashVersion==9)_t.instanceCount++;_t.position=(typeof _t._iO.position!='undefined'&&!isNaN(_t._iO.position)?_t._iO.position:0);if(_t._iO.onplay)_t._iO.onplay.apply(_t);_t.setVolume(_t._iO.volume);_t.setPan(_t._iO.pan);_s.o._start(_t.sID,_t._iO.loop||1,(_s.flashVersion==9?_t.position:_t.position/1000));};};this.start=this.play;this.stop=function(bAll){if(_t.playState==1){_t.playState=0;_t.paused=false;if(_t._iO.onstop)_t._iO.onstop.apply(_t);_s.o._stop(_t.sID,bAll);_t.instanceCount=0;_t._iO={};};};this.setPosition=function(nMsecOffset){_t._iO.position=nMsecOffset;_s._wD('SMSound.setPosition('+nMsecOffset+')');_s.o._setPosition(_t.sID,(_s.flashVersion==9?_t._iO.position:_t._iO.position/1000),(_t.paused||!_t.playState));};this.pause=function(){if(_t.paused||_t.playState==0)return false;_s._wD('SMSound.pause()');_t.paused=true;_s.o._pause(_t.sID);if(_t._iO.onpause)_t._iO.onpause.apply(_t);};this.resume=function(){if(!_t.paused||_t.playState==0)return false;_s._wD('SMSound.resume()');_t.paused=false;_s.o._pause(_t.sID);if(_t._iO.onresume)_t._iO.onresume.apply(_t);};this.togglePause=function(){_s._wD('SMSound.togglePause(). playState is '+_t.playState);if(!_t.playState){_t.play({position:(_s.flashVersion==9?_t.position:_t.position/1000)});return false;};if(_t.paused){_t.resume();}else{_t.pause();};};this.setPan=function(nPan){if(typeof nPan=='undefined')nPan=0;_s.o._setPan(_t.sID,nPan);_t._iO.pan=nPan;};this.setVolume=function(nVol){if(typeof nVol=='undefined')nVol=100;_s.o._setVolume(_t.sID,(_s.muted&&!_t.muted)||_t.muted?0:nVol);_t._iO.volume=nVol;};this.mute=function(){_t.muted=true;_s.o._setVolume(_t.sID,0);};this.unmute=function(){_t.muted=false;_s.o._setVolume(_t.sID,typeof _t._iO.volume!='undefined'?_t._iO.volume:_t.options.volume);};this._whileloading=function(nBytesLoaded,nBytesTotal,nDuration){if(!_t._iO.isMovieStar){_t.bytesLoaded=nBytesLoaded;_t.bytesTotal=nBytesTotal;_t.duration=Math.floor(nDuration);_t.durationEstimate=parseInt((_t.bytesTotal/_t.bytesLoaded)*_t.duration);if(_t.readyState!=3&&_t._iO.whileloading)_t._iO.whileloading.apply(_t);}else{_t.bytesLoaded=nBytesLoaded;_t.bytesTotal=nBytesTotal;_t.duration=Math.floor(nDuration);_t.durationEstimate=_t.duration;if(_t.readyState!=3&&_t._iO.whileloading)_t._iO.whileloading.apply(_t);}};this._onid3=function(oID3PropNames,oID3Data){_s._wD('SMSound._onid3(): "'+this.sID+'" ID3 data received.');var oData=[];for(var i=0,j=oID3PropNames.length;i<j;i++){oData[oID3PropNames[i]]=oID3Data[i];};_t.id3=_s._mergeObjects(_t.id3,oData);if(_t._iO.onid3)_t._iO.onid3.apply(_t);};this._whileplaying=function(nPosition,oPeakData,oWaveformData,oEQData){if(isNaN(nPosition)||nPosition==null)return false;_t.position=nPosition;if(_t._iO.usePeakData&&typeof oPeakData!='undefined'&&oPeakData){_t.peakData={left:oPeakData.leftPeak,right:oPeakData.rightPeak};};if(_t._iO.useWaveformData&&typeof oWaveformData!='undefined'&&oWaveformData){_t.waveformData=oWaveformData;};if(_t._iO.useEQData&&typeof oEQData!='undefined'&&oEQData){_t.eqData=oEQData;};if(_t.playState==1){if(_t._iO.whileplaying){_t._iO.whileplaying.apply(_t);};if(_t.loaded&&_t._iO.onbeforefinish&&_t._iO.onbeforefinishtime&&!_t.didBeforeFinish&&_t.duration-_t.position<=_t._iO.onbeforefinishtime){_s._wD('duration-position &lt;= onbeforefinishtime: '+_t.duration+' - '+_t.position+' &lt= '+_t._iO.onbeforefinishtime+' ('+(_t.duration-_t.position)+')');_t._onbeforefinish();};};};this._onload=function(bSuccess){bSuccess=(bSuccess==1?true:false);_s._wD('SMSound._onload(): "'+_t.sID+'"'+(bSuccess?' loaded.':' failed to load? - '+_t.url));if(!bSuccess){if(_s.sandbox.noRemote==true){_s._wD('SMSound._onload(): Reminder: Flash security is denying network/internet access',1);};if(_s.sandbox.noLocal==true){_s._wD('SMSound._onload(): Reminder: Flash security is denying local access',1);};};_t.loaded=bSuccess;_t.readyState=bSuccess?3:2;if(_t._iO.onload){_t._iO.onload.apply(_t);};};this._onbeforefinish=function(){if(!_t.didBeforeFinish){_t.didBeforeFinish=true;if(_t._iO.onbeforefinish){_s._wD('SMSound._onbeforefinish(): "'+_t.sID+'"');_t._iO.onbeforefinish.apply(_t);}};};this._onjustbeforefinish=function(msOffset){if(!_t.didJustBeforeFinish){_t.didJustBeforeFinish=true;if(_t._iO.onjustbeforefinish){_s._wD('SMSound._onjustbeforefinish(): "'+_t.sID+'"');_t._iO.onjustbeforefinish.apply(_t);}};};this._onfinish=function(){_t.playState=0;_t.paused=false;if(_t._iO.onfinish){_s._wD('SMSound._onfinish(): "'+_t.sID+'"');_t._iO.onfinish.apply(_t);}
if(_t._iO.onbeforefinishcomplete)_t._iO.onbeforefinishcomplete.apply(_t);_t.setPosition(0);_t.didBeforeFinish=false;_t.didJustBeforeFinish=false;if(_t.instanceCount){_t.instanceCount--;if(!_t.instanceCount){_t.instanceCount=0;_t.instanceOptions={};}}};this._onmetadata=function(oMetaData){_s._wD('SMSound.onmetadata()');if(!oMetaData.width&&!oMetaData.height){_s._wD('No width/height given, assuming defaults');oMetaData.width=320;oMetaData.height=240;};_t.metadata=oMetaData;_t.width=oMetaData.width;_t.height=oMetaData.height;if(_t._iO.onmetadata){_s._wD('SMSound._onmetadata(): "'+_t.sID+'"');_t._iO.onmetadata.apply(_t);}
_s.wD('SMSound.onmetadata() complete');};};if(window.addEventListener){window.addEventListener('focus',_s.handleFocus,false);window.addEventListener('load',_s.beginDelayedInit,false);window.addEventListener('unload',_s.destruct,false);if(_s._tryInitOnFocus)window.addEventListener('mousemove',_s.handleFocus,false);}else if(window.attachEvent){window.attachEvent('onfocus',_s.handleFocus);window.attachEvent('onload',_s.beginDelayedInit);window.attachEvent('unload',_s.destruct);}else{soundManager.onerror();soundManager.disable();};if(document.addEventListener)document.addEventListener('DOMContentLoaded',_s.domContentLoaded,false);};NS.soundManager=null;NS.Init=function()
{if(NS.soundManager!=null)
return NS.soundManager;NS.soundManager=new SoundManager();window.soundManager=NS.soundManager;return NS.soundManager;};});global_namespace.Define('startpad.sound',function(NS){var SM=NS.Import('schillmania.soundmanager2');var SME=NS.Import('entertonement.soundmanager2');NS.Extend(NS,{idNext:1,fInit:false,fLoaded:false,fError:false,sm:null,optDefault:{url:"/static/",consoleOnly:true,debugMode:true,manager:'default'},fBrokenOnLoad:false,Init:function(opt,fnOnLoad)
{if(!NS.fInit)
{NS.fInit=true;var optT=NS.Extend({},NS.optDefault,opt);if(optT.manager=='entertonement')
{console.info("Loading Entertonement Sound Player");NS.sm=SME.Init();NS.fBrokenOnLoad=true;}
else
NS.sm=SM.Init();NS.Extend(NS.sm,optT);NS.sm.onload=NS.SMLoaded;NS.sm.onerror=NS.SMError;NS.fnInitOnLoad=fnOnLoad;}},SMLoaded:function()
{NS.fLoaded=true;if(NS.fnInitOnLoad)
NS.fnInitOnLoad();},SMError:function()
{console.error("Error loading sound manager");NS.fError=true;NS.SMLoaded();},Sound:function(sURL,fnOnLoad)
{this.sURL=sURL;this.sID='id_'+NS.idNext++;this.snd=NS.sm.createSound({id:this.sID,url:this.sURL,autoLoad:true,autoPlay:false,onload:fnOnLoad});if(NS.fBrokenOnLoad)
setTimeout(fnOnLoad,50);}});NS.Extend(NS.Sound.prototype,{Play:function()
{this.snd.play();}});});global_namespace.Define('quip-art',function(NS){var Base=NS.Import('startpad.base');var DOM=NS.Import('startpad.DOM');var Vector=NS.Import('startpad.vector');var Timer=NS.Import('startpad.timer');var Events=NS.Import('startpad.events');var Data=NS.Import('startpad.data');var Cookies=NS.Import('startpad.cookies');var Sound=NS.Import('startpad.sound');NS.Extend(NS,{sSiteName:"Quip-Art",sCSRF:"",apikey:undefined,msLoaded:Timer.MSNow(),msNow:null,msFrameLoaded:null,fInIdle:false,page:{},snd:null,fImageLoaded:false,fFrameLoaded:false,fSoundLoaded:false,fDisplayed:false,fDirty:false,SetDirty:function()
{if(!NS.page.is_owner)
return;NS.fDirty=true;NS.msDirty=Timer.MSNow();},ReadyOrTimeout:function(sFlag,msTimeout)
{if(NS[sFlag])
{return;}
if(NS.msNow-NS.msLoaded>msTimeout)
{console.warn(sFlag+" Timout");NS[sFlag]=true;}},DisplayIfReady:function()
{NS.msNow=Timer.MSNow();if(NS.fDisplayed)
{NS.PostBack();return;}
NS.ReadyOrTimeout('fImageLoaded',5000);NS.ReadyOrTimeout('fFrameLoaded',5000);NS.ReadyOrTimeout('fSoundLoaded',5000);if(!NS.fFrameLoaded||!NS.fImageLoaded||!NS.fSoundLoaded)
return;if(!NS.msFrameLoaded)
NS.msFrameLoaded=NS.msNow;if(NS.msNow<NS.msFrameLoaded+NS.page.delay*1000)
{return;}
NS.fDisplayed=true;var divOverlay=NS.parts['overlay-image'];DOM.SetSize(divOverlay,[NS.img.width,NS.img.height]);divOverlay.style.backgroundImage="url("+NS.img.src+")";if(NS.page.has_text)
{var txtEntry=NS.parts['overlay-text'];txtEntry.style.visibility='visible';NS.CheckFontSize();if(NS.page.is_owner)
{txtEntry.focus();}}
NS.OnResize();NS.parts['overlay-image'].style.visibility='visible';if(NS.snd)
{NS.snd.Play();}},Init:function(sCSRF)
{NS.sCSRF=sCSRF;},GoBuilder:function(id,sURL)
{location.href='/make-page?id='+id+'&url='+encodeURIComponent(sURL);},Moderate:function(id)
{var chkAdult=document.getElementById('is_adult_'+id);var optStatus=document.getElementById('status_'+id);console.log("Adult: "+chkAdult.checked);console.log("Status: "+optStatus.value);sd=new Data.ScriptData('/moderate-overlay.json');sd.Call({csrf:NS.sCSRF,id:id,is_adult:chkAdult.checked,overlay_status:optStatus.value},function(obj){if(obj.status!='OK')
{alert("Moderation error: "+obj.message);return;}
console.log(obj);window.location.reload();});},ContinueToURL:function()
{var mArgs=Data.ParseParams(location.href);console.log(mArgs);Cookies.SetCookie('adult-content-ok',true,30);location.href=mArgs.url;},Click:function()
{NS.msLoaded=0;},PageLoaded:function(page)
{NS.page=page;Data.SetSiteName(NS.sSiteName);window.onbeforeunload=NS.BeforeUnload;Events.AddEventFn(window,"click",NS.Click,true);NS.Viewed();if(NS.page.snd)
{Sound.Init({manager:NS.page.sound_player},function(){if(Sound.fError)
{NS.fSoundLoaded=true;NS.DisplayIfReady();return;}
NS.snd=new Sound.Sound(NS.page.snd,function(){NS.fSoundLoaded=true;NS.DisplayIfReady();});});}
else
NS.fSoundLoaded=true;NS.parts=DOM.BindIDs();if(NS.page.has_text)
{var divText=NS.parts['overlay-text'];if(NS.page.is_owner)
{var ta=document.createElement('textarea');ta.id='overlay-text';ta.className='overlay-text';NS.parts['overlay-text']=ta;ta.value=NS.page.sOverlay;divText.parentNode.replaceChild(ta,divText);Events.AddEventFn(ta,"change",NS.TextDirty);Events.AddEventFn(ta,"keyup",NS.TextDirty);}
else
{Events.DisableSelection(divText);}}
NS.OnResize();Events.AddEventFn(window,"resize",NS.OnResize);NS.img=new Image();Events.AddEventFn(NS.img,"load",function(){NS.fImageLoaded=true;NS.fDisplayed=false;NS.DisplayIfReady();});NS.img.src=NS.page.image_url.full;NS.DisplayIfReady();NS.tmIdle=new Timer.Timer(500,NS.DisplayIfReady).Repeat().Active();Events.Draggable(NS.parts["overlay-image"],function(dpt){NS.parts['drag-background'].style.visibility='hidden';NS.page.dpt=NS.PositionImage(dpt);NS.OnResize();NS.SetDirty();},{fInclusive:!NS.page.is_owner,fnStart:function()
{NS.page.dpt=NS.PositionImage();NS.parts['drag-background'].style.visibility='visible';},fnMove:function(dpt)
{NS.PositionImage(dpt);}});},IFrameLoaded:function()
{NS.fFrameLoaded=true;},TextDirty:function()
{var sNew=NS.parts['overlay-text'].value;if(sNew.length>500)
{sNew=sNew.substr(0,500);NS.parts['overlay-text'].value=sNew;}
if(sNew!=NS.page.sOverlay)
{NS.page.sOverlay=sNew;NS.SetDirty();NS.CheckFontSize();}},BeforeUnload:function(evt)
{var msUnloading=Timer.MSNow();if(NS.fDirty||msUnloading-NS.msLoaded<5000)
{evt=evt||window.event||{};if(NS.fDirty)
evt.returnValue="Click CANCEL to save your changes.";else
evt.returnValue="Click CANCEL to keep the "+NS.sSiteName+" window open.";return evt.returnValue;}},OnResize:function()
{var rcWindow=DOM.RcWindow();var dxMax=rcWindow[DOM.x2]-rcWindow[DOM.x];var dyMax=rcWindow[DOM.y2]-rcWindow[DOM.y];var divBar=NS.parts["quip-bar"];var dyBar=DOM.PtSize(divBar)[DOM.y];divBar.style.top=(dyMax-dyBar)+"px";var dxCredits=Math.max(0,dxMax-468-8);NS.parts['credits'].style.width=dxCredits+"px";dxCredits-=125;if(NS.page.sound_player=='entertonement')
{dxCredits=Math.max(0,dxCredits-330);}
NS.parts['credits-block'].style.width=dxCredits+"px";var divContent=NS.parts["content"];var ptContent=DOM.PtClient(divContent);divContent.style.height=Math.max(0,dyMax-ptContent[DOM.y]-dyBar)+"px";NS.PositionImage();NS.CheckFontSize();},PositionImage:function(dpt)
{if(!dpt)
dpt=[0,0];Vector.AddTo(dpt,NS.page.dpt);if(!NS.fImageLoaded)
{return dpt;}
var rcContent=DOM.RcClient(NS.parts["content"]);var img=NS.parts["overlay-image"];var ptImageSize=[NS.img.width,NS.img.height];var rcImage=[0,0,NS.img.width,NS.img.height];var iRef=NS.page.iReg;var ptTarget=Vector.PtRegistration(rcContent,iRef);var ptSource=Vector.PtRegistration(rcImage,iRef);var ptPos=Vector.Sub(ptTarget,ptSource);Vector.AddTo(ptPos,dpt);Vector.AddTo(rcImage,ptPos);var rcContentExpanded=Vector.RcExpand(rcContent,Vector.Floor(Vector.Mult(ptImageSize,0.75)));var ptAdjust=Vector.UL(rcImage);Vector.KeepInRect(rcImage,rcContentExpanded);Vector.SubFrom(ptAdjust,Vector.UL(rcImage));var rcClipped=Vector.RcClipToRect(rcImage,rcContent);var dptOffset=Vector.Sub(Vector.UL(rcClipped),Vector.UL(rcImage));img.style.backgroundPosition=-dptOffset[0]+"px "+-dptOffset[1]+"px";DOM.SetRc(img,rcClipped);if(NS.rcTextAdjusted)
{var rcTextT=Vector.Sub(NS.rcTextAdjusted,dptOffset);DOM.SetRc(NS.parts['overlay-text'],rcTextT);}
return Vector.Sub(dpt,ptAdjust);},asPostBack:['csrf','id','dpt','sOverlay','iReg'],PostBack:function()
{if(NS.fDirty)
{if(NS.msNow-NS.msDirty<3000)
return;NS.page.csrf=NS.sCSRF;NS.fDirty=false;var sd=new Data.ScriptData('/edit-page.json');sd.Call(Base.Project(NS.page,NS.asPostBack),function(obj){if(obj.status!='OK')
{alert("Error modifying page.  "+obj.message);return;}
NS.page=obj.page;});}},CheckFontSize:function()
{if(!NS.page.has_text)
return;var divMeasure=NS.parts['overlay-measure'];var spanMeasure=NS.parts['span-measure'];var ptAvailable=Vector.Size(NS.page.rcText);divMeasure.style.width=(ptAvailable[Vector.x]-2)+"px";var sText=NS.page.sOverlay;if(sText=="")
sText=".";DOM.SetText(spanMeasure,sText);var aSizes=[120,96,72,48,36,24,18,12,10,8,6];var sSize;var ptSize;var size;for(var i=0;i<aSizes.length;i++)
{size=aSizes[i];sSize=aSizes[i]+"px";divMeasure.style.fontSize=sSize;ptSize=DOM.PtSize(divMeasure);ptSpanSize=DOM.PtSize(spanMeasure);if(ptSize[Vector.y]<=ptAvailable[Vector.y]&&ptSpanSize[Vector.x]<=ptAvailable[Vector.x])
break;}
if(sSize!=NS.sSizeLast||ptSize[Vector.y]!=NS.ptSizeLast[Vector.y])
{NS.sSizeLast=sSize;NS.ptSizeLast=ptSize;NS.parts['overlay-text'].style.fontSize=sSize;if(Base.Browser.fIE)
NS.parts['overlay-text'].value=NS.page.sOverlay;NS.rcTextAdjusted=Vector.Add(NS.page.rcText,[0,(ptAvailable[Vector.y]-NS.ptSizeLast[Vector.y])/2]);DOM.SetRc(NS.parts['overlay-text'],NS.rcTextAdjusted);}},Viewed:function()
{var sd=new Data.ScriptData('/view-page.json');sd.Call(Base.Project(NS.page,["id"]));},TrackEvent:function(sEvent)
{try
{pageTracker._trackPageview('/meta/'+sEvent);}
catch(e){}},FacebookShare:function(u,t)
{window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t),'sharer','toolbar=0,status=0,width=626,height=436');},TweetThis:function()
{var sSuffix=" - http://"+window.location.host+"/"+NS.page.id;var sText=NS.page.sOverlay.substr(0,140-sSuffix.length);window.open("http://twitter.com/home?source="+NS.page.sTwitterSource+"&status="+encodeURIComponent(sText+sSuffix));}});});