window.arivis=window.arivis||{};window.arivis.webview=window.arivis.webview||{};if(typeof YAHOO=="undefined"||!YAHOO){var YAHOO={}}YAHOO.namespace=function(){var a=arguments,b=null,d,e,c;for(d=0;d<a.length;d=d+1){c=(""+a[d]).split(".");b=YAHOO;for(e=(c[0]=="YAHOO")?1:0;e<c.length;e=e+1){b[c[e]]=b[c[e]]||{};b=b[c[e]]}}return b};YAHOO.log=function(b,a,c){var d=YAHOO.widget.Logger;if(d&&d.log){return d.log(b,a,c)}else{return false}};YAHOO.register=function(d,i,a){var e=YAHOO.env.modules,c,f,g,h,b;if(!e[d]){e[d]={versions:[],builds:[]}}c=e[d];f=a.version;g=a.build;h=YAHOO.env.listeners;c.name=d;c.version=f;c.build=g;c.versions.push(f);c.builds.push(g);c.mainClass=i;for(b=0;b<h.length;b=b+1){h[b](c)}if(i){i.VERSION=f;i.BUILD=g}else{YAHOO.log("mainClass is undefined for module "+d,"warn")}};YAHOO.env=YAHOO.env||{modules:[],listeners:[]};YAHOO.env.getVersion=function(a){return YAHOO.env.modules[a]||null};YAHOO.env.ua=function(){var b={ie:0,opera:0,gecko:0,webkit:0,mobile:null,air:0,caja:0},c=navigator.userAgent,a;if((/KHTML/).test(c)){b.webkit=1}a=c.match(/AppleWebKit\/([^\s]*)/);if(a&&a[1]){b.webkit=parseFloat(a[1]);if(/ Mobile\//.test(c)){b.mobile="Apple"}else{a=c.match(/NokiaN[^\/]*/);if(a){b.mobile=a[0]}}a=c.match(/AdobeAIR\/([^\s]*)/);if(a){b.air=a[0]}}if(!b.webkit){a=c.match(/Opera[\s\/]([^\s]*)/);if(a&&a[1]){b.opera=parseFloat(a[1]);a=c.match(/Opera Mini[^;]*/);if(a){b.mobile=a[0]}}else{a=c.match(/MSIE\s([^;]*)/);if(a&&a[1]){b.ie=parseFloat(a[1])}else{a=c.match(/Gecko\/([^\s]*)/);if(a){b.gecko=1;a=c.match(/rv:([^\s\)]*)/);if(a&&a[1]){b.gecko=parseFloat(a[1])}}}}}a=c.match(/Caja\/([^\s]*)/);if(a&&a[1]){b.caja=parseFloat(a[1])}return b}();(function(){YAHOO.namespace("util","widget","example");if("undefined"!==typeof YAHOO_config){var d=YAHOO_config.listener,a=YAHOO.env.listeners,b=true,c;if(d){for(c=0;c<a.length;c=c+1){if(a[c]==d){b=false;break}}if(b){a.push(d)}}}})();YAHOO.lang=YAHOO.lang||{};(function(){var f=YAHOO.lang,b="[object Array]",e="[object Function]",a=Object.prototype,c=["toString","valueOf"],d={isArray:function(g){return a.toString.apply(g)===b},isBoolean:function(g){return typeof g==="boolean"},isFunction:function(g){return a.toString.apply(g)===e},isNull:function(g){return g===null},isNumber:function(g){return typeof g==="number"&&isFinite(g)},isObject:function(g){return(g&&(typeof g==="object"||f.isFunction(g)))||false},isString:function(g){return typeof g==="string"},isUndefined:function(g){return typeof g==="undefined"},_IEEnumFix:(YAHOO.env.ua.ie)?function(i,j){var k,g,h;for(k=0;k<c.length;k=k+1){g=c[k];h=j[g];if(f.isFunction(h)&&h!=a[g]){i[g]=h}}}:function(){},extend:function(h,g,i){if(!g||!h){throw new Error("extend failed, please check that all dependencies are included.")}var j=function(){},k;j.prototype=g.prototype;h.prototype=new j();h.prototype.constructor=h;h.superclass=g.prototype;if(g.prototype.constructor==a.constructor){g.prototype.constructor=g}if(i){for(k in i){if(f.hasOwnProperty(i,k)){h.prototype[k]=i[k]}}f._IEEnumFix(h.prototype,i)}},augmentObject:function(h,i){if(!i||!h){throw new Error("Absorb failed, verify dependencies.")}var m=arguments,j,g,k=m[2];if(k&&k!==true){for(j=2;j<m.length;j=j+1){h[m[j]]=i[m[j]]}}else{for(g in i){if(k||!(g in h)){h[g]=i[g]}}f._IEEnumFix(h,i)}},augmentProto:function(g,h){if(!h||!g){throw new Error("Augment failed, verify dependencies.")}var j=[g.prototype,h.prototype],i;for(i=2;i<arguments.length;i=i+1){j.push(arguments[i])}f.augmentObject.apply(this,j)},dump:function(p,j){var n,k,h=[],g="{...}",o="f(){...}",i=", ",m=" => ";if(!f.isObject(p)){return p+""}else{if(p instanceof Date||("nodeType" in p&&"tagName" in p)){return p}else{if(f.isFunction(p)){return o}}}j=(f.isNumber(j))?j:3;if(f.isArray(p)){h.push("[");for(n=0,k=p.length;n<k;n=n+1){if(f.isObject(p[n])){h.push((j>0)?f.dump(p[n],j-1):g)}else{h.push(p[n])}h.push(i)}if(h.length>1){h.pop()}h.push("]")}else{h.push("{");for(n in p){if(f.hasOwnProperty(p,n)){h.push(n+m);if(f.isObject(p[n])){h.push((j>0)?f.dump(p[n],j-1):g)}else{h.push(p[n])}h.push(i)}}if(h.length>1){h.pop()}h.push("}")}return h.join("")},substitute:function(g,w,o){var r,s,u,k,j,h,m=[],v,q="dump",n=" ",z="{",i="}",p;for(;;){r=g.lastIndexOf(z);if(r<0){break}s=g.indexOf(i,r);if(r+1>=s){break}v=g.substring(r+1,s);k=v;h=null;u=k.indexOf(n);if(u>-1){h=k.substring(u+1);k=k.substring(0,u)}j=w[k];if(o){j=o(k,j,h)}if(f.isObject(j)){if(f.isArray(j)){j=f.dump(j,parseInt(h,10))}else{h=h||"";p=h.indexOf(q);if(p>-1){h=h.substring(4)}if(j.toString===a.toString||p>-1){j=f.dump(j,parseInt(h,10))}else{j=j.toString()}}}else{if(!f.isString(j)&&!f.isNumber(j)){j="~-"+m.length+"-~";m[m.length]=v}}g=g.substring(0,r)+j+g.substring(s+1)}for(r=m.length-1;r>=0;r=r-1){g=g.replace(new RegExp("~-"+r+"-~"),"{"+m[r]+"}","g")}return g},trim:function(h){try{return h.replace(/^\s+|\s+$/g,"")}catch(g){return h}},merge:function(){var g={},i=arguments,j=i.length,h;for(h=0;h<j;h=h+1){f.augmentObject(g,i[h],true)}return g},later:function(h,o,g,m,k){h=h||0;o=o||{};var n=g,i=m,j,p;if(f.isString(g)){n=o[g]}if(!n){throw new TypeError("method undefined")}if(!f.isArray(i)){i=[m]}j=function(){n.apply(o,i)};p=(k)?setInterval(j,h):setTimeout(j,h);return{interval:k,cancel:function(){if(this.interval){clearInterval(p)}else{clearTimeout(p)}}}},isValue:function(g){return(f.isObject(g)||f.isString(g)||f.isNumber(g)||f.isBoolean(g))}};f.hasOwnProperty=(a.hasOwnProperty)?function(h,g){return h&&h.hasOwnProperty(g)}:function(h,g){return !f.isUndefined(h[g])&&h.constructor.prototype[g]!==h[g]};d.augmentObject(f,d,true);YAHOO.util.Lang=f;f.augment=f.augmentProto;YAHOO.augment=f.augmentProto;YAHOO.extend=f.extend})();YAHOO.register("yahoo",YAHOO,{version:"2.7.0",build:"1799"});YAHOO.util.Get=function(){var g={},h=0,b=0,p=false,f=YAHOO.env.ua,a=YAHOO.lang;var j=function(v,A,D){var z=D||window,C=z.document,B=C.createElement(v);for(var w in A){if(A[w]&&YAHOO.lang.hasOwnProperty(A,w)){B.setAttribute(w,A[w])}}return B};var k=function(A,z,v){var w=v||"utf-8";return j("link",{id:"yui__dyn_"+(b++),type:"text/css",charset:w,rel:"stylesheet",href:A},z)};var d=function(A,z,v){var w=v||"utf-8";return j("script",{id:"yui__dyn_"+(b++),type:"text/javascript",charset:w,src:A},z)};var u=function(w,v){return{tId:w.tId,win:w.win,data:w.data,nodes:w.nodes,msg:v,purge:function(){q(this.tId)}}};var s=function(A,v){var z=g[v],w=(a.isString(A))?z.win.document.getElementById(A):A;if(!w){c(v,"target node not found: "+A)}return w};var c=function(v,w){var A=g[v];if(A.onFailure){var z=A.scope||A.win;A.onFailure.call(z,u(A,w))}};var r=function(v){var A=g[v];A.finished=true;if(A.aborted){var w="transaction "+v+" was aborted";c(v,w);return}if(A.onSuccess){var z=A.scope||A.win;A.onSuccess.call(z,u(A))}};var e=function(v){var z=g[v];if(z.onTimeout){var w=z.scope||z;z.onTimeout.call(w,u(z))}};var n=function(B,v){var C=g[B];if(C.timer){C.timer.cancel()}if(C.aborted){var z="transaction "+B+" was aborted";c(B,z);return}if(v){C.url.shift();if(C.varName){C.varName.shift()}}else{C.url=(a.isString(C.url))?[C.url]:C.url;if(C.varName){C.varName=(a.isString(C.varName))?[C.varName]:C.varName}}var F=C.win,G=F.document,H=G.getElementsByTagName("head")[0],A;if(C.url.length===0){if(C.type==="script"&&f.webkit&&f.webkit<420&&!C.finalpass&&!C.varName){var w=d(null,C.win,C.charset);w.innerHTML='YAHOO.util.Get._finalize("'+B+'");';C.nodes.push(w);H.appendChild(w)}else{r(B)}return}var D=C.url[0];if(!D){C.url.shift();return n(B)}if(C.timeout){C.timer=a.later(C.timeout,C,e,B)}if(C.type==="script"){A=d(D,F,C.charset)}else{A=k(D,F,C.charset)}o(C.type,A,B,D,F,C.url.length);C.nodes.push(A);if(C.insertBefore){var E=s(C.insertBefore,B);if(E){E.parentNode.insertBefore(A,E)}}else{H.appendChild(A)}if((f.webkit||f.gecko)&&C.type==="css"){n(B,D)}};var i=function(){if(p){return}p=true;for(var w in g){var v=g[w];if(v.autopurge&&v.finished){q(v.tId);delete g[w]}}p=false};var q=function(z){var E=g[z];if(E){var C=E.nodes,B=C.length,D=E.win.document,v=D.getElementsByTagName("head")[0];if(E.insertBefore){var w=s(E.insertBefore,z);if(w){v=w.parentNode}}for(var A=0;A<B;A=A+1){v.removeChild(C[A])}E.nodes=[]}};var m=function(z,A,w){var B="q"+(h++);w=w||{};if(h%YAHOO.util.Get.PURGE_THRESH===0){i()}g[B]=a.merge(w,{tId:B,type:z,url:A,finished:false,aborted:false,nodes:[]});var v=g[B];v.win=v.win||window;v.scope=v.scope||v.win;v.autopurge=("autopurge" in v)?v.autopurge:(z==="script")?true:false;a.later(0,v,n,B);return{tId:B}};var o=function(E,z,A,C,w,v,F){var G=F||n;if(f.ie){z.onreadystatechange=function(){var H=this.readyState;if("loaded"===H||"complete"===H){z.onreadystatechange=null;G(A,C)}}}else{if(f.webkit){if(E==="script"){if(f.webkit>=420){z.addEventListener("load",function(){G(A,C)})}else{var D=g[A];if(D.varName){var B=YAHOO.util.Get.POLL_FREQ;D.maxattempts=YAHOO.util.Get.TIMEOUT/B;D.attempts=0;D._cache=D.varName[0].split(".");D.timer=a.later(B,D,function(H){var K=this._cache,L=K.length,M=this.win,J;for(J=0;J<L;J=J+1){M=M[K[J]];if(!M){this.attempts++;if(this.attempts++>this.maxattempts){var I="Over retry limit, giving up";D.timer.cancel();c(A,I)}else{}return}}D.timer.cancel();G(A,C)},null,true)}else{a.later(YAHOO.util.Get.POLL_FREQ,null,G,[A,C])}}}}else{z.onload=function(){G(A,C)}}}};return{POLL_FREQ:10,PURGE_THRESH:20,TIMEOUT:2000,_finalize:function(v){a.later(0,null,r,v)},abort:function(w){var v=(a.isString(w))?w:w.tId;var z=g[v];if(z){z.aborted=true}},script:function(w,v){return m("script",w,v)},css:function(w,v){return m("css",w,v)}}}();YAHOO.register("get",YAHOO.util.Get,{version:"2.7.0",build:"1799"});(function(){var Y=YAHOO,util=Y.util,lang=Y.lang,env=Y.env,PROV="_provides",SUPER="_supersedes",REQ="expanded",AFTER="_after";var YUI={dupsAllowed:{yahoo:true,get:true},info:{root:"2.7.0/build/",base:"http://yui.yahooapis.com/2.7.0/build/",comboBase:"http://yui.yahooapis.com/combo?",skin:{defaultSkin:"sam",base:"assets/skins/",path:"skin.css",after:["reset","fonts","grids","base"],rollup:3},dupsAllowed:["yahoo","get"],moduleInfo:{animation:{type:"js",path:"animation/animation-min.js",requires:["dom","event"]},autocomplete:{type:"js",path:"autocomplete/autocomplete-min.js",requires:["dom","event","datasource"],optional:["connection","animation"],skinnable:true},base:{type:"css",path:"base/base-min.css",after:["reset","fonts","grids"]},button:{type:"js",path:"button/button-min.js",requires:["element"],optional:["menu"],skinnable:true},calendar:{type:"js",path:"calendar/calendar-min.js",requires:["event","dom"],skinnable:true},carousel:{type:"js",path:"carousel/carousel-min.js",requires:["element"],optional:["animation"],skinnable:true},charts:{type:"js",path:"charts/charts-min.js",requires:["element","json","datasource"]},colorpicker:{type:"js",path:"colorpicker/colorpicker-min.js",requires:["slider","element"],optional:["animation"],skinnable:true},connection:{type:"js",path:"connection/connection-min.js",requires:["event"]},container:{type:"js",path:"container/container-min.js",requires:["dom","event"],optional:["dragdrop","animation","connection"],supersedes:["containercore"],skinnable:true},containercore:{type:"js",path:"container/container_core-min.js",requires:["dom","event"],pkg:"container"},cookie:{type:"js",path:"cookie/cookie-min.js",requires:["yahoo"]},datasource:{type:"js",path:"datasource/datasource-min.js",requires:["event"],optional:["connection"]},datatable:{type:"js",path:"datatable/datatable-min.js",requires:["element","datasource"],optional:["calendar","dragdrop","paginator"],skinnable:true},dom:{type:"js",path:"dom/dom-min.js",requires:["yahoo"]},dragdrop:{type:"js",path:"dragdrop/dragdrop-min.js",requires:["dom","event"]},editor:{type:"js",path:"editor/editor-min.js",requires:["menu","element","button"],optional:["animation","dragdrop"],supersedes:["simpleeditor"],skinnable:true},element:{type:"js",path:"element/element-min.js",requires:["dom","event"]},event:{type:"js",path:"event/event-min.js",requires:["yahoo"]},fonts:{type:"css",path:"fonts/fonts-min.css"},get:{type:"js",path:"get/get-min.js",requires:["yahoo"]},grids:{type:"css",path:"grids/grids-min.css",requires:["fonts"],optional:["reset"]},history:{type:"js",path:"history/history-min.js",requires:["event"]},imagecropper:{type:"js",path:"imagecropper/imagecropper-min.js",requires:["dom","event","dragdrop","element","resize"],skinnable:true},imageloader:{type:"js",path:"imageloader/imageloader-min.js",requires:["event","dom"]},json:{type:"js",path:"json/json-min.js",requires:["yahoo"]},layout:{type:"js",path:"layout/layout-min.js",requires:["dom","event","element"],optional:["animation","dragdrop","resize","selector"],skinnable:true},logger:{type:"js",path:"logger/logger-min.js",requires:["event","dom"],optional:["dragdrop"],skinnable:true},menu:{type:"js",path:"menu/menu-min.js",requires:["containercore"],skinnable:true},paginator:{type:"js",path:"paginator/paginator-min.js",requires:["element"],skinnable:true},profiler:{type:"js",path:"profiler/profiler-min.js",requires:["yahoo"]},profilerviewer:{type:"js",path:"profilerviewer/profilerviewer-min.js",requires:["profiler","yuiloader","element"],skinnable:true},reset:{type:"css",path:"reset/reset-min.css"},"reset-fonts-grids":{type:"css",path:"reset-fonts-grids/reset-fonts-grids.css",supersedes:["reset","fonts","grids","reset-fonts"],rollup:4},"reset-fonts":{type:"css",path:"reset-fonts/reset-fonts.css",supersedes:["reset","fonts"],rollup:2},resize:{type:"js",path:"resize/resize-min.js",requires:["dom","event","dragdrop","element"],optional:["animation"],skinnable:true},selector:{type:"js",path:"selector/selector-min.js",requires:["yahoo","dom"]},simpleeditor:{type:"js",path:"editor/simpleeditor-min.js",requires:["element"],optional:["containercore","menu","button","animation","dragdrop"],skinnable:true,pkg:"editor"},slider:{type:"js",path:"slider/slider-min.js",requires:["dragdrop"],optional:["animation"],skinnable:true},stylesheet:{type:"js",path:"stylesheet/stylesheet-min.js",requires:["yahoo"]},tabview:{type:"js",path:"tabview/tabview-min.js",requires:["element"],optional:["connection"],skinnable:true},treeview:{type:"js",path:"treeview/treeview-min.js",requires:["event","dom"],optional:["json"],skinnable:true},uploader:{type:"js",path:"uploader/uploader.js",requires:["element"]},utilities:{type:"js",path:"utilities/utilities.js",supersedes:["yahoo","event","dragdrop","animation","dom","connection","element","yahoo-dom-event","get","yuiloader","yuiloader-dom-event"],rollup:8},yahoo:{type:"js",path:"yahoo/yahoo-min.js"},"yahoo-dom-event":{type:"js",path:"yahoo-dom-event/yahoo-dom-event.js",supersedes:["yahoo","event","dom"],rollup:3},yuiloader:{type:"js",path:"yuiloader/yuiloader-min.js",supersedes:["yahoo","get"]},"yuiloader-dom-event":{type:"js",path:"yuiloader-dom-event/yuiloader-dom-event.js",supersedes:["yahoo","dom","event","get","yuiloader","yahoo-dom-event"],rollup:5},yuitest:{type:"js",path:"yuitest/yuitest-min.js",requires:["logger"],skinnable:true}}},ObjectUtil:{appendArray:function(o,a){if(a){for(var i=0;i<a.length;i=i+1){o[a[i]]=true}}},keys:function(o,ordered){var a=[],i;for(i in o){if(lang.hasOwnProperty(o,i)){a.push(i)}}return a}},ArrayUtil:{appendArray:function(a1,a2){Array.prototype.push.apply(a1,a2)},indexOf:function(a,val){for(var i=0;i<a.length;i=i+1){if(a[i]===val){return i}}return -1},toObject:function(a){var o={};for(var i=0;i<a.length;i=i+1){o[a[i]]=true}return o},uniq:function(a){return YUI.ObjectUtil.keys(YUI.ArrayUtil.toObject(a))}}};YAHOO.util.YUILoader=function(o){this._internalCallback=null;this._useYahooListener=false;this.onSuccess=null;this.onFailure=Y.log;this.onProgress=null;this.onTimeout=null;this.scope=this;this.data=null;this.insertBefore=null;this.charset=null;this.varName=null;this.base=YUI.info.base;this.comboBase=YUI.info.comboBase;this.combine=false;this.root=YUI.info.root;this.timeout=0;this.ignore=null;this.force=null;this.allowRollup=true;this.filter=null;this.required={};this.moduleInfo=lang.merge(YUI.info.moduleInfo);this.rollups=null;this.loadOptional=false;this.sorted=[];this.loaded={};this.dirty=true;this.inserted={};var self=this;env.listeners.push(function(m){if(self._useYahooListener){self.loadNext(m.name)}});this.skin=lang.merge(YUI.info.skin);this._config(o)};Y.util.YUILoader.prototype={FILTERS:{RAW:{searchExp:"-min\\.js",replaceStr:".js"},DEBUG:{searchExp:"-min\\.js",replaceStr:"-debug.js"}},SKIN_PREFIX:"skin-",_config:function(o){if(o){for(var i in o){if(lang.hasOwnProperty(o,i)){if(i=="require"){this.require(o[i])}else{this[i]=o[i]}}}}var f=this.filter;if(lang.isString(f)){f=f.toUpperCase();if(f==="DEBUG"){this.require("logger")}if(!Y.widget.LogWriter){Y.widget.LogWriter=function(){return Y}}this.filter=this.FILTERS[f]}},addModule:function(o){if(!o||!o.name||!o.type||(!o.path&&!o.fullpath)){return false}o.ext=("ext" in o)?o.ext:true;o.requires=o.requires||[];this.moduleInfo[o.name]=o;this.dirty=true;return true},require:function(what){var a=(typeof what==="string")?arguments:what;this.dirty=true;YUI.ObjectUtil.appendArray(this.required,a)},_addSkin:function(skin,mod){var name=this.formatSkin(skin),info=this.moduleInfo,sinf=this.skin,ext=info[mod]&&info[mod].ext;if(!info[name]){this.addModule({name:name,type:"css",path:sinf.base+skin+"/"+sinf.path,after:sinf.after,rollup:sinf.rollup,ext:ext})}if(mod){name=this.formatSkin(skin,mod);if(!info[name]){var mdef=info[mod],pkg=mdef.pkg||mod;this.addModule({name:name,type:"css",after:sinf.after,path:pkg+"/"+sinf.base+skin+"/"+mod+".css",ext:ext})}}return name},getRequires:function(mod){if(!mod){return[]}if(!this.dirty&&mod.expanded){return mod.expanded}mod.requires=mod.requires||[];var i,d=[],r=mod.requires,o=mod.optional,info=this.moduleInfo,m;for(i=0;i<r.length;i=i+1){d.push(r[i]);m=info[r[i]];YUI.ArrayUtil.appendArray(d,this.getRequires(m))}if(o&&this.loadOptional){for(i=0;i<o.length;i=i+1){d.push(o[i]);YUI.ArrayUtil.appendArray(d,this.getRequires(info[o[i]]))}}mod.expanded=YUI.ArrayUtil.uniq(d);return mod.expanded},getProvides:function(name,notMe){var addMe=!(notMe),ckey=(addMe)?PROV:SUPER,m=this.moduleInfo[name],o={};if(!m){return o}if(m[ckey]){return m[ckey]}var s=m.supersedes,done={},me=this;var add=function(mm){if(!done[mm]){done[mm]=true;lang.augmentObject(o,me.getProvides(mm))}};if(s){for(var i=0;i<s.length;i=i+1){add(s[i])}}m[SUPER]=o;m[PROV]=lang.merge(o);m[PROV][name]=true;return m[ckey]},calculate:function(o){if(o||this.dirty){this._config(o);this._setup();this._explode();if(this.allowRollup){this._rollup()}this._reduce();this._sort();this.dirty=false}},_setup:function(){var info=this.moduleInfo,name,i,j;for(name in info){if(lang.hasOwnProperty(info,name)){var m=info[name];if(m&&m.skinnable){var o=this.skin.overrides,smod;if(o&&o[name]){for(i=0;i<o[name].length;i=i+1){smod=this._addSkin(o[name][i],name)}}else{smod=this._addSkin(this.skin.defaultSkin,name)}m.requires.push(smod)}}}var l=lang.merge(this.inserted);if(!this._sandbox){l=lang.merge(l,env.modules)}if(this.ignore){YUI.ObjectUtil.appendArray(l,this.ignore)}if(this.force){for(i=0;i<this.force.length;i=i+1){if(this.force[i] in l){delete l[this.force[i]]}}}for(j in l){if(lang.hasOwnProperty(l,j)){lang.augmentObject(l,this.getProvides(j))}}this.loaded=l},_explode:function(){var r=this.required,i,mod;for(i in r){if(lang.hasOwnProperty(r,i)){mod=this.moduleInfo[i];if(mod){var req=this.getRequires(mod);if(req){YUI.ObjectUtil.appendArray(r,req)}}}}},_skin:function(){},formatSkin:function(skin,mod){var s=this.SKIN_PREFIX+skin;if(mod){s=s+"-"+mod}return s},parseSkin:function(mod){if(mod.indexOf(this.SKIN_PREFIX)===0){var a=mod.split("-");return{skin:a[1],module:a[2]}}return null},_rollup:function(){var i,j,m,s,rollups={},r=this.required,roll,info=this.moduleInfo;if(this.dirty||!this.rollups){for(i in info){if(lang.hasOwnProperty(info,i)){m=info[i];if(m&&m.rollup){rollups[i]=m}}}this.rollups=rollups}for(;;){var rolled=false;for(i in rollups){if(!r[i]&&!this.loaded[i]){m=info[i];s=m.supersedes;roll=false;if(!m.rollup){continue}var skin=(m.ext)?false:this.parseSkin(i),c=0;if(skin){for(j in r){if(lang.hasOwnProperty(r,j)){if(i!==j&&this.parseSkin(j)){c++;roll=(c>=m.rollup);if(roll){break}}}}}else{for(j=0;j<s.length;j=j+1){if(this.loaded[s[j]]&&(!YUI.dupsAllowed[s[j]])){roll=false;break}else{if(r[s[j]]){c++;roll=(c>=m.rollup);if(roll){break}}}}}if(roll){r[i]=true;rolled=true;this.getRequires(m)}}}if(!rolled){break}}},_reduce:function(){var i,j,s,m,r=this.required;for(i in r){if(i in this.loaded){delete r[i]}else{var skinDef=this.parseSkin(i);if(skinDef){if(!skinDef.module){var skin_pre=this.SKIN_PREFIX+skinDef.skin;for(j in r){if(lang.hasOwnProperty(r,j)){m=this.moduleInfo[j];var ext=m&&m.ext;if(!ext&&j!==i&&j.indexOf(skin_pre)>-1){delete r[j]}}}}}else{m=this.moduleInfo[i];s=m&&m.supersedes;if(s){for(j=0;j<s.length;j=j+1){if(s[j] in r){delete r[s[j]]}}}}}}},_onFailure:function(msg){YAHOO.log("Failure","info","loader");var f=this.onFailure;if(f){f.call(this.scope,{msg:"failure: "+msg,data:this.data,success:false})}},_onTimeout:function(){YAHOO.log("Timeout","info","loader");var f=this.onTimeout;if(f){f.call(this.scope,{msg:"timeout",data:this.data,success:false})}},_sort:function(){var s=[],info=this.moduleInfo,loaded=this.loaded,checkOptional=!this.loadOptional,me=this;var requires=function(aa,bb){var mm=info[aa];if(loaded[bb]||!mm){return false}var ii,rr=mm.expanded,after=mm.after,other=info[bb],optional=mm.optional;if(rr&&YUI.ArrayUtil.indexOf(rr,bb)>-1){return true}if(after&&YUI.ArrayUtil.indexOf(after,bb)>-1){return true}if(checkOptional&&optional&&YUI.ArrayUtil.indexOf(optional,bb)>-1){return true}var ss=info[bb]&&info[bb].supersedes;if(ss){for(ii=0;ii<ss.length;ii=ii+1){if(requires(aa,ss[ii])){return true}}}if(mm.ext&&mm.type=="css"&&!other.ext&&other.type=="css"){return true}return false};for(var i in this.required){if(lang.hasOwnProperty(this.required,i)){s.push(i)}}var p=0;for(;;){var l=s.length,a,b,j,k,moved=false;for(j=p;j<l;j=j+1){a=s[j];for(k=j+1;k<l;k=k+1){if(requires(a,s[k])){b=s.splice(k,1);s.splice(j,0,b[0]);moved=true;break}}if(moved){break}else{p=p+1}}if(!moved){break}}this.sorted=s},toString:function(){var o={type:"YUILoader",base:this.base,filter:this.filter,required:this.required,loaded:this.loaded,inserted:this.inserted};lang.dump(o,1)},_combine:function(){this._combining=[];var self=this,s=this.sorted,len=s.length,js=this.comboBase,css=this.comboBase,target,startLen=js.length,i,m,type=this.loadType;YAHOO.log("type "+type);for(i=0;i<len;i=i+1){m=this.moduleInfo[s[i]];if(m&&!m.ext&&(!type||type===m.type)){target=this.root+m.path;target+="&";if(m.type=="js"){js+=target}else{css+=target}this._combining.push(s[i])}}if(this._combining.length){YAHOO.log("Attempting to combine: "+this._combining,"info","loader");var callback=function(o){var c=this._combining,len=c.length,i,m;for(i=0;i<len;i=i+1){this.inserted[c[i]]=true}this.loadNext(o.data)},loadScript=function(){if(js.length>startLen){YAHOO.util.Get.script(self._filter(js),{data:self._loading,onSuccess:callback,onFailure:self._onFailure,onTimeout:self._onTimeout,insertBefore:self.insertBefore,charset:self.charset,timeout:self.timeout,scope:self})}};if(css.length>startLen){YAHOO.util.Get.css(this._filter(css),{data:this._loading,onSuccess:loadScript,onFailure:this._onFailure,onTimeout:this._onTimeout,insertBefore:this.insertBefore,charset:this.charset,timeout:this.timeout,scope:self})}else{loadScript()}return}else{this.loadNext(this._loading)}},insert:function(o,type){this.calculate(o);this._loading=true;this.loadType=type;if(this.combine){return this._combine()}if(!type){var self=this;this._internalCallback=function(){self._internalCallback=null;self.insert(null,"js")};this.insert(null,"css");return}this.loadNext()},sandbox:function(o,type){this._config(o);if(!this.onSuccess){throw new Error("You must supply an onSuccess handler for your sandbox")}this._sandbox=true;var self=this;if(!type||type!=="js"){this._internalCallback=function(){self._internalCallback=null;self.sandbox(null,"js")};this.insert(null,"css");return}if(!util.Connect){var ld=new YAHOO.util.YUILoader();ld.insert({base:this.base,filter:this.filter,require:"connection",insertBefore:this.insertBefore,charset:this.charset,onSuccess:function(){this.sandbox(null,"js")},scope:this},"js");return}this._scriptText=[];this._loadCount=0;this._stopCount=this.sorted.length;this._xhr=[];this.calculate();var s=this.sorted,l=s.length,i,m,url;for(i=0;i<l;i=i+1){m=this.moduleInfo[s[i]];if(!m){this._onFailure("undefined module "+m);for(var j=0;j<this._xhr.length;j=j+1){this._xhr[j].abort()}return}if(m.type!=="js"){this._loadCount++;continue}url=m.fullpath;url=(url)?this._filter(url):this._url(m.path);var xhrData={success:function(o){var idx=o.argument[0],name=o.argument[2];this._scriptText[idx]=o.responseText;if(this.onProgress){this.onProgress.call(this.scope,{name:name,scriptText:o.responseText,xhrResponse:o,data:this.data})}this._loadCount++;if(this._loadCount>=this._stopCount){var v=this.varName||"YAHOO";var t="(function() {\n";var b="\nreturn "+v+";\n})();";var ref=eval(t+this._scriptText.join("\n")+b);this._pushEvents(ref);if(ref){this.onSuccess.call(this.scope,{reference:ref,data:this.data})}else{this._onFailure.call(this.varName+" reference failure")}}},failure:function(o){this.onFailure.call(this.scope,{msg:"XHR failure",xhrResponse:o,data:this.data})},scope:this,argument:[i,url,s[i]]};this._xhr.push(util.Connect.asyncRequest("GET",url,xhrData))}},loadNext:function(mname){if(!this._loading){return}if(mname){if(mname!==this._loading){return}this.inserted[mname]=true;if(this.onProgress){this.onProgress.call(this.scope,{name:mname,data:this.data})}}var s=this.sorted,len=s.length,i,m;for(i=0;i<len;i=i+1){if(s[i] in this.inserted){continue}if(s[i]===this._loading){return}m=this.moduleInfo[s[i]];if(!m){this.onFailure.call(this.scope,{msg:"undefined module "+m,data:this.data});return}if(!this.loadType||this.loadType===m.type){this._loading=s[i];var fn=(m.type==="css")?util.Get.css:util.Get.script,url=m.fullpath,self=this,c=function(o){self.loadNext(o.data)};url=(url)?this._filter(url):this._url(m.path);if(env.ua.webkit&&env.ua.webkit<420&&m.type==="js"&&!m.varName){c=null;this._useYahooListener=true}fn(url,{data:s[i],onSuccess:c,onFailure:this._onFailure,onTimeout:this._onTimeout,insertBefore:this.insertBefore,charset:this.charset,timeout:this.timeout,varName:m.varName,scope:self});return}}this._loading=null;if(this._internalCallback){var f=this._internalCallback;this._internalCallback=null;f.call(this)}else{if(this.onSuccess){this._pushEvents();this.onSuccess.call(this.scope,{data:this.data})}}},_pushEvents:function(ref){var r=ref||YAHOO;if(r.util&&r.util.Event){r.util.Event._load()}},_filter:function(str){var f=this.filter;return(f)?str.replace(new RegExp(f.searchExp,"g"),f.replaceStr):str},_url:function(path){return this._filter((this.base||"")+path)}}})();YAHOO.register("yuiloader",YAHOO.util.YUILoader,{version:"2.7.0",build:"1799"});(function(){YAHOO.env._id_counter=YAHOO.env._id_counter||0;var aq=YAHOO.util,ak=YAHOO.lang,aG=YAHOO.env.ua,av=YAHOO.lang.trim,aP={},aL={},ai=/^t(?:able|d|h)$/i,G=/color$/i,al=window.document,Y=al.documentElement,aO="ownerDocument",aF="defaultView",ax="documentElement",az="compatMode",aR="offsetLeft",ag="offsetTop",ay="offsetParent",z="parentNode",aH="nodeType",at="tagName",ah="scrollLeft",aK="scrollTop",af="getBoundingClientRect",aw="getComputedStyle",aS="currentStyle",aj="CSS1Compat",aQ="BackCompat",aM="class",ap="className",am="",au=" ",aA="(?:^|\\s)",aI="(?= |$)",ab="g",aD="position",aN="fixed",aa="relative",aJ="left",aE="top",aB="medium",aC="borderLeftWidth",ae="borderTopWidth",ar=aG.opera,an=aG.webkit,ao=aG.gecko,ac=aG.ie;aq.Dom={CUSTOM_ATTRIBUTES:(!Y.hasAttribute)?{"for":"htmlFor","class":ap}:{htmlFor:"for",className:aM},get:function(f){var e,d,c,a,b;if(f){if(f[aH]||f.item){return f}if(typeof f==="string"){e=f;f=al.getElementById(f);if(f&&f.id===e){return f}else{if(f&&al.all){f=null;d=al.all[e];for(a=0,b=d.length;a<b;++a){if(d[a].id===e){return d[a]}}}}return f}if(f.DOM_EVENTS){f=f.get("element")}if("length" in f){c=[];for(a=0,b=f.length;a<b;++a){c[c.length]=aq.Dom.get(f[a])}return c}return f}return null},getComputedStyle:function(a,b){if(window[aw]){return a[aO][aF][aw](a,null)[b]}else{if(a[aS]){return aq.Dom.IE_ComputedStyle.get(a,b)}}},getStyle:function(a,b){return aq.Dom.batch(a,aq.Dom._getStyle,b)},_getStyle:function(){if(window[aw]){return function(b,d){d=(d==="float")?d="cssFloat":aq.Dom._toCamel(d);var a=b.style[d],c;if(!a){c=b[aO][aF][aw](b,null);if(c){a=c[d]}}return a}}else{if(Y[aS]){return function(b,e){var a;switch(e){case"opacity":a=100;try{a=b.filters["DXImageTransform.Microsoft.Alpha"].opacity}catch(d){try{a=b.filters("alpha").opacity}catch(c){}}return a/100;case"float":e="styleFloat";default:e=aq.Dom._toCamel(e);a=b[aS]?b[aS][e]:null;return(b.style[e]||a)}}}}}(),setStyle:function(b,c,a){aq.Dom.batch(b,aq.Dom._setStyle,{prop:c,val:a})},_setStyle:function(){if(ac){return function(c,b){var a=aq.Dom._toCamel(b.prop),d=b.val;if(c){switch(a){case"opacity":if(ak.isString(c.style.filter)){c.style.filter="alpha(opacity="+d*100+")";if(!c[aS]||!c[aS].hasLayout){c.style.zoom=1}}break;case"float":a="styleFloat";default:c.style[a]=d}}else{}}}else{return function(c,b){var a=aq.Dom._toCamel(b.prop),d=b.val;if(c){if(a=="float"){a="cssFloat"}c.style[a]=d}else{}}}}(),getXY:function(a){return aq.Dom.batch(a,aq.Dom._getXY)},_canPosition:function(a){return(aq.Dom._getStyle(a,"display")!=="none"&&aq.Dom._inDoc(a))},_getXY:function(){if(al[ax][af]){return function(j){var i,a,h,c,d,e,f,m,k,g=Math.floor,b=false;if(aq.Dom._canPosition(j)){h=j[af]();c=j[aO];i=aq.Dom.getDocumentScrollLeft(c);a=aq.Dom.getDocumentScrollTop(c);b=[g(h[aJ]),g(h[aE])];if(ac&&aG.ie<8){d=2;e=2;f=c[az];m=ad(c[ax],aC);k=ad(c[ax],ae);if(aG.ie===6){if(f!==aQ){d=0;e=0}}if((f==aQ)){if(m!==aB){d=parseInt(m,10)}if(k!==aB){e=parseInt(k,10)}}b[0]-=d;b[1]-=e}if((a||i)){b[0]+=i;b[1]+=a}b[0]=g(b[0]);b[1]=g(b[1])}else{}return b}}else{return function(h){var a,g,f,d,c,e=false,b=h;if(aq.Dom._canPosition(h)){e=[h[aR],h[ag]];a=aq.Dom.getDocumentScrollLeft(h[aO]);g=aq.Dom.getDocumentScrollTop(h[aO]);c=((ao||aG.webkit>519)?true:false);while((b=b[ay])){e[0]+=b[aR];e[1]+=b[ag];if(c){e=aq.Dom._calcBorders(b,e)}}if(aq.Dom._getStyle(h,aD)!==aN){b=h;while((b=b[z])&&b[at]){f=b[aK];d=b[ah];if(ao&&(aq.Dom._getStyle(b,"overflow")!=="visible")){e=aq.Dom._calcBorders(b,e)}if(f||d){e[0]-=d;e[1]-=f}}e[0]+=a;e[1]+=g}else{if(ar){e[0]-=a;e[1]-=g}else{if(an||ao){e[0]+=a;e[1]+=g}}}e[0]=Math.floor(e[0]);e[1]=Math.floor(e[1])}else{}return e}}}(),getX:function(a){var b=function(c){return aq.Dom.getXY(c)[0]};return aq.Dom.batch(a,b,aq.Dom,true)},getY:function(a){var b=function(c){return aq.Dom.getXY(c)[1]};return aq.Dom.batch(a,b,aq.Dom,true)},setXY:function(b,a,c){aq.Dom.batch(b,aq.Dom._setXY,{pos:a,noRetry:c})},_setXY:function(i,f){var e=aq.Dom._getStyle(i,aD),g=aq.Dom.setStyle,b=f.pos,a=f.noRetry,d=[parseInt(aq.Dom.getComputedStyle(i,aJ),10),parseInt(aq.Dom.getComputedStyle(i,aE),10)],c,h;if(e=="static"){e=aa;g(i,aD,e)}c=aq.Dom._getXY(i);if(!b||c===false){return false}if(isNaN(d[0])){d[0]=(e==aa)?0:i[aR]}if(isNaN(d[1])){d[1]=(e==aa)?0:i[ag]}if(b[0]!==null){g(i,aJ,b[0]-c[0]+d[0]+"px")}if(b[1]!==null){g(i,aE,b[1]-c[1]+d[1]+"px")}if(!a){h=aq.Dom._getXY(i);if((b[0]!==null&&h[0]!=b[0])||(b[1]!==null&&h[1]!=b[1])){aq.Dom._setXY(i,{pos:b,noRetry:true})}}},setX:function(b,a){aq.Dom.setXY(b,[a,null])},setY:function(a,b){aq.Dom.setXY(a,[null,b])},getRegion:function(a){var b=function(c){var d=false;if(aq.Dom._canPosition(c)){d=aq.Region.getRegion(c)}else{}return d};return aq.Dom.batch(a,b,aq.Dom,true)},getClientWidth:function(){return aq.Dom.getViewportWidth()},getClientHeight:function(){return aq.Dom.getViewportHeight()},getElementsByClassName:function(f,b,e,c,j,d){f=ak.trim(f);b=b||"*";e=(e)?aq.Dom.get(e):null||al;if(!e){return[]}var a=[],k=e.getElementsByTagName(b),h=aq.Dom.hasClass;for(var i=0,g=k.length;i<g;++i){if(h(k[i],f)){a[a.length]=k[i]}}if(c){aq.Dom.batch(a,c,j,d)}return a},hasClass:function(b,a){return aq.Dom.batch(b,aq.Dom._hasClass,a)},_hasClass:function(a,c){var b=false,d;if(a&&c){d=aq.Dom.getAttribute(a,ap)||am;if(c.exec){b=c.test(d)}else{b=c&&(au+d+au).indexOf(au+c+au)>-1}}else{}return b},addClass:function(b,a){return aq.Dom.batch(b,aq.Dom._addClass,a)},_addClass:function(a,c){var b=false,d;if(a&&c){d=aq.Dom.getAttribute(a,ap)||am;if(!aq.Dom._hasClass(a,c)){aq.Dom.setAttribute(a,ap,av(d+au+c));b=true}}else{}return b},removeClass:function(b,a){return aq.Dom.batch(b,aq.Dom._removeClass,a)},_removeClass:function(f,a){var e=false,d,c,b;if(f&&a){d=aq.Dom.getAttribute(f,ap)||am;aq.Dom.setAttribute(f,ap,d.replace(aq.Dom._getClassRegex(a),am));c=aq.Dom.getAttribute(f,ap);if(d!==c){aq.Dom.setAttribute(f,ap,av(c));e=true;if(aq.Dom.getAttribute(f,ap)===""){b=(f.hasAttribute&&f.hasAttribute(aM))?aM:ap;f.removeAttribute(b)}}}else{}return e},replaceClass:function(a,c,b){return aq.Dom.batch(a,aq.Dom._replaceClass,{from:c,to:b})},_replaceClass:function(g,a){var f,c,e,b=false,d;if(g&&a){c=a.from;e=a.to;if(!e){b=false}else{if(!c){b=aq.Dom._addClass(g,a.to)}else{if(c!==e){d=aq.Dom.getAttribute(g,ap)||am;f=(au+d.replace(aq.Dom._getClassRegex(c),au+e)).split(aq.Dom._getClassRegex(e));f.splice(1,0,au+e);aq.Dom.setAttribute(g,ap,av(f.join(am)));b=true}}}}else{}return b},generateId:function(b,a){a=a||"yui-gen";var c=function(e){if(e&&e.id){return e.id}var d=a+YAHOO.env._id_counter++;if(e){if(e[aO].getElementById(d)){return aq.Dom.generateId(e,d+a)}e.id=d}return d};return aq.Dom.batch(b,c,aq.Dom,true)||c.apply(aq.Dom,arguments)},isAncestor:function(c,a){c=aq.Dom.get(c);a=aq.Dom.get(a);var b=false;if((c&&a)&&(c[aH]&&a[aH])){if(c.contains&&c!==a){b=c.contains(a)}else{if(c.compareDocumentPosition){b=!!(c.compareDocumentPosition(a)&16)}}}else{}return b},inDocument:function(a,b){return aq.Dom._inDoc(aq.Dom.get(a),b)},_inDoc:function(c,a){var b=false;if(c&&c[at]){a=a||c[aO];b=aq.Dom.isAncestor(a[ax],c)}else{}return b},getElementsBy:function(a,b,f,d,i,e,c){b=b||"*";f=(f)?aq.Dom.get(f):null||al;if(!f){return[]}var j=[],k=f.getElementsByTagName(b);for(var h=0,g=k.length;h<g;++h){if(a(k[h])){if(c){j=k[h];break}else{j[j.length]=k[h]}}}if(d){aq.Dom.batch(j,d,i,e)}return j},getElementBy:function(a,b,c){return aq.Dom.getElementsBy(a,b,c,null,null,null,true)},batch:function(a,c,f,e){var g=[],d=(e)?f:window;a=(a&&(a[at]||a.item))?a:aq.Dom.get(a);if(a&&c){if(a[at]||a.length===undefined){return c.call(d,a,f)}for(var b=0;b<a.length;++b){g[g.length]=c.call(d,a[b],f)}}else{return false}return g},getDocumentHeight:function(){var b=(al[az]!=aj||an)?al.body.scrollHeight:Y.scrollHeight,a=Math.max(b,aq.Dom.getViewportHeight());return a},getDocumentWidth:function(){var b=(al[az]!=aj||an)?al.body.scrollWidth:Y.scrollWidth,a=Math.max(b,aq.Dom.getViewportWidth());return a},getViewportHeight:function(){var a=self.innerHeight,b=al[az];if((b||ac)&&!ar){a=(b==aj)?Y.clientHeight:al.body.clientHeight}return a},getViewportWidth:function(){var a=self.innerWidth,b=al[az];if(b||ac){a=(b==aj)?Y.clientWidth:al.body.clientWidth}return a},getAncestorBy:function(a,b){while((a=a[z])){if(aq.Dom._testElement(a,b)){return a}}return null},getAncestorByClassName:function(c,b){c=aq.Dom.get(c);if(!c){return null}var a=function(d){return aq.Dom.hasClass(d,b)};return aq.Dom.getAncestorBy(c,a)},getAncestorByTagName:function(c,b){c=aq.Dom.get(c);if(!c){return null}var a=function(d){return d[at]&&d[at].toUpperCase()==b.toUpperCase()};return aq.Dom.getAncestorBy(c,a)},getPreviousSiblingBy:function(a,b){while(a){a=a.previousSibling;if(aq.Dom._testElement(a,b)){return a}}return null},getPreviousSibling:function(a){a=aq.Dom.get(a);if(!a){return null}return aq.Dom.getPreviousSiblingBy(a)},getNextSiblingBy:function(a,b){while(a){a=a.nextSibling;if(aq.Dom._testElement(a,b)){return a}}return null},getNextSibling:function(a){a=aq.Dom.get(a);if(!a){return null}return aq.Dom.getNextSiblingBy(a)},getFirstChildBy:function(b,a){var c=(aq.Dom._testElement(b.firstChild,a))?b.firstChild:null;return c||aq.Dom.getNextSiblingBy(b.firstChild,a)},getFirstChild:function(a,b){a=aq.Dom.get(a);if(!a){return null}return aq.Dom.getFirstChildBy(a)},getLastChildBy:function(b,a){if(!b){return null}var c=(aq.Dom._testElement(b.lastChild,a))?b.lastChild:null;return c||aq.Dom.getPreviousSiblingBy(b.lastChild,a)},getLastChild:function(a){a=aq.Dom.get(a);return aq.Dom.getLastChildBy(a)},getChildrenBy:function(c,d){var a=aq.Dom.getFirstChildBy(c,d),b=a?[a]:[];aq.Dom.getNextSiblingBy(a,function(e){if(!d||d(e)){b[b.length]=e}return false});return b},getChildren:function(a){a=aq.Dom.get(a);if(!a){}return aq.Dom.getChildrenBy(a)},getDocumentScrollLeft:function(a){a=a||al;return Math.max(a[ax].scrollLeft,a.body.scrollLeft)},getDocumentScrollTop:function(a){a=a||al;return Math.max(a[ax].scrollTop,a.body.scrollTop)},insertBefore:function(b,a){b=aq.Dom.get(b);a=aq.Dom.get(a);if(!b||!a||!a[z]){return null}return a[z].insertBefore(b,a)},insertAfter:function(b,a){b=aq.Dom.get(b);a=aq.Dom.get(a);if(!b||!a||!a[z]){return null}if(a.nextSibling){return a[z].insertBefore(b,a.nextSibling)}else{return a[z].appendChild(b)}},getClientRegion:function(){var a=aq.Dom.getDocumentScrollTop(),c=aq.Dom.getDocumentScrollLeft(),d=aq.Dom.getViewportWidth()+c,b=aq.Dom.getViewportHeight()+a;return new aq.Region(a,d,b,c)},setAttribute:function(c,b,a){b=aq.Dom.CUSTOM_ATTRIBUTES[b]||b;c.setAttribute(b,a)},getAttribute:function(b,a){a=aq.Dom.CUSTOM_ATTRIBUTES[a]||a;return b.getAttribute(a)},_toCamel:function(c){var a=aP;function b(e,d){return d.toUpperCase()}return a[c]||(a[c]=c.indexOf("-")===-1?c:c.replace(/-([a-z])/gi,b))},_getClassRegex:function(b){var a;if(b!==undefined){if(b.exec){a=b}else{a=aL[b];if(!a){b=b.replace(aq.Dom._patterns.CLASS_RE_TOKENS,"\\$1");a=aL[b]=new RegExp(aA+b+aI,ab)}}}return a},_patterns:{ROOT_TAG:/^body|html$/i,CLASS_RE_TOKENS:/([\.\(\)\^\$\*\+\?\|\[\]\{\}])/g},_testElement:function(a,b){return a&&a[aH]==1&&(!b||b(a))},_calcBorders:function(a,d){var c=parseInt(aq.Dom[aw](a,ae),10)||0,b=parseInt(aq.Dom[aw](a,aC),10)||0;if(ao){if(ai.test(a[at])){c=0;b=0}}d[0]+=b;d[1]+=c;return d}};var ad=aq.Dom[aw];if(aG.opera){aq.Dom[aw]=function(c,b){var a=ad(c,b);if(G.test(b)){a=aq.Dom.Color.toRGB(a)}return a}}if(aG.webkit){aq.Dom[aw]=function(c,b){var a=ad(c,b);if(a==="rgba(0, 0, 0, 0)"){a="transparent"}return a}}})();YAHOO.util.Region=function(c,b,a,d){this.top=c;this.y=c;this[1]=c;this.right=b;this.bottom=a;this.left=d;this.x=d;this[0]=d;this.width=this.right-this.left;this.height=this.bottom-this.top};YAHOO.util.Region.prototype.contains=function(a){return(a.left>=this.left&&a.right<=this.right&&a.top>=this.top&&a.bottom<=this.bottom)};YAHOO.util.Region.prototype.getArea=function(){return((this.bottom-this.top)*(this.right-this.left))};YAHOO.util.Region.prototype.intersect=function(b){var d=Math.max(this.top,b.top),c=Math.min(this.right,b.right),a=Math.min(this.bottom,b.bottom),e=Math.max(this.left,b.left);if(a>=d&&c>=e){return new YAHOO.util.Region(d,c,a,e)}else{return null}};YAHOO.util.Region.prototype.union=function(b){var d=Math.min(this.top,b.top),c=Math.max(this.right,b.right),a=Math.max(this.bottom,b.bottom),e=Math.min(this.left,b.left);return new YAHOO.util.Region(d,c,a,e)};YAHOO.util.Region.prototype.toString=function(){return("Region {top: "+this.top+", right: "+this.right+", bottom: "+this.bottom+", left: "+this.left+", height: "+this.height+", width: "+this.width+"}")};YAHOO.util.Region.getRegion=function(d){var b=YAHOO.util.Dom.getXY(d),e=b[1],c=b[0]+d.offsetWidth,a=b[1]+d.offsetHeight,f=b[0];return new YAHOO.util.Region(e,c,a,f)};YAHOO.util.Point=function(a,b){if(YAHOO.lang.isArray(a)){b=a[1];a=a[0]}YAHOO.util.Point.superclass.constructor.call(this,b,a,b,a)};YAHOO.extend(YAHOO.util.Point,YAHOO.util.Region);(function(){var z=YAHOO.util,X="clientTop",s="clientLeft",o="parentNode",n="right",a="hasLayout",p="px",c="opacity",m="auto",v="borderLeftWidth",r="borderTopWidth",h="borderRightWidth",b="borderBottomWidth",e="visible",g="transparent",j="height",u="width",q="style",d="currentStyle",f=/^width|height$/,i=/^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz|%){1}?/i,k={get:function(D,B){var C="",A=D[d][B];if(B===c){C=z.Dom.getStyle(D,c)}else{if(!A||(A.indexOf&&A.indexOf(p)>-1)){C=A}else{if(z.Dom.IE_COMPUTED[B]){C=z.Dom.IE_COMPUTED[B](D,B)}else{if(i.test(A)){C=z.Dom.IE.ComputedStyle.getPixel(D,B)}else{C=A}}}}return C},getOffset:function(D,C){var A=D[d][C],H=C.charAt(0).toUpperCase()+C.substr(1),G="offset"+H,F="pixel"+H,B="",E;if(A==m){E=D[G];if(E===undefined){B=0}B=E;if(f.test(C)){D[q][C]=E;if(D[G]>E){B=E-(D[G]-E)}D[q][C]=m}}else{if(!D[q][F]&&!D[q][C]){D[q][C]=A}B=D[q][F]}return B+p},getBorderWidth:function(C,A){var B=null;if(!C[d][a]){C[q].zoom=1}switch(A){case r:B=C[X];break;case b:B=C.offsetHeight-C.clientHeight-C[X];break;case v:B=C[s];break;case h:B=C.offsetWidth-C.clientWidth-C[s];break}return B+p},getPixel:function(D,E){var B=null,A=D[d][n],C=D[d][E];D[q][n]=C;B=D[q].pixelRight;D[q][n]=A;return B+p},getMargin:function(B,C){var A;if(B[d][C]==m){A=0+p}else{A=z.Dom.IE.ComputedStyle.getPixel(B,C)}return A},getVisibility:function(B,C){var A;while((A=B[d])&&A[C]=="inherit"){B=B[o]}return(A)?A[C]:e},getColor:function(A,B){return z.Dom.Color.toRGB(A[d][B])||g},getBorderColor:function(C,D){var B=C[d],A=B[D]||B.color;return z.Dom.Color.toRGB(z.Dom.Color.toHex(A))}},w={};w.top=w.right=w.bottom=w.left=w[u]=w[j]=k.getOffset;w.color=k.getColor;w[r]=w[h]=w[b]=w[v]=k.getBorderWidth;w.marginTop=w.marginRight=w.marginBottom=w.marginLeft=k.getMargin;w.visibility=k.getVisibility;w.borderColor=w.borderTopColor=w.borderRightColor=w.borderBottomColor=w.borderLeftColor=k.getBorderColor;z.Dom.IE_COMPUTED=w;z.Dom.IE_ComputedStyle=k})();(function(){var c="toString",a=parseInt,d=RegExp,b=YAHOO.util;b.Dom.Color={KEYWORDS:{black:"000",silver:"c0c0c0",gray:"808080",white:"fff",maroon:"800000",red:"f00",purple:"800080",fuchsia:"f0f",green:"008000",lime:"0f0",olive:"808000",yellow:"ff0",navy:"000080",blue:"00f",teal:"008080",aqua:"0ff"},re_RGB:/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i,re_hex:/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i,re_hex3:/([0-9A-F])/gi,toRGB:function(e){if(!b.Dom.Color.re_RGB.test(e)){e=b.Dom.Color.toHex(e)}if(b.Dom.Color.re_hex.exec(e)){e="rgb("+[a(d.$1,16),a(d.$2,16),a(d.$3,16)].join(", ")+")"}return e},toHex:function(e){e=b.Dom.Color.KEYWORDS[e]||e;if(b.Dom.Color.re_RGB.exec(e)){var f=(d.$1.length===1)?"0"+d.$1:Number(d.$1),g=(d.$2.length===1)?"0"+d.$2:Number(d.$2),h=(d.$3.length===1)?"0"+d.$3:Number(d.$3);e=[f[c](16),g[c](16),h[c](16)].join("")}if(e.length<6){e=e.replace(b.Dom.Color.re_hex3,"$1$1")}if(e!=="transparent"&&e.indexOf("#")<0){e="#"+e}return e.toLowerCase()}}}());YAHOO.register("dom",YAHOO.util.Dom,{version:"2.7.0",build:"1799"});YAHOO.util.CustomEvent=function(c,d,e,a){this.type=c;this.scope=d||window;this.silent=e;this.signature=a||YAHOO.util.CustomEvent.LIST;this.subscribers=[];if(!this.silent){}var b="_YUICEOnSubscribe";if(c!==b){this.subscribeEvent=new YAHOO.util.CustomEvent(b,this,true)}this.lastError=null};YAHOO.util.CustomEvent.LIST=0;YAHOO.util.CustomEvent.FLAT=1;YAHOO.util.CustomEvent.prototype={subscribe:function(a,c,b){if(!a){throw new Error("Invalid callback for subscriber to '"+this.type+"'")}if(this.subscribeEvent){this.subscribeEvent.fire(a,c,b)}this.subscribers.push(new YAHOO.util.Subscriber(a,c,b))},unsubscribe:function(d,b){if(!d){return this.unsubscribeAll()}var c=false;for(var f=0,a=this.subscribers.length;f<a;++f){var e=this.subscribers[f];if(e&&e.contains(d,b)){this._delete(f);c=true}}return c},fire:function(){this.lastError=null;var g=[],n=this.subscribers.length;if(!n&&this.silent){return true}var i=[].slice.call(arguments,0),k=true,a,h=false;if(!this.silent){}var b=this.subscribers.slice(),d=YAHOO.util.Event.throwErrors;for(a=0;a<n;++a){var e=b[a];if(!e){h=true}else{if(!this.silent){}var f=e.getScope(this.scope);if(this.signature==YAHOO.util.CustomEvent.FLAT){var c=null;if(i.length>0){c=i[0]}try{k=e.fn.call(f,c,e.obj)}catch(m){this.lastError=m;if(d){throw m}}}else{try{k=e.fn.call(f,this.type,i,e.obj)}catch(j){this.lastError=j;if(d){throw j}}}if(false===k){if(!this.silent){}break}}}return(k!==false)},unsubscribeAll:function(){var a=this.subscribers.length,b;for(b=a-1;b>-1;b--){this._delete(b)}this.subscribers=[];return a},_delete:function(a){var b=this.subscribers[a];if(b){delete b.fn;delete b.obj}this.subscribers.splice(a,1)},toString:function(){return"CustomEvent: '"+this.type+"', context: "+this.scope}};YAHOO.util.Subscriber=function(a,c,b){this.fn=a;this.obj=YAHOO.lang.isUndefined(c)?null:c;this.overrideContext=b};YAHOO.util.Subscriber.prototype.getScope=function(a){if(this.overrideContext){if(this.overrideContext===true){return this.obj}else{return this.overrideContext}}return a};YAHOO.util.Subscriber.prototype.contains=function(a,b){if(b){return(this.fn==a&&this.obj==b)}else{return(this.fn==a)}};YAHOO.util.Subscriber.prototype.toString=function(){return"Subscriber { obj: "+this.obj+", overrideContext: "+(this.overrideContext||"no")+" }"};if(!YAHOO.util.Event){YAHOO.util.Event=function(){var i=false;var h=[];var g=[];var j=[];var m=[];var b=0;var k=[];var c=[];var d=0;var a={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9};var f=YAHOO.env.ua.ie?"focusin":"focus";var e=YAHOO.env.ua.ie?"focusout":"blur";return{POLL_RETRYS:2000,POLL_INTERVAL:20,EL:0,TYPE:1,FN:2,WFN:3,UNLOAD_OBJ:3,ADJ_SCOPE:4,OBJ:5,OVERRIDE:6,lastError:null,isSafari:YAHOO.env.ua.webkit,webkit:YAHOO.env.ua.webkit,isIE:YAHOO.env.ua.ie,_interval:null,_dri:null,DOMReady:false,throwErrors:false,startInterval:function(){if(!this._interval){var o=this;var n=function(){o._tryPreloadAttach()};this._interval=setInterval(n,this.POLL_INTERVAL)}},onAvailable:function(n,r,p,o,q){var u=(YAHOO.lang.isString(n))?[n]:n;for(var s=0;s<u.length;s=s+1){k.push({id:u[s],fn:r,obj:p,overrideContext:o,checkReady:q})}b=this.POLL_RETRYS;this.startInterval()},onContentReady:function(n,q,p,o){this.onAvailable(n,q,p,o,true)},onDOMReady:function(p,o,n){if(this.DOMReady){setTimeout(function(){var q=window;if(n){if(n===true){q=o}else{q=n}}p.call(q,"DOMReady",[],o)},0)}else{this.DOMReadyEvent.subscribe(p,o,n)}},_addListener:function(B,D,o,v,q,E){if(!o||!o.call){return false}if(this._isValidCollection(B)){var n=true;for(var u=0,r=B.length;u<r;++u){n=this.on(B[u],D,o,v,q)&&n}return n}else{if(YAHOO.lang.isString(B)){var w=this.getEl(B);if(w){B=w}else{this.onAvailable(B,function(){YAHOO.util.Event.on(B,D,o,v,q)});return true}}}if(!B){return false}if("unload"==D&&v!==this){g[g.length]=[B,D,o,v,q];return true}var C=B;if(q){if(q===true){C=v}else{C=q}}var A=function(G){return o.call(C,YAHOO.util.Event.getEvent(G,B),v)};var F=[B,D,o,A,C,v,q];var s=h.length;h[s]=F;if(this.useLegacyEvent(B,D)){var z=this.getLegacyIndex(B,D);if(z==-1||B!=j[z][0]){z=j.length;c[B.id+D]=z;j[z]=[B,D,B["on"+D]];m[z]=[];B["on"+D]=function(G){YAHOO.util.Event.fireLegacyEvent(YAHOO.util.Event.getEvent(G),z)}}m[z].push(F)}else{try{this._simpleAdd(B,D,A,E)}catch(p){this.lastError=p;this.removeListener(B,D,o);return false}}return true},addListener:function(q,n,r,p,o){return this._addListener(q,n,r,p,o,false)},addFocusListener:function(p,q,o,n){return this._addListener(p,f,q,o,n,true)},removeFocusListener:function(n,o){return this.removeListener(n,f,o)},addBlurListener:function(p,q,o,n){return this._addListener(p,e,q,o,n,true)},removeBlurListener:function(n,o){return this.removeListener(n,e,o)},fireLegacyEvent:function(r,u){var p=true,z,n,o,w,q;n=m[u].slice();for(var v=0,s=n.length;v<s;++v){o=n[v];if(o&&o[this.WFN]){w=o[this.ADJ_SCOPE];q=o[this.WFN].call(w,r);p=(p&&q)}}z=j[u];if(z&&z[2]){z[2](r)}return p},getLegacyIndex:function(o,n){var p=this.generateId(o)+n;if(typeof c[p]=="undefined"){return -1}else{return c[p]}},useLegacyEvent:function(o,n){return(this.webkit&&this.webkit<419&&("click"==n||"dblclick"==n))},removeListener:function(A,B,p){var v,r,n;if(typeof A=="string"){A=this.getEl(A)}else{if(this._isValidCollection(A)){var o=true;for(v=A.length-1;v>-1;v--){o=(this.removeListener(A[v],B,p)&&o)}return o}}if(!p||!p.call){return this.purgeElement(A,false,B)}if("unload"==B){for(v=g.length-1;v>-1;v--){n=g[v];if(n&&n[0]==A&&n[1]==B&&n[2]==p){g.splice(v,1);return true}}return false}var u=null;var s=arguments[3];if("undefined"===typeof s){s=this._getCacheIndex(A,B,p)}if(s>=0){u=h[s]}if(!A||!u){return false}if(this.useLegacyEvent(A,B)){var w=this.getLegacyIndex(A,B);var z=m[w];if(z){for(v=0,r=z.length;v<r;++v){n=z[v];if(n&&n[this.EL]==A&&n[this.TYPE]==B&&n[this.FN]==p){z.splice(v,1);break}}}}else{try{this._simpleRemove(A,B,u[this.WFN],false)}catch(q){this.lastError=q;return false}}delete h[s][this.WFN];delete h[s][this.FN];h.splice(s,1);return true},getTarget:function(n,o){var p=n.target||n.srcElement;return this.resolveTextNode(p)},resolveTextNode:function(n){try{if(n&&3==n.nodeType){return n.parentNode}}catch(o){}return n},getPageX:function(n){var o=n.pageX;if(!o&&0!==o){o=n.clientX||0;if(this.isIE){o+=this._getScrollLeft()}}return o},getPageY:function(o){var n=o.pageY;if(!n&&0!==n){n=o.clientY||0;if(this.isIE){n+=this._getScrollTop()}}return n},getXY:function(n){return[this.getPageX(n),this.getPageY(n)]},getRelatedTarget:function(n){var o=n.relatedTarget;if(!o){if(n.type=="mouseout"){o=n.toElement}else{if(n.type=="mouseover"){o=n.fromElement}}}return this.resolveTextNode(o)},getTime:function(n){if(!n.time){var o=new Date().getTime();try{n.time=o}catch(p){this.lastError=p;return o}}return n.time},stopEvent:function(n){this.stopPropagation(n);this.preventDefault(n)},stopPropagation:function(n){if(n.stopPropagation){n.stopPropagation()}else{n.cancelBubble=true}},preventDefault:function(n){if(n.preventDefault){n.preventDefault()}else{n.returnValue=false}},getEvent:function(o,q){var p=o||window.event;if(!p){var n=this.getEvent.caller;while(n){p=n.arguments[0];if(p&&Event==p.constructor){break}n=n.caller}}return p},getCharCode:function(n){var o=n.keyCode||n.charCode||0;if(YAHOO.env.ua.webkit&&(o in a)){o=a[o]}return o},_getCacheIndex:function(o,n,p){for(var q=0,r=h.length;q<r;q=q+1){var s=h[q];if(s&&s[this.FN]==p&&s[this.EL]==o&&s[this.TYPE]==n){return q}}return -1},generateId:function(o){var n=o.id;if(!n){n="yuievtautoid-"+d;++d;o.id=n}return n},_isValidCollection:function(n){try{return(n&&typeof n!=="string"&&n.length&&!n.tagName&&!n.alert&&typeof n[0]!=="undefined")}catch(o){return false}},elCache:{},getEl:function(n){return(typeof n==="string")?document.getElementById(n):n},clearCache:function(){},DOMReadyEvent:new YAHOO.util.CustomEvent("DOMReady",this),_load:function(n){if(!i){i=true;var o=YAHOO.util.Event;o._ready();o._tryPreloadAttach()}},_ready:function(n){var o=YAHOO.util.Event;if(!o.DOMReady){o.DOMReady=true;o.DOMReadyEvent.fire();o._simpleRemove(document,"DOMContentLoaded",o._ready)}},_tryPreloadAttach:function(){if(k.length===0){b=0;if(this._interval){clearInterval(this._interval);this._interval=null}return}if(this.locked){return}if(this.isIE){if(!this.DOMReady){this.startInterval();return}}this.locked=true;var o=!i;if(!o){o=(b>0&&k.length>0)}var p=[];var n=function(z,w){var A=z;if(w.overrideContext){if(w.overrideContext===true){A=w.obj}else{A=w.overrideContext}}w.fn.call(A,w.obj)};var u,v,q,r,s=[];for(u=0,v=k.length;u<v;u=u+1){q=k[u];if(q){r=this.getEl(q.id);if(r){if(q.checkReady){if(i||r.nextSibling||!o){s.push(q);k[u]=null}}else{n(r,q);k[u]=null}}else{p.push(q)}}}for(u=0,v=s.length;u<v;u=u+1){q=s[u];n(this.getEl(q.id),q)}b--;if(o){for(u=k.length-1;u>-1;u--){q=k[u];if(!q||!q.id){k.splice(u,1)}}this.startInterval()}else{if(this._interval){clearInterval(this._interval);this._interval=null}}this.locked=false},purgeElement:function(q,p,n){var s=(YAHOO.lang.isString(q))?this.getEl(q):q;var o=this.getListeners(s,n),r,v;if(o){for(r=o.length-1;r>-1;r--){var u=o[r];this.removeListener(s,u.type,u.fn)}}if(p&&s&&s.childNodes){for(r=0,v=s.childNodes.length;r<v;++r){this.purgeElement(s.childNodes[r],p,n)}}},getListeners:function(v,z){var r=[],w;if(!z){w=[h,g]}else{if(z==="unload"){w=[g]}else{w=[h]}}var p=(YAHOO.lang.isString(v))?this.getEl(v):v;for(var s=0;s<w.length;s=s+1){var n=w[s];if(n){for(var q=0,o=n.length;q<o;++q){var u=n[q];if(u&&u[this.EL]===p&&(!z||z===u[this.TYPE])){r.push({type:u[this.TYPE],fn:u[this.FN],obj:u[this.OBJ],adjust:u[this.OVERRIDE],scope:u[this.ADJ_SCOPE],index:q})}}}}return(r.length)?r:null},_unload:function(o){var v=YAHOO.util.Event,r,s,u,p,q,n=g.slice(),w;for(r=0,p=g.length;r<p;++r){u=n[r];if(u){w=window;if(u[v.ADJ_SCOPE]){if(u[v.ADJ_SCOPE]===true){w=u[v.UNLOAD_OBJ]}else{w=u[v.ADJ_SCOPE]}}u[v.FN].call(w,v.getEvent(o,u[v.EL]),u[v.UNLOAD_OBJ]);n[r]=null}}u=null;w=null;g=null;if(h){for(s=h.length-1;s>-1;s--){u=h[s];if(u){v.removeListener(u[v.EL],u[v.TYPE],u[v.FN],s)}}u=null}j=null;v._simpleRemove(window,"unload",v._unload)},_getScrollLeft:function(){return this._getScroll()[1]},_getScrollTop:function(){return this._getScroll()[0]},_getScroll:function(){var o=document.documentElement,n=document.body;if(o&&(o.scrollTop||o.scrollLeft)){return[o.scrollTop,o.scrollLeft]}else{if(n){return[n.scrollTop,n.scrollLeft]}else{return[0,0]}}},regCE:function(){},_simpleAdd:function(){if(window.addEventListener){return function(o,n,p,q){o.addEventListener(n,p,(q))}}else{if(window.attachEvent){return function(o,n,p,q){o.attachEvent("on"+n,p)}}else{return function(){}}}}(),_simpleRemove:function(){if(window.removeEventListener){return function(o,n,p,q){o.removeEventListener(n,p,(q))}}else{if(window.detachEvent){return function(o,n,p){o.detachEvent("on"+n,p)}}else{return function(){}}}}()}}();(function(){var a=YAHOO.util.Event;a.on=a.addListener;a.onFocus=a.addFocusListener;a.onBlur=a.addBlurListener;if(a.isIE){YAHOO.util.Event.onDOMReady(YAHOO.util.Event._tryPreloadAttach,YAHOO.util.Event,true);var b=document.createElement("p");a._dri=setInterval(function(){try{b.doScroll("left");clearInterval(a._dri);a._dri=null;a._ready();b=null}catch(c){}},a.POLL_INTERVAL)}else{if(a.webkit&&a.webkit<525){a._dri=setInterval(function(){var c=document.readyState;if("loaded"==c||"complete"==c){clearInterval(a._dri);a._dri=null;a._ready()}},a.POLL_INTERVAL)}else{a._simpleAdd(document,"DOMContentLoaded",a._ready)}}a._simpleAdd(window,"load",a._load);a._simpleAdd(window,"unload",a._unload);a._tryPreloadAttach()})()}YAHOO.util.EventProvider=function(){};YAHOO.util.EventProvider.prototype={__yui_events:null,__yui_subscribers:null,subscribe:function(a,e,b,c){this.__yui_events=this.__yui_events||{};var d=this.__yui_events[a];if(d){d.subscribe(e,b,c)}else{this.__yui_subscribers=this.__yui_subscribers||{};var f=this.__yui_subscribers;if(!f[a]){f[a]=[]}f[a].push({fn:e,obj:b,overrideContext:c})}},unsubscribe:function(f,d,b){this.__yui_events=this.__yui_events||{};var a=this.__yui_events;if(f){var c=a[f];if(c){return c.unsubscribe(d,b)}}else{var g=true;for(var e in a){if(YAHOO.lang.hasOwnProperty(a,e)){g=g&&a[e].unsubscribe(d,b)}}return g}return false},unsubscribeAll:function(a){return this.unsubscribe(a)},createEvent:function(g,a){this.__yui_events=this.__yui_events||{};var d=a||{};var e=this.__yui_events;if(e[g]){}else{var f=d.scope||this;var i=(d.silent);var c=new YAHOO.util.CustomEvent(g,f,i,YAHOO.util.CustomEvent.FLAT);e[g]=c;if(d.onSubscribeCallback){c.subscribeEvent.subscribe(d.onSubscribeCallback)}this.__yui_subscribers=this.__yui_subscribers||{};var h=this.__yui_subscribers[g];if(h){for(var b=0;b<h.length;++b){c.subscribe(h[b].fn,h[b].obj,h[b].overrideContext)}}}return e[g]},fireEvent:function(d,e,a,f){this.__yui_events=this.__yui_events||{};var b=this.__yui_events[d];if(!b){return null}var g=[];for(var c=1;c<arguments.length;++c){g.push(arguments[c])}return b.fire.apply(b,g)},hasEvent:function(a){if(this.__yui_events){if(this.__yui_events[a]){return true}}return false}};(function(){var a=YAHOO.util.Event,b=YAHOO.lang;YAHOO.util.KeyListener=function(i,d,h,g){if(!i){}else{if(!d){}else{if(!h){}}}if(!g){g=YAHOO.util.KeyListener.KEYDOWN}var f=new YAHOO.util.CustomEvent("keyPressed");this.enabledEvent=new YAHOO.util.CustomEvent("enabled");this.disabledEvent=new YAHOO.util.CustomEvent("disabled");if(b.isString(i)){i=document.getElementById(i)}if(b.isFunction(h)){f.subscribe(h)}else{f.subscribe(h.fn,h.scope,h.correctScope)}function e(n,o){if(!d.shift){d.shift=false}if(!d.alt){d.alt=false}if(!d.ctrl){d.ctrl=false}if(n.shiftKey==d.shift&&n.altKey==d.alt&&n.ctrlKey==d.ctrl){var m,p=d.keys,j;if(YAHOO.lang.isArray(p)){for(var k=0;k<p.length;k++){m=p[k];j=a.getCharCode(n);if(m==j){f.fire(j,n);break}}}else{j=a.getCharCode(n);if(p==j){f.fire(j,n)}}}}this.enable=function(){if(!this.enabled){a.on(i,g,e);this.enabledEvent.fire(d)}this.enabled=true};this.disable=function(){if(this.enabled){a.removeListener(i,g,e);this.disabledEvent.fire(d)}this.enabled=false};this.toString=function(){return"KeyListener ["+d.keys+"] "+i.tagName+(i.id?"["+i.id+"]":"")}};var c=YAHOO.util.KeyListener;c.KEYDOWN="keydown";c.KEYUP="keyup";c.KEY={ALT:18,BACK_SPACE:8,CAPS_LOCK:20,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,META:224,NUM_LOCK:144,PAGE_DOWN:34,PAGE_UP:33,PAUSE:19,PRINTSCREEN:44,RIGHT:39,SCROLL_LOCK:145,SHIFT:16,SPACE:32,TAB:9,UP:38}})();YAHOO.register("event",YAHOO.util.Event,{version:"2.7.0",build:"1799"});YAHOO.register("yuiloader-dom-event",YAHOO,{version:"2.7.0",build:"1799"});(function(){var b=YAHOO.util;var a=function(e,f,d,c){if(!e){}this.init(e,f,d,c)};a.NAME="Anim";a.prototype={toString:function(){var d=this.getEl()||{};var c=d.id||d.tagName;return(this.constructor.NAME+": "+c)},patterns:{noNegatives:/width|height|opacity|padding/i,offsetAttribute:/^((width|height)|(top|left))$/,defaultUnit:/width|height|top$|bottom$|left$|right$/i,offsetUnit:/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i},doMethod:function(e,c,d){return this.method(this.currentFrame,c,d-c,this.totalFrames)},setAttribute:function(f,c,d){var e=this.getEl();if(this.patterns.noNegatives.test(f)){c=(c>0)?c:0}if("style" in e){b.Dom.setStyle(e,f,c+d)}else{if(f in e){e[f]=c}}},getAttribute:function(h){var f=this.getEl();var d=b.Dom.getStyle(f,h);if(d!=="auto"&&!this.patterns.offsetUnit.test(d)){return parseFloat(d)}var g=this.patterns.offsetAttribute.exec(h)||[];var c=!!(g[3]);var e=!!(g[2]);if("style" in f){if(e||(b.Dom.getStyle(f,"position")=="absolute"&&c)){d=f["offset"+g[0].charAt(0).toUpperCase()+g[0].substr(1)]}else{d=0}}else{if(h in f){d=f[h]}}return d},getDefaultUnit:function(c){if(this.patterns.defaultUnit.test(c)){return"px"}return""},setRuntimeAttribute:function(h){var c;var g;var f=this.attributes;this.runtimeAttributes[h]={};var d=function(j){return(typeof j!=="undefined")};if(!d(f[h]["to"])&&!d(f[h]["by"])){return false}c=(d(f[h]["from"]))?f[h]["from"]:this.getAttribute(h);if(d(f[h]["to"])){g=f[h]["to"]}else{if(d(f[h]["by"])){if(c.constructor==Array){g=[];for(var e=0,i=c.length;e<i;++e){g[e]=c[e]+f[h]["by"][e]*1}}else{g=c+f[h]["by"]*1}}}this.runtimeAttributes[h].start=c;this.runtimeAttributes[h].end=g;this.runtimeAttributes[h].unit=(d(f[h].unit))?f[h]["unit"]:this.getDefaultUnit(h);return true},init:function(m,g,h,d){var c=false;var k=null;var i=0;m=b.Dom.get(m);this.attributes=g||{};this.duration=!YAHOO.lang.isUndefined(h)?h:1;this.method=d||b.Easing.easeNone;this.useSeconds=true;this.currentFrame=0;this.totalFrames=b.AnimMgr.fps;this.setEl=function(n){m=b.Dom.get(n)};this.getEl=function(){return m};this.isAnimated=function(){return c};this.getStartTime=function(){return k};this.runtimeAttributes={};this.animate=function(){if(this.isAnimated()){return false}this.currentFrame=0;this.totalFrames=(this.useSeconds)?Math.ceil(b.AnimMgr.fps*this.duration):this.duration;if(this.duration===0&&this.useSeconds){this.totalFrames=1}b.AnimMgr.registerElement(this);return true};this.stop=function(n){if(!this.isAnimated()){return false}if(n){this.currentFrame=this.totalFrames;this._onTween.fire()}b.AnimMgr.stop(this)};var e=function(){this.onStart.fire();this.runtimeAttributes={};for(var n in this.attributes){this.setRuntimeAttribute(n)}c=true;i=0;k=new Date()};var f=function(){var n={duration:new Date()-this.getStartTime(),currentFrame:this.currentFrame};n.toString=function(){return("duration: "+n.duration+", currentFrame: "+n.currentFrame)};this.onTween.fire(n);var o=this.runtimeAttributes;for(var p in o){this.setAttribute(p,this.doMethod(p,o[p].start,o[p].end),o[p].unit)}i+=1};var j=function(){var o=(new Date()-k)/1000;var n={duration:o,frames:i,fps:i/o};n.toString=function(){return("duration: "+n.duration+", frames: "+n.frames+", fps: "+n.fps)};c=false;i=0;this.onComplete.fire(n)};this._onStart=new b.CustomEvent("_start",this,true);this.onStart=new b.CustomEvent("start",this);this.onTween=new b.CustomEvent("tween",this);this._onTween=new b.CustomEvent("_tween",this,true);this.onComplete=new b.CustomEvent("complete",this);this._onComplete=new b.CustomEvent("_complete",this,true);this._onStart.subscribe(e);this._onTween.subscribe(f);this._onComplete.subscribe(j)}};b.Anim=a})();YAHOO.util.AnimMgr=new function(){var d=null;var e=[];var a=0;this.fps=1000;this.delay=1;this.registerElement=function(f){e[e.length]=f;a+=1;f._onStart.fire();this.start()};this.unRegister=function(f,g){g=g||b(f);if(!f.isAnimated()||g==-1){return false}f._onComplete.fire();e.splice(g,1);a-=1;if(a<=0){this.stop()}return true};this.start=function(){if(d===null){d=setInterval(this.run,this.delay)}};this.stop=function(f){if(!f){clearInterval(d);for(var g=0,h=e.length;g<h;++g){this.unRegister(e[0],0)}e=[];d=null;a=0}else{this.unRegister(f)}};this.run=function(){for(var f=0,h=e.length;f<h;++f){var g=e[f];if(!g||!g.isAnimated()){continue}if(g.currentFrame<g.totalFrames||g.totalFrames===null){g.currentFrame+=1;if(g.useSeconds){c(g)}g._onTween.fire()}else{YAHOO.util.AnimMgr.stop(g,f)}}};var b=function(f){for(var g=0,h=e.length;g<h;++g){if(e[g]==f){return g}}return -1};var c=function(j){var g=j.totalFrames;var h=j.currentFrame;var i=(j.currentFrame*j.duration*1000/j.totalFrames);var k=(new Date()-j.getStartTime());var f=0;if(k<j.duration*1000){f=Math.round((k/i-1)*j.currentFrame)}else{f=g-(h+1)}if(f>0&&isFinite(f)){if(j.currentFrame+f>=g){f=g-(h+1)}j.currentFrame+=f}}};YAHOO.util.Bezier=new function(){this.getPosition=function(c,d){var b=c.length;var e=[];for(var f=0;f<b;++f){e[f]=[c[f][0],c[f][1]]}for(var a=1;a<b;++a){for(f=0;f<b-a;++f){e[f][0]=(1-d)*e[f][0]+d*e[parseInt(f+1,10)][0];e[f][1]=(1-d)*e[f][1]+d*e[parseInt(f+1,10)][1]}}return[e[0][0],e[0][1]]}};(function(){var a=function(g,h,f,e){a.superclass.constructor.call(this,g,h,f,e)};a.NAME="ColorAnim";a.DEFAULT_BGCOLOR="#fff";var c=YAHOO.util;YAHOO.extend(a,c.Anim);var b=a.superclass;var d=a.prototype;d.patterns.color=/color$/i;d.patterns.rgb=/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i;d.patterns.hex=/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i;d.patterns.hex3=/^#?([0-9A-F]{1})([0-9A-F]{1})([0-9A-F]{1})$/i;d.patterns.transparent=/^transparent|rgba\(0, 0, 0, 0\)$/;d.parseColor=function(f){if(f.length==3){return f}var e=this.patterns.hex.exec(f);if(e&&e.length==4){return[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]}e=this.patterns.rgb.exec(f);if(e&&e.length==4){return[parseInt(e[1],10),parseInt(e[2],10),parseInt(e[3],10)]}e=this.patterns.hex3.exec(f);if(e&&e.length==4){return[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16)]}return null};d.getAttribute=function(i){var g=this.getEl();if(this.patterns.color.test(i)){var e=YAHOO.util.Dom.getStyle(g,i);var f=this;if(this.patterns.transparent.test(e)){var h=YAHOO.util.Dom.getAncestorBy(g,function(j){return !f.patterns.transparent.test(e)});if(h){e=c.Dom.getStyle(h,i)}else{e=a.DEFAULT_BGCOLOR}}}else{e=b.getAttribute.call(this,i)}return e};d.doMethod=function(i,e,h){var f;if(this.patterns.color.test(i)){f=[];for(var g=0,j=e.length;g<j;++g){f[g]=b.doMethod.call(this,i,e[g],h[g])}f="rgb("+Math.floor(f[0])+","+Math.floor(f[1])+","+Math.floor(f[2])+")"}else{f=b.doMethod.call(this,i,e,h)}return f};d.setRuntimeAttribute=function(i){b.setRuntimeAttribute.call(this,i);if(this.patterns.color.test(i)){var g=this.attributes;var e=this.parseColor(this.runtimeAttributes[i].start);var h=this.parseColor(this.runtimeAttributes[i].end);if(typeof g[i]["to"]==="undefined"&&typeof g[i]["by"]!=="undefined"){h=this.parseColor(g[i].by);for(var f=0,j=e.length;f<j;++f){h[f]=e[f]+h[f]}}this.runtimeAttributes[i].start=e;this.runtimeAttributes[i].end=h}};c.ColorAnim=a})();YAHOO.util.Easing={easeNone:function(d,a,b,c){return b*d/c+a},easeIn:function(d,a,b,c){return b*(d/=c)*d+a},easeOut:function(d,a,b,c){return -b*(d/=c)*(d-2)+a},easeBoth:function(d,a,b,c){if((d/=c/2)<1){return b/2*d*d+a}return -b/2*((--d)*(d-2)-1)+a},easeInStrong:function(d,a,b,c){return b*(d/=c)*d*d*d+a},easeOutStrong:function(d,a,b,c){return -b*((d=d/c-1)*d*d*d-1)+a},easeBothStrong:function(d,a,b,c){if((d/=c/2)<1){return b/2*d*d*d*d+a}return -b/2*((d-=2)*d*d*d-2)+a},elasticIn:function(f,a,b,c,g,d){if(f==0){return a}if((f/=c)==1){return a+b}if(!d){d=c*0.3}if(!g||g<Math.abs(b)){g=b;var e=d/4}else{var e=d/(2*Math.PI)*Math.asin(b/g)}return -(g*Math.pow(2,10*(f-=1))*Math.sin((f*c-e)*(2*Math.PI)/d))+a},elasticOut:function(f,a,b,c,g,d){if(f==0){return a}if((f/=c)==1){return a+b}if(!d){d=c*0.3}if(!g||g<Math.abs(b)){g=b;var e=d/4}else{var e=d/(2*Math.PI)*Math.asin(b/g)}return g*Math.pow(2,-10*f)*Math.sin((f*c-e)*(2*Math.PI)/d)+b+a},elasticBoth:function(f,a,b,c,g,d){if(f==0){return a}if((f/=c/2)==2){return a+b}if(!d){d=c*(0.3*1.5)}if(!g||g<Math.abs(b)){g=b;var e=d/4}else{var e=d/(2*Math.PI)*Math.asin(b/g)}if(f<1){return -0.5*(g*Math.pow(2,10*(f-=1))*Math.sin((f*c-e)*(2*Math.PI)/d))+a}return g*Math.pow(2,-10*(f-=1))*Math.sin((f*c-e)*(2*Math.PI)/d)*0.5+b+a},backIn:function(e,a,b,c,d){if(typeof d=="undefined"){d=1.70158}return b*(e/=c)*e*((d+1)*e-d)+a},backOut:function(e,a,b,c,d){if(typeof d=="undefined"){d=1.70158}return b*((e=e/c-1)*e*((d+1)*e+d)+1)+a},backBoth:function(e,a,b,c,d){if(typeof d=="undefined"){d=1.70158}if((e/=c/2)<1){return b/2*(e*e*(((d*=(1.525))+1)*e-d))+a}return b/2*((e-=2)*e*(((d*=(1.525))+1)*e+d)+2)+a},bounceIn:function(d,a,b,c){return b-YAHOO.util.Easing.bounceOut(c-d,0,b,c)+a},bounceOut:function(d,a,b,c){if((d/=c)<(1/2.75)){return b*(7.5625*d*d)+a}else{if(d<(2/2.75)){return b*(7.5625*(d-=(1.5/2.75))*d+0.75)+a}else{if(d<(2.5/2.75)){return b*(7.5625*(d-=(2.25/2.75))*d+0.9375)+a}}}return b*(7.5625*(d-=(2.625/2.75))*d+0.984375)+a},bounceBoth:function(d,a,b,c){if(d<c/2){return YAHOO.util.Easing.bounceIn(d*2,0,b,c)*0.5+a}return YAHOO.util.Easing.bounceOut(d*2-c,0,b,c)*0.5+b*0.5+a}};(function(){var a=function(i,j,h,g){if(i){a.superclass.constructor.call(this,i,j,h,g)}};a.NAME="Motion";var c=YAHOO.util;YAHOO.extend(a,c.ColorAnim);var b=a.superclass;var e=a.prototype;e.patterns.points=/^points$/i;e.setAttribute=function(i,g,h){if(this.patterns.points.test(i)){h=h||"px";b.setAttribute.call(this,"left",g[0],h);b.setAttribute.call(this,"top",g[1],h)}else{b.setAttribute.call(this,i,g,h)}};e.getAttribute=function(h){if(this.patterns.points.test(h)){var g=[b.getAttribute.call(this,"left"),b.getAttribute.call(this,"top")]}else{g=b.getAttribute.call(this,h)}return g};e.doMethod=function(k,g,j){var h=null;if(this.patterns.points.test(k)){var i=this.method(this.currentFrame,0,100,this.totalFrames)/100;h=c.Bezier.getPosition(this.runtimeAttributes[k],i)}else{h=b.doMethod.call(this,k,g,j)}return h};e.setRuntimeAttribute=function(g){if(this.patterns.points.test(g)){var p=this.getEl();var n=this.attributes;var q;var k=n.points["control"]||[];var o;var j,h;if(k.length>0&&!(k[0] instanceof Array)){k=[k]}else{var m=[];for(j=0,h=k.length;j<h;++j){m[j]=k[j]}k=m}if(c.Dom.getStyle(p,"position")=="static"){c.Dom.setStyle(p,"position","relative")}if(d(n.points["from"])){c.Dom.setXY(p,n.points["from"])}else{c.Dom.setXY(p,c.Dom.getXY(p))}q=this.getAttribute("points");if(d(n.points["to"])){o=f.call(this,n.points["to"],q);var i=c.Dom.getXY(this.getEl());for(j=0,h=k.length;j<h;++j){k[j]=f.call(this,k[j],q)}}else{if(d(n.points["by"])){o=[q[0]+n.points["by"][0],q[1]+n.points["by"][1]];for(j=0,h=k.length;j<h;++j){k[j]=[q[0]+k[j][0],q[1]+k[j][1]]}}}this.runtimeAttributes[g]=[q];if(k.length>0){this.runtimeAttributes[g]=this.runtimeAttributes[g].concat(k)}this.runtimeAttributes[g][this.runtimeAttributes[g].length]=o}else{b.setRuntimeAttribute.call(this,g)}};var f=function(i,g){var h=c.Dom.getXY(this.getEl());i=[i[0]-h[0]+g[0],i[1]-h[1]+g[1]];return i};var d=function(g){return(typeof g!=="undefined")};c.Motion=a})();(function(){var b=function(g,h,f,e){if(g){b.superclass.constructor.call(this,g,h,f,e)}};b.NAME="Scroll";var d=YAHOO.util;YAHOO.extend(b,d.ColorAnim);var c=b.superclass;var a=b.prototype;a.doMethod=function(h,e,g){var f=null;if(h=="scroll"){f=[this.method(this.currentFrame,e[0],g[0]-e[0],this.totalFrames),this.method(this.currentFrame,e[1],g[1]-e[1],this.totalFrames)]}else{f=c.doMethod.call(this,h,e,g)}return f};a.getAttribute=function(g){var e=null;var f=this.getEl();if(g=="scroll"){e=[f.scrollLeft,f.scrollTop]}else{e=c.getAttribute.call(this,g)}return e};a.setAttribute=function(h,e,f){var g=this.getEl();if(h=="scroll"){g.scrollLeft=e[0];g.scrollTop=e[1]}else{c.setAttribute.call(this,h,e,f)}};d.Scroll=b})();YAHOO.register("animation",YAHOO.util.Anim,{version:"2.7.0",build:"1799"});YAHOO.util.Connect={_msxml_progid:["Microsoft.XMLHTTP","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP"],_http_headers:{},_has_http_headers:false,_use_default_post_header:true,_default_post_header:"application/x-www-form-urlencoded; charset=UTF-8",_default_form_header:"application/x-www-form-urlencoded",_use_default_xhr_header:true,_default_xhr_header:"XMLHttpRequest",_has_default_headers:true,_default_headers:{},_isFormSubmit:false,_isFileUpload:false,_formNode:null,_sFormData:null,_poll:{},_timeOut:{},_polling_interval:50,_transaction_id:0,_submitElementValue:null,_hasSubmitListener:(function(){if(YAHOO.util.Event){YAHOO.util.Event.addListener(document,"click",function(b){var c=YAHOO.util.Event.getTarget(b),a=c.nodeName.toLowerCase();if((a==="input"||a==="button")&&(c.type&&c.type.toLowerCase()=="submit")){YAHOO.util.Connect._submitElementValue=encodeURIComponent(c.name)+"="+encodeURIComponent(c.value)}});return true}return false})(),startEvent:new YAHOO.util.CustomEvent("start"),completeEvent:new YAHOO.util.CustomEvent("complete"),successEvent:new YAHOO.util.CustomEvent("success"),failureEvent:new YAHOO.util.CustomEvent("failure"),uploadEvent:new YAHOO.util.CustomEvent("upload"),abortEvent:new YAHOO.util.CustomEvent("abort"),_customEvents:{onStart:["startEvent","start"],onComplete:["completeEvent","complete"],onSuccess:["successEvent","success"],onFailure:["failureEvent","failure"],onUpload:["uploadEvent","upload"],onAbort:["abortEvent","abort"]},setProgId:function(a){this._msxml_progid.unshift(a)},setDefaultPostHeader:function(a){if(typeof a=="string"){this._default_post_header=a}else{if(typeof a=="boolean"){this._use_default_post_header=a}}},setDefaultXhrHeader:function(a){if(typeof a=="string"){this._default_xhr_header=a}else{this._use_default_xhr_header=a}},setPollingInterval:function(a){if(typeof a=="number"&&isFinite(a)){this._polling_interval=a}},createXhrObject:function(b){var c,a;try{a=new XMLHttpRequest();c={conn:a,tId:b}}catch(d){for(var f=0;f<this._msxml_progid.length;++f){try{a=new ActiveXObject(this._msxml_progid[f]);c={conn:a,tId:b};break}catch(e){}}}finally{return c}},getConnectionObject:function(a){var c;var b=this._transaction_id;try{if(!a){c=this.createXhrObject(b)}else{c={};c.tId=b;c.isUpload=true}if(c){this._transaction_id++}}catch(d){}finally{return c}},asyncRequest:function(b,e,c,a){var d=(this._isFileUpload)?this.getConnectionObject(true):this.getConnectionObject();var f=(c&&c.argument)?c.argument:null;if(!d){return null}else{if(c&&c.customevents){this.initCustomEvents(d,c)}if(this._isFormSubmit){if(this._isFileUpload){this.uploadFile(d,c,e,a);return d}if(b.toUpperCase()=="GET"){if(this._sFormData.length!==0){e+=((e.indexOf("?")==-1)?"?":"&")+this._sFormData}}else{if(b.toUpperCase()=="POST"){a=a?this._sFormData+"&"+a:this._sFormData}}}if(b.toUpperCase()=="GET"&&(c&&c.cache===false)){e+=((e.indexOf("?")==-1)?"?":"&")+"rnd="+new Date().valueOf().toString()}d.conn.open(b,e,true);if(this._use_default_xhr_header){if(!this._default_headers["X-Requested-With"]){this.initHeader("X-Requested-With",this._default_xhr_header,true)}}if((b.toUpperCase()==="POST"&&this._use_default_post_header)&&this._isFormSubmit===false){this.initHeader("Content-Type",this._default_post_header)}if(this._has_default_headers||this._has_http_headers){this.setHeader(d)}this.handleReadyState(d,c);d.conn.send(a||"");if(this._isFormSubmit===true){this.resetFormState()}this.startEvent.fire(d,f);if(d.startEvent){d.startEvent.fire(d,f)}return d}},initCustomEvents:function(a,b){var c;for(c in b.customevents){if(this._customEvents[c][0]){a[this._customEvents[c][0]]=new YAHOO.util.CustomEvent(this._customEvents[c][1],(b.scope)?b.scope:null);a[this._customEvents[c][0]].subscribe(b.customevents[c])}}},handleReadyState:function(c,b){var d=this;var a=(b&&b.argument)?b.argument:null;if(b&&b.timeout){this._timeOut[c.tId]=window.setTimeout(function(){d.abort(c,b,true)},b.timeout)}this._poll[c.tId]=window.setInterval(function(){if(c.conn&&c.conn.readyState===4){window.clearInterval(d._poll[c.tId]);delete d._poll[c.tId];if(b&&b.timeout){window.clearTimeout(d._timeOut[c.tId]);delete d._timeOut[c.tId]}d.completeEvent.fire(c,a);if(c.completeEvent){c.completeEvent.fire(c,a)}d.handleTransactionResponse(c,b)}},this._polling_interval)},handleTransactionResponse:function(c,b,a){var e,f;var g=(b&&b.argument)?b.argument:null;try{if(c.conn.status!==undefined&&c.conn.status!==0){e=c.conn.status}else{e=13030}}catch(d){e=13030}if(e>=200&&e<300||e===1223){f=this.createResponseObject(c,g);if(b&&b.success){if(!b.scope){b.success(f)}else{b.success.apply(b.scope,[f])}}this.successEvent.fire(f);if(c.successEvent){c.successEvent.fire(f)}}else{switch(e){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:f=this.createExceptionObject(c.tId,g,(a?a:false));if(b&&b.failure){if(!b.scope){b.failure(f)}else{b.failure.apply(b.scope,[f])}}break;default:f=this.createResponseObject(c,g);if(b&&b.failure){if(!b.scope){b.failure(f)}else{b.failure.apply(b.scope,[f])}}}this.failureEvent.fire(f);if(c.failureEvent){c.failureEvent.fire(f)}}this.releaseObject(c);f=null},createResponseObject:function(d,g){var a={};var e={};try{var b=d.conn.getAllResponseHeaders();var h=b.split("\n");for(var i=0;i<h.length;i++){var c=h[i].indexOf(":");if(c!=-1){e[h[i].substring(0,c)]=h[i].substring(c+2)}}}catch(f){}a.tId=d.tId;a.status=(d.conn.status==1223)?204:d.conn.status;a.statusText=(d.conn.status==1223)?"No Content":d.conn.statusText;a.getResponseHeader=e;a.getAllResponseHeaders=b;a.responseText=d.conn.responseText;a.responseXML=d.conn.responseXML;if(g){a.argument=g}return a},createExceptionObject:function(b,f,a){var d=0;var c="communication failure";var g=-1;var h="transaction aborted";var e={};e.tId=b;if(a){e.status=g;e.statusText=h}else{e.status=d;e.statusText=c}if(f){e.argument=f}return e},initHeader:function(a,b,c){var d=(c)?this._default_headers:this._http_headers;d[a]=b;if(c){this._has_default_headers=true}else{this._has_http_headers=true}},setHeader:function(a){var b;if(this._has_default_headers){for(b in this._default_headers){if(YAHOO.lang.hasOwnProperty(this._default_headers,b)){a.conn.setRequestHeader(b,this._default_headers[b])}}}if(this._has_http_headers){for(b in this._http_headers){if(YAHOO.lang.hasOwnProperty(this._http_headers,b)){a.conn.setRequestHeader(b,this._http_headers[b])}}delete this._http_headers;this._http_headers={};this._has_http_headers=false}},resetDefaultHeaders:function(){delete this._default_headers;this._default_headers={};this._has_default_headers=false},setForm:function(h,n,b){var i,c,j,m,e,k=false,p=[],f=0,q,o,a,g,d;this.resetFormState();if(typeof h=="string"){i=(document.getElementById(h)||document.forms[h])}else{if(typeof h=="object"){i=h}else{return}}if(n){this.createFrame(b?b:null);this._isFormSubmit=true;this._isFileUpload=true;this._formNode=i;return}for(q=0,o=i.elements.length;q<o;++q){c=i.elements[q];e=c.disabled;j=c.name;if(!e&&j){j=encodeURIComponent(j)+"=";m=encodeURIComponent(c.value);switch(c.type){case"select-one":if(c.selectedIndex>-1){d=c.options[c.selectedIndex];p[f++]=j+encodeURIComponent((d.attributes.value&&d.attributes.value.specified)?d.value:d.text)}break;case"select-multiple":if(c.selectedIndex>-1){for(a=c.selectedIndex,g=c.options.length;a<g;++a){d=c.options[a];if(d.selected){p[f++]=j+encodeURIComponent((d.attributes.value&&d.attributes.value.specified)?d.value:d.text)}}}break;case"radio":case"checkbox":if(c.checked){p[f++]=j+m}break;case"file":case undefined:case"reset":case"button":break;case"submit":if(k===false){if(this._hasSubmitListener&&this._submitElementValue){p[f++]=this._submitElementValue}k=true}break;default:p[f++]=j+m}}}this._isFormSubmit=true;this._sFormData=p.join("&");this.initHeader("Content-Type",this._default_form_header);return this._sFormData},resetFormState:function(){this._isFormSubmit=false;this._isFileUpload=false;this._formNode=null;this._sFormData=""},createFrame:function(a){var c="yuiIO"+this._transaction_id;var b;if(YAHOO.env.ua.ie){b=document.createElement('<iframe id="'+c+'" name="'+c+'" />');if(typeof a=="boolean"){b.src="javascript:false"}}else{b=document.createElement("iframe");b.id=c;b.name=c}b.style.position="absolute";b.style.top="-1000px";b.style.left="-1000px";document.body.appendChild(b)},appendPostData:function(a){var c=[],e=a.split("&"),d,b;for(d=0;d<e.length;d++){b=e[d].indexOf("=");if(b!=-1){c[d]=document.createElement("input");c[d].type="hidden";c[d].name=decodeURIComponent(e[d].substring(0,b));c[d].value=decodeURIComponent(e[d].substring(b+1));this._formNode.appendChild(c[d])}}return c},uploadFile:function(a,f,p,b){var k="yuiIO"+a.tId,j="multipart/form-data",h=document.getElementById(k),e=this,i=(f&&f.argument)?f.argument:null,g,m,c,n;var d={action:this._formNode.getAttribute("action"),method:this._formNode.getAttribute("method"),target:this._formNode.getAttribute("target")};this._formNode.setAttribute("action",p);this._formNode.setAttribute("method","POST");this._formNode.setAttribute("target",k);if(YAHOO.env.ua.ie){this._formNode.setAttribute("encoding",j)}else{this._formNode.setAttribute("enctype",j)}if(b){g=this.appendPostData(b)}this._formNode.submit();this.startEvent.fire(a,i);if(a.startEvent){a.startEvent.fire(a,i)}if(f&&f.timeout){this._timeOut[a.tId]=window.setTimeout(function(){e.abort(a,f,true)},f.timeout)}if(g&&g.length>0){for(m=0;m<g.length;m++){this._formNode.removeChild(g[m])}}for(c in d){if(YAHOO.lang.hasOwnProperty(d,c)){if(d[c]){this._formNode.setAttribute(c,d[c])}else{this._formNode.removeAttribute(c)}}}this.resetFormState();var o=function(){if(f&&f.timeout){window.clearTimeout(e._timeOut[a.tId]);delete e._timeOut[a.tId]}e.completeEvent.fire(a,i);if(a.completeEvent){a.completeEvent.fire(a,i)}n={tId:a.tId,argument:f.argument};try{n.responseText=h.contentWindow.document.body?h.contentWindow.document.body.innerHTML:h.contentWindow.document.documentElement.textContent;n.responseXML=h.contentWindow.document.XMLDocument?h.contentWindow.document.XMLDocument:h.contentWindow.document}catch(q){}if(f&&f.upload){if(!f.scope){f.upload(n)}else{f.upload.apply(f.scope,[n])}}e.uploadEvent.fire(n);if(a.uploadEvent){a.uploadEvent.fire(n)}YAHOO.util.Event.removeListener(h,"load",o);setTimeout(function(){document.body.removeChild(h);e.releaseObject(a)},100)};YAHOO.util.Event.addListener(h,"load",o)},abort:function(d,b,a){var e;var g=(b&&b.argument)?b.argument:null;if(d&&d.conn){if(this.isCallInProgress(d)){d.conn.abort();window.clearInterval(this._poll[d.tId]);delete this._poll[d.tId];if(a){window.clearTimeout(this._timeOut[d.tId]);delete this._timeOut[d.tId]}e=true}}else{if(d&&d.isUpload===true){var f="yuiIO"+d.tId;var c=document.getElementById(f);if(c){YAHOO.util.Event.removeListener(c,"load");document.body.removeChild(c);if(a){window.clearTimeout(this._timeOut[d.tId]);delete this._timeOut[d.tId]}e=true}}else{e=false}}if(e===true){this.abortEvent.fire(d,g);if(d.abortEvent){d.abortEvent.fire(d,g)}this.handleTransactionResponse(d,b,true)}return e},isCallInProgress:function(b){if(b&&b.conn){return b.conn.readyState!==4&&b.conn.readyState!==0}else{if(b&&b.isUpload===true){var a="yuiIO"+b.tId;return document.getElementById(a)?true:false}else{return false}}},releaseObject:function(a){if(a&&a.conn){a.conn=null;a=null}}};YAHOO.register("connection",YAHOO.util.Connect,{version:"2.7.0",build:"1799"});(function(){YAHOO.util.Config=function(d){if(d){this.init(d)}};var c=YAHOO.lang,b=YAHOO.util.CustomEvent,a=YAHOO.util.Config;a.CONFIG_CHANGED_EVENT="configChanged";a.BOOLEAN_TYPE="boolean";a.prototype={owner:null,queueInProgress:false,config:null,initialConfig:null,eventQueue:null,configChangedEvent:null,init:function(d){this.owner=d;this.configChangedEvent=this.createEvent(a.CONFIG_CHANGED_EVENT);this.configChangedEvent.signature=b.LIST;this.queueInProgress=false;this.config={};this.initialConfig={};this.eventQueue=[]},checkBoolean:function(d){return(typeof d==a.BOOLEAN_TYPE)},checkNumber:function(d){return(!isNaN(d))},fireEvent:function(f,d){var e=this.config[f];if(e&&e.event){e.event.fire(d)}},addProperty:function(d,e){d=d.toLowerCase();this.config[d]=e;e.event=this.createEvent(d,{scope:this.owner});e.event.signature=b.LIST;e.key=d;if(e.handler){e.event.subscribe(e.handler,this.owner)}this.setProperty(d,e.value,true);if(!e.suppressEvent){this.queueProperty(d,e.value)}},getConfig:function(){var g={},e=this.config,d,f;for(d in e){if(c.hasOwnProperty(e,d)){f=e[d];if(f&&f.event){g[d]=f.value}}}return g},getProperty:function(e){var d=this.config[e.toLowerCase()];if(d&&d.event){return d.value}else{return undefined}},resetProperty:function(e){e=e.toLowerCase();var d=this.config[e];if(d&&d.event){if(this.initialConfig[e]&&!c.isUndefined(this.initialConfig[e])){this.setProperty(e,this.initialConfig[e]);return true}}else{return false}},setProperty:function(f,d,g){var e;f=f.toLowerCase();if(this.queueInProgress&&!g){this.queueProperty(f,d);return true}else{e=this.config[f];if(e&&e.event){if(e.validator&&!e.validator(d)){return false}else{e.value=d;if(!g){this.fireEvent(f,d);this.configChangedEvent.fire([f,d])}return true}}else{return false}}},queueProperty:function(f,i){f=f.toLowerCase();var g=this.config[f],o=false,p,s,r,q,j,h,u,m,k,d,n,e,v;if(g&&g.event){if(!c.isUndefined(i)&&g.validator&&!g.validator(i)){return false}else{if(!c.isUndefined(i)){g.value=i}else{i=g.value}o=false;p=this.eventQueue.length;for(n=0;n<p;n++){s=this.eventQueue[n];if(s){r=s[0];q=s[1];if(r==f){this.eventQueue[n]=null;this.eventQueue.push([f,(!c.isUndefined(i)?i:q)]);o=true;break}}}if(!o&&!c.isUndefined(i)){this.eventQueue.push([f,i])}}if(g.supercedes){j=g.supercedes.length;for(e=0;e<j;e++){h=g.supercedes[e];u=this.eventQueue.length;for(v=0;v<u;v++){m=this.eventQueue[v];if(m){k=m[0];d=m[1];if(k==h.toLowerCase()){this.eventQueue.push([k,d]);this.eventQueue[v]=null;break}}}}}return true}else{return false}},refireEvent:function(e){e=e.toLowerCase();var d=this.config[e];if(d&&d.event&&!c.isUndefined(d.value)){if(this.queueInProgress){this.queueProperty(e)}else{this.fireEvent(e,d.value)}}},applyConfig:function(g,d){var e,f;if(d){f={};for(e in g){if(c.hasOwnProperty(g,e)){f[e.toLowerCase()]=g[e]}}this.initialConfig=f}for(e in g){if(c.hasOwnProperty(g,e)){this.queueProperty(e,g[e])}}},refresh:function(){var d;for(d in this.config){if(c.hasOwnProperty(this.config,d)){this.refireEvent(d)}}},fireQueue:function(){var g,d,h,e,f;this.queueInProgress=true;for(g=0;g<this.eventQueue.length;g++){d=this.eventQueue[g];if(d){h=d[0];e=d[1];f=this.config[h];f.value=e;this.eventQueue[g]=null;this.fireEvent(h,e)}}this.queueInProgress=false;this.eventQueue=[]},subscribeToConfigEvent:function(g,f,d,h){var e=this.config[g.toLowerCase()];if(e&&e.event){if(!a.alreadySubscribed(e.event,f,d)){e.event.subscribe(f,d,h)}return true}else{return false}},unsubscribeFromConfigEvent:function(g,f,d){var e=this.config[g.toLowerCase()];if(e&&e.event){return e.event.unsubscribe(f,d)}else{return false}},toString:function(){var d="Config";if(this.owner){d+=" ["+this.owner.toString()+"]"}return d},outputEventQueue:function(){var g="",d,f,e=this.eventQueue.length;for(f=0;f<e;f++){d=this.eventQueue[f];if(d){g+=d[0]+"="+d[1]+", "}}return g},destroy:function(){var e=this.config,f,d;for(f in e){if(c.hasOwnProperty(e,f)){d=e[f];d.event.unsubscribeAll();d.event=null}}this.configChangedEvent.unsubscribeAll();this.configChangedEvent=null;this.owner=null;this.config=null;this.initialConfig=null;this.eventQueue=null}};a.alreadySubscribed=function(h,e,d){var g=h.subscribers.length,i,f;if(g>0){f=g-1;do{i=h.subscribers[f];if(i&&i.obj==d&&i.fn==e){return true}}while(f--)}return false};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider)}());(function(){YAHOO.widget.Module=function(r,s){if(r){this.init(r,s)}else{}};var p=YAHOO.util.Dom,a=YAHOO.util.Config,g=YAHOO.util.Event,h=YAHOO.util.CustomEvent,o=YAHOO.widget.Module,m=YAHOO.env.ua,n,e,f,q,d={BEFORE_INIT:"beforeInit",INIT:"init",APPEND:"append",BEFORE_RENDER:"beforeRender",RENDER:"render",CHANGE_HEADER:"changeHeader",CHANGE_BODY:"changeBody",CHANGE_FOOTER:"changeFooter",CHANGE_CONTENT:"changeContent",DESTORY:"destroy",BEFORE_SHOW:"beforeShow",SHOW:"show",BEFORE_HIDE:"beforeHide",HIDE:"hide"},k={VISIBLE:{key:"visible",value:true,validator:YAHOO.lang.isBoolean},EFFECT:{key:"effect",suppressEvent:true,supercedes:["visible"]},MONITOR_RESIZE:{key:"monitorresize",value:true},APPEND_TO_DOCUMENT_BODY:{key:"appendtodocumentbody",value:false}};o.IMG_ROOT=null;o.IMG_ROOT_SSL=null;o.CSS_MODULE="yui-module";o.CSS_HEADER="hd";o.CSS_BODY="bd";o.CSS_FOOTER="ft";o.RESIZE_MONITOR_SECURE_URL="javascript:false;";o.RESIZE_MONITOR_BUFFER=1;o.textResizeEvent=new h("textResize");o.forceDocumentRedraw=function(){var r=document.documentElement;if(r){r.className+=" ";r.className=YAHOO.lang.trim(r.className)}};function i(){if(!n){n=document.createElement("div");n.innerHTML=('<div class="'+o.CSS_HEADER+'"></div><div class="'+o.CSS_BODY+'"></div><div class="'+o.CSS_FOOTER+'"></div>');e=n.firstChild;f=e.nextSibling;q=f.nextSibling}return n}function j(){if(!e){i()}return(e.cloneNode(false))}function c(){if(!f){i()}return(f.cloneNode(false))}function b(){if(!q){i()}return(q.cloneNode(false))}o.prototype={constructor:o,element:null,header:null,body:null,footer:null,id:null,imageRoot:o.IMG_ROOT,initEvents:function(){var r=h.LIST;this.beforeInitEvent=this.createEvent(d.BEFORE_INIT);this.beforeInitEvent.signature=r;this.initEvent=this.createEvent(d.INIT);this.initEvent.signature=r;this.appendEvent=this.createEvent(d.APPEND);this.appendEvent.signature=r;this.beforeRenderEvent=this.createEvent(d.BEFORE_RENDER);this.beforeRenderEvent.signature=r;this.renderEvent=this.createEvent(d.RENDER);this.renderEvent.signature=r;this.changeHeaderEvent=this.createEvent(d.CHANGE_HEADER);this.changeHeaderEvent.signature=r;this.changeBodyEvent=this.createEvent(d.CHANGE_BODY);this.changeBodyEvent.signature=r;this.changeFooterEvent=this.createEvent(d.CHANGE_FOOTER);this.changeFooterEvent.signature=r;this.changeContentEvent=this.createEvent(d.CHANGE_CONTENT);this.changeContentEvent.signature=r;this.destroyEvent=this.createEvent(d.DESTORY);this.destroyEvent.signature=r;this.beforeShowEvent=this.createEvent(d.BEFORE_SHOW);this.beforeShowEvent.signature=r;this.showEvent=this.createEvent(d.SHOW);this.showEvent.signature=r;this.beforeHideEvent=this.createEvent(d.BEFORE_HIDE);this.beforeHideEvent.signature=r;this.hideEvent=this.createEvent(d.HIDE);this.hideEvent.signature=r},platform:function(){var r=navigator.userAgent.toLowerCase();if(r.indexOf("windows")!=-1||r.indexOf("win32")!=-1){return"windows"}else{if(r.indexOf("macintosh")!=-1){return"mac"}else{return false}}}(),browser:function(){var r=navigator.userAgent.toLowerCase();if(r.indexOf("opera")!=-1){return"opera"}else{if(r.indexOf("msie 7")!=-1){return"ie7"}else{if(r.indexOf("msie")!=-1){return"ie"}else{if(r.indexOf("safari")!=-1){return"safari"}else{if(r.indexOf("gecko")!=-1){return"gecko"}else{return false}}}}}}(),isSecure:function(){if(window.location.href.toLowerCase().indexOf("https")===0){return true}else{return false}}(),initDefaultConfig:function(){this.cfg.addProperty(k.VISIBLE.key,{handler:this.configVisible,value:k.VISIBLE.value,validator:k.VISIBLE.validator});this.cfg.addProperty(k.EFFECT.key,{suppressEvent:k.EFFECT.suppressEvent,supercedes:k.EFFECT.supercedes});this.cfg.addProperty(k.MONITOR_RESIZE.key,{handler:this.configMonitorResize,value:k.MONITOR_RESIZE.value});this.cfg.addProperty(k.APPEND_TO_DOCUMENT_BODY.key,{value:k.APPEND_TO_DOCUMENT_BODY.value})},init:function(s,u){var w,r;this.initEvents();this.beforeInitEvent.fire(o);this.cfg=new a(this);if(this.isSecure){this.imageRoot=o.IMG_ROOT_SSL}if(typeof s=="string"){w=s;s=document.getElementById(s);if(!s){s=(i()).cloneNode(false);s.id=w}}this.id=p.generateId(s);this.element=s;r=this.element.firstChild;if(r){var z=false,A=false,v=false;do{if(1==r.nodeType){if(!z&&p.hasClass(r,o.CSS_HEADER)){this.header=r;z=true}else{if(!A&&p.hasClass(r,o.CSS_BODY)){this.body=r;A=true}else{if(!v&&p.hasClass(r,o.CSS_FOOTER)){this.footer=r;v=true}}}}}while((r=r.nextSibling))}this.initDefaultConfig();p.addClass(this.element,o.CSS_MODULE);if(u){this.cfg.applyConfig(u,true)}if(!a.alreadySubscribed(this.renderEvent,this.cfg.fireQueue,this.cfg)){this.renderEvent.subscribe(this.cfg.fireQueue,this.cfg,true)}this.initEvent.fire(o)},initResizeMonitor:function(){var r=(m.gecko&&this.platform=="windows");if(r){var s=this;setTimeout(function(){s._initResizeMonitor()},0)}else{this._initResizeMonitor()}},_initResizeMonitor:function(){var A,w,u;function r(){o.textResizeEvent.fire()}if(!m.opera){w=p.get("_yuiResizeMonitor");var s=this._supportsCWResize();if(!w){w=document.createElement("iframe");if(this.isSecure&&o.RESIZE_MONITOR_SECURE_URL&&m.ie){w.src=o.RESIZE_MONITOR_SECURE_URL}if(!s){u=["<html><head><script ",'type="text/javascript">',"window.onresize=function(){window.parent.","YAHOO.widget.Module.textResizeEvent.","fire();};<","/script></head>","<body></body></html>"].join("");w.src="data:text/html;charset=utf-8,"+encodeURIComponent(u)}w.id="_yuiResizeMonitor";w.title="Text Resize Monitor";w.style.position="absolute";w.style.visibility="hidden";var z=document.body,v=z.firstChild;if(v){z.insertBefore(w,v)}else{z.appendChild(w)}w.style.width="2em";w.style.height="2em";w.style.top=(-1*(w.offsetHeight+o.RESIZE_MONITOR_BUFFER))+"px";w.style.left="0";w.style.borderWidth="0";w.style.visibility="visible";if(m.webkit){A=w.contentWindow.document;A.open();A.close()}}if(w&&w.contentWindow){o.textResizeEvent.subscribe(this.onDomResize,this,true);if(!o.textResizeInitialized){if(s){if(!g.on(w.contentWindow,"resize",r)){g.on(w,"resize",r)}}o.textResizeInitialized=true}this.resizeMonitor=w}}},_supportsCWResize:function(){var r=true;if(m.gecko&&m.gecko<=1.8){r=false}return r},onDomResize:function(r,s){var u=-1*(this.resizeMonitor.offsetHeight+o.RESIZE_MONITOR_BUFFER);this.resizeMonitor.style.top=u+"px";this.resizeMonitor.style.left="0"},setHeader:function(r){var s=this.header||(this.header=j());if(r.nodeName){s.innerHTML="";s.appendChild(r)}else{s.innerHTML=r}this.changeHeaderEvent.fire(r);this.changeContentEvent.fire()},appendToHeader:function(r){var s=this.header||(this.header=j());s.appendChild(r);this.changeHeaderEvent.fire(r);this.changeContentEvent.fire()},setBody:function(r){var s=this.body||(this.body=c());if(r.nodeName){s.innerHTML="";s.appendChild(r)}else{s.innerHTML=r}this.changeBodyEvent.fire(r);this.changeContentEvent.fire()},appendToBody:function(r){var s=this.body||(this.body=c());s.appendChild(r);this.changeBodyEvent.fire(r);this.changeContentEvent.fire()},setFooter:function(r){var s=this.footer||(this.footer=b());if(r.nodeName){s.innerHTML="";s.appendChild(r)}else{s.innerHTML=r}this.changeFooterEvent.fire(r);this.changeContentEvent.fire()},appendToFooter:function(r){var s=this.footer||(this.footer=b());s.appendChild(r);this.changeFooterEvent.fire(r);this.changeContentEvent.fire()},render:function(u,w){var s=this,r;function v(z){if(typeof z=="string"){z=document.getElementById(z)}if(z){s._addToParent(z,s.element);s.appendEvent.fire()}}this.beforeRenderEvent.fire();if(!w){w=this.element}if(u){v(u)}else{if(!p.inDocument(this.element)){return false}}if(this.header&&!p.inDocument(this.header)){r=w.firstChild;if(r){w.insertBefore(this.header,r)}else{w.appendChild(this.header)}}if(this.body&&!p.inDocument(this.body)){if(this.footer&&p.isAncestor(this.moduleElement,this.footer)){w.insertBefore(this.body,this.footer)}else{w.appendChild(this.body)}}if(this.footer&&!p.inDocument(this.footer)){w.appendChild(this.footer)}this.renderEvent.fire();return true},destroy:function(){var r;if(this.element){g.purgeElement(this.element,true);r=this.element.parentNode}if(r){r.removeChild(this.element)}this.element=null;this.header=null;this.body=null;this.footer=null;o.textResizeEvent.unsubscribe(this.onDomResize,this);this.cfg.destroy();this.cfg=null;this.destroyEvent.fire()},show:function(){this.cfg.setProperty("visible",true)},hide:function(){this.cfg.setProperty("visible",false)},configVisible:function(u,v,s){var r=v[0];if(r){this.beforeShowEvent.fire();p.setStyle(this.element,"display","block");this.showEvent.fire()}else{this.beforeHideEvent.fire();p.setStyle(this.element,"display","none");this.hideEvent.fire()}},configMonitorResize:function(s,u,r){var v=u[0];if(v){this.initResizeMonitor()}else{o.textResizeEvent.unsubscribe(this.onDomResize,this,true);this.resizeMonitor=null}},_addToParent:function(s,r){if(!this.cfg.getProperty("appendtodocumentbody")&&s===document.body&&s.firstChild){s.insertBefore(r,s.firstChild)}else{s.appendChild(r)}},toString:function(){return"Module "+this.id}};YAHOO.lang.augmentProto(o,YAHOO.util.EventProvider)}());(function(){YAHOO.widget.Overlay=function(p,q){YAHOO.widget.Overlay.superclass.constructor.call(this,p,q)};var j=YAHOO.lang,f=YAHOO.util.CustomEvent,m=YAHOO.widget.Module,e=YAHOO.util.Event,n=YAHOO.util.Dom,a=YAHOO.util.Config,h=YAHOO.env.ua,c=YAHOO.widget.Overlay,k="subscribe",o="unsubscribe",b="contained",i,d={BEFORE_MOVE:"beforeMove",MOVE:"move"},g={X:{key:"x",validator:j.isNumber,suppressEvent:true,supercedes:["iframe"]},Y:{key:"y",validator:j.isNumber,suppressEvent:true,supercedes:["iframe"]},XY:{key:"xy",suppressEvent:true,supercedes:["iframe"]},CONTEXT:{key:"context",suppressEvent:true,supercedes:["iframe"]},FIXED_CENTER:{key:"fixedcenter",value:false,supercedes:["iframe","visible"]},WIDTH:{key:"width",suppressEvent:true,supercedes:["context","fixedcenter","iframe"]},HEIGHT:{key:"height",suppressEvent:true,supercedes:["context","fixedcenter","iframe"]},AUTO_FILL_HEIGHT:{key:"autofillheight",supercedes:["height"],value:"body"},ZINDEX:{key:"zindex",value:null},CONSTRAIN_TO_VIEWPORT:{key:"constraintoviewport",value:false,validator:j.isBoolean,supercedes:["iframe","x","y","xy"]},IFRAME:{key:"iframe",value:(h.ie==6?true:false),validator:j.isBoolean,supercedes:["zindex"]},PREVENT_CONTEXT_OVERLAP:{key:"preventcontextoverlap",value:false,validator:j.isBoolean,supercedes:["constraintoviewport"]}};c.IFRAME_SRC="javascript:false;";c.IFRAME_OFFSET=3;c.VIEWPORT_OFFSET=10;c.TOP_LEFT="tl";c.TOP_RIGHT="tr";c.BOTTOM_LEFT="bl";c.BOTTOM_RIGHT="br";c.CSS_OVERLAY="yui-overlay";c.STD_MOD_RE=/^\s*?(body|footer|header)\s*?$/i;c.windowScrollEvent=new f("windowScroll");c.windowResizeEvent=new f("windowResize");c.windowScrollHandler=function(p){var q=e.getTarget(p);if(!q||q===window||q===window.document){if(h.ie){if(!window.scrollEnd){window.scrollEnd=-1}clearTimeout(window.scrollEnd);window.scrollEnd=setTimeout(function(){c.windowScrollEvent.fire()},1)}else{c.windowScrollEvent.fire()}}};c.windowResizeHandler=function(p){if(h.ie){if(!window.resizeEnd){window.resizeEnd=-1}clearTimeout(window.resizeEnd);window.resizeEnd=setTimeout(function(){c.windowResizeEvent.fire()},100)}else{c.windowResizeEvent.fire()}};c._initialized=null;if(c._initialized===null){e.on(window,"scroll",c.windowScrollHandler);e.on(window,"resize",c.windowResizeHandler);c._initialized=true}c._TRIGGER_MAP={windowScroll:c.windowScrollEvent,windowResize:c.windowResizeEvent,textResize:m.textResizeEvent};YAHOO.extend(c,m,{CONTEXT_TRIGGERS:[],init:function(p,q){c.superclass.init.call(this,p);this.beforeInitEvent.fire(c);n.addClass(this.element,c.CSS_OVERLAY);if(q){this.cfg.applyConfig(q,true)}if(this.platform=="mac"&&h.gecko){if(!a.alreadySubscribed(this.showEvent,this.showMacGeckoScrollbars,this)){this.showEvent.subscribe(this.showMacGeckoScrollbars,this,true)}if(!a.alreadySubscribed(this.hideEvent,this.hideMacGeckoScrollbars,this)){this.hideEvent.subscribe(this.hideMacGeckoScrollbars,this,true)}}this.initEvent.fire(c)},initEvents:function(){c.superclass.initEvents.call(this);var p=f.LIST;this.beforeMoveEvent=this.createEvent(d.BEFORE_MOVE);this.beforeMoveEvent.signature=p;this.moveEvent=this.createEvent(d.MOVE);this.moveEvent.signature=p},initDefaultConfig:function(){c.superclass.initDefaultConfig.call(this);var p=this.cfg;p.addProperty(g.X.key,{handler:this.configX,validator:g.X.validator,suppressEvent:g.X.suppressEvent,supercedes:g.X.supercedes});p.addProperty(g.Y.key,{handler:this.configY,validator:g.Y.validator,suppressEvent:g.Y.suppressEvent,supercedes:g.Y.supercedes});p.addProperty(g.XY.key,{handler:this.configXY,suppressEvent:g.XY.suppressEvent,supercedes:g.XY.supercedes});p.addProperty(g.CONTEXT.key,{handler:this.configContext,suppressEvent:g.CONTEXT.suppressEvent,supercedes:g.CONTEXT.supercedes});p.addProperty(g.FIXED_CENTER.key,{handler:this.configFixedCenter,value:g.FIXED_CENTER.value,validator:g.FIXED_CENTER.validator,supercedes:g.FIXED_CENTER.supercedes});p.addProperty(g.WIDTH.key,{handler:this.configWidth,suppressEvent:g.WIDTH.suppressEvent,supercedes:g.WIDTH.supercedes});p.addProperty(g.HEIGHT.key,{handler:this.configHeight,suppressEvent:g.HEIGHT.suppressEvent,supercedes:g.HEIGHT.supercedes});p.addProperty(g.AUTO_FILL_HEIGHT.key,{handler:this.configAutoFillHeight,value:g.AUTO_FILL_HEIGHT.value,validator:this._validateAutoFill,supercedes:g.AUTO_FILL_HEIGHT.supercedes});p.addProperty(g.ZINDEX.key,{handler:this.configzIndex,value:g.ZINDEX.value});p.addProperty(g.CONSTRAIN_TO_VIEWPORT.key,{handler:this.configConstrainToViewport,value:g.CONSTRAIN_TO_VIEWPORT.value,validator:g.CONSTRAIN_TO_VIEWPORT.validator,supercedes:g.CONSTRAIN_TO_VIEWPORT.supercedes});p.addProperty(g.IFRAME.key,{handler:this.configIframe,value:g.IFRAME.value,validator:g.IFRAME.validator,supercedes:g.IFRAME.supercedes});p.addProperty(g.PREVENT_CONTEXT_OVERLAP.key,{value:g.PREVENT_CONTEXT_OVERLAP.value,validator:g.PREVENT_CONTEXT_OVERLAP.validator,supercedes:g.PREVENT_CONTEXT_OVERLAP.supercedes})},moveTo:function(q,p){this.cfg.setProperty("xy",[q,p])},hideMacGeckoScrollbars:function(){n.replaceClass(this.element,"show-scrollbars","hide-scrollbars")},showMacGeckoScrollbars:function(){n.replaceClass(this.element,"hide-scrollbars","show-scrollbars")},_setDomVisibility:function(p){n.setStyle(this.element,"visibility",(p)?"visible":"hidden");if(p){n.removeClass(this.element,"yui-overlay-hidden")}else{n.addClass(this.element,"yui-overlay-hidden")}},configVisible:function(A,D,r){var B=D[0],z=n.getStyle(this.element,"visibility"),q=this.cfg.getProperty("effect"),u=[],v=(this.platform=="mac"&&h.gecko),E=a.alreadySubscribed,s,C,F,H,I,J,G,p,w;if(z=="inherit"){F=this.element.parentNode;while(F.nodeType!=9&&F.nodeType!=11){z=n.getStyle(F,"visibility");if(z!="inherit"){break}F=F.parentNode}if(z=="inherit"){z="visible"}}if(q){if(q instanceof Array){p=q.length;for(H=0;H<p;H++){s=q[H];u[u.length]=s.effect(this,s.duration)}}else{u[u.length]=q.effect(this,q.duration)}}if(B){if(v){this.showMacGeckoScrollbars()}if(q){if(B){if(z!="visible"||z===""){this.beforeShowEvent.fire();w=u.length;for(I=0;I<w;I++){C=u[I];if(I===0&&!E(C.animateInCompleteEvent,this.showEvent.fire,this.showEvent)){C.animateInCompleteEvent.subscribe(this.showEvent.fire,this.showEvent,true)}C.animateIn()}}}}else{if(z!="visible"||z===""){this.beforeShowEvent.fire();this._setDomVisibility(true);this.cfg.refireEvent("iframe");this.showEvent.fire()}else{this._setDomVisibility(true)}}}else{if(v){this.hideMacGeckoScrollbars()}if(q){if(z=="visible"){this.beforeHideEvent.fire();w=u.length;for(J=0;J<w;J++){G=u[J];if(J===0&&!E(G.animateOutCompleteEvent,this.hideEvent.fire,this.hideEvent)){G.animateOutCompleteEvent.subscribe(this.hideEvent.fire,this.hideEvent,true)}G.animateOut()}}else{if(z===""){this._setDomVisibility(false)}}}else{if(z=="visible"||z===""){this.beforeHideEvent.fire();this._setDomVisibility(false);this.hideEvent.fire()}else{this._setDomVisibility(false)}}}},doCenterOnDOMEvent:function(){var q=this.cfg,p=q.getProperty("fixedcenter");if(q.getProperty("visible")){if(p&&(p!==b||this.fitsInViewport())){this.center()}}},fitsInViewport:function(){var q=c.VIEWPORT_OFFSET,s=this.element,p=s.offsetWidth,r=s.offsetHeight,v=n.getViewportWidth(),u=n.getViewportHeight();return((p+q<v)&&(r+q<u))},configFixedCenter:function(r,u,q){var p=u[0],v=a.alreadySubscribed,s=c.windowResizeEvent,w=c.windowScrollEvent;if(p){this.center();if(!v(this.beforeShowEvent,this.center)){this.beforeShowEvent.subscribe(this.center)}if(!v(s,this.doCenterOnDOMEvent,this)){s.subscribe(this.doCenterOnDOMEvent,this,true)}if(!v(w,this.doCenterOnDOMEvent,this)){w.subscribe(this.doCenterOnDOMEvent,this,true)}}else{this.beforeShowEvent.unsubscribe(this.center);s.unsubscribe(this.doCenterOnDOMEvent,this);w.unsubscribe(this.doCenterOnDOMEvent,this)}},configHeight:function(q,s,p){var u=s[0],r=this.element;n.setStyle(r,"height",u);this.cfg.refireEvent("iframe")},configAutoFillHeight:function(s,u,z){var q=u[0],w=this.cfg,r="autofillheight",p="height",v=w.getProperty(r),A=this._autoFillOnHeightChange;w.unsubscribeFromConfigEvent(p,A);m.textResizeEvent.unsubscribe(A);this.changeContentEvent.unsubscribe(A);if(v&&q!==v&&this[v]){n.setStyle(this[v],p,"")}if(q){q=j.trim(q.toLowerCase());w.subscribeToConfigEvent(p,A,this[q],this);m.textResizeEvent.subscribe(A,this[q],this);this.changeContentEvent.subscribe(A,this[q],this);w.setProperty(r,q,true)}},configWidth:function(q,u,p){var r=u[0],s=this.element;n.setStyle(s,"width",r);this.cfg.refireEvent("iframe")},configzIndex:function(r,u,q){var p=u[0],s=this.element;if(!p){p=n.getStyle(s,"zIndex");if(!p||isNaN(p)){p=0}}if(this.iframe||this.cfg.getProperty("iframe")===true){if(p<=0){p=1}}n.setStyle(s,"zIndex",p);this.cfg.setProperty("zIndex",p,true);if(this.iframe){this.stackIframe()}},configXY:function(s,u,r){var p=u[0],v=p[0],q=p[1];this.cfg.setProperty("x",v);this.cfg.setProperty("y",q);this.beforeMoveEvent.fire([v,q]);v=this.cfg.getProperty("x");q=this.cfg.getProperty("y");this.cfg.refireEvent("iframe");this.moveEvent.fire([v,q])},configX:function(r,s,q){var u=s[0],p=this.cfg.getProperty("y");this.cfg.setProperty("x",u,true);this.cfg.setProperty("y",p,true);this.beforeMoveEvent.fire([u,p]);u=this.cfg.getProperty("x");p=this.cfg.getProperty("y");n.setX(this.element,u,true);this.cfg.setProperty("xy",[u,p],true);this.cfg.refireEvent("iframe");this.moveEvent.fire([u,p])},configY:function(r,s,q){var u=this.cfg.getProperty("x"),p=s[0];this.cfg.setProperty("x",u,true);this.cfg.setProperty("y",p,true);this.beforeMoveEvent.fire([u,p]);u=this.cfg.getProperty("x");p=this.cfg.getProperty("y");n.setY(this.element,p,true);this.cfg.setProperty("xy",[u,p],true);this.cfg.refireEvent("iframe");this.moveEvent.fire([u,p])},showIframe:function(){var p=this.iframe,q;if(p){q=this.element.parentNode;if(q!=p.parentNode){this._addToParent(q,p)}p.style.display="block"}},hideIframe:function(){if(this.iframe){this.iframe.style.display="none"}},syncIframe:function(){var u=this.iframe,r=this.element,p=c.IFRAME_OFFSET,s=(p*2),q;if(u){u.style.width=(r.offsetWidth+s+"px");u.style.height=(r.offsetHeight+s+"px");q=this.cfg.getProperty("xy");if(!j.isArray(q)||(isNaN(q[0])||isNaN(q[1]))){this.syncPosition();q=this.cfg.getProperty("xy")}n.setXY(u,[(q[0]-p),(q[1]-p)])}},stackIframe:function(){if(this.iframe){var p=n.getStyle(this.element,"zIndex");if(!YAHOO.lang.isUndefined(p)&&!isNaN(p)){n.setStyle(this.iframe,"zIndex",(p-1))}}},configIframe:function(r,s,q){var v=s[0];function p(){var z=this.iframe,w=this.element,B;if(!z){if(!i){i=document.createElement("iframe");if(this.isSecure){i.src=c.IFRAME_SRC}if(h.ie){i.style.filter="alpha(opacity=0)";i.frameBorder=0}else{i.style.opacity="0"}i.style.position="absolute";i.style.border="none";i.style.margin="0";i.style.padding="0";i.style.display="none";i.tabIndex=-1}z=i.cloneNode(false);B=w.parentNode;var A=B||document.body;this._addToParent(A,z);this.iframe=z}this.showIframe();this.syncIframe();this.stackIframe();if(!this._hasIframeEventListeners){this.showEvent.subscribe(this.showIframe);this.hideEvent.subscribe(this.hideIframe);this.changeContentEvent.subscribe(this.syncIframe);this._hasIframeEventListeners=true}}function u(){p.call(this);this.beforeShowEvent.unsubscribe(u);this._iframeDeferred=false}if(v){if(this.cfg.getProperty("visible")){p.call(this)}else{if(!this._iframeDeferred){this.beforeShowEvent.subscribe(u);this._iframeDeferred=true}}}else{this.hideIframe();if(this._hasIframeEventListeners){this.showEvent.unsubscribe(this.showIframe);this.hideEvent.unsubscribe(this.hideIframe);this.changeContentEvent.unsubscribe(this.syncIframe);this._hasIframeEventListeners=false}}},_primeXYFromDOM:function(){if(YAHOO.lang.isUndefined(this.cfg.getProperty("xy"))){this.syncPosition();this.cfg.refireEvent("xy");this.beforeShowEvent.unsubscribe(this._primeXYFromDOM)}},configConstrainToViewport:function(r,s,q){var p=s[0];if(p){if(!a.alreadySubscribed(this.beforeMoveEvent,this.enforceConstraints,this)){this.beforeMoveEvent.subscribe(this.enforceConstraints,this,true)}if(!a.alreadySubscribed(this.beforeShowEvent,this._primeXYFromDOM)){this.beforeShowEvent.subscribe(this._primeXYFromDOM)}}else{this.beforeShowEvent.unsubscribe(this._primeXYFromDOM);this.beforeMoveEvent.unsubscribe(this.enforceConstraints,this)}},configContext:function(s,u,z){var p=u[0],w,A,r,v,q=this.CONTEXT_TRIGGERS;if(p){w=p[0];A=p[1];r=p[2];v=p[3];if(q&&q.length>0){v=(v||[]).concat(q)}if(w){if(typeof w=="string"){this.cfg.setProperty("context",[document.getElementById(w),A,r,v],true)}if(A&&r){this.align(A,r)}if(this._contextTriggers){this._processTriggers(this._contextTriggers,o,this._alignOnTrigger)}if(v){this._processTriggers(v,k,this._alignOnTrigger);this._contextTriggers=v}}}},_alignOnTrigger:function(p,q){this.align()},_findTriggerCE:function(q){var p=null;if(q instanceof f){p=q}else{if(c._TRIGGER_MAP[q]){p=c._TRIGGER_MAP[q]}}return p},_processTriggers:function(r,p,s){var u,q;for(var v=0,w=r.length;v<w;++v){u=r[v];q=this._findTriggerCE(u);if(q){q[p](s,this,true)}else{this[p](u,s)}}},align:function(w,z){var q=this.cfg.getProperty("context"),r=this,s,u,p;function v(A,B){switch(w){case c.TOP_LEFT:r.moveTo(B,A);break;case c.TOP_RIGHT:r.moveTo((B-u.offsetWidth),A);break;case c.BOTTOM_LEFT:r.moveTo(B,(A-u.offsetHeight));break;case c.BOTTOM_RIGHT:r.moveTo((B-u.offsetWidth),(A-u.offsetHeight));break}}if(q){s=q[0];u=this.element;r=this;if(!w){w=q[1]}if(!z){z=q[2]}if(u&&s){p=n.getRegion(s);switch(z){case c.TOP_LEFT:v(p.top,p.left);break;case c.TOP_RIGHT:v(p.top,p.right);break;case c.BOTTOM_LEFT:v(p.bottom,p.left);break;case c.BOTTOM_RIGHT:v(p.bottom,p.right);break}}}},enforceConstraints:function(s,u,r){var p=u[0];var q=this.getConstrainedXY(p[0],p[1]);this.cfg.setProperty("x",q[0],true);this.cfg.setProperty("y",q[1],true);this.cfg.setProperty("xy",q,true)},getConstrainedX:function(u){var z=this,D=z.element,J=D.offsetWidth,L=c.VIEWPORT_OFFSET,G=n.getViewportWidth(),K=n.getDocumentScrollLeft(),q=(J+L<G),M=this.cfg.getProperty("context"),B,r,E,w=false,I,s,H=K+L,C=K+G-J-L,F=u,v={tltr:true,blbr:true,brbl:true,trtl:true};var p=function(){var O;if((z.cfg.getProperty("x")-K)>r){O=(r-J)}else{O=(r+E)}z.cfg.setProperty("x",(O+K),true);return O};var A=function(){if((z.cfg.getProperty("x")-K)>r){return(s-L)}else{return(I-L)}};var N=function(){var P=A(),O;if(J>P){if(w){p()}else{p();w=true;O=N()}}return O};if(u<H||u>C){if(q){if(this.cfg.getProperty("preventcontextoverlap")&&M&&v[(M[1]+M[2])]){B=M[0];r=n.getX(B)-K;E=B.offsetWidth;I=r;s=(G-(r+E));N();F=this.cfg.getProperty("x")}else{if(u<H){F=H}else{if(u>C){F=C}}}}else{F=L+K}}return F},getConstrainedY:function(p){var s=this,C=s.element,F=C.offsetHeight,G=c.VIEWPORT_OFFSET,K=n.getViewportHeight(),H=n.getDocumentScrollTop(),J=(F+G<K),I=this.cfg.getProperty("context"),v,N,M,r=false,u,B,L=H+G,z=H+K-F-G,D=p,q={trbr:true,tlbl:true,bltl:true,brtr:true};var w=function(){var O;if((s.cfg.getProperty("y")-H)>N){O=(N-F)}else{O=(N+M)}s.cfg.setProperty("y",(O+H),true);return O};var A=function(){if((s.cfg.getProperty("y")-H)>N){return(B-G)}else{return(u-G)}};var E=function(){var O=A(),P;if(F>O){if(r){w()}else{w();r=true;P=E()}}return P};if(p<L||p>z){if(J){if(this.cfg.getProperty("preventcontextoverlap")&&I&&q[(I[1]+I[2])]){v=I[0];M=v.offsetHeight;N=(n.getY(v)-H);u=N;B=(K-(N+M));E();D=s.cfg.getProperty("y")}else{if(p<L){D=L}else{if(p>z){D=z}}}}else{D=G+H}}return D},getConstrainedXY:function(q,p){return[this.getConstrainedX(q),this.getConstrainedY(p)]},center:function(){var s=c.VIEWPORT_OFFSET,r=this.element.offsetWidth,u=this.element.offsetHeight,v=n.getViewportWidth(),q=n.getViewportHeight(),w,p;if(r<v){w=(v/2)-(r/2)+n.getDocumentScrollLeft()}else{w=s+n.getDocumentScrollLeft()}if(u<q){p=(q/2)-(u/2)+n.getDocumentScrollTop()}else{p=s+n.getDocumentScrollTop()}this.cfg.setProperty("xy",[parseInt(w,10),parseInt(p,10)]);this.cfg.refireEvent("iframe");if(h.webkit){this.forceContainerRedraw()}},syncPosition:function(){var p=n.getXY(this.element);this.cfg.setProperty("x",p[0],true);this.cfg.setProperty("y",p[1],true);this.cfg.setProperty("xy",p,true)},onDomResize:function(p,q){var r=this;c.superclass.onDomResize.call(this,p,q);setTimeout(function(){r.syncPosition();r.cfg.refireEvent("iframe");r.cfg.refireEvent("context")},0)},_getComputedHeight:(function(){if(document.defaultView&&document.defaultView.getComputedStyle){return function(q){var r=null;if(q.ownerDocument&&q.ownerDocument.defaultView){var p=q.ownerDocument.defaultView.getComputedStyle(q,"");if(p){r=parseInt(p.height,10)}}return(j.isNumber(r))?r:null}}else{return function(p){var q=null;if(p.style.pixelHeight){q=p.style.pixelHeight}return(j.isNumber(q))?q:null}}})(),_validateAutoFillHeight:function(p){return(!p)||(j.isString(p)&&c.STD_MOD_RE.test(p))},_autoFillOnHeightChange:function(p,r,q){var s=this.cfg.getProperty("height");if((s&&s!=="auto")||(s===0)){this.fillHeight(q)}},_getPreciseHeight:function(q){var r=q.offsetHeight;if(q.getBoundingClientRect){var p=q.getBoundingClientRect();r=p.bottom-p.top}return r},fillHeight:function(w){if(w){var A=this.innerElement||this.element,B=[this.header,this.body,this.footer],r,q=0,p=0,u=0,z=false;for(var s=0,v=B.length;s<v;s++){r=B[s];if(r){if(w!==r){p+=this._getPreciseHeight(r)}else{z=true}}}if(z){if(h.ie||h.opera){n.setStyle(w,"height",0+"px")}q=this._getComputedHeight(A);if(q===null){n.addClass(A,"yui-override-padding");q=A.clientHeight;n.removeClass(A,"yui-override-padding")}u=Math.max(q-p,0);n.setStyle(w,"height",u+"px");if(w.offsetHeight!=u){u=Math.max(u-(w.offsetHeight-u),0)}n.setStyle(w,"height",u+"px")}}},bringToTop:function(){var s=[],u=this.element;function p(D,E){var B=n.getStyle(D,"zIndex"),C=n.getStyle(E,"zIndex"),F=(!B||isNaN(B))?0:parseInt(B,10),A=(!C||isNaN(C))?0:parseInt(C,10);if(F>A){return -1}else{if(F<A){return 1}else{return 0}}}function v(B){var C=n.hasClass(B,c.CSS_OVERLAY),A=YAHOO.widget.Panel;if(C&&!n.isAncestor(u,B)){if(A&&n.hasClass(B,A.CSS_PANEL)){s[s.length]=B.parentNode}else{s[s.length]=B}}}n.getElementsBy(v,"DIV",document.body);s.sort(p);var z=s[0],q;if(z){q=n.getStyle(z,"zIndex");if(!isNaN(q)){var r=false;if(z!=u){r=true}else{if(s.length>1){var w=n.getStyle(s[1],"zIndex");if(!isNaN(w)&&(q==w)){r=true}}}if(r){this.cfg.setProperty("zindex",(parseInt(q,10)+2))}}}},destroy:function(){if(this.iframe){this.iframe.parentNode.removeChild(this.iframe)}this.iframe=null;c.windowResizeEvent.unsubscribe(this.doCenterOnDOMEvent,this);c.windowScrollEvent.unsubscribe(this.doCenterOnDOMEvent,this);m.textResizeEvent.unsubscribe(this._autoFillOnHeightChange);c.superclass.destroy.call(this)},forceContainerRedraw:function(){var p=this;n.addClass(p.element,"yui-force-redraw");setTimeout(function(){n.removeClass(p.element,"yui-force-redraw")},0)},toString:function(){return"Overlay "+this.id}})}());(function(){YAHOO.widget.OverlayManager=function(g){this.init(g)};var d=YAHOO.widget.Overlay,e=YAHOO.util.Event,c=YAHOO.util.Dom,f=YAHOO.util.Config,b=YAHOO.util.CustomEvent,a=YAHOO.widget.OverlayManager;a.CSS_FOCUSED="focused";a.prototype={constructor:a,overlays:null,initDefaultConfig:function(){this.cfg.addProperty("overlays",{suppressEvent:true});this.cfg.addProperty("focusevent",{value:"mousedown"})},init:function(g){this.cfg=new f(this);this.initDefaultConfig();if(g){this.cfg.applyConfig(g,true)}this.cfg.fireQueue();var h=null;this.getActive=function(){return h};this.focus=function(k){var j=this.find(k);if(j){j.focus()}};this.remove=function(k){var n=this.find(k),m;if(n){if(h==n){h=null}var j=(n.element===null&&n.cfg===null)?true:false;if(!j){m=c.getStyle(n.element,"zIndex");n.cfg.setProperty("zIndex",-1000,true)}this.overlays.sort(this.compareZIndexDesc);this.overlays=this.overlays.slice(0,(this.overlays.length-1));n.hideEvent.unsubscribe(n.blur);n.destroyEvent.unsubscribe(this._onOverlayDestroy,n);n.focusEvent.unsubscribe(this._onOverlayFocusHandler,n);n.blurEvent.unsubscribe(this._onOverlayBlurHandler,n);if(!j){e.removeListener(n.element,this.cfg.getProperty("focusevent"),this._onOverlayElementFocus);n.cfg.setProperty("zIndex",m,true);n.cfg.setProperty("manager",null)}if(n.focusEvent._managed){n.focusEvent=null}if(n.blurEvent._managed){n.blurEvent=null}if(n.focus._managed){n.focus=null}if(n.blur._managed){n.blur=null}}};this.blurAll=function(){var j=this.overlays.length,k;if(j>0){k=j-1;do{this.overlays[k].blur()}while(k--)}};this._manageBlur=function(k){var j=false;if(h==k){c.removeClass(h.element,a.CSS_FOCUSED);h=null;j=true}return j};this._manageFocus=function(k){var j=false;if(h!=k){if(h){h.blur()}h=k;this.bringToTop(h);c.addClass(h.element,a.CSS_FOCUSED);j=true}return j};var i=this.cfg.getProperty("overlays");if(!this.overlays){this.overlays=[]}if(i){this.register(i);this.overlays.sort(this.compareZIndexDesc)}},_onOverlayElementFocus:function(g){var i=e.getTarget(g),h=this.close;if(h&&(i==h||c.isAncestor(h,i))){this.blur()}else{this.focus()}},_onOverlayDestroy:function(h,i,g){this.remove(g)},_onOverlayFocusHandler:function(h,i,g){this._manageFocus(g)},_onOverlayBlurHandler:function(h,i,g){this._manageBlur(g)},_bindFocus:function(h){var g=this;if(!h.focusEvent){h.focusEvent=h.createEvent("focus");h.focusEvent.signature=b.LIST;h.focusEvent._managed=true}else{h.focusEvent.subscribe(g._onOverlayFocusHandler,h,g)}if(!h.focus){e.on(h.element,g.cfg.getProperty("focusevent"),g._onOverlayElementFocus,null,h);h.focus=function(){if(g._manageFocus(this)){if(this.cfg.getProperty("visible")&&this.focusFirst){this.focusFirst()}this.focusEvent.fire()}};h.focus._managed=true}},_bindBlur:function(h){var g=this;if(!h.blurEvent){h.blurEvent=h.createEvent("blur");h.blurEvent.signature=b.LIST;h.focusEvent._managed=true}else{h.blurEvent.subscribe(g._onOverlayBlurHandler,h,g)}if(!h.blur){h.blur=function(){if(g._manageBlur(this)){this.blurEvent.fire()}};h.blur._managed=true}h.hideEvent.subscribe(h.blur)},_bindDestroy:function(h){var g=this;h.destroyEvent.subscribe(g._onOverlayDestroy,h,g)},_syncZIndex:function(h){var g=c.getStyle(h.element,"zIndex");if(!isNaN(g)){h.cfg.setProperty("zIndex",parseInt(g,10))}else{h.cfg.setProperty("zIndex",0)}},register:function(j){var g=false,i,h;if(j instanceof d){j.cfg.addProperty("manager",{value:this});this._bindFocus(j);this._bindBlur(j);this._bindDestroy(j);this._syncZIndex(j);this.overlays.push(j);this.bringToTop(j);g=true}else{if(j instanceof Array){for(i=0,h=j.length;i<h;i++){g=this.register(j[i])||g}}}return g},bringToTop:function(n){var j=this.find(n),g,m,i;if(j){i=this.overlays;i.sort(this.compareZIndexDesc);m=i[0];if(m){g=c.getStyle(m.element,"zIndex");if(!isNaN(g)){var h=false;if(m!==j){h=true}else{if(i.length>1){var k=c.getStyle(i[1].element,"zIndex");if(!isNaN(k)&&(g==k)){h=true}}}if(h){j.cfg.setProperty("zindex",(parseInt(g,10)+2))}}i.sort(this.compareZIndexDesc)}}},find:function(m){var h=m instanceof d,j=this.overlays,n=j.length,i=null,g,k;if(h||typeof m=="string"){for(k=n-1;k>=0;k--){g=j[k];if((h&&(g===m))||(g.id==m)){i=g;break}}}return i},compareZIndexDesc:function(g,h){var i=(g.cfg)?g.cfg.getProperty("zIndex"):null,j=(h.cfg)?h.cfg.getProperty("zIndex"):null;if(i===null&&j===null){return 0}else{if(i===null){return 1}else{if(j===null){return -1}else{if(i>j){return -1}else{if(i<j){return 1}else{return 0}}}}}},showAll:function(){var h=this.overlays,g=h.length,i;for(i=g-1;i>=0;i--){h[i].show()}},hideAll:function(){var h=this.overlays,g=h.length,i;for(i=g-1;i>=0;i--){h[i].hide()}},toString:function(){return"OverlayManager"}}}());(function(){YAHOO.widget.Tooltip=function(p,q){YAHOO.widget.Tooltip.superclass.constructor.call(this,p,q)};var o=YAHOO.lang,e=YAHOO.util.Event,f=YAHOO.util.CustomEvent,b=YAHOO.util.Dom,i=YAHOO.widget.Tooltip,k=YAHOO.env.ua,m=(k.ie&&(k.ie<=6||document.compatMode=="BackCompat")),n,j={PREVENT_OVERLAP:{key:"preventoverlap",value:true,validator:o.isBoolean,supercedes:["x","y","xy"]},SHOW_DELAY:{key:"showdelay",value:200,validator:o.isNumber},AUTO_DISMISS_DELAY:{key:"autodismissdelay",value:5000,validator:o.isNumber},HIDE_DELAY:{key:"hidedelay",value:250,validator:o.isNumber},TEXT:{key:"text",suppressEvent:true},CONTAINER:{key:"container"},DISABLED:{key:"disabled",value:false,suppressEvent:true}},d={CONTEXT_MOUSE_OVER:"contextMouseOver",CONTEXT_MOUSE_OUT:"contextMouseOut",CONTEXT_TRIGGER:"contextTrigger"};i.CSS_TOOLTIP="yui-tt";function h(q,s){var r=this.cfg,p=r.getProperty("width");if(p==s){r.setProperty("width",q)}}function a(v,w){if("_originalWidth" in this){h.call(this,this._originalWidth,this._forcedWidth)}var u=document.body,p=this.cfg,q=p.getProperty("width"),s,r;if((!q||q=="auto")&&(p.getProperty("container")!=u||p.getProperty("x")>=b.getViewportWidth()||p.getProperty("y")>=b.getViewportHeight())){r=this.element.cloneNode(true);r.style.visibility="hidden";r.style.top="0px";r.style.left="0px";u.appendChild(r);s=(r.offsetWidth+"px");u.removeChild(r);r=null;p.setProperty("width",s);p.refireEvent("xy");this._originalWidth=q||"";this._forcedWidth=s}}function c(q,r,p){this.render(p)}function g(){e.onDOMReady(c,this.cfg.getProperty("container"),this)}YAHOO.extend(i,YAHOO.widget.Overlay,{init:function(p,q){i.superclass.init.call(this,p);this.beforeInitEvent.fire(i);b.addClass(this.element,i.CSS_TOOLTIP);if(q){this.cfg.applyConfig(q,true)}this.cfg.queueProperty("visible",false);this.cfg.queueProperty("constraintoviewport",true);this.setBody("");this.subscribe("changeContent",a);this.subscribe("init",g);this.subscribe("render",this.onRender);this.initEvent.fire(i)},initEvents:function(){i.superclass.initEvents.call(this);var p=f.LIST;this.contextMouseOverEvent=this.createEvent(d.CONTEXT_MOUSE_OVER);this.contextMouseOverEvent.signature=p;this.contextMouseOutEvent=this.createEvent(d.CONTEXT_MOUSE_OUT);this.contextMouseOutEvent.signature=p;this.contextTriggerEvent=this.createEvent(d.CONTEXT_TRIGGER);this.contextTriggerEvent.signature=p},initDefaultConfig:function(){i.superclass.initDefaultConfig.call(this);this.cfg.addProperty(j.PREVENT_OVERLAP.key,{value:j.PREVENT_OVERLAP.value,validator:j.PREVENT_OVERLAP.validator,supercedes:j.PREVENT_OVERLAP.supercedes});this.cfg.addProperty(j.SHOW_DELAY.key,{handler:this.configShowDelay,value:200,validator:j.SHOW_DELAY.validator});this.cfg.addProperty(j.AUTO_DISMISS_DELAY.key,{handler:this.configAutoDismissDelay,value:j.AUTO_DISMISS_DELAY.value,validator:j.AUTO_DISMISS_DELAY.validator});this.cfg.addProperty(j.HIDE_DELAY.key,{handler:this.configHideDelay,value:j.HIDE_DELAY.value,validator:j.HIDE_DELAY.validator});this.cfg.addProperty(j.TEXT.key,{handler:this.configText,suppressEvent:j.TEXT.suppressEvent});this.cfg.addProperty(j.CONTAINER.key,{handler:this.configContainer,value:document.body});this.cfg.addProperty(j.DISABLED.key,{handler:this.configContainer,value:j.DISABLED.value,supressEvent:j.DISABLED.suppressEvent})},configText:function(r,s,q){var p=s[0];if(p){this.setBody(p)}},configContainer:function(q,r,p){var s=r[0];if(typeof s=="string"){this.cfg.setProperty("container",document.getElementById(s),true)}},_removeEventListeners:function(){var p=this._context,s,q,r;if(p){s=p.length;if(s>0){r=s-1;do{q=p[r];e.removeListener(q,"mouseover",this.onContextMouseOver);e.removeListener(q,"mousemove",this.onContextMouseMove);e.removeListener(q,"mouseout",this.onContextMouseOut)}while(r--)}}},configContext:function(r,w,q){var s=w[0],p,z,u,v;if(s){if(!(s instanceof Array)){if(typeof s=="string"){this.cfg.setProperty("context",[document.getElementById(s)],true)}else{this.cfg.setProperty("context",[s],true)}s=this.cfg.getProperty("context")}this._removeEventListeners();this._context=s;p=this._context;if(p){z=p.length;if(z>0){v=z-1;do{u=p[v];e.on(u,"mouseover",this.onContextMouseOver,this);e.on(u,"mousemove",this.onContextMouseMove,this);e.on(u,"mouseout",this.onContextMouseOut,this)}while(v--)}}}},onContextMouseMove:function(p,q){q.pageX=e.getPageX(p);q.pageY=e.getPageY(p)},onContextMouseOver:function(p,q){var r=this;if(r.title){q._tempTitle=r.title;r.title=""}if(q.fireEvent("contextMouseOver",r,p)!==false&&!q.cfg.getProperty("disabled")){if(q.hideProcId){clearTimeout(q.hideProcId);q.hideProcId=null}e.on(r,"mousemove",q.onContextMouseMove,q);q.showProcId=q.doShow(p,r)}},onContextMouseOut:function(p,q){var r=this;if(q._tempTitle){r.title=q._tempTitle;q._tempTitle=null}if(q.showProcId){clearTimeout(q.showProcId);q.showProcId=null}if(q.hideProcId){clearTimeout(q.hideProcId);q.hideProcId=null}q.fireEvent("contextMouseOut",r,p);q.hideProcId=setTimeout(function(){q.hide()},q.cfg.getProperty("hidedelay"))},doShow:function(q,s){var p=25,r=this;if(k.opera&&s.tagName&&s.tagName.toUpperCase()=="A"){p+=12}return setTimeout(function(){var u=r.cfg.getProperty("text");if(r._tempTitle&&(u===""||YAHOO.lang.isUndefined(u)||YAHOO.lang.isNull(u))){r.setBody(r._tempTitle)}else{r.cfg.refireEvent("text")}r.moveTo(r.pageX,r.pageY+p);if(r.cfg.getProperty("preventoverlap")){r.preventOverlap(r.pageX,r.pageY)}e.removeListener(s,"mousemove",r.onContextMouseMove);r.contextTriggerEvent.fire(s);r.show();r.hideProcId=r.doHide()},this.cfg.getProperty("showdelay"))},doHide:function(){var p=this;return setTimeout(function(){p.hide()},this.cfg.getProperty("autodismissdelay"))},preventOverlap:function(p,q){var u=this.element.offsetHeight,r=new YAHOO.util.Point(p,q),s=b.getRegion(this.element);s.top-=5;s.left-=5;s.right+=5;s.bottom+=5;if(s.contains(r)){this.cfg.setProperty("y",(q-u-5))}},onRender:function(r,s){function q(){var z=this.element,A=this.underlay;if(A){A.style.width=(z.offsetWidth+6)+"px";A.style.height=(z.offsetHeight+1)+"px"}}function v(){b.addClass(this.underlay,"yui-tt-shadow-visible");if(k.ie){this.forceUnderlayRedraw()}}function w(){b.removeClass(this.underlay,"yui-tt-shadow-visible")}function p(){var D=this.underlay,z,A,B,C;if(!D){z=this.element;A=YAHOO.widget.Module;B=k.ie;C=this;if(!n){n=document.createElement("div");n.className="yui-tt-shadow"}D=n.cloneNode(false);z.appendChild(D);this.underlay=D;this._shadow=this.underlay;v.call(this);this.subscribe("beforeShow",v);this.subscribe("hide",w);if(m){window.setTimeout(function(){q.call(C)},0);this.cfg.subscribeToConfigEvent("width",q);this.cfg.subscribeToConfigEvent("height",q);this.subscribe("changeContent",q);A.textResizeEvent.subscribe(q,this,true);this.subscribe("destroy",function(){A.textResizeEvent.unsubscribe(q,this)})}}}function u(){p.call(this);this.unsubscribe("beforeShow",u)}if(this.cfg.getProperty("visible")){p.call(this)}else{this.subscribe("beforeShow",u)}},forceUnderlayRedraw:function(){var p=this;b.addClass(p.underlay,"yui-force-redraw");setTimeout(function(){b.removeClass(p.underlay,"yui-force-redraw")},0)},destroy:function(){this._removeEventListeners();i.superclass.destroy.call(this)},toString:function(){return"Tooltip "+this.id}})}());(function(){YAHOO.widget.Panel=function(w,z){YAHOO.widget.Panel.superclass.constructor.call(this,w,z)};var b=null;var q=YAHOO.lang,p=YAHOO.util,v=p.Dom,a=p.Event,h=p.CustomEvent,j=YAHOO.util.KeyListener,m=p.Config,n=YAHOO.widget.Overlay,f=YAHOO.widget.Panel,i=YAHOO.env.ua,e=(i.ie&&(i.ie<=6||document.compatMode=="BackCompat")),o,d,s,r={SHOW_MASK:"showMask",HIDE_MASK:"hideMask",DRAG:"drag"},g={CLOSE:{key:"close",value:true,validator:q.isBoolean,supercedes:["visible"]},DRAGGABLE:{key:"draggable",value:(p.DD?true:false),validator:q.isBoolean,supercedes:["visible"]},DRAG_ONLY:{key:"dragonly",value:false,validator:q.isBoolean,supercedes:["draggable"]},UNDERLAY:{key:"underlay",value:"shadow",supercedes:["visible"]},MODAL:{key:"modal",value:false,validator:q.isBoolean,supercedes:["visible","zindex"]},KEY_LISTENERS:{key:"keylisteners",suppressEvent:true,supercedes:["visible"]},STRINGS:{key:"strings",supercedes:["close"],validator:q.isObject,value:{close:"Close"}}};f.CSS_PANEL="yui-panel";f.CSS_PANEL_CONTAINER="yui-panel-container";f.FOCUSABLE=["a","button","select","textarea","input","iframe"];function k(w,z){if(!this.header&&this.cfg.getProperty("draggable")){this.setHeader("&#160;")}}function c(A,B,w){var C=w[0],E=w[1],D=this.cfg,z=D.getProperty("width");if(z==E){D.setProperty("width",C)}this.unsubscribe("hide",c,w)}function u(z,A){var B,C,w;if(e){B=this.cfg;C=B.getProperty("width");if(!C||C=="auto"){w=(this.element.offsetWidth+"px");B.setProperty("width",w);this.subscribe("hide",c,[(C||""),w])}}}YAHOO.extend(f,n,{init:function(w,z){f.superclass.init.call(this,w);this.beforeInitEvent.fire(f);v.addClass(this.element,f.CSS_PANEL);this.buildWrapper();if(z){this.cfg.applyConfig(z,true)}this.subscribe("showMask",this._addFocusHandlers);this.subscribe("hideMask",this._removeFocusHandlers);this.subscribe("beforeRender",k);this.subscribe("render",function(){this.setFirstLastFocusable();this.subscribe("changeContent",this.setFirstLastFocusable)});this.subscribe("show",this.focusFirst);this.initEvent.fire(f)},_onElementFocus:function(B){if(b===this){var C=a.getTarget(B),D=document.documentElement,z=(C!==D&&C!==window);if(z&&C!==this.element&&C!==this.mask&&!v.isAncestor(this.element,C)){try{if(this.firstElement){this.firstElement.focus()}else{if(this._modalFocus){this._modalFocus.focus()}else{this.innerElement.focus()}}}catch(w){try{if(z&&C!==document.body){C.blur()}}catch(A){}}}}},_addFocusHandlers:function(w,z){if(!this.firstElement){if(i.webkit||i.opera){if(!this._modalFocus){this._createHiddenFocusElement()}}else{this.innerElement.tabIndex=0}}this.setTabLoop(this.firstElement,this.lastElement);a.onFocus(document.documentElement,this._onElementFocus,this,true);b=this},_createHiddenFocusElement:function(){var w=document.createElement("button");w.style.height="1px";w.style.width="1px";w.style.position="absolute";w.style.left="-10000em";w.style.opacity=0;w.tabIndex=-1;this.innerElement.appendChild(w);this._modalFocus=w},_removeFocusHandlers:function(w,z){a.removeFocusListener(document.documentElement,this._onElementFocus,this);if(b==this){b=null}},focusFirst:function(w,A,B){var z=this.firstElement;if(A&&A[1]){a.stopEvent(A[1])}if(z){try{z.focus()}catch(C){}}},focusLast:function(w,A,B){var z=this.lastElement;if(A&&A[1]){a.stopEvent(A[1])}if(z){try{z.focus()}catch(C){}}},setTabLoop:function(D,B){var z=this.preventBackTab,w=this.preventTabOut,A=this.showEvent,C=this.hideEvent;if(z){z.disable();A.unsubscribe(z.enable,z);C.unsubscribe(z.disable,z);z=this.preventBackTab=null}if(w){w.disable();A.unsubscribe(w.enable,w);C.unsubscribe(w.disable,w);w=this.preventTabOut=null}if(D){this.preventBackTab=new j(D,{shift:true,keys:9},{fn:this.focusLast,scope:this,correctScope:true});z=this.preventBackTab;A.subscribe(z.enable,z,true);C.subscribe(z.disable,z,true)}if(B){this.preventTabOut=new j(B,{shift:false,keys:9},{fn:this.focusFirst,scope:this,correctScope:true});w=this.preventTabOut;A.subscribe(w.enable,w,true);C.subscribe(w.disable,w,true)}},getFocusableElements:function(A){A=A||this.innerElement;var B={};for(var w=0;w<f.FOCUSABLE.length;w++){B[f.FOCUSABLE[w]]=true}function z(C){if(C.focus&&C.type!=="hidden"&&!C.disabled&&B[C.tagName.toLowerCase()]){return true}return false}return v.getElementsBy(z,null,A)},setFirstLastFocusable:function(){this.firstElement=null;this.lastElement=null;var w=this.getFocusableElements();this.focusableElements=w;if(w.length>0){this.firstElement=w[0];this.lastElement=w[w.length-1]}if(this.cfg.getProperty("modal")){this.setTabLoop(this.firstElement,this.lastElement)}},initEvents:function(){f.superclass.initEvents.call(this);var w=h.LIST;this.showMaskEvent=this.createEvent(r.SHOW_MASK);this.showMaskEvent.signature=w;this.hideMaskEvent=this.createEvent(r.HIDE_MASK);this.hideMaskEvent.signature=w;this.dragEvent=this.createEvent(r.DRAG);this.dragEvent.signature=w},initDefaultConfig:function(){f.superclass.initDefaultConfig.call(this);this.cfg.addProperty(g.CLOSE.key,{handler:this.configClose,value:g.CLOSE.value,validator:g.CLOSE.validator,supercedes:g.CLOSE.supercedes});this.cfg.addProperty(g.DRAGGABLE.key,{handler:this.configDraggable,value:(p.DD)?true:false,validator:g.DRAGGABLE.validator,supercedes:g.DRAGGABLE.supercedes});this.cfg.addProperty(g.DRAG_ONLY.key,{value:g.DRAG_ONLY.value,validator:g.DRAG_ONLY.validator,supercedes:g.DRAG_ONLY.supercedes});this.cfg.addProperty(g.UNDERLAY.key,{handler:this.configUnderlay,value:g.UNDERLAY.value,supercedes:g.UNDERLAY.supercedes});this.cfg.addProperty(g.MODAL.key,{handler:this.configModal,value:g.MODAL.value,validator:g.MODAL.validator,supercedes:g.MODAL.supercedes});this.cfg.addProperty(g.KEY_LISTENERS.key,{handler:this.configKeyListeners,suppressEvent:g.KEY_LISTENERS.suppressEvent,supercedes:g.KEY_LISTENERS.supercedes});this.cfg.addProperty(g.STRINGS.key,{value:g.STRINGS.value,handler:this.configStrings,validator:g.STRINGS.validator,supercedes:g.STRINGS.supercedes})},configClose:function(D,z,C){var B=z[0],w=this.close,A=this.cfg.getProperty("strings");if(B){if(!w){if(!s){s=document.createElement("a");s.className="container-close";s.href="#"}w=s.cloneNode(true);this.innerElement.appendChild(w);w.innerHTML=(A&&A.close)?A.close:"&#160;";a.on(w,"click",this._doClose,this,true);this.close=w}else{w.style.display="block"}}else{if(w){w.style.display="none"}}},_doClose:function(w){a.preventDefault(w);this.hide()},configDraggable:function(z,A,w){var B=A[0];if(B){if(!p.DD){this.cfg.setProperty("draggable",false);return}if(this.header){v.setStyle(this.header,"cursor","move");this.registerDragDrop()}this.subscribe("beforeShow",u)}else{if(this.dd){this.dd.unreg()}if(this.header){v.setStyle(this.header,"cursor","auto")}this.unsubscribe("beforeShow",u)}},configUnderlay:function(F,G,w){var H=(this.platform=="mac"&&i.gecko),E=G[0].toLowerCase(),C=this.underlay,B=this.element;function A(){var J=false;if(!C){if(!d){d=document.createElement("div");d.className="underlay"}C=d.cloneNode(false);this.element.appendChild(C);this.underlay=C;if(e){this.sizeUnderlay();this.cfg.subscribeToConfigEvent("width",this.sizeUnderlay);this.cfg.subscribeToConfigEvent("height",this.sizeUnderlay);this.changeContentEvent.subscribe(this.sizeUnderlay);YAHOO.widget.Module.textResizeEvent.subscribe(this.sizeUnderlay,this,true)}if(i.webkit&&i.webkit<420){this.changeContentEvent.subscribe(this.forceUnderlayRedraw)}J=true}}function I(){var J=A.call(this);if(!J&&e){this.sizeUnderlay()}this._underlayDeferred=false;this.beforeShowEvent.unsubscribe(I)}function z(){if(this._underlayDeferred){this.beforeShowEvent.unsubscribe(I);this._underlayDeferred=false}if(C){this.cfg.unsubscribeFromConfigEvent("width",this.sizeUnderlay);this.cfg.unsubscribeFromConfigEvent("height",this.sizeUnderlay);this.changeContentEvent.unsubscribe(this.sizeUnderlay);this.changeContentEvent.unsubscribe(this.forceUnderlayRedraw);YAHOO.widget.Module.textResizeEvent.unsubscribe(this.sizeUnderlay,this,true);this.element.removeChild(C);this.underlay=null}}switch(E){case"shadow":v.removeClass(B,"matte");v.addClass(B,"shadow");break;case"matte":if(!H){z.call(this)}v.removeClass(B,"shadow");v.addClass(B,"matte");break;default:if(!H){z.call(this)}v.removeClass(B,"shadow");v.removeClass(B,"matte");break}if((E=="shadow")||(H&&!C)){if(this.cfg.getProperty("visible")){var D=A.call(this);if(!D&&e){this.sizeUnderlay()}}else{if(!this._underlayDeferred){this.beforeShowEvent.subscribe(I);this._underlayDeferred=true}}}},configModal:function(z,A,B){var w=A[0];if(w){if(!this._hasModalityEventListeners){this.subscribe("beforeShow",this.buildMask);this.subscribe("beforeShow",this.bringToTop);this.subscribe("beforeShow",this.showMask);this.subscribe("hide",this.hideMask);n.windowResizeEvent.subscribe(this.sizeMask,this,true);this._hasModalityEventListeners=true}}else{if(this._hasModalityEventListeners){if(this.cfg.getProperty("visible")){this.hideMask();this.removeMask()}this.unsubscribe("beforeShow",this.buildMask);this.unsubscribe("beforeShow",this.bringToTop);this.unsubscribe("beforeShow",this.showMask);this.unsubscribe("hide",this.hideMask);n.windowResizeEvent.unsubscribe(this.sizeMask,this);this._hasModalityEventListeners=false}}},removeMask:function(){var w=this.mask,z;if(w){this.hideMask();z=w.parentNode;if(z){z.removeChild(w)}this.mask=null}},configKeyListeners:function(E,B,A){var w=B[0],C,D,z;if(w){if(w instanceof Array){D=w.length;for(z=0;z<D;z++){C=w[z];if(!m.alreadySubscribed(this.showEvent,C.enable,C)){this.showEvent.subscribe(C.enable,C,true)}if(!m.alreadySubscribed(this.hideEvent,C.disable,C)){this.hideEvent.subscribe(C.disable,C,true);this.destroyEvent.subscribe(C.disable,C,true)}}}else{if(!m.alreadySubscribed(this.showEvent,w.enable,w)){this.showEvent.subscribe(w.enable,w,true)}if(!m.alreadySubscribed(this.hideEvent,w.disable,w)){this.hideEvent.subscribe(w.disable,w,true);this.destroyEvent.subscribe(w.disable,w,true)}}}},configStrings:function(z,A,w){var B=q.merge(g.STRINGS.value,A[0]);this.cfg.setProperty(g.STRINGS.key,B,true)},configHeight:function(C,z,B){var A=z[0],w=this.innerElement;v.setStyle(w,"height",A);this.cfg.refireEvent("iframe")},_autoFillOnHeightChange:function(B,z,w){f.superclass._autoFillOnHeightChange.apply(this,arguments);if(e){var A=this;setTimeout(function(){A.sizeUnderlay()},0)}},configWidth:function(C,A,B){var w=A[0],z=this.innerElement;v.setStyle(z,"width",w);this.cfg.refireEvent("iframe")},configzIndex:function(z,A,B){f.superclass.configzIndex.call(this,z,A,B);if(this.mask||this.cfg.getProperty("modal")===true){var w=v.getStyle(this.element,"zIndex");if(!w||isNaN(w)){w=0}if(w===0){this.cfg.setProperty("zIndex",1)}else{this.stackMask()}}},buildWrapper:function(){var w=this.element.parentNode,A=this.element,z=document.createElement("div");z.className=f.CSS_PANEL_CONTAINER;z.id=A.id+"_c";if(w){w.insertBefore(z,A)}z.appendChild(A);this.element=z;this.innerElement=A;v.setStyle(this.innerElement,"visibility","inherit")},sizeUnderlay:function(){var w=this.underlay,z;if(w){z=this.element;w.style.width=z.offsetWidth+"px";w.style.height=z.offsetHeight+"px"}},registerDragDrop:function(){var w=this;if(this.header){if(!p.DD){return}var z=(this.cfg.getProperty("dragonly")===true);this.dd=new p.DD(this.element.id,this.id,{dragOnly:z});if(!this.header.id){this.header.id=this.id+"_h"}this.dd.startDrag=function(){var G,D,B,F,A,C;if(YAHOO.env.ua.ie==6){v.addClass(w.element,"drag")}if(w.cfg.getProperty("constraintoviewport")){var E=n.VIEWPORT_OFFSET;G=w.element.offsetHeight;D=w.element.offsetWidth;B=v.getViewportWidth();F=v.getViewportHeight();A=v.getDocumentScrollLeft();C=v.getDocumentScrollTop();if(G+E<F){this.minY=C+E;this.maxY=C+F-G-E}else{this.minY=C+E;this.maxY=C+E}if(D+E<B){this.minX=A+E;this.maxX=A+B-D-E}else{this.minX=A+E;this.maxX=A+E}this.constrainX=true;this.constrainY=true}else{this.constrainX=false;this.constrainY=false}w.dragEvent.fire("startDrag",arguments)};this.dd.onDrag=function(){w.syncPosition();w.cfg.refireEvent("iframe");if(this.platform=="mac"&&YAHOO.env.ua.gecko){this.showMacGeckoScrollbars()}w.dragEvent.fire("onDrag",arguments)};this.dd.endDrag=function(){if(YAHOO.env.ua.ie==6){v.removeClass(w.element,"drag")}w.dragEvent.fire("endDrag",arguments);w.moveEvent.fire(w.cfg.getProperty("xy"))};this.dd.setHandleElId(this.header.id);this.dd.addInvalidHandleType("INPUT");this.dd.addInvalidHandleType("SELECT");this.dd.addInvalidHandleType("TEXTAREA")}},buildMask:function(){var w=this.mask;if(!w){if(!o){o=document.createElement("div");o.className="mask";o.innerHTML="&#160;"}w=o.cloneNode(true);w.id=this.id+"_mask";document.body.insertBefore(w,document.body.firstChild);this.mask=w;if(YAHOO.env.ua.gecko&&this.platform=="mac"){v.addClass(this.mask,"block-scrollbars")}this.stackMask()}},hideMask:function(){if(this.cfg.getProperty("modal")&&this.mask){this.mask.style.display="none";v.removeClass(document.body,"masked");this.hideMaskEvent.fire()}},showMask:function(){if(this.cfg.getProperty("modal")&&this.mask){v.addClass(document.body,"masked");this.sizeMask();this.mask.style.display="block";this.showMaskEvent.fire()}},sizeMask:function(){if(this.mask){var z=this.mask,w=v.getViewportWidth(),A=v.getViewportHeight();if(z.offsetHeight>A){z.style.height=A+"px"}if(z.offsetWidth>w){z.style.width=w+"px"}z.style.height=v.getDocumentHeight()+"px";z.style.width=v.getDocumentWidth()+"px"}},stackMask:function(){if(this.mask){var w=v.getStyle(this.element,"zIndex");if(!YAHOO.lang.isUndefined(w)&&!isNaN(w)){v.setStyle(this.mask,"zIndex",w-1)}}},render:function(w){return f.superclass.render.call(this,w,this.innerElement)},destroy:function(){n.windowResizeEvent.unsubscribe(this.sizeMask,this);this.removeMask();if(this.close){a.purgeElement(this.close)}f.superclass.destroy.call(this)},forceUnderlayRedraw:function(){var w=this.underlay;v.addClass(w,"yui-force-redraw");setTimeout(function(){v.removeClass(w,"yui-force-redraw")},0)},toString:function(){return"Panel "+this.id}})}());(function(){YAHOO.widget.Dialog=function(i,j){YAHOO.widget.Dialog.superclass.constructor.call(this,i,j)};var h=YAHOO.util.Event,c=YAHOO.util.CustomEvent,e=YAHOO.util.Dom,a=YAHOO.widget.Dialog,d=YAHOO.lang,b={BEFORE_SUBMIT:"beforeSubmit",SUBMIT:"submit",MANUAL_SUBMIT:"manualSubmit",ASYNC_SUBMIT:"asyncSubmit",FORM_SUBMIT:"formSubmit",CANCEL:"cancel"},g={POST_METHOD:{key:"postmethod",value:"async"},POST_DATA:{key:"postdata",value:null},BUTTONS:{key:"buttons",value:"none",supercedes:["visible"]},HIDEAFTERSUBMIT:{key:"hideaftersubmit",value:true}};a.CSS_DIALOG="yui-dialog";function f(){var i=this._aButtons,k,j,m;if(d.isArray(i)){k=i.length;if(k>0){m=k-1;do{j=i[m];if(YAHOO.widget.Button&&j instanceof YAHOO.widget.Button){j.destroy()}else{if(j.tagName.toUpperCase()=="BUTTON"){h.purgeElement(j);h.purgeElement(j,false)}}}while(m--)}}}YAHOO.extend(a,YAHOO.widget.Panel,{form:null,initDefaultConfig:function(){a.superclass.initDefaultConfig.call(this);this.callback={success:null,failure:null,argument:null};this.cfg.addProperty(g.POST_METHOD.key,{handler:this.configPostMethod,value:g.POST_METHOD.value,validator:function(i){if(i!="form"&&i!="async"&&i!="none"&&i!="manual"){return false}else{return true}}});this.cfg.addProperty(g.POST_DATA.key,{value:g.POST_DATA.value});this.cfg.addProperty(g.HIDEAFTERSUBMIT.key,{value:g.HIDEAFTERSUBMIT.value});this.cfg.addProperty(g.BUTTONS.key,{handler:this.configButtons,value:g.BUTTONS.value,supercedes:g.BUTTONS.supercedes})},initEvents:function(){a.superclass.initEvents.call(this);var i=c.LIST;this.beforeSubmitEvent=this.createEvent(b.BEFORE_SUBMIT);this.beforeSubmitEvent.signature=i;this.submitEvent=this.createEvent(b.SUBMIT);this.submitEvent.signature=i;this.manualSubmitEvent=this.createEvent(b.MANUAL_SUBMIT);this.manualSubmitEvent.signature=i;this.asyncSubmitEvent=this.createEvent(b.ASYNC_SUBMIT);this.asyncSubmitEvent.signature=i;this.formSubmitEvent=this.createEvent(b.FORM_SUBMIT);this.formSubmitEvent.signature=i;this.cancelEvent=this.createEvent(b.CANCEL);this.cancelEvent.signature=i},init:function(i,j){a.superclass.init.call(this,i);this.beforeInitEvent.fire(a);e.addClass(this.element,a.CSS_DIALOG);this.cfg.setProperty("visible",false);if(j){this.cfg.applyConfig(j,true)}this.showEvent.subscribe(this.focusFirst,this,true);this.beforeHideEvent.subscribe(this.blurButtons,this,true);this.subscribe("changeBody",this.registerForm);this.initEvent.fire(a)},doSubmit:function(){var k=YAHOO.util.Connect,j=this.form,q=false,n=false,i,o,p,s;switch(this.cfg.getProperty("postmethod")){case"async":i=j.elements;o=i.length;if(o>0){p=o-1;do{if(i[p].type=="file"){q=true;break}}while(p--)}if(q&&YAHOO.env.ua.ie&&this.isSecure){n=true}s=this._getFormAttributes(j);k.setForm(j,q,n);var r=this.cfg.getProperty("postdata");var m=k.asyncRequest(s.method,s.action,this.callback,r);this.asyncSubmitEvent.fire(m);break;case"form":j.submit();this.formSubmitEvent.fire();break;case"none":case"manual":this.manualSubmitEvent.fire();break}},_getFormAttributes:function(j){var m={method:null,action:null};if(j){if(j.getAttributeNode){var k=j.getAttributeNode("action");var i=j.getAttributeNode("method");if(k){m.action=k.value}if(i){m.method=i.value}}else{m.action=j.getAttribute("action");m.method=j.getAttribute("method")}}m.method=(d.isString(m.method)?m.method:"POST").toUpperCase();m.action=d.isString(m.action)?m.action:"";return m},registerForm:function(){var i=this.element.getElementsByTagName("form")[0];if(this.form){if(this.form==i&&e.isAncestor(this.element,this.form)){return}else{h.purgeElement(this.form);this.form=null}}if(!i){i=document.createElement("form");i.name="frm_"+this.id;this.body.appendChild(i)}if(i){this.form=i;h.on(i,"submit",this._submitHandler,this,true)}},_submitHandler:function(i){h.stopEvent(i);this.submit();this.form.blur()},setTabLoop:function(j,i){j=j||this.firstButton;i=this.lastButton||i;a.superclass.setTabLoop.call(this,j,i)},setFirstLastFocusable:function(){a.superclass.setFirstLastFocusable.call(this);var k,m,j,i=this.focusableElements;this.firstFormElement=null;this.lastFormElement=null;if(this.form&&i&&i.length>0){m=i.length;for(k=0;k<m;++k){j=i[k];if(this.form===j.form){this.firstFormElement=j;break}}for(k=m-1;k>=0;--k){j=i[k];if(this.form===j.form){this.lastFormElement=j;break}}}},configClose:function(j,k,i){a.superclass.configClose.apply(this,arguments)},_doClose:function(i){h.preventDefault(i);this.cancel()},configButtons:function(k,m,r){var q=YAHOO.widget.Button,i=m[0],u=this.innerElement,j,o,v,n,p,w,s;f.call(this);this._aButtons=null;if(d.isArray(i)){p=document.createElement("span");p.className="button-group";n=i.length;this._aButtons=[];this.defaultHtmlButton=null;for(s=0;s<n;s++){j=i[s];if(q){v=new q({label:j.text});v.appendTo(p);o=v.get("element");if(j.isDefault){v.addClass("default");this.defaultHtmlButton=o}if(d.isFunction(j.handler)){v.set("onclick",{fn:j.handler,obj:this,scope:this})}else{if(d.isObject(j.handler)&&d.isFunction(j.handler.fn)){v.set("onclick",{fn:j.handler.fn,obj:((!d.isUndefined(j.handler.obj))?j.handler.obj:this),scope:(j.handler.scope||this)})}}this._aButtons[this._aButtons.length]=v}else{o=document.createElement("button");o.setAttribute("type","button");if(j.isDefault){o.className="default";this.defaultHtmlButton=o}o.innerHTML=j.text;if(d.isFunction(j.handler)){h.on(o,"click",j.handler,this,true)}else{if(d.isObject(j.handler)&&d.isFunction(j.handler.fn)){h.on(o,"click",j.handler.fn,((!d.isUndefined(j.handler.obj))?j.handler.obj:this),(j.handler.scope||this))}}p.appendChild(o);this._aButtons[this._aButtons.length]=o}j.htmlButton=o;if(s===0){this.firstButton=o}if(s==(n-1)){this.lastButton=o}}this.setFooter(p);w=this.footer;if(e.inDocument(this.element)&&!e.isAncestor(u,w)){u.appendChild(w)}this.buttonSpan=p}else{p=this.buttonSpan;w=this.footer;if(p&&w){w.removeChild(p);this.buttonSpan=null;this.firstButton=null;this.lastButton=null;this.defaultHtmlButton=null}}this.changeContentEvent.fire()},getButtons:function(){return this._aButtons||null},focusFirst:function(j,m,n){var k=this.firstFormElement;if(m&&m[1]){h.stopEvent(m[1])}if(k){try{k.focus()}catch(i){}}else{if(this.defaultHtmlButton){this.focusDefaultButton()}else{this.focusFirstButton()}}},focusLast:function(j,m,o){var n=this.cfg.getProperty("buttons"),k=this.lastFormElement;if(m&&m[1]){h.stopEvent(m[1])}if(n&&d.isArray(n)){this.focusLastButton()}else{if(k){try{k.focus()}catch(i){}}}},_getButton:function(i){var j=YAHOO.widget.Button;if(j&&i&&i.nodeName&&i.id){i=j.getButton(i.id)||i}return i},focusDefaultButton:function(){var j=this._getButton(this.defaultHtmlButton);if(j){try{j.focus()}catch(i){}}},blurButtons:function(){var n=this.cfg.getProperty("buttons"),j,o,k,m;if(n&&d.isArray(n)){j=n.length;if(j>0){m=(j-1);do{o=n[m];if(o){k=this._getButton(o.htmlButton);if(k){try{k.blur()}catch(i){}}}}while(m--)}}},focusFirstButton:function(){var i=this.cfg.getProperty("buttons"),j,m;if(i&&d.isArray(i)){j=i[0];if(j){m=this._getButton(j.htmlButton);if(m){try{m.focus()}catch(k){}}}}},focusLastButton:function(){var n=this.cfg.getProperty("buttons"),k,i,m;if(n&&d.isArray(n)){k=n.length;if(k>0){i=n[(k-1)];if(i){m=this._getButton(i.htmlButton);if(m){try{m.focus()}catch(j){}}}}}},configPostMethod:function(j,k,i){this.registerForm()},validate:function(){return true},submit:function(){if(this.validate()){this.beforeSubmitEvent.fire();this.doSubmit();this.submitEvent.fire();if(this.cfg.getProperty("hideaftersubmit")){this.hide()}return true}else{return false}},cancel:function(){this.cancelEvent.fire();this.hide()},getData:function(){var j=this.form,B,r,o,z,q,u,v,C,n,A,m,i,D,w,E,k,p;function s(G){var F=G.tagName.toUpperCase();return((F=="INPUT"||F=="TEXTAREA"||F=="SELECT")&&G.name==z)}if(j){B=j.elements;r=B.length;o={};for(k=0;k<r;k++){z=B[k].name;q=e.getElementsBy(s,"*",j);u=q.length;if(u>0){if(u==1){q=q[0];v=q.type;C=q.tagName.toUpperCase();switch(C){case"INPUT":if(v=="checkbox"){o[z]=q.checked}else{if(v!="radio"){o[z]=q.value}}break;case"TEXTAREA":o[z]=q.value;break;case"SELECT":n=q.options;A=n.length;m=[];for(p=0;p<A;p++){i=n[p];if(i.selected){D=i.value;if(!D||D===""){D=i.text}m[m.length]=D}}o[z]=m;break}}else{v=q[0].type;switch(v){case"radio":for(p=0;p<u;p++){w=q[p];if(w.checked){o[z]=w.value;break}}break;case"checkbox":m=[];for(p=0;p<u;p++){E=q[p];if(E.checked){m[m.length]=E.value}}o[z]=m;break}}}}}return o},destroy:function(){f.call(this);this._aButtons=null;var j=this.element.getElementsByTagName("form"),i;if(j.length>0){i=j[0];if(i){h.purgeElement(i);if(i.parentNode){i.parentNode.removeChild(i)}this.form=null}}a.superclass.destroy.call(this)},toString:function(){return"Dialog "+this.id}})}());(function(){YAHOO.widget.SimpleDialog=function(d,e){YAHOO.widget.SimpleDialog.superclass.constructor.call(this,d,e)};var b=YAHOO.util.Dom,c=YAHOO.widget.SimpleDialog,a={ICON:{key:"icon",value:"none",suppressEvent:true},TEXT:{key:"text",value:"",suppressEvent:true,supercedes:["icon"]}};c.ICON_BLOCK="blckicon";c.ICON_ALARM="alrticon";c.ICON_HELP="hlpicon";c.ICON_INFO="infoicon";c.ICON_WARN="warnicon";c.ICON_TIP="tipicon";c.ICON_CSS_CLASSNAME="yui-icon";c.CSS_SIMPLEDIALOG="yui-simple-dialog";YAHOO.extend(c,YAHOO.widget.Dialog,{initDefaultConfig:function(){c.superclass.initDefaultConfig.call(this);this.cfg.addProperty(a.ICON.key,{handler:this.configIcon,value:a.ICON.value,suppressEvent:a.ICON.suppressEvent});this.cfg.addProperty(a.TEXT.key,{handler:this.configText,value:a.TEXT.value,suppressEvent:a.TEXT.suppressEvent,supercedes:a.TEXT.supercedes})},init:function(d,e){c.superclass.init.call(this,d);this.beforeInitEvent.fire(c);b.addClass(this.element,c.CSS_SIMPLEDIALOG);this.cfg.queueProperty("postmethod","manual");if(e){this.cfg.applyConfig(e,true)}this.beforeRenderEvent.subscribe(function(){if(!this.body){this.setBody("")}},this,true);this.initEvent.fire(c)},registerForm:function(){c.superclass.registerForm.call(this);this.form.innerHTML+='<input type="hidden" name="'+this.id+'" value=""/>'},configIcon:function(i,j,e){var d=j[0],k=this.body,f=c.ICON_CSS_CLASSNAME,g,h;if(d&&d!="none"){g=b.getElementsByClassName(f,"*",k);if(g){h=g.parentNode;if(h){h.removeChild(g);g=null}}if(d.indexOf(".")==-1){g=document.createElement("span");g.className=(f+" "+d);g.innerHTML="&#160;"}else{g=document.createElement("img");g.src=(this.imageRoot+d);g.className=f}if(g){k.insertBefore(g,k.firstChild)}}},configText:function(f,g,e){var d=g[0];if(d){this.setBody(d);this.cfg.refireEvent("icon")}},toString:function(){return"SimpleDialog "+this.id}})}());(function(){YAHOO.widget.ContainerEffect=function(g,d,e,h,f){if(!f){f=YAHOO.util.Anim}this.overlay=g;this.attrIn=d;this.attrOut=e;this.targetElement=h||g.element;this.animClass=f};var c=YAHOO.util.Dom,b=YAHOO.util.CustomEvent,a=YAHOO.widget.ContainerEffect;a.FADE=function(i,g){var f=YAHOO.util.Easing,d={attributes:{opacity:{from:0,to:1}},duration:g,method:f.easeIn},h={attributes:{opacity:{to:0}},duration:g,method:f.easeOut},e=new a(i,d,h,i.element);e.handleUnderlayStart=function(){var j=this.overlay.underlay;if(j&&YAHOO.env.ua.ie){var k=(j.filters&&j.filters.length>0);if(k){c.addClass(i.element,"yui-effect-fade")}}};e.handleUnderlayComplete=function(){var j=this.overlay.underlay;if(j&&YAHOO.env.ua.ie){c.removeClass(i.element,"yui-effect-fade")}};e.handleStartAnimateIn=function(k,m,j){c.addClass(j.overlay.element,"hide-select");if(!j.overlay.underlay){j.overlay.cfg.refireEvent("underlay")}j.handleUnderlayStart();j.overlay._setDomVisibility(true);c.setStyle(j.overlay.element,"opacity",0)};e.handleCompleteAnimateIn=function(k,m,j){c.removeClass(j.overlay.element,"hide-select");if(j.overlay.element.style.filter){j.overlay.element.style.filter=null}j.handleUnderlayComplete();j.overlay.cfg.refireEvent("iframe");j.animateInCompleteEvent.fire()};e.handleStartAnimateOut=function(k,m,j){c.addClass(j.overlay.element,"hide-select");j.handleUnderlayStart()};e.handleCompleteAnimateOut=function(k,m,j){c.removeClass(j.overlay.element,"hide-select");if(j.overlay.element.style.filter){j.overlay.element.style.filter=null}j.overlay._setDomVisibility(false);c.setStyle(j.overlay.element,"opacity",1);j.handleUnderlayComplete();j.overlay.cfg.refireEvent("iframe");j.animateOutCompleteEvent.fire()};e.init();return e};a.SLIDE=function(m,d){var i=YAHOO.util.Easing,f=m.cfg.getProperty("x")||c.getX(m.element),g=m.cfg.getProperty("y")||c.getY(m.element),e=c.getClientWidth(),j=m.element.offsetWidth,h={attributes:{points:{to:[f,g]}},duration:d,method:i.easeIn},n={attributes:{points:{to:[(e+25),g]}},duration:d,method:i.easeOut},k=new a(m,h,n,m.element,YAHOO.util.Motion);k.handleStartAnimateIn=function(p,q,o){o.overlay.element.style.left=((-25)-j)+"px";o.overlay.element.style.top=g+"px"};k.handleTweenAnimateIn=function(q,r,p){var o=c.getXY(p.overlay.element),s=o[0],u=o[1];if(c.getStyle(p.overlay.element,"visibility")=="hidden"&&s<f){p.overlay._setDomVisibility(true)}p.overlay.cfg.setProperty("xy",[s,u],true);p.overlay.cfg.refireEvent("iframe")};k.handleCompleteAnimateIn=function(p,q,o){o.overlay.cfg.setProperty("xy",[f,g],true);o.startX=f;o.startY=g;o.overlay.cfg.refireEvent("iframe");o.animateInCompleteEvent.fire()};k.handleStartAnimateOut=function(s,u,p){var r=c.getViewportWidth(),o=c.getXY(p.overlay.element),q=o[1];p.animOut.attributes.points.to=[(r+25),q]};k.handleTweenAnimateOut=function(r,s,q){var o=c.getXY(q.overlay.element),u=o[0],p=o[1];q.overlay.cfg.setProperty("xy",[u,p],true);q.overlay.cfg.refireEvent("iframe")};k.handleCompleteAnimateOut=function(p,q,o){o.overlay._setDomVisibility(false);o.overlay.cfg.setProperty("xy",[f,g]);o.animateOutCompleteEvent.fire()};k.init();return k};a.prototype={init:function(){this.beforeAnimateInEvent=this.createEvent("beforeAnimateIn");this.beforeAnimateInEvent.signature=b.LIST;this.beforeAnimateOutEvent=this.createEvent("beforeAnimateOut");this.beforeAnimateOutEvent.signature=b.LIST;this.animateInCompleteEvent=this.createEvent("animateInComplete");this.animateInCompleteEvent.signature=b.LIST;this.animateOutCompleteEvent=this.createEvent("animateOutComplete");this.animateOutCompleteEvent.signature=b.LIST;this.animIn=new this.animClass(this.targetElement,this.attrIn.attributes,this.attrIn.duration,this.attrIn.method);this.animIn.onStart.subscribe(this.handleStartAnimateIn,this);this.animIn.onTween.subscribe(this.handleTweenAnimateIn,this);this.animIn.onComplete.subscribe(this.handleCompleteAnimateIn,this);this.animOut=new this.animClass(this.targetElement,this.attrOut.attributes,this.attrOut.duration,this.attrOut.method);this.animOut.onStart.subscribe(this.handleStartAnimateOut,this);this.animOut.onTween.subscribe(this.handleTweenAnimateOut,this);this.animOut.onComplete.subscribe(this.handleCompleteAnimateOut,this)},animateIn:function(){this.beforeAnimateInEvent.fire();this.animIn.animate()},animateOut:function(){this.beforeAnimateOutEvent.fire();this.animOut.animate()},handleStartAnimateIn:function(e,f,d){},handleTweenAnimateIn:function(e,f,d){},handleCompleteAnimateIn:function(e,f,d){},handleStartAnimateOut:function(e,f,d){},handleTweenAnimateOut:function(e,f,d){},handleCompleteAnimateOut:function(e,f,d){},toString:function(){var d="ContainerEffect";if(this.overlay){d+=" ["+this.overlay.toString()+"]"}return d}};YAHOO.lang.augmentProto(a,YAHOO.util.EventProvider)})();YAHOO.register("container",YAHOO.widget.Module,{version:"2.7.0",build:"1799"});if(!YAHOO.util.DragDropMgr){YAHOO.util.DragDropMgr=function(){var a=YAHOO.util.Event,b=YAHOO.util.Dom;return{useShim:false,_shimActive:false,_shimState:false,_debugShim:false,_createShim:function(){var c=document.createElement("div");c.id="yui-ddm-shim";if(document.body.firstChild){document.body.insertBefore(c,document.body.firstChild)}else{document.body.appendChild(c)}c.style.display="none";c.style.backgroundColor="red";c.style.position="absolute";c.style.zIndex="99999";b.setStyle(c,"opacity","0");this._shim=c;a.on(c,"mouseup",this.handleMouseUp,this,true);a.on(c,"mousemove",this.handleMouseMove,this,true);a.on(window,"scroll",this._sizeShim,this,true)},_sizeShim:function(){if(this._shimActive){var c=this._shim;c.style.height=b.getDocumentHeight()+"px";c.style.width=b.getDocumentWidth()+"px";c.style.top="0";c.style.left="0"}},_activateShim:function(){if(this.useShim){if(!this._shim){this._createShim()}this._shimActive=true;var d=this._shim,c="0";if(this._debugShim){c=".5"}b.setStyle(d,"opacity",c);this._sizeShim();d.style.display="block"}},_deactivateShim:function(){this._shim.style.display="none";this._shimActive=false},_shim:null,ids:{},handleIds:{},dragCurrent:null,dragOvers:{},deltaX:0,deltaY:0,preventDefault:true,stopPropagation:true,initialized:false,locked:false,interactionInfo:null,init:function(){this.initialized=true},POINT:0,INTERSECT:1,STRICT_INTERSECT:2,mode:0,_execOnAll:function(e,f){for(var d in this.ids){for(var g in this.ids[d]){var c=this.ids[d][g];if(!this.isTypeOfDD(c)){continue}c[e].apply(c,f)}}},_onLoad:function(){this.init();a.on(document,"mouseup",this.handleMouseUp,this,true);a.on(document,"mousemove",this.handleMouseMove,this,true);a.on(window,"unload",this._onUnload,this,true);a.on(window,"resize",this._onResize,this,true)},_onResize:function(c){this._execOnAll("resetConstraints",[])},lock:function(){this.locked=true},unlock:function(){this.locked=false},isLocked:function(){return this.locked},locationCache:{},useCache:true,clickPixelThresh:3,clickTimeThresh:1000,dragThreshMet:false,clickTimeout:null,startX:0,startY:0,fromTimeout:false,regDragDrop:function(c,d){if(!this.initialized){this.init()}if(!this.ids[d]){this.ids[d]={}}this.ids[d][c.id]=c},removeDDFromGroup:function(c,e){if(!this.ids[e]){this.ids[e]={}}var d=this.ids[e];if(d&&d[c.id]){delete d[c.id]}},_remove:function(c){for(var d in c.groups){if(d){var e=this.ids[d];if(e&&e[c.id]){delete e[c.id]}}}delete this.handleIds[c.id]},regHandle:function(c,d){if(!this.handleIds[c]){this.handleIds[c]={}}this.handleIds[c][d]=d},isDragDrop:function(c){return(this.getDDById(c))?true:false},getRelated:function(c,g){var d=[];for(var e in c.groups){for(var f in this.ids[e]){var h=this.ids[e][f];if(!this.isTypeOfDD(h)){continue}if(!g||h.isTarget){d[d.length]=h}}}return d},isLegalTarget:function(c,d){var f=this.getRelated(c,true);for(var e=0,g=f.length;e<g;++e){if(f[e].id==d.id){return true}}return false},isTypeOfDD:function(c){return(c&&c.__ygDragDrop)},isHandle:function(c,d){return(this.handleIds[c]&&this.handleIds[c][d])},getDDById:function(c){for(var d in this.ids){if(this.ids[d][c]){return this.ids[d][c]}}return null},handleMouseDown:function(c,d){this.currentTarget=YAHOO.util.Event.getTarget(c);this.dragCurrent=d;var e=d.getEl();this.startX=YAHOO.util.Event.getPageX(c);this.startY=YAHOO.util.Event.getPageY(c);this.deltaX=this.startX-e.offsetLeft;this.deltaY=this.startY-e.offsetTop;this.dragThreshMet=false;this.clickTimeout=setTimeout(function(){var f=YAHOO.util.DDM;f.startDrag(f.startX,f.startY);f.fromTimeout=true},this.clickTimeThresh)},startDrag:function(e,c){if(this.dragCurrent&&this.dragCurrent.useShim){this._shimState=this.useShim;this.useShim=true}this._activateShim();clearTimeout(this.clickTimeout);var d=this.dragCurrent;if(d&&d.events.b4StartDrag){d.b4StartDrag(e,c);d.fireEvent("b4StartDragEvent",{x:e,y:c})}if(d&&d.events.startDrag){d.startDrag(e,c);d.fireEvent("startDragEvent",{x:e,y:c})}this.dragThreshMet=true},handleMouseUp:function(c){if(this.dragCurrent){clearTimeout(this.clickTimeout);if(this.dragThreshMet){if(this.fromTimeout){this.fromTimeout=false;this.handleMouseMove(c)}this.fromTimeout=false;this.fireEvents(c,true)}else{}this.stopDrag(c);this.stopEvent(c)}},stopEvent:function(c){if(this.stopPropagation){YAHOO.util.Event.stopPropagation(c)}if(this.preventDefault){YAHOO.util.Event.preventDefault(c)}},stopDrag:function(c,d){var e=this.dragCurrent;if(e&&!d){if(this.dragThreshMet){if(e.events.b4EndDrag){e.b4EndDrag(c);e.fireEvent("b4EndDragEvent",{e:c})}if(e.events.endDrag){e.endDrag(c);e.fireEvent("endDragEvent",{e:c})}}if(e.events.mouseUp){e.onMouseUp(c);e.fireEvent("mouseUpEvent",{e:c})}}if(this._shimActive){this._deactivateShim();if(this.dragCurrent&&this.dragCurrent.useShim){this.useShim=this._shimState;this._shimState=false}}this.dragCurrent=null;this.dragOvers={}},handleMouseMove:function(c){var f=this.dragCurrent;if(f){if(YAHOO.env.ua.ie&&(YAHOO.env.ua.ie<9)&&!c.button){this.stopEvent(c);return this.handleMouseUp(c)}else{if(c.clientX<0||c.clientY<0){}}if(!this.dragThreshMet){var d=Math.abs(this.startX-YAHOO.util.Event.getPageX(c));var e=Math.abs(this.startY-YAHOO.util.Event.getPageY(c));if(d>this.clickPixelThresh||e>this.clickPixelThresh){this.startDrag(this.startX,this.startY)}}if(this.dragThreshMet){if(f&&f.events.b4Drag){f.b4Drag(c);f.fireEvent("b4DragEvent",{e:c})}if(f&&f.events.drag){f.onDrag(c);f.fireEvent("dragEvent",{e:c})}if(f){this.fireEvents(c,false)}}this.stopEvent(c)}},fireEvents:function(i,u){var ag=this.dragCurrent;if(!ag||ag.isLocked()||ag.dragOnly){return}var r=YAHOO.util.Event.getPageX(i),s=YAHOO.util.Event.getPageY(i),p=new YAHOO.util.Point(r,s),v=ag.getTargetCoord(p.x,p.y),aa=ag.getDragEl(),ab=["out","over","drop","enter"],j=new YAHOO.util.Region(v.y,v.x+aa.offsetWidth,v.y+aa.offsetHeight,v.x),z=[],ac={},o=[],af={outEvts:[],overEvts:[],dropEvts:[],enterEvts:[]};for(var m in this.dragOvers){var ae=this.dragOvers[m];if(!this.isTypeOfDD(ae)){continue}if(!this.isOverTarget(p,ae,this.mode,j)){af.outEvts.push(ae)}z[m]=true;delete this.dragOvers[m]}for(var n in ag.groups){if("string"!=typeof n){continue}for(m in this.ids[n]){var B=this.ids[n][m];if(!this.isTypeOfDD(B)){continue}if(B.isTarget&&!B.isLocked()&&B!=ag){if(this.isOverTarget(p,B,this.mode,j)){ac[n]=true;if(u){af.dropEvts.push(B)}else{if(!z[B.id]){af.enterEvts.push(B)}else{af.overEvts.push(B)}this.dragOvers[B.id]=B}}}}}this.interactionInfo={out:af.outEvts,enter:af.enterEvts,over:af.overEvts,drop:af.dropEvts,point:p,draggedRegion:j,sourceRegion:this.locationCache[ag.id],validDrop:u};for(var ad in ac){o.push(ad)}if(u&&!af.dropEvts.length){this.interactionInfo.validDrop=false;if(ag.events.invalidDrop){ag.onInvalidDrop(i);ag.fireEvent("invalidDropEvent",{e:i})}}for(m=0;m<ab.length;m++){var f=null;if(af[ab[m]+"Evts"]){f=af[ab[m]+"Evts"]}if(f&&f.length){var A=ab[m].charAt(0).toUpperCase()+ab[m].substr(1),g="onDrag"+A,w="b4Drag"+A,q="drag"+A+"Event",h="drag"+A;if(this.mode){if(ag.events[w]){ag[w](i,f,o);ag.fireEvent(w+"Event",{event:i,info:f,group:o})}if(ag.events[h]){ag[g](i,f,o);ag.fireEvent(q,{event:i,info:f,group:o})}}else{for(var e=0,k=f.length;e<k;++e){if(ag.events[w]){ag[w](i,f[e].id,o[0]);ag.fireEvent(w+"Event",{event:i,info:f[e].id,group:o[0]})}if(ag.events[h]){ag[g](i,f[e].id,o[0]);ag.fireEvent(q,{event:i,info:f[e].id,group:o[0]})}}}}}},getBestMatch:function(e){var c=null;var f=e.length;if(f==1){c=e[0]}else{for(var d=0;d<f;++d){var g=e[d];if(this.mode==this.INTERSECT&&g.cursorIsOver){c=g;break}else{if(!c||!c.overlap||(g.overlap&&c.overlap.getArea()<g.overlap.getArea())){c=g}}}}return c},refreshCache:function(g){var e=g||this.ids;for(var h in e){if("string"!=typeof h){continue}for(var f in this.ids[h]){var d=this.ids[h][f];if(this.isTypeOfDD(d)){var c=this.getLocation(d);if(c){this.locationCache[d.id]=c}else{delete this.locationCache[d.id]}}}}},verifyEl:function(d){try{if(d){var e=d.offsetParent;if(e){return true}}}catch(c){}return false},getLocation:function(k){if(!this.isTypeOfDD(k)){return null}var n=k.getEl(),h,o,c,f,g,e,d,i,m;try{h=YAHOO.util.Dom.getXY(n)}catch(j){}if(!h){return null}o=h[0];c=o+n.offsetWidth;f=h[1];g=f+n.offsetHeight;e=f-k.padding[0];d=c+k.padding[1];i=g+k.padding[2];m=o-k.padding[3];return new YAHOO.util.Region(e,d,i,m)},isOverTarget:function(e,d,k,j){var i=this.locationCache[d.id];if(!i||!this.useCache){i=this.getLocation(d);this.locationCache[d.id]=i}if(!i){return false}d.cursorIsOver=i.contains(e);var f=this.dragCurrent;if(!f||(!k&&!f.constrainX&&!f.constrainY)){return d.cursorIsOver}d.overlap=null;if(!j){var h=f.getTargetCoord(e.x,e.y);var c=f.getDragEl();j=new YAHOO.util.Region(h.y,h.x+c.offsetWidth,h.y+c.offsetHeight,h.x)}var g=j.intersect(i);if(g){d.overlap=g;return(k)?true:d.cursorIsOver}else{return false}},_onUnload:function(c,d){this.unregAll()},unregAll:function(){if(this.dragCurrent){this.stopDrag();this.dragCurrent=null}this._execOnAll("unreg",[]);this.ids={}},elementCache:{},getElWrapper:function(c){var d=this.elementCache[c];if(!d||!d.el){d=this.elementCache[c]=new this.ElementWrapper(YAHOO.util.Dom.get(c))}return d},getElement:function(c){return YAHOO.util.Dom.get(c)},getCss:function(c){var d=YAHOO.util.Dom.get(c);return(d)?d.style:null},ElementWrapper:function(c){this.el=c||null;this.id=this.el&&c.id;this.css=this.el&&c.style},getPosX:function(c){return YAHOO.util.Dom.getX(c)},getPosY:function(c){return YAHOO.util.Dom.getY(c)},swapNode:function(d,f){if(d.swapNode){d.swapNode(f)}else{var c=f.parentNode;var e=f.nextSibling;if(e==d){c.insertBefore(d,f)}else{if(f==d.nextSibling){c.insertBefore(f,d)}else{d.parentNode.replaceChild(f,d);c.insertBefore(d,e)}}}},getScroll:function(){var d,f,c=document.documentElement,e=document.body;if(c&&(c.scrollTop||c.scrollLeft)){d=c.scrollTop;f=c.scrollLeft}else{if(e){d=e.scrollTop;f=e.scrollLeft}else{}}return{top:d,left:f}},getStyle:function(c,d){return YAHOO.util.Dom.getStyle(c,d)},getScrollTop:function(){return this.getScroll().top},getScrollLeft:function(){return this.getScroll().left},moveToEl:function(e,c){var d=YAHOO.util.Dom.getXY(c);YAHOO.util.Dom.setXY(e,d)},getClientHeight:function(){return YAHOO.util.Dom.getViewportHeight()},getClientWidth:function(){return YAHOO.util.Dom.getViewportWidth()},numericSort:function(c,d){return(c-d)},_timeoutCount:0,_addListeners:function(){var c=YAHOO.util.DDM;if(YAHOO.util.Event&&document){c._onLoad()}else{if(c._timeoutCount>2000){}else{setTimeout(c._addListeners,10);if(document&&document.body){c._timeoutCount+=1}}}},handleWasClicked:function(e,c){if(this.isHandle(c,e.id)){return true}else{var d=e.parentNode;while(d){if(this.isHandle(c,d.id)){return true}else{d=d.parentNode}}}return false}}}();YAHOO.util.DDM=YAHOO.util.DragDropMgr;YAHOO.util.DDM._addListeners()}(function(){var a=YAHOO.util.Event;var b=YAHOO.util.Dom;YAHOO.util.DragDrop=function(c,e,d){if(c){this.init(c,e,d)}};YAHOO.util.DragDrop.prototype={events:null,on:function(){this.subscribe.apply(this,arguments)},id:null,config:null,dragElId:null,handleElId:null,invalidHandleTypes:null,invalidHandleIds:null,invalidHandleClasses:null,startPageX:0,startPageY:0,groups:null,locked:false,lock:function(){this.locked=true},unlock:function(){this.locked=false},isTarget:true,padding:null,dragOnly:false,useShim:false,_domRef:null,__ygDragDrop:true,constrainX:false,constrainY:false,minX:0,maxX:0,minY:0,maxY:0,deltaX:0,deltaY:0,maintainOffset:false,xTicks:null,yTicks:null,primaryButtonOnly:true,available:false,hasOuterHandles:false,cursorIsOver:false,overlap:null,b4StartDrag:function(d,c){},startDrag:function(d,c){},b4Drag:function(c){},onDrag:function(c){},onDragEnter:function(d,c){},b4DragOver:function(c){},onDragOver:function(d,c){},b4DragOut:function(c){},onDragOut:function(d,c){},b4DragDrop:function(c){},onDragDrop:function(d,c){},onInvalidDrop:function(c){},b4EndDrag:function(c){},endDrag:function(c){},b4MouseDown:function(c){},onMouseDown:function(c){},onMouseUp:function(c){},onAvailable:function(){},getEl:function(){if(!this._domRef){this._domRef=b.get(this.id)}return this._domRef},getDragEl:function(){return b.get(this.dragElId)},init:function(c,f,e){this.initTarget(c,f,e);a.on(this._domRef||this.id,"mousedown",this.handleMouseDown,this,true);for(var d in this.events){this.createEvent(d+"Event")}},initTarget:function(c,e,d){this.config=d||{};this.events={};this.DDM=YAHOO.util.DDM;this.groups={};if(typeof c!=="string"){this._domRef=c;c=b.generateId(c)}this.id=c;this.addToGroup((e)?e:"default");this.handleElId=c;a.onAvailable(c,this.handleOnAvailable,this,true);this.setDragElId(c);this.invalidHandleTypes={A:"A"};this.invalidHandleIds={};this.invalidHandleClasses=[];this.applyConfig()},applyConfig:function(){this.events={mouseDown:true,b4MouseDown:true,mouseUp:true,b4StartDrag:true,startDrag:true,b4EndDrag:true,endDrag:true,drag:true,b4Drag:true,invalidDrop:true,b4DragOut:true,dragOut:true,dragEnter:true,b4DragOver:true,dragOver:true,b4DragDrop:true,dragDrop:true};if(this.config.events){for(var c in this.config.events){if(this.config.events[c]===false){this.events[c]=false}}}this.padding=this.config.padding||[0,0,0,0];this.isTarget=(this.config.isTarget!==false);this.maintainOffset=(this.config.maintainOffset);this.primaryButtonOnly=(this.config.primaryButtonOnly!==false);this.dragOnly=((this.config.dragOnly===true)?true:false);this.useShim=((this.config.useShim===true)?true:false)},handleOnAvailable:function(){this.available=true;this.resetConstraints();this.onAvailable()},setPadding:function(d,f,c,e){if(!f&&0!==f){this.padding=[d,d,d,d]}else{if(!c&&0!==c){this.padding=[d,f,d,f]}else{this.padding=[d,f,c,e]}}},setInitPosition:function(e,f){var d=this.getEl();if(!this.DDM.verifyEl(d)){if(d&&d.style&&(d.style.display=="none")){}else{}return}var g=e||0;var h=f||0;var c=b.getXY(d);this.initPageX=c[0]-g;this.initPageY=c[1]-h;this.lastPageX=c[0];this.lastPageY=c[1];this.setStartPosition(c)},setStartPosition:function(c){var d=c||b.getXY(this.getEl());this.deltaSetXY=null;this.startPageX=d[0];this.startPageY=d[1]},addToGroup:function(c){this.groups[c]=true;this.DDM.regDragDrop(this,c)},removeFromGroup:function(c){if(this.groups[c]){delete this.groups[c]}this.DDM.removeDDFromGroup(this,c)},setDragElId:function(c){this.dragElId=c},setHandleElId:function(c){if(typeof c!=="string"){c=b.generateId(c)}this.handleElId=c;this.DDM.regHandle(this.id,c)},setOuterHandleElId:function(c){if(typeof c!=="string"){c=b.generateId(c)}a.on(c,"mousedown",this.handleMouseDown,this,true);this.setHandleElId(c);this.hasOuterHandles=true},unreg:function(){a.removeListener(this.id,"mousedown",this.handleMouseDown);this._domRef=null;this.DDM._remove(this)},isLocked:function(){return(this.DDM.isLocked()||this.locked)},handleMouseDown:function(c,d){var i=c.which||c.button;if(this.primaryButtonOnly&&i>1){return}if(this.isLocked()){return}var j=this.b4MouseDown(c),g=true;if(this.events.b4MouseDown){g=this.fireEvent("b4MouseDownEvent",c)}var h=this.onMouseDown(c),e=true;if(this.events.mouseDown){e=this.fireEvent("mouseDownEvent",c)}if((j===false)||(h===false)||(g===false)||(e===false)){return}this.DDM.refreshCache(this.groups);var f=new YAHOO.util.Point(a.getPageX(c),a.getPageY(c));if(!this.hasOuterHandles&&!this.DDM.isOverTarget(f,this)){}else{if(this.clickValidator(c)){this.setStartPosition();this.DDM.handleMouseDown(c,this);this.DDM.stopEvent(c)}else{}}},clickValidator:function(c){var d=YAHOO.util.Event.getTarget(c);return(this.isValidHandleChild(d)&&(this.id==this.handleElId||this.DDM.handleWasClicked(d,this.id)))},getTargetCoord:function(d,e){var f=d-this.deltaX;var c=e-this.deltaY;if(this.constrainX){if(f<this.minX){f=this.minX}if(f>this.maxX){f=this.maxX}}if(this.constrainY){if(c<this.minY){c=this.minY}if(c>this.maxY){c=this.maxY}}f=this.getTick(f,this.xTicks);c=this.getTick(c,this.yTicks);return{x:f,y:c}},addInvalidHandleType:function(d){var c=d.toUpperCase();this.invalidHandleTypes[c]=c},addInvalidHandleId:function(c){if(typeof c!=="string"){c=b.generateId(c)}this.invalidHandleIds[c]=c},addInvalidHandleClass:function(c){this.invalidHandleClasses.push(c)},removeInvalidHandleType:function(d){var c=d.toUpperCase();delete this.invalidHandleTypes[c]},removeInvalidHandleId:function(c){if(typeof c!=="string"){c=b.generateId(c)}delete this.invalidHandleIds[c]},removeInvalidHandleClass:function(d){for(var c=0,e=this.invalidHandleClasses.length;c<e;++c){if(this.invalidHandleClasses[c]==d){delete this.invalidHandleClasses[c]}}},isValidHandleChild:function(e){var f=true;var c;try{c=e.nodeName.toUpperCase()}catch(d){c=e.nodeName}f=f&&!this.invalidHandleTypes[c];f=f&&!this.invalidHandleIds[e.id];for(var g=0,h=this.invalidHandleClasses.length;f&&g<h;++g){f=!b.hasClass(e,this.invalidHandleClasses[g])}return f},setXTicks:function(c,f){this.xTicks=[];this.xTickSize=f;var d={};for(var e=this.initPageX;e>=this.minX;e=e-f){if(!d[e]){this.xTicks[this.xTicks.length]=e;d[e]=true}}for(e=this.initPageX;e<=this.maxX;e=e+f){if(!d[e]){this.xTicks[this.xTicks.length]=e;d[e]=true}}this.xTicks.sort(this.DDM.numericSort)},setYTicks:function(c,f){this.yTicks=[];this.yTickSize=f;var d={};for(var e=this.initPageY;e>=this.minY;e=e-f){if(!d[e]){this.yTicks[this.yTicks.length]=e;d[e]=true}}for(e=this.initPageY;e<=this.maxY;e=e+f){if(!d[e]){this.yTicks[this.yTicks.length]=e;d[e]=true}}this.yTicks.sort(this.DDM.numericSort)},setXConstraint:function(c,d,e){this.leftConstraint=parseInt(c,10);this.rightConstraint=parseInt(d,10);this.minX=this.initPageX-this.leftConstraint;this.maxX=this.initPageX+this.rightConstraint;if(e){this.setXTicks(this.initPageX,e)}this.constrainX=true},clearConstraints:function(){this.constrainX=false;this.constrainY=false;this.clearTicks()},clearTicks:function(){this.xTicks=null;this.yTicks=null;this.xTickSize=0;this.yTickSize=0},setYConstraint:function(e,c,d){this.topConstraint=parseInt(e,10);this.bottomConstraint=parseInt(c,10);this.minY=this.initPageY-this.topConstraint;this.maxY=this.initPageY+this.bottomConstraint;if(d){this.setYTicks(this.initPageY,d)}this.constrainY=true},resetConstraints:function(){if(this.initPageX||this.initPageX===0){var c=(this.maintainOffset)?this.lastPageX-this.initPageX:0;var d=(this.maintainOffset)?this.lastPageY-this.initPageY:0;this.setInitPosition(c,d)}else{this.setInitPosition()}if(this.constrainX){this.setXConstraint(this.leftConstraint,this.rightConstraint,this.xTickSize)}if(this.constrainY){this.setYConstraint(this.topConstraint,this.bottomConstraint,this.yTickSize)}},getTick:function(c,f){if(!f){return c}else{if(f[0]>=c){return f[0]}else{for(var h=0,i=f.length;h<i;++h){var g=h+1;if(f[g]&&f[g]>=c){var d=c-f[h];var e=f[g]-c;return(e>d)?f[h]:f[g]}}return f[f.length-1]}}},toString:function(){return("DragDrop "+this.id)}};YAHOO.augment(YAHOO.util.DragDrop,YAHOO.util.EventProvider)})();YAHOO.util.DD=function(b,a,c){if(b){this.init(b,a,c)}};YAHOO.extend(YAHOO.util.DD,YAHOO.util.DragDrop,{scroll:true,autoOffset:function(c,d){var a=c-this.startPageX;var b=d-this.startPageY;this.setDelta(a,b)},setDelta:function(b,a){this.deltaX=b;this.deltaY=a},setDragElPos:function(b,c){var a=this.getDragEl();this.alignElWithMouse(a,b,c)},alignElWithMouse:function(g,c,d){var e=this.getTargetCoord(c,d);if(!this.deltaSetXY){var b=[e.x,e.y];YAHOO.util.Dom.setXY(g,b);var f=parseInt(YAHOO.util.Dom.getStyle(g,"left"),10);var h=parseInt(YAHOO.util.Dom.getStyle(g,"top"),10);this.deltaSetXY=[f-e.x,h-e.y]}else{YAHOO.util.Dom.setStyle(g,"left",(e.x+this.deltaSetXY[0])+"px");YAHOO.util.Dom.setStyle(g,"top",(e.y+this.deltaSetXY[1])+"px")}this.cachePosition(e.x,e.y);var a=this;setTimeout(function(){a.autoScroll.call(a,e.x,e.y,g.offsetHeight,g.offsetWidth)},0)},cachePosition:function(c,a){if(c){this.lastPageX=c;this.lastPageY=a}else{var b=YAHOO.util.Dom.getXY(this.getEl());this.lastPageX=b[0];this.lastPageY=b[1]}},autoScroll:function(i,j,o,h){if(this.scroll){var g=this.DDM.getClientHeight();var c=this.DDM.getClientWidth();var e=this.DDM.getScrollTop();var a=this.DDM.getScrollLeft();var k=o+j;var f=h+i;var m=(g+e-j-this.deltaY);var n=(c+a-i-this.deltaX);var b=40;var d=(document.all)?80:30;if(k>g&&m<b){window.scrollTo(a,e+d)}if(j<e&&e>0&&j-e<b){window.scrollTo(a,e-d)}if(f>c&&n<b){window.scrollTo(a+d,e)}if(i<a&&a>0&&i-a<b){window.scrollTo(a-d,e)}}},applyConfig:function(){YAHOO.util.DD.superclass.applyConfig.call(this);this.scroll=(this.config.scroll!==false)},b4MouseDown:function(a){this.setStartPosition();this.autoOffset(YAHOO.util.Event.getPageX(a),YAHOO.util.Event.getPageY(a))},b4Drag:function(a){this.setDragElPos(YAHOO.util.Event.getPageX(a),YAHOO.util.Event.getPageY(a))},toString:function(){return("DD "+this.id)}});YAHOO.util.DDProxy=function(b,a,c){if(b){this.init(b,a,c);this.initFrame()}};YAHOO.util.DDProxy.dragElId="ygddfdiv";YAHOO.extend(YAHOO.util.DDProxy,YAHOO.util.DD,{resizeFrame:true,centerFrame:false,createFrame:function(){var f=this,a=document.body;if(!a||!a.firstChild){setTimeout(function(){f.createFrame()},50);return}var b=this.getDragEl(),c=YAHOO.util.Dom;if(!b){b=document.createElement("div");b.id=this.dragElId;var d=b.style;d.position="absolute";d.visibility="hidden";d.cursor="move";d.border="2px solid #aaa";d.zIndex=999;d.height="25px";d.width="25px";var e=document.createElement("div");c.setStyle(e,"height","100%");c.setStyle(e,"width","100%");c.setStyle(e,"background-color","#ccc");c.setStyle(e,"opacity","0");b.appendChild(e);a.insertBefore(b,a.firstChild)}},initFrame:function(){this.createFrame()},applyConfig:function(){YAHOO.util.DDProxy.superclass.applyConfig.call(this);this.resizeFrame=(this.config.resizeFrame!==false);this.centerFrame=(this.config.centerFrame);this.setDragElId(this.config.dragElId||YAHOO.util.DDProxy.dragElId)},showFrame:function(b,c){var d=this.getEl();var a=this.getDragEl();var e=a.style;this._resizeProxy();if(this.centerFrame){this.setDelta(Math.round(parseInt(e.width,10)/2),Math.round(parseInt(e.height,10)/2))}this.setDragElPos(b,c);YAHOO.util.Dom.setStyle(a,"visibility","visible")},_resizeProxy:function(){if(this.resizeFrame){var f=YAHOO.util.Dom;var c=this.getEl();var b=this.getDragEl();var g=parseInt(f.getStyle(b,"borderTopWidth"),10);var e=parseInt(f.getStyle(b,"borderRightWidth"),10);var h=parseInt(f.getStyle(b,"borderBottomWidth"),10);var a=parseInt(f.getStyle(b,"borderLeftWidth"),10);if(isNaN(g)){g=0}if(isNaN(e)){e=0}if(isNaN(h)){h=0}if(isNaN(a)){a=0}var i=Math.max(0,c.offsetWidth-e-a);var d=Math.max(0,c.offsetHeight-g-h);f.setStyle(b,"width",i+"px");f.setStyle(b,"height",d+"px")}},b4MouseDown:function(c){this.setStartPosition();var a=YAHOO.util.Event.getPageX(c);var b=YAHOO.util.Event.getPageY(c);this.autoOffset(a,b)},b4StartDrag:function(a,b){this.showFrame(a,b)},b4EndDrag:function(a){YAHOO.util.Dom.setStyle(this.getDragEl(),"visibility","hidden")},endDrag:function(b){var c=YAHOO.util.Dom;var d=this.getEl();var a=this.getDragEl();c.setStyle(a,"visibility","");c.setStyle(d,"visibility","hidden");YAHOO.util.DDM.moveToEl(d,a);c.setStyle(a,"visibility","hidden");c.setStyle(d,"visibility","")},toString:function(){return("DDProxy "+this.id)}});YAHOO.util.DDTarget=function(b,a,c){if(b){this.initTarget(b,a,c)}};YAHOO.extend(YAHOO.util.DDTarget,YAHOO.util.DragDrop,{toString:function(){return("DDTarget "+this.id)}});YAHOO.register("dragdrop",YAHOO.util.DragDropMgr,{version:"2.7.0",build:"1799"});YAHOO.util.Attribute=function(b,a){if(a){this.owner=a;this.configure(b,true)}};YAHOO.util.Attribute.prototype={name:undefined,value:null,owner:null,readOnly:false,writeOnce:false,_initialConfig:null,_written:false,method:null,setter:null,getter:null,validator:null,getValue:function(){var a=this.value;if(this.getter){a=this.getter.call(this.owner,this.name)}return a},setValue:function(b,f){var c,a=this.owner,e=this.name;var d={type:e,prevValue:this.getValue(),newValue:b};if(this.readOnly||(this.writeOnce&&this._written)){return false}if(this.validator&&!this.validator.call(a,b)){return false}if(!f){c=a.fireBeforeChangeEvent(d);if(c===false){return false}}if(this.setter){b=this.setter.call(a,b,this.name);if(b===undefined){}}if(this.method){this.method.call(a,b,this.name)}this.value=b;this._written=true;d.type=e;if(!f){this.owner.fireChangeEvent(d)}return true},configure:function(c,b){c=c||{};if(b){this._written=false}this._initialConfig=this._initialConfig||{};for(var a in c){if(c.hasOwnProperty(a)){this[a]=c[a];if(b){this._initialConfig[a]=c[a]}}}},resetValue:function(){return this.setValue(this._initialConfig.value)},resetConfig:function(){this.configure(this._initialConfig,true)},refresh:function(a){this.setValue(this.value,a)}};(function(){var a=YAHOO.util.Lang;YAHOO.util.AttributeProvider=function(){};YAHOO.util.AttributeProvider.prototype={_configs:null,get:function(b){this._configs=this._configs||{};var c=this._configs[b];if(!c||!this._configs.hasOwnProperty(b)){return null}return c.getValue()},set:function(c,b,e){this._configs=this._configs||{};var d=this._configs[c];if(!d){return false}return d.setValue(b,e)},getAttributeKeys:function(){this._configs=this._configs;var b=[],c;for(c in this._configs){if(a.hasOwnProperty(this._configs,c)&&!a.isUndefined(this._configs[c])){b[b.length]=c}}return b},setAttributes:function(b,d){for(var c in b){if(a.hasOwnProperty(b,c)){this.set(c,b[c],d)}}},resetValue:function(b,c){this._configs=this._configs||{};if(this._configs[b]){this.set(b,this._configs[b]._initialConfig.value,c);return true}return false},refresh:function(c,e){this._configs=this._configs||{};var b=this._configs;c=((a.isString(c))?[c]:c)||this.getAttributeKeys();for(var d=0,f=c.length;d<f;++d){if(b.hasOwnProperty(c[d])){this._configs[c[d]].refresh(e)}}},register:function(c,b){this.setAttributeConfig(c,b)},getAttributeConfig:function(c){this._configs=this._configs||{};var d=this._configs[c]||{};var b={};for(c in d){if(a.hasOwnProperty(d,c)){b[c]=d[c]}}return b},setAttributeConfig:function(d,c,b){this._configs=this._configs||{};c=c||{};if(!this._configs[d]){c.name=d;this._configs[d]=this.createAttribute(c)}else{this._configs[d].configure(c,b)}},configureAttribute:function(d,c,b){this.setAttributeConfig(d,c,b)},resetAttributeConfig:function(b){this._configs=this._configs||{};this._configs[b].resetConfig()},subscribe:function(c,b){this._events=this._events||{};if(!(c in this._events)){this._events[c]=this.createEvent(c)}YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments)},on:function(){this.subscribe.apply(this,arguments)},addListener:function(){this.subscribe.apply(this,arguments)},fireBeforeChangeEvent:function(b){var c="before";c+=b.type.charAt(0).toUpperCase()+b.type.substr(1)+"Change";b.type=c;return this.fireEvent(b.type,b)},fireChangeEvent:function(b){b.type+="Change";return this.fireEvent(b.type,b)},createAttribute:function(b){return new YAHOO.util.Attribute(b,this)}};YAHOO.augment(YAHOO.util.AttributeProvider,YAHOO.util.EventProvider)})();(function(){var c=YAHOO.util.Dom,b=YAHOO.util.AttributeProvider;var a=function(e,d){this.init.apply(this,arguments)};a.DOM_EVENTS={click:true,dblclick:true,keydown:true,keypress:true,keyup:true,mousedown:true,mousemove:true,mouseout:true,mouseover:true,mouseup:true,focus:true,blur:true,submit:true,change:true};a.prototype={DOM_EVENTS:null,DEFAULT_HTML_SETTER:function(d,f){var e=this.get("element");if(e){e[f]=d}},DEFAULT_HTML_GETTER:function(f){var e=this.get("element"),d;if(e){d=e[f]}return d},appendChild:function(d){d=d.get?d.get("element"):d;return this.get("element").appendChild(d)},getElementsByTagName:function(d){return this.get("element").getElementsByTagName(d)},hasChildNodes:function(){return this.get("element").hasChildNodes()},insertBefore:function(e,d){e=e.get?e.get("element"):e;d=(d&&d.get)?d.get("element"):d;return this.get("element").insertBefore(e,d)},removeChild:function(d){d=d.get?d.get("element"):d;return this.get("element").removeChild(d)},replaceChild:function(e,d){e=e.get?e.get("element"):e;d=d.get?d.get("element"):d;return this.get("element").replaceChild(e,d)},initAttributes:function(d){},addListener:function(e,f,d,g){var h=this.get("element")||this.get("id");g=g||this;var i=this;if(!this._events[e]){if(h&&this.DOM_EVENTS[e]){YAHOO.util.Event.addListener(h,e,function(j){if(j.srcElement&&!j.target){j.target=j.srcElement}i.fireEvent(e,j)},d,g)}this.createEvent(e,this)}return YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments)},on:function(){return this.addListener.apply(this,arguments)},subscribe:function(){return this.addListener.apply(this,arguments)},removeListener:function(d,e){return this.unsubscribe.apply(this,arguments)},addClass:function(d){c.addClass(this.get("element"),d)},getElementsByClassName:function(d,e){return c.getElementsByClassName(d,e,this.get("element"))},hasClass:function(d){return c.hasClass(this.get("element"),d)},removeClass:function(d){return c.removeClass(this.get("element"),d)},replaceClass:function(d,e){return c.replaceClass(this.get("element"),d,e)},setStyle:function(d,e){return c.setStyle(this.get("element"),d,e)},getStyle:function(d){return c.getStyle(this.get("element"),d)},fireQueue:function(){var e=this._queue;for(var d=0,f=e.length;d<f;++d){this[e[d][0]].apply(this,e[d][1])}},appendTo:function(e,d){e=(e.get)?e.get("element"):c.get(e);this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:e});d=(d&&d.get)?d.get("element"):c.get(d);var f=this.get("element");if(!f){return false}if(!e){return false}if(f.parent!=e){if(d){e.insertBefore(f,d)}else{e.appendChild(f)}}this.fireEvent("appendTo",{type:"appendTo",target:e});return f},get:function(f){var d=this._configs||{},e=d.element;if(e&&!d[f]&&!YAHOO.lang.isUndefined(e.value[f])){this._setHTMLAttrConfig(f)}return b.prototype.get.call(this,f)},setAttributes:function(d,g){var i={},f=this._configOrder;for(var e=0,j=f.length;e<j;++e){if(d[f[e]]!==undefined){i[f[e]]=true;this.set(f[e],d[f[e]],g)}}for(var h in d){if(d.hasOwnProperty(h)&&!i[h]){this.set(h,d[h],g)}}},set:function(f,d,g){var e=this.get("element");if(!e){this._queue[this._queue.length]=["set",arguments];if(this._configs[f]){this._configs[f].value=d}return}if(!this._configs[f]&&!YAHOO.lang.isUndefined(e[f])){this._setHTMLAttrConfig(f)}return b.prototype.set.apply(this,arguments)},setAttributeConfig:function(f,e,d){this._configOrder.push(f);b.prototype.setAttributeConfig.apply(this,arguments)},createEvent:function(d,e){this._events[d]=true;return b.prototype.createEvent.apply(this,arguments)},init:function(d,e){this._initElement(d,e)},destroy:function(){var d=this.get("element");YAHOO.util.Event.purgeElement(d,true);this.unsubscribeAll();if(d&&d.parentNode){d.parentNode.removeChild(d)}this._queue=[];this._events={};this._configs={};this._configOrder=[]},_initElement:function(f,g){this._queue=this._queue||[];this._events=this._events||{};this._configs=this._configs||{};this._configOrder=[];g=g||{};g.element=g.element||f||null;var d=false;var h=a.DOM_EVENTS;this.DOM_EVENTS=this.DOM_EVENTS||{};for(var e in h){if(h.hasOwnProperty(e)){this.DOM_EVENTS[e]=h[e]}}if(typeof g.element==="string"){this._setHTMLAttrConfig("id",{value:g.element})}if(c.get(g.element)){d=true;this._initHTMLElement(g);this._initContent(g)}YAHOO.util.Event.onAvailable(g.element,function(){if(!d){this._initHTMLElement(g)}this.fireEvent("available",{type:"available",target:c.get(g.element)})},this,true);YAHOO.util.Event.onContentReady(g.element,function(){if(!d){this._initContent(g)}this.fireEvent("contentReady",{type:"contentReady",target:c.get(g.element)})},this,true)},_initHTMLElement:function(d){this.setAttributeConfig("element",{value:c.get(d.element),readOnly:true})},_initContent:function(d){this.initAttributes(d);this.setAttributes(d,true);this.fireQueue()},_setHTMLAttrConfig:function(f,d){var e=this.get("element");d=d||{};d.name=f;d.setter=d.setter||this.DEFAULT_HTML_SETTER;d.getter=d.getter||this.DEFAULT_HTML_GETTER;d.value=d.value||e[f];this._configs[f]=new YAHOO.util.Attribute(d,this)}};YAHOO.augment(a,b);YAHOO.util.Element=a})();YAHOO.register("element",YAHOO.util.Element,{version:"2.7.0",build:"1799"});YAHOO.lang.JSON=(function(){var l=YAHOO.lang,_UNICODE_EXCEPTIONS=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,_ESCAPES=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,_VALUES=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,_BRACKETS=/(?:^|:|,)(?:\s*\[)+/g,_INVALID=/^[\],:{}\s]*$/,_SPECIAL_CHARS=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,_CHARS={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function _revive(data,reviver){var walk=function(o,key){var k,v,value=o[key];if(value&&typeof value==="object"){for(k in value){if(l.hasOwnProperty(value,k)){v=walk(value,k);if(v===undefined){delete value[k]}else{value[k]=v}}}}return reviver.call(o,key,value)};return typeof reviver==="function"?walk({"":data},""):data}function _char(c){if(!_CHARS[c]){_CHARS[c]="\\u"+("0000"+(+(c.charCodeAt(0))).toString(16)).slice(-4)}return _CHARS[c]}function _prepare(s){return s.replace(_UNICODE_EXCEPTIONS,_char)}function _isValid(str){return l.isString(str)&&_INVALID.test(str.replace(_ESCAPES,"@").replace(_VALUES,"]").replace(_BRACKETS,""))}function _string(s){return'"'+s.replace(_SPECIAL_CHARS,_char)+'"'}function _stringify(h,key,d,w,pstack){var o=typeof w==="function"?w.call(h,key,h[key]):h[key],i,len,j,k,v,isArray,a;if(o instanceof Date){o=l.JSON.dateToString(o)}else{if(o instanceof String||o instanceof Boolean||o instanceof Number){o=o.valueOf()}}switch(typeof o){case"string":return _string(o);case"number":return isFinite(o)?String(o):"null";case"boolean":return String(o);case"object":if(o===null){return"null"}for(i=pstack.length-1;i>=0;--i){if(pstack[i]===o){return"null"}}pstack[pstack.length]=o;a=[];isArray=l.isArray(o);if(d>0){if(isArray){for(i=o.length-1;i>=0;--i){a[i]=_stringify(o,i,d-1,w,pstack)||"null"}}else{j=0;if(l.isArray(w)){for(i=0,len=w.length;i<len;++i){k=w[i];v=_stringify(o,k,d-1,w,pstack);if(v){a[j++]=_string(k)+":"+v}}}else{for(k in o){if(typeof k==="string"&&l.hasOwnProperty(o,k)){v=_stringify(o,k,d-1,w,pstack);if(v){a[j++]=_string(k)+":"+v}}}}a.sort()}}pstack.pop();return isArray?"["+a.join(",")+"]":"{"+a.join(",")+"}"}return undefined}return{isValid:function(s){return _isValid(_prepare(s))},parse:function(s,reviver){s=_prepare(s);if(_isValid(s)){return _revive(eval("("+s+")"),reviver)}throw new SyntaxError("parseJSON")},stringify:function(o,w,d){if(o!==undefined){if(l.isArray(w)){w=(function(a){var uniq=[],map={},v,i,j,len;for(i=0,j=0,len=a.length;i<len;++i){v=a[i];if(typeof v==="string"&&map[v]===undefined){uniq[(map[v]=j++)]=v}}return uniq})(w)}d=d>=0?d:1/0;return _stringify({"":o},"",d,w,[])}return undefined},dateToString:function(d){function _zeroPad(v){return v<10?"0"+v:v}return d.getUTCFullYear()+"-"+_zeroPad(d.getUTCMonth()+1)+"-"+_zeroPad(d.getUTCDate())+"T"+_zeroPad(d.getUTCHours())+":"+_zeroPad(d.getUTCMinutes())+":"+_zeroPad(d.getUTCSeconds())+"Z"},stringToDate:function(str){if(/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})Z$/.test(str)){var d=new Date();d.setUTCFullYear(RegExp.$1,(RegExp.$2|0)-1,RegExp.$3);d.setUTCHours(RegExp.$4,RegExp.$5,RegExp.$6);return d}return str}}})();YAHOO.register("json",YAHOO.lang.JSON,{version:"2.7.0",build:"1799"});(function(){var h="DIV",m="hd",q="bd",n="ft",c="LI",ad="disabled",aa="mouseover",w="mouseout",f="mousedown",v="mouseup",i=YAHOO.env.ua.ie?"focusin":"focus",e="click",ac="keydown",o="keyup",s="keypress",p="clicktohide",g="position",k="dynamic",b="showdelay",r="selected",z="visible",d="UL",j="MenuManager",ab=YAHOO.util.Dom,a=YAHOO.util.Event,u=YAHOO.lang;YAHOO.widget.MenuManager=function(){var R=false,P={},A={},O={},E={click:"clickEvent",mousedown:"mouseDownEvent",mouseup:"mouseUpEvent",mouseover:"mouseOverEvent",mouseout:"mouseOutEvent",keydown:"keyDownEvent",keyup:"keyUpEvent",keypress:"keyPressEvent",focus:"focusEvent",focusin:"focusEvent",blur:"blurEvent",focusout:"blurEvent"},F=null,H=null;function D(S){var U,T;if(S&&S.tagName){switch(S.tagName.toUpperCase()){case h:U=S.parentNode;if((ab.hasClass(S,m)||ab.hasClass(S,q)||ab.hasClass(S,n))&&U&&U.tagName&&U.tagName.toUpperCase()==h){T=U}else{T=S}break;case c:T=S;break;default:U=S.parentNode;if(U){T=D(U)}break}}return T}function B(W){var ae=a.getTarget(W),Z=D(ae),U,Y,X,S,T;if(Z){Y=Z.tagName.toUpperCase();if(Y==c){X=Z.id;if(X&&O[X]){S=O[X];T=S.parent}}else{if(Y==h){if(Z.id){T=P[Z.id]}}}}if(T){U=E[W.type];if(S&&!S.cfg.getProperty(ad)){S[U].fire(W)}T[U].fire(W,S)}else{if(W.type==f){for(var V in A){if(u.hasOwnProperty(A,V)){T=A[V];if(T.cfg.getProperty(p)&&!(T instanceof YAHOO.widget.MenuBar)&&T.cfg.getProperty(g)==k){T.hide()}else{if(T.cfg.getProperty(b)>0){T._cancelShowDelay()}if(T.activeItem){T.activeItem.blur();T.activeItem.cfg.setProperty(r,false);T.activeItem=null}}}}}else{if(W.type==i){F=ae}}}}function M(T,U,S){if(P[S.id]){this.removeMenu(S)}}function I(T,U){var S=U[1];if(S){H=S}}function J(S,T){H=null}function Q(U,V,S){if(S&&S.focus){try{S.focus()}catch(T){}}this.hideEvent.unsubscribe(Q,S)}function G(S,T){if(this===this.getRoot()&&this.cfg.getProperty(g)===k){this.hideEvent.subscribe(Q,F);this.focus()}}function L(T,U){var V=U[0],S=this.id;if(V){A[S]=this}else{if(A[S]){delete A[S]}}}function K(S,T){C(this)}function C(S){var T=S.id;if(T&&O[T]){if(H==S){H=null}delete O[T];S.destroyEvent.unsubscribe(K)}}function N(U,V){var S=V[0],T;if(S instanceof YAHOO.widget.MenuItem){T=S.id;if(!O[T]){O[T]=S;S.destroyEvent.subscribe(K)}}}return{addMenu:function(S){var T;if(S instanceof YAHOO.widget.Menu&&S.id&&!P[S.id]){P[S.id]=S;if(!R){T=document;a.on(T,aa,B,this,true);a.on(T,w,B,this,true);a.on(T,f,B,this,true);a.on(T,v,B,this,true);a.on(T,e,B,this,true);a.on(T,ac,B,this,true);a.on(T,o,B,this,true);a.on(T,s,B,this,true);a.onFocus(T,B,this,true);a.onBlur(T,B,this,true);R=true}S.cfg.subscribeToConfigEvent(z,L);S.destroyEvent.subscribe(M,S,this);S.itemAddedEvent.subscribe(N);S.focusEvent.subscribe(I);S.blurEvent.subscribe(J);S.showEvent.subscribe(G)}},removeMenu:function(S){var U,V,T;if(S){U=S.id;if((U in P)&&(P[U]==S)){V=S.getItems();if(V&&V.length>0){T=V.length-1;do{C(V[T])}while(T--)}delete P[U];if((U in A)&&(A[U]==S)){delete A[U]}if(S.cfg){S.cfg.unsubscribeFromConfigEvent(z,L)}S.destroyEvent.unsubscribe(M,S);S.itemAddedEvent.unsubscribe(N);S.focusEvent.unsubscribe(I);S.blurEvent.unsubscribe(J)}}},hideVisible:function(){var T;for(var S in A){if(u.hasOwnProperty(A,S)){T=A[S];if(!(T instanceof YAHOO.widget.MenuBar)&&T.cfg.getProperty(g)==k){T.hide()}}}},getVisible:function(){return A},getMenus:function(){return P},getMenu:function(S){var T;if(S in P){T=P[S]}return T},getMenuItem:function(S){var T;if(S in O){T=O[S]}return T},getMenuItemGroup:function(T){var W=ab.get(T),X,Y,S,V,U;if(W&&W.tagName&&W.tagName.toUpperCase()==d){Y=W.firstChild;if(Y){X=[];do{V=Y.id;if(V){S=this.getMenuItem(V);if(S){X[X.length]=S}}}while((Y=Y.nextSibling));if(X.length>0){U=X}}}return U},getFocusedMenuItem:function(){return H},getFocusedMenu:function(){var S;if(H){S=H.parent.getRoot()}return S},toString:function(){return j}}}()})();(function(){var ah=YAHOO.lang,bA="Menu",bh="DIV",be="div",bE="id",am="SELECT",aT="xy",a7="y",bt="UL",bd="ul",ak="first-of-type",aN="LI",aQ="OPTGROUP",br="OPTION",bJ="disabled",bQ="none",az="selected",bx="groupindex",aP="index",ba="submenu",bw="visible",bR="hidedelay",bN="position",aq="dynamic",bm="static",bD=aq+","+bm,a0="windows",a8="url",bc="#",a3="target",aa="maxheight",a5="topscrollbar",aA="bottomscrollbar",aU="_",a9=a5+aU+bJ,bk=aA+aU+bJ,aW="mousemove",bv="showdelay",aV="submenuhidedelay",ao="iframe",aB="constraintoviewport",aw="preventcontextoverlap",af="submenualignment",aY="autosubmenudisplay",ar="clicktohide",aR="container",aO="scrollincrement",bH="minscrollheight",ay="classname",bK="shadow",bz="keepopen",bq="hd",bl="hastitle",aI="context",aD="",bG="mousedown",bM="keydown",bC="height",a4="width",ad="px",bs="effect",ap="monitorresize",bS="display",bT="block",bf="visibility",av="absolute",ab="zindex",aM="yui-menu-body-scrolled",aj="&#32;",bp=" ",bI="mouseover",bi="mouseout",ac="itemAdded",aK="itemRemoved",ai="hidden",aF="yui-menu-shadow",an=aF+"-visible",aL=aF+bp+an;YAHOO.widget.Menu=function(a,b){if(b){this.parent=b.parent;this.lazyLoad=b.lazyLoad||b.lazyload;this.itemData=b.itemData||b.itemdata}YAHOO.widget.Menu.superclass.constructor.call(this,a,b)};function bn(a){var b=false;if(ah.isString(a)){b=(bD.indexOf((a.toLowerCase()))!=-1)}return b}var aS=YAHOO.util.Dom,au=YAHOO.util.Event,bu=YAHOO.widget.Module,at=YAHOO.widget.Overlay,aG=YAHOO.widget.Menu,ax=YAHOO.widget.MenuManager,bj=YAHOO.util.CustomEvent,by=YAHOO.env.ua,bB,bO=[["mouseOverEvent",bI],["mouseOutEvent",bi],["mouseDownEvent",bG],["mouseUpEvent","mouseup"],["clickEvent","click"],["keyPressEvent","keypress"],["keyDownEvent",bM],["keyUpEvent","keyup"],["focusEvent","focus"],["blurEvent","blur"],["itemAddedEvent",ac],["itemRemovedEvent",aK]],bP={key:bw,value:false,validator:ah.isBoolean},ae={key:aB,value:true,validator:ah.isBoolean,supercedes:[ao,"x",a7,aT]},al={key:aw,value:true,validator:ah.isBoolean,supercedes:[aB]},a6={key:bN,value:aq,validator:bn,supercedes:[bw,ao]},bo={key:af,value:["tl","tr"]},aE={key:aY,value:true,validator:ah.isBoolean,suppressEvent:true},aZ={key:bv,value:250,validator:ah.isNumber,suppressEvent:true},aH={key:bR,value:0,validator:ah.isNumber,suppressEvent:true},aC={key:aV,value:250,validator:ah.isNumber,suppressEvent:true},aJ={key:ar,value:true,validator:ah.isBoolean,suppressEvent:true},ag={key:aR,suppressEvent:true},bL={key:aO,value:1,validator:ah.isNumber,supercedes:[aa],suppressEvent:true},bb={key:bH,value:90,validator:ah.isNumber,supercedes:[aa],suppressEvent:true},a1={key:aa,value:0,validator:ah.isNumber,supercedes:[ao],suppressEvent:true},a2={key:ay,value:null,validator:ah.isString,suppressEvent:true},aX={key:bJ,value:false,validator:ah.isBoolean,suppressEvent:true},bg={key:bK,value:true,validator:ah.isBoolean,suppressEvent:true,supercedes:[bw]},bF={key:bz,value:false,validator:ah.isBoolean};YAHOO.lang.extend(aG,at,{CSS_CLASS_NAME:"yuimenu",ITEM_TYPE:null,GROUP_TITLE_TAG_NAME:"h6",OFF_SCREEN_POSITION:"-999em",_useHideDelay:false,_bHandledMouseOverEvent:false,_bHandledMouseOutEvent:false,_aGroupTitleElements:null,_aItemGroups:null,_aListElements:null,_nCurrentMouseX:0,_bStopMouseEventHandlers:false,_sClassName:null,lazyLoad:false,itemData:null,activeItem:null,parent:null,srcElement:null,init:function(c,a){this._aItemGroups=[];this._aListElements=[];this._aGroupTitleElements=[];if(!this.ITEM_TYPE){this.ITEM_TYPE=YAHOO.widget.MenuItem}var b;if(ah.isString(c)){b=aS.get(c)}else{if(c.tagName){b=c}}if(b&&b.tagName){switch(b.tagName.toUpperCase()){case bh:this.srcElement=b;if(!b.id){b.setAttribute(bE,aS.generateId())}aG.superclass.init.call(this,b);this.beforeInitEvent.fire(aG);break;case am:this.srcElement=b;aG.superclass.init.call(this,aS.generateId());this.beforeInitEvent.fire(aG);break}}else{aG.superclass.init.call(this,c);this.beforeInitEvent.fire(aG)}if(this.element){aS.addClass(this.element,this.CSS_CLASS_NAME);this.initEvent.subscribe(this._onInit);this.beforeRenderEvent.subscribe(this._onBeforeRender);this.renderEvent.subscribe(this._onRender);this.beforeShowEvent.subscribe(this._onBeforeShow);this.hideEvent.subscribe(this._onHide);this.showEvent.subscribe(this._onShow);this.beforeHideEvent.subscribe(this._onBeforeHide);this.mouseOverEvent.subscribe(this._onMouseOver);this.mouseOutEvent.subscribe(this._onMouseOut);this.clickEvent.subscribe(this._onClick);this.keyDownEvent.subscribe(this._onKeyDown);this.keyPressEvent.subscribe(this._onKeyPress);this.blurEvent.subscribe(this._onBlur);if((by.gecko&&by.gecko<1.9)||by.webkit){this.cfg.subscribeToConfigEvent(a7,this._onYChange)}if(a){this.cfg.applyConfig(a,true)}ax.addMenu(this);this.initEvent.fire(aG)}},_initSubTree:function(){var b=this.srcElement,c,g,d,a,e,f,h;if(b){c=(b.tagName&&b.tagName.toUpperCase());if(c==bh){a=this.body.firstChild;if(a){g=0;d=this.GROUP_TITLE_TAG_NAME.toUpperCase();do{if(a&&a.tagName){switch(a.tagName.toUpperCase()){case d:this._aGroupTitleElements[g]=a;break;case bt:this._aListElements[g]=a;this._aItemGroups[g]=[];g++;break}}}while((a=a.nextSibling));if(this._aListElements[0]){aS.addClass(this._aListElements[0],ak)}}}a=null;if(c){switch(c){case bh:e=this._aListElements;f=e.length;if(f>0){h=f-1;do{a=e[h].firstChild;if(a){do{if(a&&a.tagName&&a.tagName.toUpperCase()==aN){this.addItem(new this.ITEM_TYPE(a,{parent:this}),h)}}while((a=a.nextSibling))}}while(h--)}break;case am:a=b.firstChild;do{if(a&&a.tagName){switch(a.tagName.toUpperCase()){case aQ:case br:this.addItem(new this.ITEM_TYPE(a,{parent:this}));break}}}while((a=a.nextSibling));break}}}},_getFirstEnabledItem:function(){var b=this.getItems(),c=b.length,d,e;for(var a=0;a<c;a++){d=b[a];if(d&&!d.cfg.getProperty(bJ)&&d.element.style.display!=bQ){e=d;break}}return e},_addItemToGroup:function(k,j,d){var h,b,a,f,m,e,c,i;function g(o,n){return(o[n]||g(o,(n+1)))}if(j instanceof this.ITEM_TYPE){h=j;h.parent=this}else{if(ah.isString(j)){h=new this.ITEM_TYPE(j,{parent:this})}else{if(ah.isObject(j)){j.parent=this;h=new this.ITEM_TYPE(j.text,j)}}}if(h){if(h.cfg.getProperty(az)){this.activeItem=h}b=ah.isNumber(k)?k:0;a=this._getItemGroup(b);if(!a){a=this._createItemGroup(b)}if(ah.isNumber(d)){m=(d>=a.length);if(a[d]){a.splice(d,0,h)}else{a[d]=h}f=a[d];if(f){if(m&&(!f.element.parentNode||f.element.parentNode.nodeType==11)){this._aListElements[b].appendChild(f.element)}else{e=g(a,(d+1));if(e&&(!f.element.parentNode||f.element.parentNode.nodeType==11)){this._aListElements[b].insertBefore(f.element,e.element)}}f.parent=this;this._subscribeToItemEvents(f);this._configureSubmenu(f);this._updateItemProperties(b);this.itemAddedEvent.fire(f);this.changeContentEvent.fire();i=f}}else{c=a.length;a[c]=h;f=a[c];if(f){if(!aS.isAncestor(this._aListElements[b],f.element)){this._aListElements[b].appendChild(f.element)}f.element.setAttribute(bx,b);f.element.setAttribute(aP,c);f.parent=this;f.index=c;f.groupIndex=b;this._subscribeToItemEvents(f);this._configureSubmenu(f);if(c===0){aS.addClass(f.element,ak)}this.itemAddedEvent.fire(f);this.changeContentEvent.fire();i=f}}}return i},_removeItemFromGroupByIndex:function(f,a){var g=ah.isNumber(f)?f:0,e=this._getItemGroup(g),c,d,b;if(e){c=e.splice(a,1);d=c[0];if(d){this._updateItemProperties(g);if(e.length===0){b=this._aListElements[g];if(this.body&&b){this.body.removeChild(b)}this._aItemGroups.splice(g,1);this._aListElements.splice(g,1);b=this._aListElements[0];if(b){aS.addClass(b,ak)}}this.itemRemovedEvent.fire(d);this.changeContentEvent.fire()}}return d},_removeItemFromGroupByValue:function(f,b){var d=this._getItemGroup(f),c,e,g,a;if(d){c=d.length;e=-1;if(c>0){a=c-1;do{if(d[a]==b){e=a;break}}while(a--);if(e>-1){g=this._removeItemFromGroupByIndex(f,e)}}}return g},_updateItemProperties:function(a){var f=this._getItemGroup(a),c=f.length,d,e,b;if(c>0){b=c-1;do{d=f[b];if(d){e=d.element;d.index=b;d.groupIndex=a;e.setAttribute(bx,a);e.setAttribute(aP,b);aS.removeClass(e,ak)}}while(b--);if(e){aS.addClass(e,ak)}}},_createItemGroup:function(c){var b,a;if(!this._aItemGroups[c]){this._aItemGroups[c]=[];b=document.createElement(bd);this._aListElements[c]=b;a=this._aItemGroups[c]}return a},_getItemGroup:function(d){var b=ah.isNumber(d)?d:0,c=this._aItemGroups,a;if(b in c){a=c[b]}return a},_configureSubmenu:function(b){var a=b.cfg.getProperty(ba);if(a){this.cfg.configChangedEvent.subscribe(this._onParentMenuConfigChange,a,true);this.renderEvent.subscribe(this._onParentMenuRender,a,true)}},_subscribeToItemEvents:function(a){a.destroyEvent.subscribe(this._onMenuItemDestroy,a,this);a.cfg.configChangedEvent.subscribe(this._onMenuItemConfigChange,a,this)},_onVisibleChange:function(c,a){var b=a[0];if(b){aS.addClass(this.element,bw)}else{aS.removeClass(this.element,bw)}},_cancelHideDelay:function(){var a=this.getRoot()._hideDelayTimer;if(a){a.cancel()}},_execHideDelay:function(){this._cancelHideDelay();var a=this.getRoot();a._hideDelayTimer=ah.later(a.cfg.getProperty(bR),this,function(){if(a.activeItem){if(a.hasFocus()){a.activeItem.focus()}a.clearActiveItem()}if(a==this&&!(this instanceof YAHOO.widget.MenuBar)&&this.cfg.getProperty(bN)==aq){this.hide()}})},_cancelShowDelay:function(){var a=this.getRoot()._showDelayTimer;if(a){a.cancel()}},_execSubmenuHideDelay:function(c,a,b){c._submenuHideDelayTimer=ah.later(50,this,function(){if(this._nCurrentMouseX>(a+10)){c._submenuHideDelayTimer=ah.later(b,c,function(){this.hide()})}else{c.hide()}})},_disableScrollHeader:function(){if(!this._bHeaderDisabled){aS.addClass(this.header,a9);this._bHeaderDisabled=true}},_disableScrollFooter:function(){if(!this._bFooterDisabled){aS.addClass(this.footer,bk);this._bFooterDisabled=true}},_enableScrollHeader:function(){if(this._bHeaderDisabled){aS.removeClass(this.header,a9);this._bHeaderDisabled=false}},_enableScrollFooter:function(){if(this._bFooterDisabled){aS.removeClass(this.footer,bk);this._bFooterDisabled=false}},_onMouseOver:function(o,k){var m=k[0],e=k[1],h=au.getTarget(m),n=this.getRoot(),b=this._submenuHideDelayTimer,f,a,g,d,i,j;var c=function(){if(this.parent.cfg.getProperty(az)){this.show()}};if(!this._bStopMouseEventHandlers){if(!this._bHandledMouseOverEvent&&(h==this.element||aS.isAncestor(this.element,h))){if(this._useHideDelay){this._cancelHideDelay()}this._nCurrentMouseX=0;au.on(this.element,aW,this._onMouseMove,this,true);if(!(e&&aS.isAncestor(e.element,au.getRelatedTarget(m)))){this.clearActiveItem()}if(this.parent&&b){b.cancel();this.parent.cfg.setProperty(az,true);f=this.parent.parent;f._bHandledMouseOutEvent=true;f._bHandledMouseOverEvent=false}this._bHandledMouseOverEvent=true;this._bHandledMouseOutEvent=false}if(e&&!e.handledMouseOverEvent&&!e.cfg.getProperty(bJ)&&(h==e.element||aS.isAncestor(e.element,h))){a=this.cfg.getProperty(bv);g=(a>0);if(g){this._cancelShowDelay()}d=this.activeItem;if(d){d.cfg.setProperty(az,false)}i=e.cfg;i.setProperty(az,true);if(this.hasFocus()||n._hasFocus){e.focus();n._hasFocus=false}if(this.cfg.getProperty(aY)){j=i.getProperty(ba);if(j){if(g){n._showDelayTimer=ah.later(n.cfg.getProperty(bv),j,c)}else{j.show()}}}e.handledMouseOverEvent=true;e.handledMouseOutEvent=false}}},_onMouseOut:function(f,b){var d=b[0],h=b[1],a=au.getRelatedTarget(d),g=false,i,j,e,c;if(!this._bStopMouseEventHandlers){if(h&&!h.cfg.getProperty(bJ)){i=h.cfg;j=i.getProperty(ba);if(j&&(a==j.element||aS.isAncestor(j.element,a))){g=true}if(!h.handledMouseOutEvent&&((a!=h.element&&!aS.isAncestor(h.element,a))||g)){if(!g){h.cfg.setProperty(az,false);if(j){e=this.cfg.getProperty(aV);c=this.cfg.getProperty(bv);if(!(this instanceof YAHOO.widget.MenuBar)&&e>0&&c>=e){this._execSubmenuHideDelay(j,au.getPageX(d),e)}else{j.hide()}}}h.handledMouseOutEvent=true;h.handledMouseOverEvent=false}}if(!this._bHandledMouseOutEvent&&((a!=this.element&&!aS.isAncestor(this.element,a))||g)){if(this._useHideDelay){this._execHideDelay()}au.removeListener(this.element,aW,this._onMouseMove);this._nCurrentMouseX=au.getPageX(d);this._bHandledMouseOutEvent=true;this._bHandledMouseOverEvent=false}}},_onMouseMove:function(a,b){if(!this._bStopMouseEventHandlers){this._nCurrentMouseX=au.getPageX(a)}},_onClick:function(b,d){var n=d[0],j=d[1],h=false,m,e,f,g,k,i,c;var a=function(){if(!((by.gecko&&this.platform==a0)&&n.button>0)){f=this.getRoot();if(f instanceof YAHOO.widget.MenuBar||f.cfg.getProperty(bN)==bm){f.clearActiveItem()}else{f.hide()}}};if(j){if(j.cfg.getProperty(bJ)){au.preventDefault(n);a.call(this)}else{m=j.cfg.getProperty(ba);k=j.cfg.getProperty(a8);if(k){i=k.indexOf(bc);c=k.length;if(i!=-1){k=k.substr(i,c);c=k.length;if(c>1){g=k.substr(1,c);e=YAHOO.widget.MenuManager.getMenu(g);if(e){h=(this.getRoot()===e.getRoot())}}else{if(c===1){h=true}}}}if(h&&!j.cfg.getProperty(a3)){au.preventDefault(n);if(by.webkit){j.focus()}else{j.focusEvent.fire()}}if(!m&&!this.cfg.getProperty(bz)){a.call(this)}}}},_onKeyDown:function(m,e){var s=e[0],b=e[1],f,p,a,k,j,c,g,n,o,q,d,h,i;if(this._useHideDelay){this._cancelHideDelay()}function r(){this._bStopMouseEventHandlers=true;ah.later(10,this,function(){this._bStopMouseEventHandlers=false})}if(b&&!b.cfg.getProperty(bJ)){p=b.cfg;a=this.parent;switch(s.keyCode){case 38:case 40:j=(s.keyCode==38)?b.getPreviousEnabledSibling():b.getNextEnabledSibling();if(j){this.clearActiveItem();j.cfg.setProperty(az,true);j.focus();if(this.cfg.getProperty(aa)>0){c=this.body;g=c.scrollTop;n=c.offsetHeight;o=this.getItems();q=o.length-1;d=j.element.offsetTop;if(s.keyCode==40){if(d>=(n+g)){c.scrollTop=d-n}else{if(d<=g){c.scrollTop=0}}if(j==o[q]){c.scrollTop=j.element.offsetTop}}else{if(d<=g){c.scrollTop=d-j.element.offsetHeight}else{if(d>=(g+n)){c.scrollTop=d}}if(j==o[0]){c.scrollTop=0}}g=c.scrollTop;h=c.scrollHeight-c.offsetHeight;if(g===0){this._disableScrollHeader();this._enableScrollFooter()}else{if(g==h){this._enableScrollHeader();this._disableScrollFooter()}else{this._enableScrollHeader();this._enableScrollFooter()}}}}au.preventDefault(s);r();break;case 39:f=p.getProperty(ba);if(f){if(!p.getProperty(az)){p.setProperty(az,true)}f.show();f.setInitialFocus();f.setInitialSelection()}else{k=this.getRoot();if(k instanceof YAHOO.widget.MenuBar){j=k.activeItem.getNextEnabledSibling();if(j){k.clearActiveItem();j.cfg.setProperty(az,true);f=j.cfg.getProperty(ba);if(f){f.show();f.setInitialFocus()}else{j.focus()}}}}au.preventDefault(s);r();break;case 37:if(a){i=a.parent;if(i instanceof YAHOO.widget.MenuBar){j=i.activeItem.getPreviousEnabledSibling();if(j){i.clearActiveItem();j.cfg.setProperty(az,true);f=j.cfg.getProperty(ba);if(f){f.show();f.setInitialFocus()}else{j.focus()}}}else{this.hide();a.focus()}}au.preventDefault(s);r();break}}if(s.keyCode==27){if(this.cfg.getProperty(bN)==aq){this.hide();if(this.parent){this.parent.focus()}}else{if(this.activeItem){f=this.activeItem.cfg.getProperty(ba);if(f&&f.cfg.getProperty(bw)){f.hide();this.activeItem.focus()}else{this.activeItem.blur();this.activeItem.cfg.setProperty(az,false)}}}au.preventDefault(s)}},_onKeyPress:function(c,a){var b=a[0];if(b.keyCode==40||b.keyCode==38){au.preventDefault(b)}},_onBlur:function(a,b){if(this._hasFocus){this._hasFocus=false}},_onYChange:function(a,b){var e=this.parent,c,f,d;if(e){c=e.parent.body.scrollTop;if(c>0){d=(this.cfg.getProperty(a7)-c);aS.setY(this.element,d);f=this.iframe;if(f){aS.setY(f,d)}this.cfg.setProperty(a7,d,true)}}},_onScrollTargetMouseOver:function(h,c){var e=this._bodyScrollTimer;if(e){e.cancel()}this._cancelHideDelay();var b=au.getTarget(h),j=this.body,a=this.cfg.getProperty(aO),f,d;function g(){var k=j.scrollTop;if(k<f){j.scrollTop=(k+a);this._enableScrollHeader()}else{j.scrollTop=f;this._bodyScrollTimer.cancel();this._disableScrollFooter()}}function i(){var k=j.scrollTop;if(k>0){j.scrollTop=(k-a);this._enableScrollFooter()}else{j.scrollTop=0;this._bodyScrollTimer.cancel();this._disableScrollHeader()}}if(aS.hasClass(b,bq)){d=i}else{f=j.scrollHeight-j.offsetHeight;d=g}this._bodyScrollTimer=ah.later(10,this,d,null,true)},_onScrollTargetMouseOut:function(c,b){var a=this._bodyScrollTimer;if(a){a.cancel()}this._cancelHideDelay()},_onInit:function(a,b){this.cfg.subscribeToConfigEvent(bw,this._onVisibleChange);var d=!this.parent,c=this.lazyLoad;if(((d&&!c)||(d&&(this.cfg.getProperty(bw)||this.cfg.getProperty(bN)==bm))||(!d&&!c))&&this.getItemGroups().length===0){if(this.srcElement){this._initSubTree()}if(this.itemData){this.addItems(this.itemData)}}else{if(c){this.cfg.fireQueue()}}},_onBeforeRender:function(g,h){var f=this.element,b=this._aListElements.length,a=true,d=0,c,e;if(b>0){do{c=this._aListElements[d];if(c){if(a){aS.addClass(c,ak);a=false}if(!aS.isAncestor(f,c)){this.appendToBody(c)}e=this._aGroupTitleElements[d];if(e){if(!aS.isAncestor(f,e)){c.parentNode.insertBefore(e,c)}aS.addClass(c,bl)}}d++}while(d<b)}},_onRender:function(a,b){if(this.cfg.getProperty(bN)==aq){if(!this.cfg.getProperty(bw)){this.positionOffScreen()}}},_onBeforeShow:function(h,b){var f,a,g,e=this.cfg.getProperty(aR);if(this.lazyLoad&&this.getItemGroups().length===0){if(this.srcElement){this._initSubTree()}if(this.itemData){if(this.parent&&this.parent.parent&&this.parent.parent.srcElement&&this.parent.parent.srcElement.tagName.toUpperCase()==am){f=this.itemData.length;for(a=0;a<f;a++){if(this.itemData[a].tagName){this.addItem((new this.ITEM_TYPE(this.itemData[a])))}}}else{this.addItems(this.itemData)}}g=this.srcElement;if(g){if(g.tagName.toUpperCase()==am){if(aS.inDocument(g)){this.render(g.parentNode)}else{this.render(e)}}else{this.render()}}else{if(this.parent){this.render(this.parent.element)}else{this.render(e)}}}var d=this.parent,c;if(!d&&this.cfg.getProperty(bN)==aq){this.cfg.refireEvent(aT)}if(d){c=d.parent.cfg.getProperty(af);this.cfg.setProperty(aI,[d.element,c[0],c[1]]);this.align()}},getConstrainedY:function(D){var k=this,p=k.cfg.getProperty(aI),h=k.cfg.getProperty(aa),m,F={trbr:true,tlbl:true,bltl:true,brtr:true},w=(p&&F[p[1]+p[2]]),f=k.element,g=f.offsetHeight,n=at.VIEWPORT_OFFSET,s=aS.getViewportHeight(),o=aS.getDocumentScrollTop(),r=(k.cfg.getProperty(bH)+n<s),i,e,z,v,b=false,d,E,B=o+n,A=o+s-g-n,c=D;var u=function(){var G;if((k.cfg.getProperty(a7)-o)>z){G=(z-g)}else{G=(z+v)}k.cfg.setProperty(a7,(G+o),true);return G};var C=function(){if((k.cfg.getProperty(a7)-o)>z){return(E-n)}else{return(d-n)}};var q=function(){var G;if((k.cfg.getProperty(a7)-o)>z){G=(z+v)}else{G=(z-f.offsetHeight)}k.cfg.setProperty(a7,(G+o),true)};var a=function(){k._setScrollHeight(this.cfg.getProperty(aa));k.hideEvent.unsubscribe(a)};var j=function(){var I=C(),H=(k.getItems().length>0),J,G;if(g>I){J=H?k.cfg.getProperty(bH):g;if((I>J)&&H){m=I}else{m=h}k._setScrollHeight(m);k.hideEvent.subscribe(a);q();if(I<J){if(b){u()}else{u();b=true;G=j()}}}else{if(m&&(m!==h)){k._setScrollHeight(h);k.hideEvent.subscribe(a);q()}}return G};if(D<B||D>A){if(r){if(k.cfg.getProperty(aw)&&w){e=p[0];v=e.offsetHeight;z=(aS.getY(e)-o);d=z;E=(s-(z+v));j();c=k.cfg.getProperty(a7)}else{if(!(k instanceof YAHOO.widget.MenuBar)&&g>=s){i=(s-(n*2));if(i>k.cfg.getProperty(bH)){k._setScrollHeight(i);k.hideEvent.subscribe(a);q();c=k.cfg.getProperty(a7)}}else{if(D<B){c=B}else{if(D>A){c=A}}}}}else{c=n+o}}return c},_onHide:function(a,b){if(this.cfg.getProperty(bN)===aq){this.positionOffScreen()}},_onShow:function(d,g){var e=this.parent,b,a,h,c;function i(j){var k;if(j.type==bG||(j.type==bM&&j.keyCode==27)){k=au.getTarget(j);if(k!=b.element||!aS.isAncestor(b.element,k)){b.cfg.setProperty(aY,false);au.removeListener(document,bG,i);au.removeListener(document,bM,i)}}}function f(k,m,j){this.cfg.setProperty(a4,aD);this.hideEvent.unsubscribe(f,j)}if(e){b=e.parent;if(!b.cfg.getProperty(aY)&&(b instanceof YAHOO.widget.MenuBar||b.cfg.getProperty(bN)==bm)){b.cfg.setProperty(aY,true);au.on(document,bG,i);au.on(document,bM,i)}if((this.cfg.getProperty("x")<b.cfg.getProperty("x"))&&(by.gecko&&by.gecko<1.9)&&!this.cfg.getProperty(a4)){a=this.element;h=a.offsetWidth;a.style.width=h+ad;c=(h-(a.offsetWidth-h))+ad;this.cfg.setProperty(a4,c);this.hideEvent.subscribe(f,c)}}},_onBeforeHide:function(f,a){var b=this.activeItem,d=this.getRoot(),c,e;if(b){c=b.cfg;c.setProperty(az,false);e=c.getProperty(ba);if(e){e.hide()}}if(by.ie&&this.cfg.getProperty(bN)===aq&&this.parent){d._hasFocus=this.hasFocus()}if(d==this){d.blur()}},_onParentMenuConfigChange:function(a,b,c){var e=b[0][0],d=b[0][1];switch(e){case ao:case aB:case bR:case bv:case aV:case ar:case bs:case ay:case aO:case aa:case bH:case ap:case bK:case aw:c.cfg.setProperty(e,d);break;case af:if(!(this.parent.parent instanceof YAHOO.widget.MenuBar)){c.cfg.setProperty(e,d)}break}},_onParentMenuRender:function(a,b,c){var f=c.parent.parent,g=f.cfg,e={constraintoviewport:g.getProperty(aB),xy:[0,0],clicktohide:g.getProperty(ar),effect:g.getProperty(bs),showdelay:g.getProperty(bv),hidedelay:g.getProperty(bR),submenuhidedelay:g.getProperty(aV),classname:g.getProperty(ay),scrollincrement:g.getProperty(aO),maxheight:g.getProperty(aa),minscrollheight:g.getProperty(bH),iframe:g.getProperty(ao),shadow:g.getProperty(bK),preventcontextoverlap:g.getProperty(aw),monitorresize:g.getProperty(ap)},d;if(!(f instanceof YAHOO.widget.MenuBar)){e[af]=g.getProperty(af)}c.cfg.applyConfig(e);if(!this.lazyLoad){d=this.parent.element;if(this.element.parentNode==d){this.render()}else{this.render(d)}}},_onMenuItemDestroy:function(c,a,b){this._removeItemFromGroupByValue(b.groupIndex,b)},_onMenuItemConfigChange:function(f,a,b){var d=a[0][0],c=a[0][1],e;switch(d){case az:if(c===true){this.activeItem=b}break;case ba:e=a[0][1];if(e){this._configureSubmenu(b)}break}},configVisible:function(e,a,d){var b,c;if(this.cfg.getProperty(bN)==aq){aG.superclass.configVisible.call(this,e,a,d)}else{b=a[0];c=aS.getStyle(this.element,bS);aS.setStyle(this.element,bf,bw);if(b){if(c!=bT){this.beforeShowEvent.fire();aS.setStyle(this.element,bS,bT);this.showEvent.fire()}}else{if(c==bT){this.beforeHideEvent.fire();aS.setStyle(this.element,bS,bQ);this.hideEvent.fire()}}}},configPosition:function(g,a,d){var e=this.element,f=a[0]==bm?bm:av,c=this.cfg,b;aS.setStyle(e,bN,f);if(f==bm){aS.setStyle(e,bS,bT);c.setProperty(bw,true)}else{aS.setStyle(e,bf,ai)}if(f==av){b=c.getProperty(ab);if(!b||b===0){c.setProperty(ab,1)}}},configIframe:function(a,b,c){if(this.cfg.getProperty(bN)==aq){aG.superclass.configIframe.call(this,a,b,c)}},configHideDelay:function(a,b,d){var c=b[0];this._useHideDelay=(c>0)},configContainer:function(a,b,c){var d=b[0];if(ah.isString(d)){this.cfg.setProperty(aR,aS.get(d),true)}},_clearSetWidthFlag:function(){this._widthSetForScroll=false;this.cfg.unsubscribeFromConfigEvent(a4,this._clearSetWidthFlag)},_setScrollHeight:function(b){var i=b,j=false,o=false,a,n,d,f,e,m,h,g,k,c;if(this.getItems().length>0){a=this.element;n=this.body;d=this.header;f=this.footer;e=this._onScrollTargetMouseOver;m=this._onScrollTargetMouseOut;h=this.cfg.getProperty(bH);if(i>0&&i<h){i=h}aS.setStyle(n,bC,aD);aS.removeClass(n,aM);n.scrollTop=0;o=((by.gecko&&by.gecko<1.9)||by.ie);if(i>0&&o&&!this.cfg.getProperty(a4)){k=a.offsetWidth;a.style.width=k+ad;c=(k-(a.offsetWidth-k))+ad;this.cfg.unsubscribeFromConfigEvent(a4,this._clearSetWidthFlag);this.cfg.setProperty(a4,c);this._widthSetForScroll=true;this.cfg.subscribeToConfigEvent(a4,this._clearSetWidthFlag)}if(i>0&&(!d&&!f)){this.setHeader(aj);this.setFooter(aj);d=this.header;f=this.footer;aS.addClass(d,a5);aS.addClass(f,aA);a.insertBefore(d,n);a.appendChild(f)}g=i;if(d&&f){g=(g-(d.offsetHeight+f.offsetHeight))}if((g>0)&&(n.offsetHeight>i)){aS.addClass(n,aM);aS.setStyle(n,bC,(g+ad));if(!this._hasScrollEventHandlers){au.on(d,bI,e,this,true);au.on(d,bi,m,this,true);au.on(f,bI,e,this,true);au.on(f,bi,m,this,true);this._hasScrollEventHandlers=true}this._disableScrollHeader();this._enableScrollFooter();j=true}else{if(d&&f){if(this._widthSetForScroll){this._widthSetForScroll=false;this.cfg.unsubscribeFromConfigEvent(a4,this._clearSetWidthFlag);this.cfg.setProperty(a4,aD)}this._enableScrollHeader();this._enableScrollFooter();if(this._hasScrollEventHandlers){au.removeListener(d,bI,e);au.removeListener(d,bi,m);au.removeListener(f,bI,e);au.removeListener(f,bi,m);this._hasScrollEventHandlers=false}a.removeChild(d);a.removeChild(f);this.header=null;this.footer=null;j=true}}if(j){this.cfg.refireEvent(ao);this.cfg.refireEvent(bK)}}},_setMaxHeight:function(a,b,c){this._setScrollHeight(c);this.renderEvent.unsubscribe(this._setMaxHeight)},configMaxHeight:function(a,b,d){var c=b[0];if(this.lazyLoad&&!this.body&&c>0){this.renderEvent.subscribe(this._setMaxHeight,c,this)}else{this._setScrollHeight(c)}},configClassName:function(d,a,c){var b=a[0];if(this._sClassName){aS.removeClass(this.element,this._sClassName)}aS.addClass(this.element,b);this._sClassName=b},_onItemAdded:function(a,b){var c=b[0];if(c){c.cfg.setProperty(bJ,true)}},configDisabled:function(g,a,d){var e=a[0],b=this.getItems(),c,f;if(ah.isArray(b)){c=b.length;if(c>0){f=c-1;do{b[f].cfg.setProperty(bJ,e)}while(f--)}if(e){this.clearActiveItem(true);aS.addClass(this.element,bJ);this.itemAddedEvent.subscribe(this._onItemAdded)}else{aS.removeClass(this.element,bJ);this.itemAddedEvent.unsubscribe(this._onItemAdded)}}},configShadow:function(f,b,g){var h=function(){var k=this.element,m=this._shadow;if(m&&k){if(m.style.width&&m.style.height){m.style.width=aD;m.style.height=aD}m.style.width=(k.offsetWidth+6)+ad;m.style.height=(k.offsetHeight+1)+ad}};var c=function(){this.element.appendChild(this._shadow)};var j=function(){aS.addClass(this._shadow,an)};var i=function(){aS.removeClass(this._shadow,an)};var d=function(){var k=this._shadow,m;if(!k){m=this.element;if(!bB){bB=document.createElement(be);bB.className=aL}k=bB.cloneNode(false);m.appendChild(k);this._shadow=k;this.beforeShowEvent.subscribe(j);this.beforeHideEvent.subscribe(i);if(by.ie){ah.later(0,this,function(){h.call(this);this.syncIframe()});this.cfg.subscribeToConfigEvent(a4,h);this.cfg.subscribeToConfigEvent(bC,h);this.cfg.subscribeToConfigEvent(aa,h);this.changeContentEvent.subscribe(h);bu.textResizeEvent.subscribe(h,this,true);this.destroyEvent.subscribe(function(){bu.textResizeEvent.unsubscribe(h,this)})}this.cfg.subscribeToConfigEvent(aa,c)}};var a=function(){if(this._shadow){c.call(this);if(by.ie){h.call(this)}}else{d.call(this)}this.beforeShowEvent.unsubscribe(a)};var e=b[0];if(e&&this.cfg.getProperty(bN)==aq){if(this.cfg.getProperty(bw)){if(this._shadow){c.call(this);if(by.ie){h.call(this)}}else{d.call(this)}}else{this.beforeShowEvent.subscribe(a)}}},initEvents:function(){aG.superclass.initEvents.call(this);var a=bO.length-1,c,b;do{c=bO[a];b=this.createEvent(c[1]);b.signature=bj.LIST;this[c[0]]=b}while(a--)},positionOffScreen:function(){var a=this.iframe,c=this.element,b=this.OFF_SCREEN_POSITION;c.style.top=aD;c.style.left=aD;if(a){a.style.top=b;a.style.left=b}},getRoot:function(){var c=this.parent,a,b;if(c){a=c.parent;b=a?a.getRoot():this}else{b=this}return b},toString:function(){var a=bA,b=this.id;if(b){a+=(bp+b)}return a},setItemGroupTitle:function(c,d){var e,f,a,b;if(ah.isString(c)&&c.length>0){e=ah.isNumber(d)?d:0;f=this._aGroupTitleElements[e];if(f){f.innerHTML=c}else{f=document.createElement(this.GROUP_TITLE_TAG_NAME);f.innerHTML=c;this._aGroupTitleElements[e]=f}a=this._aGroupTitleElements.length-1;do{if(this._aGroupTitleElements[a]){aS.removeClass(this._aGroupTitleElements[a],ak);b=a}}while(a--);if(b!==null){aS.addClass(this._aGroupTitleElements[b],ak)}this.changeContentEvent.fire()}},addItem:function(b,a){return this._addItemToGroup(a,b)},addItems:function(e,f){var c,b,d,a,g;if(ah.isArray(e)){c=e.length;b=[];for(a=0;a<c;a++){d=e[a];if(d){if(ah.isArray(d)){b[b.length]=this.addItems(d,a)}else{b[b.length]=this._addItemToGroup(f,d)}}}if(b.length){g=b}}return g},insertItem:function(b,a,c){return this._addItemToGroup(c,b,a)},removeItem:function(b,d){var c,a;if(!ah.isUndefined(b)){if(b instanceof YAHOO.widget.MenuItem){c=this._removeItemFromGroupByValue(d,b)}else{if(ah.isNumber(b)){c=this._removeItemFromGroupByIndex(d,b)}}if(c){c.destroy();a=c}}return a},getItems:function(){var c=this._aItemGroups,a,d,b=[];if(ah.isArray(c)){a=c.length;d=((a==1)?c[0]:(Array.prototype.concat.apply(b,c)))}return d},getItemGroups:function(){return this._aItemGroups},getItem:function(a,d){var c,b;if(ah.isNumber(a)){c=this._getItemGroup(d);if(c){b=c[a]}}return b},getSubmenus:function(){var a=this.getItems(),c=a.length,b,f,d,e;if(c>0){b=[];for(e=0;e<c;e++){d=a[e];if(d){f=d.cfg.getProperty(ba);if(f){b[b.length]=f}}}}return b},clearContent:function(){var i=this.getItems(),c=i.length,b=this.element,a=this.body,d=this.header,e=this.footer,f,g,h;if(c>0){h=c-1;do{f=i[h];if(f){g=f.cfg.getProperty(ba);if(g){this.cfg.configChangedEvent.unsubscribe(this._onParentMenuConfigChange,g);this.renderEvent.unsubscribe(this._onParentMenuRender,g)}this.removeItem(f,f.groupIndex)}}while(h--)}if(d){au.purgeElement(d);b.removeChild(d)}if(e){au.purgeElement(e);b.removeChild(e)}if(a){au.purgeElement(a);a.innerHTML=aD}this.activeItem=null;this._aItemGroups=[];this._aListElements=[];this._aGroupTitleElements=[];this.cfg.setProperty(a4,null)},destroy:function(){this.clearContent();this._aItemGroups=null;this._aListElements=null;this._aGroupTitleElements=null;aG.superclass.destroy.call(this)},setInitialFocus:function(){var a=this._getFirstEnabledItem();if(a){a.focus()}},setInitialSelection:function(){var a=this._getFirstEnabledItem();if(a){a.cfg.setProperty(az,true)}},clearActiveItem:function(d){if(this.cfg.getProperty(bv)>0){this._cancelShowDelay()}var b=this.activeItem,c,a;if(b){c=b.cfg;if(d){b.blur();this.getRoot()._hasFocus=true}c.setProperty(az,false);a=c.getProperty(ba);if(a){a.hide()}this.activeItem=null}},focus:function(){if(!this.hasFocus()){this.setInitialFocus()}},blur:function(){var a;if(this.hasFocus()){a=ax.getFocusedMenuItem();if(a){a.blur()}}},hasFocus:function(){return(ax.getFocusedMenu()==this.getRoot())},subscribe:function(){function f(m,h,j){var i=h[0],k=i.cfg.getProperty(ba);if(k){k.subscribe.apply(k,j)}}function c(k,h,i){var j=this.cfg.getProperty(ba);if(j){j.subscribe.apply(j,i)}}aG.superclass.subscribe.apply(this,arguments);aG.superclass.subscribe.call(this,ac,f,arguments);var b=this.getItems(),d,e,a,g;if(b){d=b.length;if(d>0){g=d-1;do{e=b[g];a=e.cfg.getProperty(ba);if(a){a.subscribe.apply(a,arguments)}else{e.cfg.subscribeToConfigEvent(ba,c,arguments)}}while(g--)}}},initDefaultConfig:function(){aG.superclass.initDefaultConfig.call(this);var a=this.cfg;a.addProperty(bP.key,{handler:this.configVisible,value:bP.value,validator:bP.validator});a.addProperty(ae.key,{handler:this.configConstrainToViewport,value:ae.value,validator:ae.validator,supercedes:ae.supercedes});a.addProperty(al.key,{value:al.value,validator:al.validator,supercedes:al.supercedes});a.addProperty(a6.key,{handler:this.configPosition,value:a6.value,validator:a6.validator,supercedes:a6.supercedes});a.addProperty(bo.key,{value:bo.value,suppressEvent:bo.suppressEvent});a.addProperty(aE.key,{value:aE.value,validator:aE.validator,suppressEvent:aE.suppressEvent});a.addProperty(aZ.key,{value:aZ.value,validator:aZ.validator,suppressEvent:aZ.suppressEvent});a.addProperty(aH.key,{handler:this.configHideDelay,value:aH.value,validator:aH.validator,suppressEvent:aH.suppressEvent});a.addProperty(aC.key,{value:aC.value,validator:aC.validator,suppressEvent:aC.suppressEvent});a.addProperty(aJ.key,{value:aJ.value,validator:aJ.validator,suppressEvent:aJ.suppressEvent});a.addProperty(ag.key,{handler:this.configContainer,value:document.body,suppressEvent:ag.suppressEvent});a.addProperty(bL.key,{value:bL.value,validator:bL.validator,supercedes:bL.supercedes,suppressEvent:bL.suppressEvent});a.addProperty(bb.key,{value:bb.value,validator:bb.validator,supercedes:bb.supercedes,suppressEvent:bb.suppressEvent});a.addProperty(a1.key,{handler:this.configMaxHeight,value:a1.value,validator:a1.validator,suppressEvent:a1.suppressEvent,supercedes:a1.supercedes});a.addProperty(a2.key,{handler:this.configClassName,value:a2.value,validator:a2.validator,supercedes:a2.supercedes});a.addProperty(aX.key,{handler:this.configDisabled,value:aX.value,validator:aX.validator,suppressEvent:aX.suppressEvent});a.addProperty(bg.key,{handler:this.configShadow,value:bg.value,validator:bg.validator});a.addProperty(bF.key,{value:bF.value,validator:bF.validator})}})})();(function(){YAHOO.widget.MenuItem=function(a,b){if(a){if(b){this.parent=b.parent;this.value=b.value;this.id=b.id}this.init(a,b)}};var aN=YAHOO.util.Dom,a1=YAHOO.widget.Module,an=YAHOO.widget.Menu,bb=YAHOO.widget.MenuItem,bh=YAHOO.util.CustomEvent,a0=YAHOO.env.ua,a7=YAHOO.lang,bg="text",aw="#",au="-",az="helptext",aX="url",ac="target",aK="emphasis",ax="strongemphasis",bc="checked",aO="submenu",aD="disabled",aJ="selected",av="hassubmenu",ap="checked-disabled",ab="hassubmenu-disabled",ai="hassubmenu-selected",aq="checked-selected",aU="onclick",aB="classname",aa="",a2="OPTION",aP="OPTGROUP",aA="LI",ah="href",aT="SELECT",aj="DIV",bd='<em class="helptext">',bf="<em>",aC="</em>",al="<strong>",aM="</strong>",ag="preventcontextoverlap",a3="obj",ad="scope",aR="none",am="visible",aG=" ",aY="MenuItem",ao="click",aH="show",ay="hide",ar="li",af='<a href="#"></a>',aV=[["mouseOverEvent","mouseover"],["mouseOutEvent","mouseout"],["mouseDownEvent","mousedown"],["mouseUpEvent","mouseup"],["clickEvent",ao],["keyPressEvent","keypress"],["keyDownEvent","keydown"],["keyUpEvent","keyup"],["focusEvent","focus"],["blurEvent","blur"],["destroyEvent","destroy"]],aW={key:bg,value:aa,validator:a7.isString,suppressEvent:true},aS={key:az,supercedes:[bg],suppressEvent:true},aE={key:aX,value:aw,suppressEvent:true},ba={key:ac,suppressEvent:true},a9={key:aK,value:false,validator:a7.isBoolean,suppressEvent:true,supercedes:[bg]},a8={key:ax,value:false,validator:a7.isBoolean,suppressEvent:true,supercedes:[bg]},aZ={key:bc,value:false,validator:a7.isBoolean,suppressEvent:true,supercedes:[aD,aJ]},aF={key:aO,suppressEvent:true,supercedes:[aD,aJ]},be={key:aD,value:false,validator:a7.isBoolean,suppressEvent:true,supercedes:[bg,aJ]},a5={key:aJ,value:false,validator:a7.isBoolean,suppressEvent:true},aQ={key:aU,suppressEvent:true},ak={key:aB,value:null,validator:a7.isString,suppressEvent:true},aL={key:"keylistener",value:null,suppressEvent:true},aI=null,a6={};var ae=function(a,b){var d=a6[a];if(!d){a6[a]={};d=a6[a]}var c=d[b];if(!c){c=a+au+b;d[b]=c}return c};var a4=function(a){aN.addClass(this.element,ae(this.CSS_CLASS_NAME,a));aN.addClass(this._oAnchor,ae(this.CSS_LABEL_CLASS_NAME,a))};var at=function(a){aN.removeClass(this.element,ae(this.CSS_CLASS_NAME,a));aN.removeClass(this._oAnchor,ae(this.CSS_LABEL_CLASS_NAME,a))};bb.prototype={CSS_CLASS_NAME:"yuimenuitem",CSS_LABEL_CLASS_NAME:"yuimenuitemlabel",SUBMENU_TYPE:null,_oAnchor:null,_oHelpTextEM:null,_oSubmenu:null,_oOnclickAttributeValue:null,_sClassName:null,constructor:bb,index:null,groupIndex:null,parent:null,element:null,srcElement:null,value:null,browser:a1.prototype.browser,id:null,init:function(k,a){if(!this.SUBMENU_TYPE){this.SUBMENU_TYPE=an}this.cfg=new YAHOO.util.Config(this);this.initDefaultConfig();var e=this.cfg,d=aw,i,b,c,j,g,h,f;if(a7.isString(k)){this._createRootNodeStructure();e.queueProperty(bg,k)}else{if(k&&k.tagName){switch(k.tagName.toUpperCase()){case a2:this._createRootNodeStructure();e.queueProperty(bg,k.text);e.queueProperty(aD,k.disabled);this.value=k.value;this.srcElement=k;break;case aP:this._createRootNodeStructure();e.queueProperty(bg,k.label);e.queueProperty(aD,k.disabled);this.srcElement=k;this._initSubTree();break;case aA:c=aN.getFirstChild(k);if(c){d=c.getAttribute(ah,2);j=c.getAttribute(ac);g=c.innerHTML}this.srcElement=k;this.element=k;this._oAnchor=c;e.setProperty(bg,g,true);e.setProperty(aX,d,true);e.setProperty(ac,j,true);this._initSubTree();break}}}if(this.element){h=(this.srcElement||this.element).id;if(!h){h=this.id||aN.generateId();this.element.id=h}this.id=h;aN.addClass(this.element,this.CSS_CLASS_NAME);aN.addClass(this._oAnchor,this.CSS_LABEL_CLASS_NAME);f=aV.length-1;do{b=aV[f];i=this.createEvent(b[1]);i.signature=bh.LIST;this[b[0]]=i}while(f--);if(a){e.applyConfig(a)}e.fireQueue()}},_createRootNodeStructure:function(){var b,a;if(!aI){aI=document.createElement(ar);aI.innerHTML=af}b=aI.cloneNode(true);b.className=this.CSS_CLASS_NAME;a=b.firstChild;a.className=this.CSS_LABEL_CLASS_NAME;this.element=b;this._oAnchor=a},_initSubTree:function(){var e=this.srcElement,b=this.cfg,g,a,c,d,f;if(e.childNodes.length>0){if(this.parent.lazyLoad&&this.parent.srcElement&&this.parent.srcElement.tagName.toUpperCase()==aT){b.setProperty(aO,{id:aN.generateId(),itemdata:e.childNodes})}else{g=e.firstChild;a=[];do{if(g&&g.tagName){switch(g.tagName.toUpperCase()){case aj:b.setProperty(aO,g);break;case a2:a[a.length]=g;break}}}while((g=g.nextSibling));c=a.length;if(c>0){d=new this.SUBMENU_TYPE(aN.generateId());b.setProperty(aO,d);for(f=0;f<c;f++){d.addItem((new d.ITEM_TYPE(a[f])))}}}}},configText:function(a,h,f){var i=h[0],g=this.cfg,c=this._oAnchor,j=g.getProperty(az),b=aa,e=aa,d=aa;if(i){if(j){b=bd+j+aC}if(g.getProperty(aK)){e=bf;d=aC}if(g.getProperty(ax)){e=al;d=aM}c.innerHTML=(e+i+d+b)}},configHelpText:function(a,b,c){this.cfg.refireEvent(bg)},configURL:function(b,c,d){var e=c[0];if(!e){e=aw}var a=this._oAnchor;if(a0.opera){a.removeAttribute(ah)}a.setAttribute(ah,e)},configTarget:function(a,b,c){var d=b[0],e=this._oAnchor;if(d&&d.length>0){e.setAttribute(ac,d)}else{e.removeAttribute(ac)}},configEmphasis:function(b,c,d){var e=c[0],a=this.cfg;if(e&&a.getProperty(ax)){a.setProperty(ax,false)}a.refireEvent(bg)},configStrongEmphasis:function(a,b,c){var d=b[0],e=this.cfg;if(d&&e.getProperty(aK)){e.setProperty(aK,false)}e.refireEvent(bg)},configChecked:function(b,c,d){var e=c[0],a=this.cfg;if(e){a4.call(this,bc)}else{at.call(this,bc)}a.refireEvent(bg);if(a.getProperty(aD)){a.refireEvent(aD)}if(a.getProperty(aJ)){a.refireEvent(aJ)}},configDisabled:function(b,c,d){var g=c[0],f=this.cfg,a=f.getProperty(aO),e=f.getProperty(bc);if(g){if(f.getProperty(aJ)){f.setProperty(aJ,false)}a4.call(this,aD);if(a){a4.call(this,ab)}if(e){a4.call(this,ap)}}else{at.call(this,aD);if(a){at.call(this,ab)}if(e){at.call(this,ap)}}},configSelected:function(b,c,d){var f=this.cfg,g=this._oAnchor,h=c[0],e=f.getProperty(bc),a=f.getProperty(aO);if(a0.opera){g.blur()}if(h&&!f.getProperty(aD)){a4.call(this,aJ);if(a){a4.call(this,ai)}if(e){a4.call(this,aq)}}else{at.call(this,aJ);if(a){at.call(this,ai)}if(e){at.call(this,aq)}}if(this.hasFocus()&&a0.opera){g.focus()}},_onSubmenuBeforeHide:function(a,b){var e=this.parent,d;function c(){e._oAnchor.blur();d.beforeHideEvent.unsubscribe(c)}if(e.hasFocus()){d=e.parent;d.beforeHideEvent.subscribe(c)}},configSubmenu:function(b,g,d){var e=g[0],f=this.cfg,h=this.parent&&this.parent.lazyLoad,c,a,i;if(e){if(e instanceof an){c=e;c.parent=this;c.lazyLoad=h}else{if(a7.isObject(e)&&e.id&&!e.nodeType){a=e.id;i=e;i.lazyload=h;i.parent=this;c=new this.SUBMENU_TYPE(a,i);f.setProperty(aO,c,true)}else{c=new this.SUBMENU_TYPE(e,{lazyload:h,parent:this});f.setProperty(aO,c,true)}}if(c){c.cfg.setProperty(ag,true);a4.call(this,av);if(f.getProperty(aX)===aw){f.setProperty(aX,(aw+c.id))}this._oSubmenu=c;if(a0.opera){c.beforeHideEvent.subscribe(this._onSubmenuBeforeHide)}}}else{at.call(this,av);if(this._oSubmenu){this._oSubmenu.destroy()}}if(f.getProperty(aD)){f.refireEvent(aD)}if(f.getProperty(aJ)){f.refireEvent(aJ)}},configOnClick:function(b,c,d){var a=c[0];if(this._oOnclickAttributeValue&&(this._oOnclickAttributeValue!=a)){this.clickEvent.unsubscribe(this._oOnclickAttributeValue.fn,this._oOnclickAttributeValue.obj);this._oOnclickAttributeValue=null}if(!this._oOnclickAttributeValue&&a7.isObject(a)&&a7.isFunction(a.fn)){this.clickEvent.subscribe(a.fn,((a3 in a)?a.obj:this),((ad in a)?a.scope:null));this._oOnclickAttributeValue=a}},configClassName:function(a,b,c){var d=b[0];if(this._sClassName){aN.removeClass(this.element,this._sClassName)}aN.addClass(this.element,d);this._sClassName=d},_dispatchClickEvent:function(){var a=this,b,c;if(!a.cfg.getProperty(aD)){b=aN.getFirstChild(a.element);if(a0.ie){b.fireEvent(aU)}else{if((a0.gecko&&a0.gecko>=1.9)||a0.opera||a0.webkit){c=document.createEvent("HTMLEvents");c.initEvent(ao,true,true)}else{c=document.createEvent("MouseEvents");c.initMouseEvent(ao,true,true,window,0,0,0,0,0,false,false,false,false,0,null)}b.dispatchEvent(c)}}},_createKeyListener:function(a,b,e){var f=this,c=f.parent;var d=new YAHOO.util.KeyListener(c.element.ownerDocument,e,{fn:f._dispatchClickEvent,scope:f,correctScope:true});if(c.cfg.getProperty(am)){d.enable()}c.subscribe(aH,d.enable,null,d);c.subscribe(ay,d.disable,null,d);f._keyListener=d;c.unsubscribe(aH,f._createKeyListener,e)},configKeyListener:function(b,c){var e=c[0],a=this,d=a.parent;if(a._keyData){d.unsubscribe(aH,a._createKeyListener,a._keyData);a._keyData=null}if(a._keyListener){d.unsubscribe(aH,a._keyListener.enable);d.unsubscribe(ay,a._keyListener.disable);a._keyListener.disable();a._keyListener=null}if(e){a._keyData=e;d.subscribe(aH,a._createKeyListener,e,a)}},initDefaultConfig:function(){var a=this.cfg;a.addProperty(aW.key,{handler:this.configText,value:aW.value,validator:aW.validator,suppressEvent:aW.suppressEvent});a.addProperty(aS.key,{handler:this.configHelpText,supercedes:aS.supercedes,suppressEvent:aS.suppressEvent});a.addProperty(aE.key,{handler:this.configURL,value:aE.value,suppressEvent:aE.suppressEvent});a.addProperty(ba.key,{handler:this.configTarget,suppressEvent:ba.suppressEvent});a.addProperty(a9.key,{handler:this.configEmphasis,value:a9.value,validator:a9.validator,suppressEvent:a9.suppressEvent,supercedes:a9.supercedes});a.addProperty(a8.key,{handler:this.configStrongEmphasis,value:a8.value,validator:a8.validator,suppressEvent:a8.suppressEvent,supercedes:a8.supercedes});a.addProperty(aZ.key,{handler:this.configChecked,value:aZ.value,validator:aZ.validator,suppressEvent:aZ.suppressEvent,supercedes:aZ.supercedes});a.addProperty(be.key,{handler:this.configDisabled,value:be.value,validator:be.validator,suppressEvent:be.suppressEvent});a.addProperty(a5.key,{handler:this.configSelected,value:a5.value,validator:a5.validator,suppressEvent:a5.suppressEvent});a.addProperty(aF.key,{handler:this.configSubmenu,supercedes:aF.supercedes,suppressEvent:aF.suppressEvent});a.addProperty(aQ.key,{handler:this.configOnClick,suppressEvent:aQ.suppressEvent});a.addProperty(ak.key,{handler:this.configClassName,value:ak.value,validator:ak.validator,suppressEvent:ak.suppressEvent});a.addProperty(aL.key,{handler:this.configKeyListener,value:aL.value,suppressEvent:aL.suppressEvent})},getNextEnabledSibling:function(){var a,e,d,f,g,c;function b(i,h){return i[h]||b(i,(h+1))}if(this.parent instanceof an){a=this.groupIndex;e=this.parent.getItemGroups();if(this.index<(e[a].length-1)){d=b(e[a],(this.index+1))}else{if(a<(e.length-1)){f=a+1}else{f=0}g=b(e,f);d=b(g,0)}c=(d.cfg.getProperty(aD)||d.element.style.display==aR)?d.getNextEnabledSibling():d}return c},getPreviousEnabledSibling:function(){var g,e,c,d,h,a;function f(i,j){return i[j]||f(i,(j-1))}function b(i,j){return i[j]?j:b(i,(j+1))}if(this.parent instanceof an){g=this.groupIndex;e=this.parent.getItemGroups();if(this.index>b(e[g],0)){c=f(e[g],(this.index-1))}else{if(g>b(e,0)){d=g-1}else{d=e.length-1}h=f(e,d);c=f(h,(h.length-1))}a=(c.cfg.getProperty(aD)||c.element.style.display==aR)?c.getPreviousEnabledSibling():c}return a},focus:function(){var a=this.parent,b=this._oAnchor,d=a.activeItem;function c(){try{if(!(a0.ie&&!document.hasFocus())){if(d){d.blurEvent.fire()}b.focus();this.focusEvent.fire()}}catch(e){}}if(!this.cfg.getProperty(aD)&&a&&a.cfg.getProperty(am)&&this.element.style.display!=aR){a7.later(0,this,c)}},blur:function(){var a=this.parent;if(!this.cfg.getProperty(aD)&&a&&a.cfg.getProperty(am)){a7.later(0,this,function(){try{this._oAnchor.blur();this.blurEvent.fire()}catch(b){}},0)}},hasFocus:function(){return(YAHOO.widget.MenuManager.getFocusedMenuItem()==this)},destroy:function(){var b=this.element,c,d,e,a;if(b){c=this.cfg.getProperty(aO);if(c){c.destroy()}d=b.parentNode;if(d){d.removeChild(b);this.destroyEvent.fire()}a=aV.length-1;do{e=aV[a];this[e[0]].unsubscribeAll()}while(a--);this.cfg.configChangedEvent.unsubscribeAll()}},toString:function(){var a=aY,b=this.id;if(b){a+=(aG+b)}return a}};a7.augmentProto(bb,YAHOO.util.EventProvider)})();(function(){var c="xy",b="mousedown",i="ContextMenu",e=" ";YAHOO.widget.ContextMenu=function(k,m){YAHOO.widget.ContextMenu.superclass.constructor.call(this,k,m)};var f=YAHOO.util.Event,j=YAHOO.env.ua,h=YAHOO.widget.ContextMenu,d={TRIGGER_CONTEXT_MENU:"triggerContextMenu",CONTEXT_MENU:(j.opera?b:"contextmenu"),CLICK:"click"},g={key:"trigger",suppressEvent:true};function a(k,m,n){this.cfg.setProperty(c,n);this.beforeShowEvent.unsubscribe(a,n)}YAHOO.lang.extend(h,YAHOO.widget.Menu,{_oTrigger:null,_bCancelled:false,contextEventTarget:null,triggerContextMenuEvent:null,init:function(k,m){h.superclass.init.call(this,k);this.beforeInitEvent.fire(h);if(m){this.cfg.applyConfig(m,true)}this.initEvent.fire(h)},initEvents:function(){h.superclass.initEvents.call(this);this.triggerContextMenuEvent=this.createEvent(d.TRIGGER_CONTEXT_MENU);this.triggerContextMenuEvent.signature=YAHOO.util.CustomEvent.LIST},cancel:function(){this._bCancelled=true},_removeEventHandlers:function(){var k=this._oTrigger;if(k){f.removeListener(k,d.CONTEXT_MENU,this._onTriggerContextMenu);if(j.opera){f.removeListener(k,d.CLICK,this._onTriggerClick)}}},_onTriggerClick:function(k,m){if(k.ctrlKey){f.stopEvent(k)}},_onTriggerContextMenu:function(n,m){var k;if(!(n.type==b&&!n.ctrlKey)){this.contextEventTarget=f.getTarget(n);this.triggerContextMenuEvent.fire(n);if(!this._bCancelled){f.stopEvent(n);YAHOO.widget.MenuManager.hideVisible();k=f.getXY(n);if(!YAHOO.util.Dom.inDocument(this.element)){this.beforeShowEvent.subscribe(a,k)}else{this.cfg.setProperty(c,k)}this.show()}this._bCancelled=false}},toString:function(){var k=i,m=this.id;if(m){k+=(e+m)}return k},initDefaultConfig:function(){h.superclass.initDefaultConfig.call(this);this.cfg.addProperty(g.key,{handler:this.configTrigger,suppressEvent:g.suppressEvent})},destroy:function(){this._removeEventHandlers();h.superclass.destroy.call(this)},configTrigger:function(k,m,n){var o=m[0];if(o){if(this._oTrigger){this._removeEventHandlers()}this._oTrigger=o;f.on(o,d.CONTEXT_MENU,this._onTriggerContextMenu,this,true);if(j.opera){f.on(o,d.CLICK,this._onTriggerClick,this,true)}}else{this._removeEventHandlers()}}})}());YAHOO.widget.ContextMenuItem=YAHOO.widget.MenuItem;(function(){var p=YAHOO.lang,e="static",f="dynamic,"+e,s="disabled",n="selected",r="autosubmenudisplay",m="submenu",q="visible",b=" ",k="submenutoggleregion",c="MenuBar";YAHOO.widget.MenuBar=function(u,v){YAHOO.widget.MenuBar.superclass.constructor.call(this,u,v)};function d(u){var v=false;if(p.isString(u)){v=(f.indexOf((u.toLowerCase()))!=-1)}return v}var a=YAHOO.util.Event,g=YAHOO.widget.MenuBar,h={key:"position",value:e,validator:d,supercedes:[q]},o={key:"submenualignment",value:["tl","bl"]},i={key:r,value:false,validator:p.isBoolean,suppressEvent:true},j={key:k,value:false,validator:p.isBoolean};p.extend(g,YAHOO.widget.Menu,{init:function(u,v){if(!this.ITEM_TYPE){this.ITEM_TYPE=YAHOO.widget.MenuBarItem}g.superclass.init.call(this,u);this.beforeInitEvent.fire(g);if(v){this.cfg.applyConfig(v,true)}this.initEvent.fire(g)},CSS_CLASS_NAME:"yuimenubar",SUBMENU_TOGGLE_REGION_WIDTH:20,_onKeyDown:function(w,z,C){var A=z[0],B=z[1],u,D,v;if(B&&!B.cfg.getProperty(s)){D=B.cfg;switch(A.keyCode){case 37:case 39:if(B==this.activeItem&&!D.getProperty(n)){D.setProperty(n,true)}else{v=(A.keyCode==37)?B.getPreviousEnabledSibling():B.getNextEnabledSibling();if(v){this.clearActiveItem();v.cfg.setProperty(n,true);u=v.cfg.getProperty(m);if(u){u.show();u.setInitialFocus()}else{v.focus()}}}a.preventDefault(A);break;case 40:if(this.activeItem!=B){this.clearActiveItem();D.setProperty(n,true);B.focus()}u=D.getProperty(m);if(u){if(u.cfg.getProperty(q)){u.setInitialSelection();u.setInitialFocus()}else{u.show();u.setInitialFocus()}}a.preventDefault(A);break}}if(A.keyCode==27&&this.activeItem){u=this.activeItem.cfg.getProperty(m);if(u&&u.cfg.getProperty(q)){u.hide();this.activeItem.focus()}else{this.activeItem.cfg.setProperty(n,false);this.activeItem.blur()}a.preventDefault(A)}},_onClick:function(F,v,I){g.superclass._onClick.call(this,F,v,I);var G=v[1],C=true,D,E,B,z,u,J,H,A;var w=function(){if(J.cfg.getProperty(q)){J.hide()}else{J.show()}};if(G&&!G.cfg.getProperty(s)){E=v[0];B=a.getTarget(E);z=this.activeItem;u=this.cfg;if(z&&z!=G){this.clearActiveItem()}G.cfg.setProperty(n,true);J=G.cfg.getProperty(m);if(J){D=G.element;H=YAHOO.util.Dom.getX(D);A=H+(D.offsetWidth-this.SUBMENU_TOGGLE_REGION_WIDTH);if(u.getProperty(k)){if(a.getPageX(E)>A){w();a.preventDefault(E);C=false}}else{w()}}}return C},configSubmenuToggle:function(u,v){var w=v[0];if(w){this.cfg.setProperty(r,false)}},toString:function(){var u=c,v=this.id;if(v){u+=(b+v)}return u},initDefaultConfig:function(){g.superclass.initDefaultConfig.call(this);var u=this.cfg;u.addProperty(h.key,{handler:this.configPosition,value:h.value,validator:h.validator,supercedes:h.supercedes});u.addProperty(o.key,{value:o.value,suppressEvent:o.suppressEvent});u.addProperty(i.key,{value:i.value,validator:i.validator,suppressEvent:i.suppressEvent});u.addProperty(j.key,{value:j.value,validator:j.validator,handler:this.configSubmenuToggle})}})}());YAHOO.widget.MenuBarItem=function(b,a){YAHOO.widget.MenuBarItem.superclass.constructor.call(this,b,a)};YAHOO.lang.extend(YAHOO.widget.MenuBarItem,YAHOO.widget.MenuItem,{init:function(c,a){if(!this.SUBMENU_TYPE){this.SUBMENU_TYPE=YAHOO.widget.Menu}YAHOO.widget.MenuBarItem.superclass.init.call(this,c);var b=this.cfg;if(a){b.applyConfig(a,true)}b.fireQueue()},CSS_CLASS_NAME:"yuimenubaritem",CSS_LABEL_CLASS_NAME:"yuimenubaritemlabel",toString:function(){var a="MenuBarItem";if(this.cfg&&this.cfg.getProperty("text")){a+=(": "+this.cfg.getProperty("text"))}return a}});YAHOO.register("menu",YAHOO.widget.Menu,{version:"2.7.0",build:"1799"});(function(){var b=YAHOO.util.Dom,a=YAHOO.util.Event,c=YAHOO.lang;var d=function(f,g){var e={element:f,attributes:g||{}};d.superclass.constructor.call(this,e.element,e.attributes)};d._instances={};d.getResizeById=function(e){if(d._instances[e]){return d._instances[e]}return false};YAHOO.extend(d,YAHOO.util.Element,{CSS_RESIZE:"yui-resize",CSS_DRAG:"yui-draggable",CSS_HOVER:"yui-resize-hover",CSS_PROXY:"yui-resize-proxy",CSS_WRAP:"yui-resize-wrap",CSS_KNOB:"yui-resize-knob",CSS_HIDDEN:"yui-resize-hidden",CSS_HANDLE:"yui-resize-handle",CSS_STATUS:"yui-resize-status",CSS_GHOST:"yui-resize-ghost",CSS_RESIZING:"yui-resize-resizing",_resizeEvent:null,dd:null,browser:YAHOO.env.ua,_locked:null,_positioned:null,_dds:null,_wrap:null,_proxy:null,_handles:null,_currentHandle:null,_currentDD:null,_cache:null,_active:null,_createProxy:function(){if(this.get("proxy")){this._proxy=document.createElement("div");this._proxy.className=this.CSS_PROXY;this._proxy.style.height=this.get("element").clientHeight+"px";this._proxy.style.width=this.get("element").clientWidth+"px";this._wrap.parentNode.appendChild(this._proxy)}else{this.set("animate",false)}},_createWrap:function(){this._positioned=false;if(this.get("wrap")===false){switch(this.get("element").tagName.toLowerCase()){case"img":case"textarea":case"input":case"iframe":case"select":this.set("wrap",true);break}}if(this.get("wrap")===true){this._wrap=document.createElement("div");this._wrap.id=this.get("element").id+"_wrap";this._wrap.className=this.CSS_WRAP;if(this.get("element").tagName.toLowerCase()=="textarea"){b.addClass(this._wrap,"yui-resize-textarea")}b.setStyle(this._wrap,"width",this.get("width")+"px");b.setStyle(this._wrap,"height",this.get("height")+"px");b.setStyle(this._wrap,"z-index",this.getStyle("z-index"));this.setStyle("z-index",0);var e=b.getStyle(this.get("element"),"position");b.setStyle(this._wrap,"position",((e=="static")?"relative":e));b.setStyle(this._wrap,"top",b.getStyle(this.get("element"),"top"));b.setStyle(this._wrap,"left",b.getStyle(this.get("element"),"left"));if(b.getStyle(this.get("element"),"position")=="absolute"){this._positioned=true;b.setStyle(this.get("element"),"position","relative");b.setStyle(this.get("element"),"top","0");b.setStyle(this.get("element"),"left","0")}var f=this.get("element").parentNode;f.replaceChild(this._wrap,this.get("element"));this._wrap.appendChild(this.get("element"))}else{this._wrap=this.get("element");if(b.getStyle(this._wrap,"position")=="absolute"){this._positioned=true}}if(this.get("draggable")){this._setupDragDrop()}if(this.get("hover")){b.addClass(this._wrap,this.CSS_HOVER)}if(this.get("knobHandles")){b.addClass(this._wrap,this.CSS_KNOB)}if(this.get("hiddenHandles")){b.addClass(this._wrap,this.CSS_HIDDEN)}b.addClass(this._wrap,this.CSS_RESIZE)},_setupDragDrop:function(){b.addClass(this._wrap,this.CSS_DRAG);this.dd=new YAHOO.util.DD(this._wrap,this.get("id")+"-resize",{dragOnly:true,useShim:this.get("useShim")});this.dd.on("dragEvent",function(){this.fireEvent("dragEvent",arguments)},this,true)},_createHandles:function(){this._handles={};this._dds={};var e=this.get("handles");for(var f=0;f<e.length;f++){this._handles[e[f]]=document.createElement("div");this._handles[e[f]].id=b.generateId(this._handles[e[f]]);this._handles[e[f]].className=this.CSS_HANDLE+" "+this.CSS_HANDLE+"-"+e[f];var g=document.createElement("div");g.className=this.CSS_HANDLE+"-inner-"+e[f];this._handles[e[f]].appendChild(g);this._wrap.appendChild(this._handles[e[f]]);a.on(this._handles[e[f]],"mouseover",this._handleMouseOver,this,true);a.on(this._handles[e[f]],"mouseout",this._handleMouseOut,this,true);this._dds[e[f]]=new YAHOO.util.DragDrop(this._handles[e[f]],this.get("id")+"-handle-"+e,{useShim:this.get("useShim")});this._dds[e[f]].setPadding(15,15,15,15);this._dds[e[f]].on("startDragEvent",this._handleStartDrag,this._dds[e[f]],this);this._dds[e[f]].on("mouseDownEvent",this._handleMouseDown,this._dds[e[f]],this)}this._status=document.createElement("span");this._status.className=this.CSS_STATUS;document.body.insertBefore(this._status,document.body.firstChild)},_ieSelectFix:function(){return false},_ieSelectBack:null,_setAutoRatio:function(e){if(this.get("autoRatio")){if(e&&e.shiftKey){this.set("ratio",true)}else{this.set("ratio",this._configs.ratio._initialConfig.value)}}},_handleMouseDown:function(e){if(this._locked){return false}if(b.getStyle(this._wrap,"position")=="absolute"){this._positioned=true}if(e){this._setAutoRatio(e)}if(this.browser.ie){this._ieSelectBack=document.body.onselectstart;document.body.onselectstart=this._ieSelectFix}},_handleMouseOver:function(e){if(this._locked){return false}b.removeClass(this._wrap,this.CSS_RESIZE);if(this.get("hover")){b.removeClass(this._wrap,this.CSS_HOVER)}var g=a.getTarget(e);if(!b.hasClass(g,this.CSS_HANDLE)){g=g.parentNode}if(b.hasClass(g,this.CSS_HANDLE)&&!this._active){b.addClass(g,this.CSS_HANDLE+"-active");for(var f in this._handles){if(c.hasOwnProperty(this._handles,f)){if(this._handles[f]==g){b.addClass(g,this.CSS_HANDLE+"-"+f+"-active");break}}}}b.addClass(this._wrap,this.CSS_RESIZE)},_handleMouseOut:function(e){b.removeClass(this._wrap,this.CSS_RESIZE);if(this.get("hover")&&!this._active){b.addClass(this._wrap,this.CSS_HOVER)}var g=a.getTarget(e);if(!b.hasClass(g,this.CSS_HANDLE)){g=g.parentNode}if(b.hasClass(g,this.CSS_HANDLE)&&!this._active){b.removeClass(g,this.CSS_HANDLE+"-active");for(var f in this._handles){if(c.hasOwnProperty(this._handles,f)){if(this._handles[f]==g){b.removeClass(g,this.CSS_HANDLE+"-"+f+"-active");break}}}}b.addClass(this._wrap,this.CSS_RESIZE)},_handleStartDrag:function(h,i){var j=i.getDragEl();if(b.hasClass(j,this.CSS_HANDLE)){if(b.getStyle(this._wrap,"position")=="absolute"){this._positioned=true}this._active=true;this._currentDD=i;if(this._proxy){this._proxy.style.visibility="visible";this._proxy.style.zIndex="1000";this._proxy.style.height=this.get("element").clientHeight+"px";this._proxy.style.width=this.get("element").clientWidth+"px"}for(var g in this._handles){if(c.hasOwnProperty(this._handles,g)){if(this._handles[g]==j){this._currentHandle=g;var f="_handle_for_"+g;b.addClass(j,this.CSS_HANDLE+"-"+g+"-active");i.on("dragEvent",this[f],this,true);i.on("mouseUpEvent",this._handleMouseUp,this,true);break}}}b.addClass(j,this.CSS_HANDLE+"-active");if(this.get("proxy")){var e=b.getXY(this.get("element"));b.setXY(this._proxy,e);if(this.get("ghost")){this.addClass(this.CSS_GHOST)}}b.addClass(this._wrap,this.CSS_RESIZING);this._setCache();this._updateStatus(this._cache.height,this._cache.width,this._cache.top,this._cache.left);this.fireEvent("startResize",{type:"startresize",target:this})}},_setCache:function(){this._cache.xy=b.getXY(this._wrap);b.setXY(this._wrap,this._cache.xy);this._cache.height=this.get("clientHeight");this._cache.width=this.get("clientWidth");this._cache.start.height=this._cache.height;this._cache.start.width=this._cache.width;this._cache.start.top=this._cache.xy[1];this._cache.start.left=this._cache.xy[0];this._cache.top=this._cache.xy[1];this._cache.left=this._cache.xy[0];this.set("height",this._cache.height,true);this.set("width",this._cache.width,true)},_handleMouseUp:function(f){this._active=false;var e="_handle_for_"+this._currentHandle;this._currentDD.unsubscribe("dragEvent",this[e],this,true);this._currentDD.unsubscribe("mouseUpEvent",this._handleMouseUp,this,true);if(this._proxy){this._proxy.style.visibility="hidden";this._proxy.style.zIndex="-1";if(this.get("setSize")){this.resize(f,this._cache.height,this._cache.width,this._cache.top,this._cache.left,true)}else{this.fireEvent("resize",{ev:"resize",target:this,height:this._cache.height,width:this._cache.width,top:this._cache.top,left:this._cache.left})}if(this.get("ghost")){this.removeClass(this.CSS_GHOST)}}if(this.get("hover")){b.addClass(this._wrap,this.CSS_HOVER)}if(this._status){b.setStyle(this._status,"display","none")}if(this.browser.ie){document.body.onselectstart=this._ieSelectBack}if(this.browser.ie){b.removeClass(this._wrap,this.CSS_RESIZE)}for(var g in this._handles){if(c.hasOwnProperty(this._handles,g)){b.removeClass(this._handles[g],this.CSS_HANDLE+"-active")}}if(this.get("hover")&&!this._active){b.addClass(this._wrap,this.CSS_HOVER)}b.removeClass(this._wrap,this.CSS_RESIZING);b.removeClass(this._handles[this._currentHandle],this.CSS_HANDLE+"-"+this._currentHandle+"-active");b.removeClass(this._handles[this._currentHandle],this.CSS_HANDLE+"-active");if(this.browser.ie){b.addClass(this._wrap,this.CSS_RESIZE)}this._resizeEvent=null;this._currentHandle=null;if(!this.get("animate")){this.set("height",this._cache.height,true);this.set("width",this._cache.width,true)}this.fireEvent("endResize",{ev:"endResize",target:this,height:this._cache.height,width:this._cache.width,top:this._cache.top,left:this._cache.left})},_setRatio:function(n,j,g,p){var i=n,r=j;if(this.get("ratio")){var h=this._cache.height,q=this._cache.width,s=parseInt(this.get("height"),10),m=parseInt(this.get("width"),10),k=this.get("maxHeight"),f=this.get("minHeight"),e=this.get("maxWidth"),o=this.get("minWidth");switch(this._currentHandle){case"l":n=s*(j/m);n=Math.min(Math.max(f,n),k);j=m*(n/s);g=(this._cache.start.top-(-((s-n)/2)));p=(this._cache.start.left-(-((m-j))));break;case"r":n=s*(j/m);n=Math.min(Math.max(f,n),k);j=m*(n/s);g=(this._cache.start.top-(-((s-n)/2)));break;case"t":j=m*(n/s);n=s*(j/m);p=(this._cache.start.left-(-((m-j)/2)));g=(this._cache.start.top-(-((s-n))));break;case"b":j=m*(n/s);n=s*(j/m);p=(this._cache.start.left-(-((m-j)/2)));break;case"bl":n=s*(j/m);j=m*(n/s);p=(this._cache.start.left-(-((m-j))));break;case"br":n=s*(j/m);j=m*(n/s);break;case"tl":n=s*(j/m);j=m*(n/s);p=(this._cache.start.left-(-((m-j))));g=(this._cache.start.top-(-((s-n))));break;case"tr":n=s*(j/m);j=m*(n/s);p=(this._cache.start.left);g=(this._cache.start.top-(-((s-n))));break}i=this._checkHeight(n);r=this._checkWidth(j);if((i!=n)||(r!=j)){g=0;p=0;if(i!=n){r=this._cache.width}if(r!=j){i=this._cache.height}}}return[i,r,g,p]},_updateStatus:function(f,j,g,k){if(this._resizeEvent&&(!c.isString(this._resizeEvent))){f=((f===0)?this._cache.start.height:f);j=((j===0)?this._cache.start.width:j);var h=parseInt(this.get("height"),10),m=parseInt(this.get("width"),10);if(isNaN(h)){h=parseInt(f,10)}if(isNaN(m)){m=parseInt(j,10)}var e=(parseInt(f,10)-h);var i=(parseInt(j,10)-m);this._cache.offsetHeight=e;this._cache.offsetWidth=i;if(this.get("status")){b.setStyle(this._status,"display","inline");this._status.innerHTML="<strong>"+parseInt(f,10)+" x "+parseInt(j,10)+"</strong><em>"+((e>0)?"+":"")+e+" x "+((i>0)?"+":"")+i+"</em>";b.setXY(this._status,[a.getPageX(this._resizeEvent)+12,a.getPageY(this._resizeEvent)+12])}}},lock:function(e){this._locked=true;if(e&&this.dd){b.removeClass(this._wrap,"yui-draggable");this.dd.lock()}return this},unlock:function(e){this._locked=false;if(e&&this.dd){b.addClass(this._wrap,"yui-draggable");this.dd.unlock()}return this},isLocked:function(){return this._locked},reset:function(){this.resize(null,this._cache.start.height,this._cache.start.width,this._cache.start.top,this._cache.start.left,true);return this},resize:function(j,n,g,f,p,r,m){if(this._locked){return false}this._resizeEvent=j;var q=this._wrap,o=this.get("animate"),h=true;if(this._proxy&&!r){q=this._proxy;o=false}this._setAutoRatio(j);if(this._positioned){if(this._proxy){f=this._cache.top-f;p=this._cache.left-p}}var k=this._setRatio(n,g,f,p);n=parseInt(k[0],10);g=parseInt(k[1],10);f=parseInt(k[2],10);p=parseInt(k[3],10);if(f==0){f=b.getY(q)}if(p==0){p=b.getX(q)}if(this._positioned){if(this._proxy&&r){if(!o){q.style.top=this._proxy.style.top;q.style.left=this._proxy.style.left}else{f=this._proxy.style.top;p=this._proxy.style.left}}else{if(!this.get("ratio")&&!this._proxy){f=this._cache.top+-(f);p=this._cache.left+-(p)}if(f){if(this.get("minY")){if(f<this.get("minY")){f=this.get("minY")}}if(this.get("maxY")){if(f>this.get("maxY")){f=this.get("maxY")}}}if(p){if(this.get("minX")){if(p<this.get("minX")){p=this.get("minX")}}if(this.get("maxX")){if((p+g)>this.get("maxX")){p=(this.get("maxX")-g)}}}}}if(!m){var i=this.fireEvent("beforeResize",{ev:"beforeResize",target:this,height:n,width:g,top:f,left:p});if(i===false){return false}}this._updateStatus(n,g,f,p);if(this._positioned){if(this._proxy&&r){}else{if(f){b.setY(q,f);this._cache.top=f}if(p){b.setX(q,p);this._cache.left=p}}}if(n){if(!o){h=true;if(this._proxy&&r){if(!this.get("setSize")){h=false}}if(h){q.style.height=n+"px"}if((this._proxy&&r)||!this._proxy){if(this._wrap!=this.get("element")){this.get("element").style.height=n+"px"}}}this._cache.height=n}if(g){this._cache.width=g;if(!o){h=true;if(this._proxy&&r){if(!this.get("setSize")){h=false}}if(h){q.style.width=g+"px"}if((this._proxy&&r)||!this._proxy){if(this._wrap!=this.get("element")){this.get("element").style.width=g+"px"}}}}if(o){if(YAHOO.util.Anim){var e=new YAHOO.util.Anim(q,{height:{to:this._cache.height},width:{to:this._cache.width}},this.get("animateDuration"),this.get("animateEasing"));if(this._positioned){if(f){e.attributes.top={to:parseInt(f,10)}}if(p){e.attributes.left={to:parseInt(p,10)}}}if(this._wrap!=this.get("element")){e.onTween.subscribe(function(){this.get("element").style.height=q.style.height;this.get("element").style.width=q.style.width},this,true)}e.onComplete.subscribe(function(){this.set("height",n);this.set("width",g);this.fireEvent("resize",{ev:"resize",target:this,height:n,width:g,top:f,left:p})},this,true);e.animate()}}else{if(this._proxy&&!r){this.fireEvent("proxyResize",{ev:"proxyresize",target:this,height:n,width:g,top:f,left:p})}else{this.fireEvent("resize",{ev:"resize",target:this,height:n,width:g,top:f,left:p})}}return this},_handle_for_br:function(f){var e=this._setWidth(f.e);var g=this._setHeight(f.e);this.resize(f.e,g,e,0,0)},_handle_for_bl:function(f){var e=this._setWidth(f.e,true);var g=this._setHeight(f.e);var h=(e-this._cache.width);this.resize(f.e,g,e,0,h)},_handle_for_tl:function(g){var e=this._setWidth(g.e,true);var h=this._setHeight(g.e,true);var f=(h-this._cache.height);var i=(e-this._cache.width);this.resize(g.e,h,e,f,i)},_handle_for_tr:function(g){var e=this._setWidth(g.e);var h=this._setHeight(g.e,true);var f=(h-this._cache.height);this.resize(g.e,h,e,f,0)},_handle_for_r:function(f){this._dds.r.setYConstraint(0,0);var e=this._setWidth(f.e);this.resize(f.e,0,e,0,0)},_handle_for_l:function(f){this._dds.l.setYConstraint(0,0);var e=this._setWidth(f.e,true);var g=(e-this._cache.width);this.resize(f.e,0,e,0,g)},_handle_for_b:function(e){this._dds.b.setXConstraint(0,0);var f=this._setHeight(e.e);this.resize(e.e,f,0,0,0)},_handle_for_t:function(f){this._dds.t.setXConstraint(0,0);var g=this._setHeight(f.e,true);var e=(g-this._cache.height);this.resize(f.e,g,0,e,0)},_setWidth:function(g,e){var f=this._cache.xy[0],h=this._cache.width,j=a.getPageX(g),i=(j-f);if(e){i=(f-j)+parseInt(this.get("width"),10)}i=this._snapTick(i,this.get("xTicks"));i=this._checkWidth(i);return i},_checkWidth:function(e){if(this.get("minWidth")){if(e<=this.get("minWidth")){e=this.get("minWidth")}}if(this.get("maxWidth")){if(e>=this.get("maxWidth")){e=this.get("maxWidth")}}return e},_checkHeight:function(e){if(this.get("minHeight")){if(e<=this.get("minHeight")){e=this.get("minHeight")}}if(this.get("maxHeight")){if(e>=this.get("maxHeight")){e=this.get("maxHeight")}}return e},_setHeight:function(h,f){var g=this._cache.xy[1],i=this._cache.height,e=a.getPageY(h),j=(e-g);if(f){j=(g-e)+parseInt(this.get("height"),10)}j=this._snapTick(j,this.get("yTicks"));j=this._checkHeight(j);return j},_snapTick:function(f,g){if(!f||!g){return f}var e=f;var h=f%g;if(h>0){if(h>(g/2)){e=f+(g-h)}else{e=f-h}}return e},init:function(f,h){this._locked=false;this._cache={xy:[],height:0,width:0,top:0,left:0,offsetHeight:0,offsetWidth:0,start:{height:0,width:0,top:0,left:0}};d.superclass.init.call(this,f,h);this.set("setSize",this.get("setSize"));if(h.height){this.set("height",parseInt(h.height,10))}else{var g=this.getStyle("height");if(g=="auto"){this.set("height",parseInt(this.get("element").offsetHeight,10))}}if(h.width){this.set("width",parseInt(h.width,10))}else{var i=this.getStyle("width");if(i=="auto"){this.set("width",parseInt(this.get("element").offsetWidth,10))}}var e=f;if(!c.isString(e)){e=b.generateId(e)}d._instances[e]=this;this._active=false;this._createWrap();this._createProxy();this._createHandles()},getProxyEl:function(){return this._proxy},getWrapEl:function(){return this._wrap},getStatusEl:function(){return this._status},getActiveHandleEl:function(){return this._handles[this._currentHandle]},isActive:function(){return((this._active)?true:false)},initAttributes:function(e){d.superclass.initAttributes.call(this,e);this.setAttributeConfig("useShim",{value:((e.useShim===true)?true:false),validator:YAHOO.lang.isBoolean,method:function(g){for(var f in this._dds){if(c.hasOwnProperty(this._dds,f)){this._dds[f].useShim=g}}if(this.dd){this.dd.useShim=g}}});this.setAttributeConfig("setSize",{value:((e.setSize===false)?false:true),validator:YAHOO.lang.isBoolean});this.setAttributeConfig("wrap",{writeOnce:true,validator:YAHOO.lang.isBoolean,value:e.wrap||false});this.setAttributeConfig("handles",{writeOnce:true,value:e.handles||["r","b","br"],validator:function(f){if(c.isString(f)&&f.toLowerCase()=="all"){f=["t","b","r","l","bl","br","tl","tr"]}if(!c.isArray(f)){f=f.replace(/, /g,",");f=f.split(",")}this._configs.handles.value=f}});this.setAttributeConfig("width",{value:e.width||parseInt(this.getStyle("width"),10),validator:YAHOO.lang.isNumber,method:function(f){f=parseInt(f,10);if(f>0){if(this.get("setSize")){this.setStyle("width",f+"px")}this._cache.width=f;this._configs.width.value=f}}});this.setAttributeConfig("height",{value:e.height||parseInt(this.getStyle("height"),10),validator:YAHOO.lang.isNumber,method:function(f){f=parseInt(f,10);if(f>0){if(this.get("setSize")){this.setStyle("height",f+"px")}this._cache.height=f;this._configs.height.value=f}}});this.setAttributeConfig("minWidth",{value:e.minWidth||15,validator:YAHOO.lang.isNumber});this.setAttributeConfig("minHeight",{value:e.minHeight||15,validator:YAHOO.lang.isNumber});this.setAttributeConfig("maxWidth",{value:e.maxWidth||10000,validator:YAHOO.lang.isNumber});this.setAttributeConfig("maxHeight",{value:e.maxHeight||10000,validator:YAHOO.lang.isNumber});this.setAttributeConfig("minY",{value:e.minY||false});this.setAttributeConfig("minX",{value:e.minX||false});this.setAttributeConfig("maxY",{value:e.maxY||false});this.setAttributeConfig("maxX",{value:e.maxX||false});this.setAttributeConfig("animate",{value:e.animate||false,validator:function(f){var g=true;if(!YAHOO.util.Anim){g=false}return g}});this.setAttributeConfig("animateEasing",{value:e.animateEasing||function(){var f=false;if(YAHOO.util.Easing&&YAHOO.util.Easing.easeOut){f=YAHOO.util.Easing.easeOut}return f}()});this.setAttributeConfig("animateDuration",{value:e.animateDuration||0.5});this.setAttributeConfig("proxy",{value:e.proxy||false,validator:YAHOO.lang.isBoolean});this.setAttributeConfig("ratio",{value:e.ratio||false,validator:YAHOO.lang.isBoolean});this.setAttributeConfig("ghost",{value:e.ghost||false,validator:YAHOO.lang.isBoolean});this.setAttributeConfig("draggable",{value:e.draggable||false,validator:YAHOO.lang.isBoolean,method:function(f){if(f&&this._wrap){this._setupDragDrop()}else{if(this.dd){b.removeClass(this._wrap,this.CSS_DRAG);this.dd.unreg()}}}});this.setAttributeConfig("hover",{value:e.hover||false,validator:YAHOO.lang.isBoolean});this.setAttributeConfig("hiddenHandles",{value:e.hiddenHandles||false,validator:YAHOO.lang.isBoolean});this.setAttributeConfig("knobHandles",{value:e.knobHandles||false,validator:YAHOO.lang.isBoolean});this.setAttributeConfig("xTicks",{value:e.xTicks||false});this.setAttributeConfig("yTicks",{value:e.yTicks||false});this.setAttributeConfig("status",{value:e.status||false,validator:YAHOO.lang.isBoolean});this.setAttributeConfig("autoRatio",{value:e.autoRatio||false,validator:YAHOO.lang.isBoolean})},destroy:function(){for(var e in this._handles){if(c.hasOwnProperty(this._handles,e)){a.purgeElement(this._handles[e]);this._handles[e].parentNode.removeChild(this._handles[e])}}if(this._proxy){this._proxy.parentNode.removeChild(this._proxy)}if(this._status){this._status.parentNode.removeChild(this._status)}if(this.dd){this.dd.unreg();b.removeClass(this._wrap,this.CSS_DRAG)}if(this._wrap!=this.get("element")){this.setStyle("position","");this.setStyle("top","");this.setStyle("left","");this._wrap.parentNode.replaceChild(this.get("element"),this._wrap)}this.removeClass(this.CSS_RESIZE);delete YAHOO.util.Resize._instances[this.get("id")];for(var f in this){if(c.hasOwnProperty(this,f)){this[f]=null;delete this[f]}}},toString:function(){if(this.get){return"Resize (#"+this.get("id")+")"}return"Resize Utility"}});YAHOO.util.Resize=d})();YAHOO.register("resize",YAHOO.util.Resize,{version:"2.7.0",build:"1799"});(function(){var d=YAHOO.util.Dom.getXY,a=YAHOO.util.Event,b=Array.prototype.slice;function c(f,h,g,e){c.ANIM_AVAIL=(!YAHOO.lang.isUndefined(YAHOO.util.Anim));if(f){this.init(f,h,true);this.initSlider(e);this.initThumb(g)}}YAHOO.lang.augmentObject(c,{getHorizSlider:function(h,g,e,f,i){return new c(h,h,new YAHOO.widget.SliderThumb(g,h,e,f,0,0,i),"horiz")},getVertSlider:function(g,f,i,e,h){return new c(g,g,new YAHOO.widget.SliderThumb(f,g,0,0,i,e,h),"vert")},getSliderRegion:function(i,h,f,g,k,e,j){return new c(i,i,new YAHOO.widget.SliderThumb(h,i,f,g,k,e,j),"region")},SOURCE_UI_EVENT:1,SOURCE_SET_VALUE:2,SOURCE_KEY_EVENT:3,ANIM_AVAIL:false},true);YAHOO.extend(c,YAHOO.util.DragDrop,{_mouseDown:false,dragOnly:true,initSlider:function(e){this.type=e;this.createEvent("change",this);this.createEvent("slideStart",this);this.createEvent("slideEnd",this);this.isTarget=false;this.animate=c.ANIM_AVAIL;this.backgroundEnabled=true;this.tickPause=40;this.enableKeys=true;this.keyIncrement=20;this.moveComplete=true;this.animationDuration=0.2;this.SOURCE_UI_EVENT=1;this.SOURCE_SET_VALUE=2;this.valueChangeSource=0;this._silent=false;this.lastOffset=[0,0]},initThumb:function(e){var f=this;this.thumb=e;e.cacheBetweenDrags=true;if(e._isHoriz&&e.xTicks&&e.xTicks.length){this.tickPause=Math.round(360/e.xTicks.length)}else{if(e.yTicks&&e.yTicks.length){this.tickPause=Math.round(360/e.yTicks.length)}}e.onAvailable=function(){return f.setStartSliderState()};e.onMouseDown=function(){f._mouseDown=true;return f.focus()};e.startDrag=function(){f._slideStart()};e.onDrag=function(){f.fireEvents(true)};e.onMouseUp=function(){f.thumbMouseUp()}},onAvailable:function(){this._bindKeyEvents()},_bindKeyEvents:function(){a.on(this.id,"keydown",this.handleKeyDown,this,true);a.on(this.id,"keypress",this.handleKeyPress,this,true)},handleKeyPress:function(e){if(this.enableKeys){var f=a.getCharCode(e);switch(f){case 37:case 38:case 39:case 40:case 36:case 35:a.preventDefault(e);break;default:}}},handleKeyDown:function(e){if(this.enableKeys){var h=a.getCharCode(e),i=this.thumb,g=this.getXValue(),j=this.getYValue(),f=true;switch(h){case 37:g-=this.keyIncrement;break;case 38:j-=this.keyIncrement;break;case 39:g+=this.keyIncrement;break;case 40:j+=this.keyIncrement;break;case 36:g=i.leftConstraint;j=i.topConstraint;break;case 35:g=i.rightConstraint;j=i.bottomConstraint;break;default:f=false}if(f){if(i._isRegion){this._setRegionValue(c.SOURCE_KEY_EVENT,g,j,true)}else{this._setValue(c.SOURCE_KEY_EVENT,(i._isHoriz?g:j),true)}a.stopEvent(e)}}},setStartSliderState:function(){this.setThumbCenterPoint();this.baselinePos=d(this.getEl());this.thumb.startOffset=this.thumb.getOffsetFromParent(this.baselinePos);if(this.thumb._isRegion){if(this.deferredSetRegionValue){this._setRegionValue.apply(this,this.deferredSetRegionValue);this.deferredSetRegionValue=null}else{this.setRegionValue(0,0,true,true,true)}}else{if(this.deferredSetValue){this._setValue.apply(this,this.deferredSetValue);this.deferredSetValue=null}else{this.setValue(0,true,true,true)}}},setThumbCenterPoint:function(){var e=this.thumb.getEl();if(e){this.thumbCenterPoint={x:parseInt(e.offsetWidth/2,10),y:parseInt(e.offsetHeight/2,10)}}},lock:function(){this.thumb.lock();this.locked=true},unlock:function(){this.thumb.unlock();this.locked=false},thumbMouseUp:function(){this._mouseDown=false;if(!this.isLocked()&&!this.moveComplete){this.endMove()}},onMouseUp:function(){this._mouseDown=false;if(this.backgroundEnabled&&!this.isLocked()&&!this.moveComplete){this.endMove()}},getThumb:function(){return this.thumb},focus:function(){this.valueChangeSource=c.SOURCE_UI_EVENT;var f=this.getEl();if(f.focus){try{f.focus()}catch(e){}}this.verifyOffset();return !this.isLocked()},onChange:function(f,e){},onSlideStart:function(){},onSlideEnd:function(){},getValue:function(){return this.thumb.getValue()},getXValue:function(){return this.thumb.getXValue()},getYValue:function(){return this.thumb.getYValue()},setValue:function(){var e=b.call(arguments);e.unshift(c.SOURCE_SET_VALUE);return this._setValue.apply(this,e)},_setValue:function(h,e,j,i,m){var k=this.thumb,f,g;if(!k.available){this.deferredSetValue=arguments;return false}if(this.isLocked()&&!i){return false}if(isNaN(e)){return false}if(k._isRegion){return false}this._silent=m;this.valueChangeSource=h||c.SOURCE_SET_VALUE;k.lastOffset=[e,e];this.verifyOffset(true);this._slideStart();if(k._isHoriz){f=k.initPageX+e+this.thumbCenterPoint.x;this.moveThumb(f,k.initPageY,j)}else{g=k.initPageY+e+this.thumbCenterPoint.y;this.moveThumb(k.initPageX,g,j)}return true},setRegionValue:function(){var e=b.call(arguments);e.unshift(c.SOURCE_SET_VALUE);return this._setRegionValue.apply(this,e)},_setRegionValue:function(m,h,j,i,k,g){var f=this.thumb,n,e;if(!f.available){this.deferredSetRegionValue=arguments;return false}if(this.isLocked()&&!k){return false}if(isNaN(h)){return false}if(!f._isRegion){return false}this._silent=g;this.valueChangeSource=m||c.SOURCE_SET_VALUE;f.lastOffset=[h,j];this.verifyOffset(true);this._slideStart();n=f.initPageX+h+this.thumbCenterPoint.x;e=f.initPageY+j+this.thumbCenterPoint.y;this.moveThumb(n,e,i);return true},verifyOffset:function(f){var e=d(this.getEl()),g=this.thumb;if(!this.thumbCenterPoint||!this.thumbCenterPoint.x){this.setThumbCenterPoint()}if(e){if(e[0]!=this.baselinePos[0]||e[1]!=this.baselinePos[1]){this.setInitPosition();this.baselinePos=e;g.initPageX=this.initPageX+g.startOffset[0];g.initPageY=this.initPageY+g.startOffset[1];g.deltaSetXY=null;this.resetThumbConstraints();return false}}return true},moveThumb:function(g,h,i,k){var f=this.thumb,e=this,m,n,j;if(!f.available){return}f.setDelta(this.thumbCenterPoint.x,this.thumbCenterPoint.y);n=f.getTargetCoord(g,h);m=[Math.round(n.x),Math.round(n.y)];if(this.animate&&f._graduated&&!i){this.lock();this.curCoord=d(this.thumb.getEl());this.curCoord=[Math.round(this.curCoord[0]),Math.round(this.curCoord[1])];setTimeout(function(){e.moveOneTick(m)},this.tickPause)}else{if(this.animate&&c.ANIM_AVAIL&&!i){this.lock();j=new YAHOO.util.Motion(f.id,{points:{to:m}},this.animationDuration,YAHOO.util.Easing.easeOut);j.onComplete.subscribe(function(){e.unlock();if(!e._mouseDown){e.endMove()}});j.animate()}else{f.setDragElPos(g,h);if(!k&&!this._mouseDown){this.endMove()}}}},_slideStart:function(){if(!this._sliding){if(!this._silent){this.onSlideStart();this.fireEvent("slideStart")}this._sliding=true}},_slideEnd:function(){if(this._sliding&&this.moveComplete){var e=this._silent;this._sliding=false;this._silent=false;this.moveComplete=false;if(!e){this.onSlideEnd();this.fireEvent("slideEnd")}}},moveOneTick:function(i){var g=this.thumb,h=this,f=null,j,e;if(g._isRegion){f=this._getNextX(this.curCoord,i);j=(f!==null)?f[0]:this.curCoord[0];f=this._getNextY(this.curCoord,i);e=(f!==null)?f[1]:this.curCoord[1];f=j!==this.curCoord[0]||e!==this.curCoord[1]?[j,e]:null}else{if(g._isHoriz){f=this._getNextX(this.curCoord,i)}else{f=this._getNextY(this.curCoord,i)}}if(f){this.curCoord=f;this.thumb.alignElWithMouse(g.getEl(),f[0]+this.thumbCenterPoint.x,f[1]+this.thumbCenterPoint.y);if(!(f[0]==i[0]&&f[1]==i[1])){setTimeout(function(){h.moveOneTick(i)},this.tickPause)}else{this.unlock();if(!this._mouseDown){this.endMove()}}}else{this.unlock();if(!this._mouseDown){this.endMove()}}},_getNextX:function(j,i){var g=this.thumb,e,h=[],f=null;if(j[0]>i[0]){e=g.tickSize-this.thumbCenterPoint.x;h=g.getTargetCoord(j[0]-e,j[1]);f=[h.x,h.y]}else{if(j[0]<i[0]){e=g.tickSize+this.thumbCenterPoint.x;h=g.getTargetCoord(j[0]+e,j[1]);f=[h.x,h.y]}else{}}return f},_getNextY:function(j,i){var g=this.thumb,e,h=[],f=null;if(j[1]>i[1]){e=g.tickSize-this.thumbCenterPoint.y;h=g.getTargetCoord(j[0],j[1]-e);f=[h.x,h.y]}else{if(j[1]<i[1]){e=g.tickSize+this.thumbCenterPoint.y;h=g.getTargetCoord(j[0],j[1]+e);f=[h.x,h.y]}else{}}return f},b4MouseDown:function(e){if(!this.backgroundEnabled){return false}this.thumb.autoOffset();this.resetThumbConstraints()},onMouseDown:function(f){if(!this.backgroundEnabled||this.isLocked()){return false}this._mouseDown=true;var g=a.getPageX(f),e=a.getPageY(f);this.focus();this._slideStart();this.moveThumb(g,e)},onDrag:function(f){if(this.backgroundEnabled&&!this.isLocked()){var g=a.getPageX(f),e=a.getPageY(f);this.moveThumb(g,e,true,true);this.fireEvents()}},endMove:function(){this.unlock();this.fireEvents();this.moveComplete=true;this._slideEnd()},resetThumbConstraints:function(){var e=this.thumb;e.setXConstraint(e.leftConstraint,e.rightConstraint,e.xTickSize);e.setYConstraint(e.topConstraint,e.bottomConstraint,e.xTickSize)},fireEvents:function(g){var h=this.thumb,e,f,i;if(!g){h.cachePosition()}if(!this.isLocked()){if(h._isRegion){e=h.getXValue();f=h.getYValue();if(e!=this.previousX||f!=this.previousY){if(!this._silent){this.onChange(e,f);this.fireEvent("change",{x:e,y:f})}}this.previousX=e;this.previousY=f}else{i=h.getValue();if(i!=this.previousVal){if(!this._silent){this.onChange(i);this.fireEvent("change",i)}}this.previousVal=i}}},toString:function(){return("Slider ("+this.type+") "+this.id)}});YAHOO.lang.augmentProto(c,YAHOO.util.EventProvider);YAHOO.widget.Slider=c})();YAHOO.widget.SliderThumb=function(b,g,d,e,a,c,f){if(b){YAHOO.widget.SliderThumb.superclass.constructor.call(this,b,g);this.parentElId=g}this.isTarget=false;this.tickSize=f;this.maintainOffset=true;this.initSlider(d,e,a,c,f);this.scroll=false};YAHOO.extend(YAHOO.widget.SliderThumb,YAHOO.util.DD,{startOffset:null,dragOnly:true,_isHoriz:false,_prevVal:0,_graduated:false,getOffsetFromParent0:function(b){var a=YAHOO.util.Dom.getXY(this.getEl()),c=b||YAHOO.util.Dom.getXY(this.parentElId);return[(a[0]-c[0]),(a[1]-c[1])]},getOffsetFromParent:function(h){var d=this.getEl(),k,g,j,c,e,a,b,f,i;if(!this.deltaOffset){g=YAHOO.util.Dom.getXY(d);j=h||YAHOO.util.Dom.getXY(this.parentElId);k=[(g[0]-j[0]),(g[1]-j[1])];c=parseInt(YAHOO.util.Dom.getStyle(d,"left"),10);e=parseInt(YAHOO.util.Dom.getStyle(d,"top"),10);a=c-k[0];b=e-k[1];if(isNaN(a)||isNaN(b)){}else{this.deltaOffset=[a,b]}}else{f=parseInt(YAHOO.util.Dom.getStyle(d,"left"),10);i=parseInt(YAHOO.util.Dom.getStyle(d,"top"),10);k=[f+this.deltaOffset[0],i+this.deltaOffset[1]]}return k},initSlider:function(c,d,a,b,e){this.initLeft=c;this.initRight=d;this.initUp=a;this.initDown=b;this.setXConstraint(c,d,e);this.setYConstraint(a,b,e);if(e&&e>1){this._graduated=true}this._isHoriz=(c||d);this._isVert=(a||b);this._isRegion=(this._isHoriz&&this._isVert)},clearTicks:function(){YAHOO.widget.SliderThumb.superclass.clearTicks.call(this);this.tickSize=0;this._graduated=false},getValue:function(){return(this._isHoriz)?this.getXValue():this.getYValue()},getXValue:function(){if(!this.available){return 0}var a=this.getOffsetFromParent();if(YAHOO.lang.isNumber(a[0])){this.lastOffset=a;return(a[0]-this.startOffset[0])}else{return(this.lastOffset[0]-this.startOffset[0])}},getYValue:function(){if(!this.available){return 0}var a=this.getOffsetFromParent();if(YAHOO.lang.isNumber(a[1])){this.lastOffset=a;return(a[1]-this.startOffset[1])}else{return(this.lastOffset[1]-this.startOffset[1])}},toString:function(){return"SliderThumb "+this.id},onChange:function(a,b){}});(function(){var a=YAHOO.util.Event,c=YAHOO.widget;function b(f,i,g,k){var h=this,e={min:false,max:false},j,d;this.minSlider=f;this.maxSlider=i;this.activeSlider=f;this.isHoriz=f.thumb._isHoriz;j=this.minSlider.thumb.onMouseDown;d=this.maxSlider.thumb.onMouseDown;this.minSlider.thumb.onMouseDown=function(){h.activeSlider=h.minSlider;j.apply(this,arguments)};this.maxSlider.thumb.onMouseDown=function(){h.activeSlider=h.maxSlider;d.apply(this,arguments)};this.minSlider.thumb.onAvailable=function(){f.setStartSliderState();e.min=true;if(e.max){h.fireEvent("ready",h)}};this.maxSlider.thumb.onAvailable=function(){i.setStartSliderState();e.max=true;if(e.min){h.fireEvent("ready",h)}};f.onMouseDown=i.onMouseDown=function(m){return this.backgroundEnabled&&h._handleMouseDown(m)};f.onDrag=i.onDrag=function(m){h._handleDrag(m)};f.onMouseUp=i.onMouseUp=function(m){h._handleMouseUp(m)};f._bindKeyEvents=function(){h._bindKeyEvents(this)};i._bindKeyEvents=function(){};f.subscribe("change",this._handleMinChange,f,this);f.subscribe("slideStart",this._handleSlideStart,f,this);f.subscribe("slideEnd",this._handleSlideEnd,f,this);i.subscribe("change",this._handleMaxChange,i,this);i.subscribe("slideStart",this._handleSlideStart,i,this);i.subscribe("slideEnd",this._handleSlideEnd,i,this);this.createEvent("ready",this);this.createEvent("change",this);this.createEvent("slideStart",this);this.createEvent("slideEnd",this);k=YAHOO.lang.isArray(k)?k:[0,g];k[0]=Math.min(Math.max(parseInt(k[0],10)|0,0),g);k[1]=Math.max(Math.min(parseInt(k[1],10)|0,g),0);if(k[0]>k[1]){k.splice(0,2,k[1],k[0])}this.minVal=k[0];this.maxVal=k[1];this.minSlider.setValue(this.minVal,true,true,true);this.maxSlider.setValue(this.maxVal,true,true,true)}b.prototype={minVal:-1,maxVal:-1,minRange:0,_handleSlideStart:function(d,e){this.fireEvent("slideStart",e)},_handleSlideEnd:function(d,e){this.fireEvent("slideEnd",e)},_handleDrag:function(d){c.Slider.prototype.onDrag.call(this.activeSlider,d)},_handleMinChange:function(){this.activeSlider=this.minSlider;this.updateValue()},_handleMaxChange:function(){this.activeSlider=this.maxSlider;this.updateValue()},_bindKeyEvents:function(d){a.on(d.id,"keydown",this._handleKeyDown,this,true);a.on(d.id,"keypress",this._handleKeyPress,this,true)},_handleKeyDown:function(d){this.activeSlider.handleKeyDown.apply(this.activeSlider,arguments)},_handleKeyPress:function(d){this.activeSlider.handleKeyPress.apply(this.activeSlider,arguments)},setValues:function(k,h,j,o,i){var n=this.minSlider,f=this.maxSlider,d=n.thumb,g=f.thumb,e=this,m={min:false,max:false};if(d._isHoriz){d.setXConstraint(d.leftConstraint,g.rightConstraint,d.tickSize);g.setXConstraint(d.leftConstraint,g.rightConstraint,g.tickSize)}else{d.setYConstraint(d.topConstraint,g.bottomConstraint,d.tickSize);g.setYConstraint(d.topConstraint,g.bottomConstraint,g.tickSize)}this._oneTimeCallback(n,"slideEnd",function(){m.min=true;if(m.max){e.updateValue(i);setTimeout(function(){e._cleanEvent(n,"slideEnd");e._cleanEvent(f,"slideEnd")},0)}});this._oneTimeCallback(f,"slideEnd",function(){m.max=true;if(m.min){e.updateValue(i);setTimeout(function(){e._cleanEvent(n,"slideEnd");e._cleanEvent(f,"slideEnd")},0)}});n.setValue(k,j,o,false);f.setValue(h,j,o,false)},setMinValue:function(g,e,d,h){var f=this.minSlider,i=this;this.activeSlider=f;i=this;this._oneTimeCallback(f,"slideEnd",function(){i.updateValue(h);setTimeout(function(){i._cleanEvent(f,"slideEnd")},0)});f.setValue(g,e,d)},setMaxValue:function(i,e,d,g){var f=this.maxSlider,h=this;this.activeSlider=f;this._oneTimeCallback(f,"slideEnd",function(){h.updateValue(g);setTimeout(function(){h._cleanEvent(f,"slideEnd")},0)});f.setValue(i,e,d)},updateValue:function(h){var n=this.minSlider.getValue(),g=this.maxSlider.getValue(),m=false,d,e,j,i,f,k;if(n!=this.minVal||g!=this.maxVal){m=true;d=this.minSlider.thumb;e=this.maxSlider.thumb;j=this.isHoriz?"x":"y";k=this.minSlider.thumbCenterPoint[j]+this.maxSlider.thumbCenterPoint[j];i=Math.max(g-k-this.minRange,0);f=Math.min(-n-k-this.minRange,0);if(this.isHoriz){i=Math.min(i,e.rightConstraint);d.setXConstraint(d.leftConstraint,i,d.tickSize);e.setXConstraint(f,e.rightConstraint,e.tickSize)}else{i=Math.min(i,e.bottomConstraint);d.setYConstraint(d.leftConstraint,i,d.tickSize);e.setYConstraint(f,e.bottomConstraint,e.tickSize)}}this.minVal=n;this.maxVal=g;if(m&&!h){this.fireEvent("change",this)}},selectActiveSlider:function(f){var i=this.minSlider,j=this.maxSlider,d=i.isLocked()||!i.backgroundEnabled,g=j.isLocked()||!i.backgroundEnabled,h=YAHOO.util.Event,e;if(d||g){this.activeSlider=d?j:i}else{if(this.isHoriz){e=h.getPageX(f)-i.thumb.initPageX-i.thumbCenterPoint.x}else{e=h.getPageY(f)-i.thumb.initPageY-i.thumbCenterPoint.y}this.activeSlider=e*2>j.getValue()+i.getValue()?j:i}},_handleMouseDown:function(d){if(!d._handled){d._handled=true;this.selectActiveSlider(d);return c.Slider.prototype.onMouseDown.call(this.activeSlider,d)}else{return false}},_handleMouseUp:function(d){c.Slider.prototype.onMouseUp.apply(this.activeSlider,arguments)},_oneTimeCallback:function(d,f,e){d.subscribe(f,function(){d.unsubscribe(f,arguments.callee);e.apply({},[].slice.apply(arguments))})},_cleanEvent:function(d,j){var e,f,k,h,g,i;if(d.__yui_events&&d.events[j]){for(f=d.__yui_events.length;f>=0;--f){if(d.__yui_events[f].type===j){e=d.__yui_events[f];break}}if(e){g=e.subscribers;i=[];h=0;for(f=0,k=g.length;f<k;++f){if(g[f]){i[h++]=g[f]}}e.subscribers=i}}}};YAHOO.lang.augmentProto(b,YAHOO.util.EventProvider);c.Slider.getHorizDualSlider=function(g,e,d,h,i,k){var f=new c.SliderThumb(e,g,0,h,0,0,i),j=new c.SliderThumb(d,g,0,h,0,0,i);return new b(new c.Slider(g,g,f,"horiz"),new c.Slider(g,g,j,"horiz"),h,k)};c.Slider.getVertDualSlider=function(g,e,d,h,i,k){var f=new c.SliderThumb(e,g,0,0,0,h,i),j=new c.SliderThumb(d,g,0,0,0,h,i);return new c.DualSlider(new c.Slider(g,g,f,"vert"),new c.Slider(g,g,j,"vert"),h,k)};YAHOO.widget.DualSlider=b})();YAHOO.register("slider",YAHOO.widget.Slider,{version:"2.7.0",build:"1799"});if(!Array.indexOf){Array.prototype.indexOf=function(b){for(var a=0;a<this.length;a++){if(b==this[a]){return a}}}}function array_contains(e,d,c){var b;var a=(c)?-1:false;for(b=0;b<e.length;b++){if(e[b]===d){a=(c)?b:true;break}}return a}function array_id(a){if(typeof a!="object"){return false}ret=new Array();for(var b in a){ret.push(b)}return ret}RegExp.quote=function(a){return a.replace(/([.?*+^$[\]\\(){}-])/g,"\\$1")};function overrideConf(b,c,a){if(!b||!c){return}for(var d in c){if(a||isdefined(b,d)){b[d]=c[d]}}}function clone(c){if(c==null||typeof(c)!="object"){return c}var a=new c.constructor();for(var b in c){a[b]=clone(c[b])}return a}function isdefined(object,variable){return(typeof(eval(object)[variable])!="undefined")}function getElementTextContent(e,c){var b=document.getElementById(e);if(!b){return}var d="";var a=b.firstChild;while(a){if(a.nodeType==3){d+=a.textContent}a=a.nextSibling}return(!c)?YAHOO.lang.trim(d):d}function moveChilds(a,b){if(!a||!b){return}while(a.firstChild){b.appendChild(a.removeChild(a.firstChild))}}function removeChilds(a){if(!a.firstChild){return}while(a.firstChild){a.removeChild(a.firstChild)}}function getCursor(a){return a.style.cursor}function setCursor(a,b){try{a.style.cursor=b}catch(d){if(b=="pointer"){setCursor("hand")}}}function getElementWidth(a){var b=(typeof a=="object")?a:document.getElementById(a);if(b&&b.style.display!="none"){return b.offsetWidth}else{return 0}}function getElementHeight(a){var b=(typeof a=="object")?a:document.getElementById(a);if(b&&b.style.display!="none"){return b.offsetHeight}else{return 0}}function setElementWidth(a,b){if(document.getElementById(a)&&b>=0){document.getElementById(a).style.width=b+"px"}}function setElementHeight(a,b){if(document.getElementById(a)&&b>=0){document.getElementById(a).style.height=b+"px"}}function setElementTop(a,b){if(document.getElementById(a)){document.getElementById(a).style.top=b+"px"}}function setElementLeft(a,b){if(document.getElementById(a)){document.getElementById(a).style.left=b+"px"}}function getViewport(){return arivis.webview.viewport}function getViewportSize(){return{width:getViewportWidth(),height:getViewportHeight()}}function getViewportWidth(){var a=arivis.webview.viewport.offsetWidth;return a}function getViewportHeight(){var a=arivis.webview.viewport.offsetHeight;return a}function getClientSize(){var b,a;if(window.innerHeight){b=window.innerWidth;a=window.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){b=document.documentElement.clientWidth;a=document.documentElement.clientHeight}else{if(document.body){b=document.body.clientWidth;a=document.body.clientHeight}}}return{width:b,height:a}}function popup(e,d,a,c){if(!e||!e.href){return}var b=e.href;_win(b,d,a,c);return true}function _win(c,a,e,b){var d=getClientSize();a=(a)?a:1000;e=(e)?e:800;if(a>d.width-20){a=d.width-20}if(e>d.height-20){e=d.height-20}l=Math.floor((d.width-a)/2);t=Math.floor((d.height-e)/2);if(!b){b="_winOnFly"}winOnFly=window.open(c,b,"width="+a+",height="+e+",screenX="+l+",screenY="+t+",status=yes,menubar=yes,resizable=yes,locationbar=no,scrollbars=yes");setTimeout("winOnFly.focus()",300);return true}function composeURL(b,c){var a=(typeof c=="object")?array2query(c):c;return b+"?"+a}function array2query(c){var b=[];for(var a in c){b.push(encodeURIComponent(a)+"="+encodeURIComponent(c[a]))}return b.join("&")}function query2array(d){if(!d){d=window.location.search}var f=new Array();var g=d.split("?");d=g[g.length-1];var e=d.split("&");for(var c=0;c<e.length;c++){var b=e[c].split("=");var a=decodeURIComponent(b[0]);f[a]=decodeURIComponent(b[1])}return f}function mark(c){var b=getDomElements(c);if(b){for(var a=0;a<b.length;a++){YAHOO.util.Dom.addClass(b[a],"market")}}}function unmark(c){var b=getDomElements(c);if(b){for(var a=0;a<b.length;a++){YAHOO.util.Dom.removeClass(b[a],"market")}}}function getDomElements(c){var b=YAHOO.util.Dom.getElementsByClassName(c);if(b&&b.length){return b}var a=YAHOO.util.Dom.get(c);if(a){return new Array(a)}}function getAbsPosition(b){var d=0;var c=0;var a=(typeof(b)=="object")?b:document.getElementById(b);if(!a){return false}if(a.offsetParent){do{d+=a.offsetLeft;c+=a.offsetTop}while(a=a.offsetParent)}return{top:c,left:d}}function getRelMousePos(d,c){if(!d||!c){return[0,0]}var b=YAHOO.util.Dom.getXY(c);var a=YAHOO.util.Event.getXY(d);return[a[0]-b[0],a[1]-b[1]]}function dragRegionElem(b,d,c){if(typeof d=="string"){d=document.getElementById(d)}var f=YAHOO.util.Dom.getRegion(c);var a=YAHOO.util.Dom.getRegion(d);var e={left:parseInt(a.left-f.left),right:parseInt(f.right-a.right),top:parseInt(a.top-f.top),bottom:parseInt(f.bottom-a.bottom)};b.resetConstraints();b.setXConstraint(e.left,e.right);b.setYConstraint(e.top,e.bottom)}var outputFormat=[["pm",1000000],["nm",1000],["&#181;m",1],["mm",0.001],["m",0.000001],["km",1e-9],];function getOutputFormat(c,a){if(!a){a=3}var d;for(var b in outputFormat){d=c*outputFormat[b][1];if(d>=1){d=parseFloat(d.toPrecision(a)+"");outputValue=d+" "+outputFormat[b][0];if(d<1000){break}}}return outputValue}if(!window._debugString){var _debugString=""}if(!window.now){var now=new Date()}if(!window.appTime){var appTime=now.getTime()}if(!window.__debug){function __debug(b){now=new Date();time=now.getTime();var c=time-appTime;var d=c+": "+b+"\n";_debugString+=d;var a=document.getElementById("debug");if(a){a.value=d+a.value}}}if(!window.__clearDebug){function __clearDebug(){var a=document.getElementById("debug");if(a){a.value=""}}}sprintfWrapper={init:function(){if(typeof arguments=="undefined"){return null}if(arguments.length<1){return null}if(typeof arguments[0]!="string"){return null}if(typeof RegExp=="undefined"){return null}var j=arguments[0];var c=new RegExp(/(%([%]|(\-)?(\+|\x20)?(0)?(\d+)?(\.(\d)?)?([bcdfosxX])))/g);var g=new Array();var m=new Array();var a=0;var h=0;var n=0;var d=0;var k="";var f=null;while(f=c.exec(j)){if(f[9]){a+=1}h=d;n=c.lastIndex-f[0].length;m[m.length]=j.substring(h,n);d=c.lastIndex;g[g.length]={match:f[0],left:f[3]?true:false,sign:f[4]||"",pad:f[5]||" ",min:f[6]||0,precision:f[8],code:f[9]||"%",negative:parseInt(arguments[a])<0?true:false,argument:String(arguments[a])}}m[m.length]=j.substring(d);if(g.length==0){return j}if((arguments.length-1)<a){return null}var b=null;var f=null;var e=null;for(e=0;e<g.length;e++){if(g[e].code=="%"){substitution="%"}else{if(g[e].code=="b"){g[e].argument=String(Math.abs(parseInt(g[e].argument)).toString(2));substitution=sprintfWrapper.convert(g[e],true)}else{if(g[e].code=="c"){g[e].argument=String(String.fromCharCode(parseInt(Math.abs(parseInt(g[e].argument)))));substitution=sprintfWrapper.convert(g[e],true)}else{if(g[e].code=="d"){g[e].argument=String(Math.abs(parseInt(g[e].argument)));substitution=sprintfWrapper.convert(g[e])}else{if(g[e].code=="f"){g[e].argument=String(Math.abs(parseFloat(g[e].argument)).toFixed(g[e].precision?g[e].precision:6));substitution=sprintfWrapper.convert(g[e])}else{if(g[e].code=="o"){g[e].argument=String(Math.abs(parseInt(g[e].argument)).toString(8));substitution=sprintfWrapper.convert(g[e])}else{if(g[e].code=="s"){g[e].argument=g[e].argument.substring(0,g[e].precision?g[e].precision:g[e].argument.length);substitution=sprintfWrapper.convert(g[e],true)}else{if(g[e].code=="x"){g[e].argument=String(Math.abs(parseInt(g[e].argument)).toString(16));substitution=sprintfWrapper.convert(g[e])}else{if(g[e].code=="X"){g[e].argument=String(Math.abs(parseInt(g[e].argument)).toString(16));substitution=sprintfWrapper.convert(g[e]).toUpperCase()}else{substitution=g[e].match}}}}}}}}}k+=m[e];k+=substitution}k+=m[e];return k},convert:function(b,d){if(d){b.sign=""}else{b.sign=b.negative?"-":b.sign}var a=b.min-b.argument.length+1-b.sign.length;var c=new Array(a<0?0:a).join(b.pad);if(!b.left){if(b.pad=="0"||d){return b.sign+c+b.argument}else{return c+b.sign+b.argument}}else{if(b.pad=="0"||d){return b.sign+b.argument+c.replace(/0/g," ")}else{return b.sign+b.argument+c}}}};sprintf=sprintfWrapper.init;arivis.webview.Application=function(a){this.conf={url:"webview.xml"};overrideConf(this.conf,a);this.loader=new arivis.webview.ConfLoader()};arivis.webview.Application.prototype={conf:null,loader:null,active:null,isFreez:false,registry:[],appControl:null,isRunning:false,isRestart:false,timeout:10000,defaultImage:null,defaultImages:[],document:null,title:"arivis webview application",locked:false,mode:"normal",toString:function(){return"arivis.webview.Application"},createConf:function(a){if(document.implementation){var c=document.implementation.createDocument("http://www.w3.org/2001/XMLSchema-instance","webview",null)}else{if(window.ActiveXObject){var c=new ActiveXObject("Microsoft.XMLDOM")}else{return false}}var b=c.createElement("image");b.setAttribute("url",a);c.documentElement.appendChild(b);return c},loadDocument:function(j){var a=new Array();if(!j||!j.documentElement){return false}var e=j.getElementsByTagName("base");var g=new Array();for(var f=0;f<e.length;f++){var c=e[f].getAttribute("id");g[c]=e[f]}var k=j.getElementsByTagName("image");var h="";var n=query2array(window.location.search);if(n.defaultImageId){h=n.defaultImageId}for(var f=0;f<k.length;f++){var m=k[f].getAttribute("base");if(m&&g[m]){var b=new arivis.webview.ImageConf(g[m])}var d=(b)?new arivis.webview.ImageConf(k[f],b):new arivis.webview.ImageConf(k[f]);a.push(d);if(h&&h==d.id){this.defaultImage=a[a.length-1]}else{if(d.defaultImage=="true"||d.defaultImage=="1"){this.defaultImage=a[a.length-1]}}}this.document=j.documentElement;return a},setConfigurationVar:function(a){if(!a||!a.documentElement){return false}var b=a.getElementsByTagName("application")[0];if(b){if(b.getAttribute("title")){this.title=b.getAttribute("title")}if(b.getAttribute("mode")){this.mode=b.getAttribute("mode")}if(b.getAttribute("locked")=="true"){this.locked=true}}this.document=a.documentElement},getImages:function(){return(this.isRunning==true)?this.registry:false},getImage:function(c,a){for(var b=0;b<this.registry.length;b++){if(this.registry[b].id==c){return(a)?b:this.registry[b]}}return false},getActiveImage:function(){return this.active},setActiveImage:function(){this.active=this.registry},registerImage:function(a){var b=new arivis.webview.Image(a);this.registry.push(b);return b},run:function(c){var b=query2array(window.location.search);if(b.sis){var d=this.createConf(b.sis);this.loader.reflect(d,this.handleSuccess,this.handleFailure,this)}else{if(b.id){var a=new arivis.webview.Template(this.conf.url,{ID:b.id})}else{var a=(b.conf)?b.conf:(b.xml)?"/"+(b.xml):this.conf.url}this.loader.load(a,(c)?this.handleRestartSuccess:this.handleSuccess,this.handleFailure,this)}},restart:function(){this.stop();this.run(true)},stop:function(){this.active=null;this.isRunning=false;this.isRestart=false;arivis.webview.event.fireEvent("applicationStop")},handleSuccess:function(c){var b=c.responseXML;this.setConfigurationVar(b);if(this.locked){return this.handleLocked()}var a=this.loadDocument(b);if(!this.checkRegistry(c,a)){return}this._start(a,b)},_start:function(a,b){this.registry=a;this.isRunning=true;arivis.webview.event.fireEvent("applicationRun",b);if(!this.active){if(this.defaultImage){this.selectImage(this.defaultImage.id)}else{if(this.registry[0]){this.selectImage(this.registry[0].id)}}}},handleRestartSuccess:function(c){var b=c.responseXML;this.setConfigurationVar(b);if(this.locked){return this.handleLocked()}var a=this.loadDocument(b);if(!this.checkRegistry(c,a)){return}this._restart(a,b)},_restart:function(b,c){this.isRestart=true;if(arivis.webview.appStatus){var a=arivis.webview.appStatus.getStatus()}arivis.webview.event.fireEvent("applicationStop");this.isRunning=false;this.active=null;this.registry=b;this.isRunning=true;if(arivis.webview.appStatus){arivis.webview.appStatus.setStatus(a)}arivis.webview.event.fireEvent("applicationRestart",c);if(!this.active){if(this.defaultImage){this.selectImage(this.defaultImageId.id)}else{if(this.registry[0]){this.selectImage(this.registry[0].id)}}}this.isRestart=false},handleFailure:function(a){this.stop();arivis.webview.event.fireEvent("message","configuration failure");arivis.webview.event.fireEvent("error","error configuration load ["+a.argument.url+"]")},handleLocked:function(){this.stop();arivis.webview.event.fireEvent("message","application locked");return},checkRegistry:function(b,a){if(!a){this.stop();arivis.webview.event.fireEvent("message","configuration failure");arivis.webview.event.fireEvent("error","error configuration is empty [url: "+b.argument.url+", status: "+b.status+"]");return false}if(!a.length){this.stop();arivis.webview.event.fireEvent("message","configuration failure");arivis.webview.event.fireEvent("error","error configuration not images [url: "+b.argument.url+", status: "+b.status+"]");return false}return true},selectImage:function(c,d,a,f){var e=this.getImage(c);if(!e){return false}if(e===this.active&&!d&&!a&&!f){return e}if(e.def){var b=new arivis.webview.Image(this.defaultImages[e.def]);e.extendImageConf(b)}return this.setImage(e,d,a,f)},setImage:function(e,c,b,f){var d=(!this.active)?true:false;var a={image:e,zoom:c,x:b,y:f};arivis.webview.event.fireEvent("imageBeforeChange",a);this.active=e;arivis.webview.event.fireEvent("imageChange",a);if(d&&!this.isRestart){arivis.webview.event.fireEvent("imageChangeDefault",a)}return e}};arivis.webview.DefaultImageConf=function(){this.id="";this.name="";this.description=null;this.previewImage=null;this.annotations=0;this.urlPrefix=null;this.size={x:0,y:0,width:null,height:null,planes:null,frames:null,filesize:null,pixelSizeX:1,pixelSizeY:1,pixelSizeZ:1};this.zoom={min:0.001,max:2,def:0,paramName:null,paramValue:null,level:[0.001,0.0015,0.002,0.00333,0.005,0.00667,0.01,0.015,0.02,0.0333,0.05,0.0667,0.1,0.15,0.2,0.333,0.5,0.667,1,1.5,2]}};arivis.webview.DefaultLayerConf=function(){this.id="";this.imageid="";this.layerid="";this.name="";this.type="";this.url="";this.useid="true";this.param={}};arivis.webview.ImageConf=function(b,c){if(b){var a=(c)?c:new arivis.webview.DefaultImageConf();return this.getConf(b,a)}};arivis.webview.ImageConf.prototype={getConf:function(d,e){var g=this.getAttrConf(d,e);g._xml=d;var m=d.getElementsByTagName("description")[0];g.description=(m&&m.firstChild)?m.firstChild.nodeValue:"";var k=d.getElementsByTagName("size")[0];if(k){g.size=this.getAttrConf(k,g.size)}if(k.getAttribute("ticks")){g.size.frames=k.getAttribute("ticks")}var a=d.getElementsByTagName("zoom")[0];if(a){g.zoom=this.getAttrConf(a,g.zoom);if(a.firstChild){var f=a.firstChild.nodeValue.split(",");var n=[];for(var c=0;c<f.length;c++){if(parseFloat(f[c])>0){n.push(parseFloat(f[c]))}}g.zoom.level=n}if(g.zoom.paramValue){g.zoom.paramValue=g.zoom.paramValue.split(",")}else{g.zoom.level=this.getZoomLevelSorted(g.zoom.level)}}g.zoom.def=(g.zoom.def)?g.zoom.def:(g.zoom["default"])?g.zoom["default"]/100:"";if(!g.zoom.min){g.zoom.min=0.01}if(!g.zoom.max){g.zoom.max=1}var j=d.getElementsByTagName("layer");if(j.length){g.layer={};for(var c=0;c<j.length;c++){var b=j[c].getAttribute("id");g.layer[b]=this.getLayerConf(j[c])}}if(g.layer&&g.base){for(var b in g.layer){var h=g.layer[b];if(h.imageid==""){h.imageid=g.id}h.layerid=b}}return g},getLayerConf:function(c,d){var b=(d)?d:new arivis.webview.DefaultLayerConf;b=this.getAttrConf(c,b);var a=c.getElementsByTagName("param")[0];if(a){b.param=this.getAttrConf(a)}return b},getAttrConf:function(b,d){var a=(d)?d:{};for(var c=0;c<b.attributes.length;c++){a[b.attributes[c].nodeName]=b.attributes[c].nodeValue}return a},getZoomLevelSorted:function(d,a){var c=((new Array()).concat(d));for(var b in c){c[b]=parseFloat(c[b])}return(a)?c.sort(function(f,e){return e-f}):c.sort(function(f,e){return f-e})},toString:function(){return"arivis.webview.ImageConf"}};arivis.webview.ConfLoader=function(){};arivis.webview.ConfLoader.prototype={mainResponse:null,mainRequestParam:{handleSuccess:null,handleFailure:null,scope:null},layerAttributes:{id:"layer_1",htmlClass:"layer_1",name:"Layer 1",type:"ImageLayer"},stackRequest:[],load:function(b,a,d,c){if(typeof window.__loading=="function"){__loading("loading configuration")}this.mainRequestParam={url:b,handleSuccess:a,handleFailure:d,scope:c};var e={success:this.handleSuccess,failure:this.handleFailure,scope:this,argument:{url:b}};YAHOO.util.Connect.asyncRequest("GET",b,e)},reflect:function(e,a,d,c){this.mainRequestParam={handleSuccess:a,handleFailure:d,scope:c};var b={responseXML:e};this.handleSuccess(b)},handleSuccess:function(c){this.mainResponse=c;var g=c.responseXML;var j=g.documentElement;var h=j.getElementsByTagName("image");for(var e=0;e<h.length;e++){var f=h[e].getElementsByTagName("size");if(h[e].getAttribute("metadata")){var a=h[e].getAttribute("metadata")}else{if(!f[0]){var a=h[e].getAttribute("url")+"?stackmetadata"}else{continue}}var d=new Object();d.image=h[e];d.loaded=false;var b=e;var k={success:this.handleImageInfoSuccess,failure:this.handleFailure,scope:this,argument:{url:a}};d.object=YAHOO.util.Connect.asyncRequest("GET",a,k);this.stackRequest.push(d)}if(!this.stackRequest.length){this.mainRequestParam.handleSuccess.call(this.mainRequestParam.scope,this.mainResponse)}},handleImageInfoSuccess:function(d){var m=0;var f=null;for(var c=0;c<this.stackRequest.length;c++){if(this.stackRequest[c].object.tId==d.tId){this.stackRequest[c].loaded=true;f=this.stackRequest[c]}else{if(this.stackRequest[c].loaded!=true){m++}}}if(f){var e=this.mainResponse.responseXML;var h=d.responseXML.documentElement;var k=f.image;for(var g=0;g<k.childNodes.length;g++){if(k.childNodes[g].nodeName=="size"){k.removeChild(k.childNodes[g]);break}}var j=e.createElement("size");for(var g=0;g<h.attributes.length;g++){j.setAttribute(h.attributes[g].nodeName,h.attributes[g].value)}k.appendChild(j);for(var g=0;g<k.childNodes.length;g++){if(k.childNodes[g].nodeName=="layer"){var n=true;break}}if(!n){var b=e.createElement("layer");for(var a in this.layerAttributes){b.setAttribute(a,this.layerAttributes[a])}b.setAttribute("url",k.getAttribute("url"));k.appendChild(b)}}if(!m){this.mainRequestParam.handleSuccess.call(this.mainRequestParam.scope,this.mainResponse)}},handleFailure:function(a){this.mainRequestParam.handleFailure.call(this.mainRequestParam.scope,a)},toString:function(){return"arivis.webview.ConfLoader"}};arivis.webview.Error=function(){this.serverMessageURL="message.php";this.init()};arivis.webview.Error.prototype={init:function(){arivis.webview.event.subscribe("error",this.handleError,this,true)},handleError:function(a){this.serverMessage(a)},serverMessage:function(d){var d=(d)?d:"undefined message";var b=new Array();b.id=d;var a=composeURL(this.serverMessageURL,b);var c={success:function(e){this.handleSuccess(e,d)},failure:function(e){this.handleFailure(e,d)},scope:this};YAHOO.util.Connect.asyncRequest("GET",a,c)},handleSuccess:function(a,c){var b=a.responseText;if(b=="1"){arivis.webview.event.fireEvent("message","server message ok")}else{arivis.webview.event.fireEvent("message","server message failure")}return},handleFailure:function(a,b){arivis.webview.event.fireEvent("message","server message failure")}};arivis.webview.Win=function(a){this.conf={containerId:"flyWin",id:"",name:"",experimental:false,contentName:"",flyBodyClass:"flyBody",flyHeadClass:"flyHead",isMinMax:false,isDefaultMaximize:true,minmaxButtonClass:"minmaxButton",maximizeButtonClass:"maximizeButton",minimizeButtonClass:"minimizeButton",isHelp:false,helpAction:null,isDefaultHelp:true,helpButtonClass:"helpButton",isExpandCollapse:true,isDefaultExpand:true,expandCollapseButtonClass:"expandCollapseButton",expandButtonClass:"expandButton",collapseButtonClass:"collapseButton",isClose:false,isDefaultClose:false,closeButtonClass:"closeButton",isDragDrop:false,dragRegionId:"viewport",contentHTML:'<div class="flyFrame" id="{ID}Frame"><div class="flyHead floatbox" id="{ID}Head"><div class="control floatbox"><div class="helpButton button"></div><div class="minmaxButton button"></div><div class="closeButton button"></div></div><div class="expandCollapseButton button"></div> {NAME}</div><div class="flyBody" id="{ID}"></div></div>'};this.init(a)};arivis.webview.Win.prototype={container:null,frameElem:null,dd:null,flyBody:null,flyHead:null,minmaxButton:null,enableState:true,expandState:true,maxState:true,closeState:false,init:function(a){overrideConf(this.conf,a);this.createHTML()},toString:function(){return this.conf.name},createHTML:function(){this.container=document.getElementById(this.conf.containerId);var contentHTML=this.conf.contentHTML.replace(/\{ID\}/g,this.conf.id);contentHTML=contentHTML.replace(/\{NAME\}/g,this.conf.name);this.frameElem=document.createElement("div");this.container.appendChild(this.frameElem);this.frameElem.innerHTML=contentHTML;var winElem=document.getElementById(this.conf.id+"Frame");if(this.conf.isDragDrop){YAHOO.util.Dom.setStyle(winElem,"position","absolute");this.dd=new YAHOO.util.DD(this.conf.id+"Frame");this.dd.setHandleElId(this.conf.id+"Head");dragRegionElem(this.dd,this.conf.id+"Frame",this.conf.dragRegionId)}this.flyBody=YAHOO.util.Dom.getElementsByClassName(this.conf.flyBodyClass,null,this.frameElem)[0];this.flyHead=YAHOO.util.Dom.getElementsByClassName(this.conf.flyHeadClass,null,this.frameElem)[0];this.closeButton=YAHOO.util.Dom.getElementsByClassName(this.conf.closeButtonClass,null,this.frameElem)[0];if(this.conf.isClose){YAHOO.util.Event.addListener(this.closeButton,"click",this.closeWin,this,true);if(this.conf.isDefaultClose){this.closeWin()}}else{this.closeButton.parentNode.removeChild(this.closeButton)}this.expandCollapseButton=YAHOO.util.Dom.getElementsByClassName(this.conf.expandCollapseButtonClass,null,this.frameElem)[0];if(this.conf.isExpandCollapse){YAHOO.util.Event.addListener(this.flyHead,"click",this.expandCollapse,this,true);if(this.conf.isDefaultExpand){this.expandCollapse(true)}else{this.expandCollapse(false)}}else{this.expandCollapseButton.parentNode.removeChild(this.expandCollapseButton)}this.minmaxButton=YAHOO.util.Dom.getElementsByClassName(this.conf.minmaxButtonClass,null,this.frameElem)[0];if(this.conf.isMinMax){YAHOO.util.Event.addListener(this.minmaxButton,"click",this.minmax,this,true);if(this.conf.isDefaultMaximize){this.minmax(true)}else{this.minmax(false)}}else{this.minmaxButton.parentNode.removeChild(this.minmaxButton)}this.helpButton=YAHOO.util.Dom.getElementsByClassName(this.conf.helpButtonClass,null,this.frameElem)[0];if(this.conf.isHelp&&this.conf.helpAction){YAHOO.util.Event.addListener(this.helpButton,"click",function(){eval(this.conf.helpAction)},this,true);if(this.conf.isDefaultMaximize){this.minmax(true)}else{this.minmax(false)}}else{this.helpButton.parentNode.removeChild(this.helpButton)}if(this.conf.experimental){var flyFrame=YAHOO.util.Dom.getElementsByClassName("flyFrame",null,this.frameElem)[0];YAHOO.util.Dom.addClass(flyFrame,"experimental")}},expandCollapse:function(a){if(a!=true&&a!=false){a=(this.expandState==true)?false:true}if(a==true){YAHOO.util.Dom.removeClass(this.expandCollapseButton,this.conf.expandButtonClass);YAHOO.util.Dom.addClass(this.expandCollapseButton,this.conf.collapseButtonClass);YAHOO.util.Dom.removeClass(this.flyBody,"hidden");this.expandState=true;if(this.conf.contentName&&typeof arivis.webview[this.conf.contentName]=="object"&&typeof arivis.webview[this.conf.contentName].onExpand=="function"){arivis.webview[this.conf.contentName].onExpand(this.conf.name)}}else{YAHOO.util.Dom.removeClass(this.expandCollapseButton,this.conf.collapseButtonClass);YAHOO.util.Dom.addClass(this.expandCollapseButton,this.conf.expandButtonClass);YAHOO.util.Dom.addClass(this.flyBody,"hidden");this.expandState=false;if(this.conf.contentName&&typeof arivis.webview[this.conf.contentName]=="object"&&typeof arivis.webview[this.conf.contentName].onCollapse=="function"){arivis.webview[this.conf.contentName].onCollapse()}}},getEnableState:function(){return this.enableState},disable:function(){YAHOO.util.Dom.addClass(this.frameElem,"disabledWin");this.enableState=false;return this.expandState},enable:function(a){YAHOO.util.Dom.removeClass(this.frameElem,"disabledWin");this.enableState=true;return this.expandState},minmax:function(a){if(a!=true&&a!=false){a=(this.maxState==true)?false:true}if(a==true){YAHOO.util.Dom.removeClass(this.minmaxButton,this.conf.maximizeButtonClass);YAHOO.util.Dom.addClass(this.minmaxButton,this.conf.minimizeButtonClass);YAHOO.util.Dom.setStyle(this.flyBody,"display","");this.maxState=true}else{YAHOO.util.Dom.removeClass(this.minmaxButton,this.conf.minimizeButtonClass);YAHOO.util.Dom.addClass(this.minmaxButton,this.conf.maximizeButtonClass);YAHOO.util.Dom.setStyle(this.flyBody,"display","none");this.maxState=false}if(this.conf.isDragDrop){dragRegionElem(this.dd,this.conf.id+"Frame",this.conf.dragRegionId)}},closeWin:function(){YAHOO.util.Dom.setStyle(this.frameElem,"display","none")}};arivis.webview.Template=function(a,b){this.templateVars=new Array();this.init(a,b)};arivis.webview.Template.prototype={templateString:"",toString:function(){return this.parse()},init:function(a,b){this.set(a);if(b){this.assign(b)}},set:function(a){if(a){this.templateString=(typeof a=="string"&&document.getElementById(a))?document.getElementById(a).innerHTML:a}},assign:function(a,b){if(typeof a=="object"){this.templateVars.push(a)}else{this.templateVars[0][a]=b}},parse:function(rawData){var returnString="";var data=(rawData)?(rawData.length)?rawData:new Array(rawData):this.templateVars;for(var i=0;i<data.length;i++){var parsedString=this.templateString;var dataSet=data[i];for(var id in dataSet){var search=eval("/\\{"+escape(id)+"\\}/g");parsedString=parsedString.replace(search,dataSet[id])}returnString+=parsedString}if(!returnString){returnString=this.templateString}returnString=returnString.replace(/\{[A-Za-z0-9_]*\}/g,"");return returnString}};arivis.webview.SwitchStyles=function(a){this.conf={};this.init(a)};arivis.webview.SwitchStyles.prototype={init:function(a){overrideConf(this.conf,a,true);for(var b in this.conf){this.localizeId(b)}},localizeId:function(a){YAHOO.util.Event.addListener(this.conf[a].elemId,this.conf[a].elemEvent,function(){this.switchStyles(a)},this,true)},switchStyles:function(e){if(!this.conf[e]){return}if(this.conf[e].setState==true){for(var b=0;b<this.conf[e].styleElem.length;b++){var d=document.getElementById(this.conf[e].styleElem[b].id);var a=this.conf[e].styleElem[b].style;for(var c in a){d.style[c]=""}}this.conf[e].setState=false}else{for(var b=0;b<this.conf[e].styleElem.length;b++){var d=document.getElementById(this.conf[e].styleElem[b].id);var a=this.conf[e].styleElem[b].style;for(var c in a){d.style[c]=a[c]}}this.conf[e].setState=true}if(this.conf[e].appEvent){arivis.webview.event.fireEvent(this.conf[e].appEvent)}}};arivis.webview.LayerContainer=function(a){this.conf={viewportId:"viewport",mapId:"movebleMap",isNotImageReset:false,dblclick2Zoom:true,minWheelStep:-10,maxWheelStep:10};overrideConf(this.conf,a);this.init()};arivis.webview.LayerContainer.prototype={viewport:null,image:null,map:null,mapOffsetX:0,mapOffsetY:0,centerXY:null,zoom:0,layer:{},navigateFunktion:null,plane:0,frame:0,clickZoomLock:false,delayRemoveLayerTime:300,init:function(){this.viewport=document.getElementById(this.conf.viewportId);this.map=document.getElementById(this.conf.mapId);this.centerXY=this.offset2center({x:-this.mapOffsetX,y:-this.mapOffsetY});arivis.webview.event.subscribe("navigate",function(a){var b=this;this.navigateFunktion=function(){b.changeView(b.zoom,a.x,a.y)};setTimeout(this.navigateFunktion,200)},this,true);arivis.webview.event.subscribe("arrow",function(a){this.moveMapBy(a.x,a.y)},this,true);arivis.webview.event.subscribe("endArrow",this.resetPosition,this,true);arivis.webview.event.subscribe("drag",this.update,this,true);arivis.webview.event.subscribe("viewportSizeChange",this.update,this,true);arivis.webview.event.subscribe("viewportSizeChange",this.handleResize,this,true);arivis.webview.event.subscribe("enddrag",this.resetPosition,this,true);arivis.webview.event.subscribe("viewChange",this.resetPosition,this,true);arivis.webview.event.subscribe("planeChange",this.updateAllTiles,this,true);arivis.webview.event.subscribe("frameChange",this.updateAllTiles,this,true);arivis.webview.event.subscribe("paramChange",this.updateAllTiles,this,true);arivis.webview.event.subscribe("imageChange",this.handleImageChange,this,true);arivis.webview.event.subscribe("wheel",this.wheelZoom,this,true);if(this.conf.dblclick2Zoom){arivis.webview.event.subscribe("dblLeftClick",function(a){this.clickZoom(a)},this,true);arivis.webview.event.subscribe("dblRightClick",function(a){this.clickZoom(a,true)},this,true)}YAHOO.util.Event.addListener(window,"resize",this.handleResize,this,true)},toString:function(){return"arivis.webview.LayerContainer"},wheelZoom:function(e){var a=this.zoom;if(this.conf.maxWheelStep){e.step=Math.min(e.step,this.conf.maxWheelStep)}if(this.conf.minWheelStep){e.step=Math.max(e.step,this.conf.minWheelStep)}if(e.delta<0){for(var g=0;g>e.step;g--){var k=this.prevZoom(a);if(k){a=this.prevZoom(a)}else{break}}}else{if(e.delta>0){for(var g=0;g<e.step;g++){var b=this.nextZoom(a);if(b){a=this.nextZoom(a)}else{break}}}}if(!a){a=this.zoom}if(!a||this.zoom==a){return}var d=e.x-this.mapOffsetX;var c=e.y-this.mapOffsetY;var j=this.getPositionInZoom(d,c,a,this.zoom,e);if(j){var h=j.x-e.x;var f=j.y-e.y;this.changeView(a,h,f,false,j)}},getPositionInZoom:function(a,g,d,c){c=(c)?c:1;if(parseInt(a)&&parseInt(g)){var b=d/c;var f=a*b;var e=g*b;return{x:Math.round(f),y:Math.round(e)}}return},lockClickZoom:function(a){this.clickZoomLock=true;if(parseInt(a)){setTimeout(this.unlockClickZoom,parseInt(a))}},unlockClickZoom:function(){this.clickZoomLock=false},clickZoom:function(k,g){if(this.clickZoomLock){return}var d=getAbsPosition(this.viewport);var h=k.clientX-d.left;var f=k.clientY-d.top;var c=h-this.viewport.offsetWidth/2;var b=f-this.viewport.offsetHeight/2;var m=this.getPosition();var j=Math.floor(m.x+c);var i=Math.floor(m.y+b);var a=(k.ctrlKey||g===true)?this.prevZoom():this.nextZoom();if(!a){a=this.zoom}this.setZoom(a,{x:j,y:i})},prevZoom:function(c,d){if(!c){c=this.zoom}var e=this.image.zoom.level;var b=this.image.zoom.min;for(var a in e){if(e[a]<c&&e[a]>b){b=e[a]}}if(d){return(b<c)?a:-1}else{return(b<c)?b:false}},nextZoom:function(c,d){if(!c){c=this.zoom}var e=this.image.zoom.level;var b=this.image.zoom.max;for(var a in e){if(e[a]>c&&e[a]<b){b=e[a]}}if(d){return(b>c)?a:-1}else{return(b>c)?b:false}},setZoomLevel:function(a){a=Math.abs(parseFloat(a));if(!a){a=this.image.zoom.def}var b=this.image.zoom.level.sort(function(d,c){return Math.abs(d-a)-Math.abs(c-a)});if(b[0]!=this.zoom){this.setZoom(b[0])}else{return false}return b[0]},addLayer:function(b,a){this.layer[b]=a},getLayerCount:function(){var a=0;for(var b in this.layer){a++}return a},getLayer:function(){return this.layer},getLayerIDs:function(){var a=[];for(var b in this.layer){a.push(b)}return a},toggle:function(a){if(!this.layer[a]){return}return(this.layer[a].isactive())?this.layer[a].deactivate():this.layer[a].activate()},activate:function(a){if(!this.layer[a]){return}return this.layer[a].activate()},deactivate:function(a){if(!this.layer[a]){return}return this.layer[a].deactivate()},isactive:function(a){if(!this.layer[a]){return}return(this.layer[a].isactive())},isexist:function(a){if(typeof(this.layer[a])=="object"){return true}for(var a in this.layer){if(this.layer[a].conf.layerid==a){return true}}return false},handleImageChange:function(k){if(this.conf.isNotImageReset){var i=parseInt(k.x)||-this.mapOffsetX;var h=parseInt(k.y)||-this.mapOffsetY}else{var i=parseInt(k.x)||0;var h=parseInt(k.y)||0}this.image=k.image;this.setPlane(0,false,true);this.setFrame(0,false,true);if(parseFloat(k.zoom)){this.zoom=parseFloat(k.zoom)}else{if(k.image.zoom.def=="fit"){this.zoom=this.getZoomFit()}else{if(k.image.zoom.def=="innerFit"){this.zoom=this.getZoomFit(true)}else{if(parseFloat(k.image.zoom.def)){this.zoom=parseFloat(k.image.zoom.def)}else{this.zoom=this.setZoomFit()}}}}var m=this.image.layer;var c={};var e={};var n={};for(var b in m){if(this.layer[b]){if(this.layer[b].conf.useid=="true"){n[b]=true}else{c[b]=true}e[b]=this.layer[b].active}else{n[b]=true}}var a=[];for(var b in this.layer){if(!c[b]){a[b]=true}}this.delLayer(a);this.iLayer++;for(var b in m){var g=b+"_"+this.iLayer;if(!this.layer[b]){var f=(e[b]==false)?false:true;var j=new arivis.webview[m[b].type](b,this.map,f,m[b],this.image);this.addLayer(b,j)}}this.changeView(this.zoom,i,h,n);var d=this.getLayerContent();arivis.webview.event.fireEvent("layerNewList",d)},delLayer:function(a){for(var b in a){if(this.layer[b]){this.layer[b].removeLayer(this.delayRemoveLayerTime);delete this.layer[b]}}},getLayerContent:function(){var d={};var c=new Array();for(var e in this.layer){if(this.layer[e].conf.info){var b=this.layer[e].conf.info.split(",");for(var a=0;a<b.length;a++){d[b[a]]=1}}else{d[this.layer[e].conf.layerid]=1}}for(var e in d){c.push(e)}return c},setZoom:function(a,b){var b=this.getZoomOffset(a,b);this.changeView(a,b.x,b.y)},getZoomOffset:function(d,e){if(!this.image){return}var c=d/this.zoom;var a=(e&&parseInt(e.x)&&parseInt(e.y))?this.offset2center(e):this.getCenterPosition();a.x=a.x*c;a.y=a.y*c;var f=this.center2offset(a);var b=this.clipPosition(f.x,f.y,d);return{x:b.x,y:b.y}},clipPosition:function(f,e,j,b){if(!b){b=this.image}if(!j){j=this.zoom}var h=this.image.size.x;var g=this.image.size.y;var i=this.image.size.width;var c=this.image.size.height;var a={};a.left=Math.floor(h*j);a.top=Math.floor(g*j);a.bottom=Math.ceil((g+c)*j);a.right=Math.ceil((h+i)*j);a.width=a.right-a.left;a.height=a.bottom-a.top;var d=getViewportSize();if(d.width>a.width){f=Math.max(f,a.width-d.width);f=Math.min(f,0)}else{f=Math.min(f,a.right-d.width);f=Math.max(f,a.left)}if(d.height>a.height){e=Math.max(e,a.height-d.height);e=Math.min(e,0)}else{e=Math.min(e,a.bottom-d.height);e=Math.max(e,a.top)}return{x:f,y:e}},changeView:function(a,g,e,o,n){arivis.webview.event.fireEvent("viewBeforeChange");var m=this.getPosition();var d={x:m.x,y:m.y,zoom:this.zoom};var i=(parseFloat(a)>0)?parseFloat(a):this.zoom;if(!parseInt(g)&&g!==0){g=-this.mapOffsetX}if(!parseInt(e)&&e!==0){e=-this.mapOffsetY}var k=this.image.size.width*i;var h=this.image.size.height*i;var c=getViewportHeight();var f=getViewportWidth();if(f>k){if(g>0){g=0}if(k-g>f){g=k-f}}else{if(g>k-f){g=k-f}if(g<0){g=0}}if(c>h){if(e>0){e=0}if(h-e>c){e=h-c}}else{if(e>h-c){e=h-c}if(e<0){e=0}}var j={x:g,y:e,zoom:i};this.moveTo(g,e);for(var b in this.layer){if(o&&o[b]){this.layer[b].changeView(d,j,true,n)}else{this.layer[b].changeView(d,j,false,n)}}if(this.zoom!=i){this.zoom=i;arivis.webview.event.fireEvent("zoomChange",this.zoom)}arivis.webview.loadingLayer.moveTo(g,e);arivis.webview.event.fireEvent("viewChange");arivis.webview.event.fireEvent("viewAfterChange")},moveMapBy:function(a,g){var d=parseInt(this.map.style.left)||0;var c=parseInt(this.map.style.top)||0;var e=d-a;var b=c-g;var f=this.getConstraints();if(e+this.mapOffsetX>f.maxX){e=f.maxX-this.mapOffsetX}if(e+this.mapOffsetX<f.minX){e=f.minX-this.mapOffsetX}if(b+this.mapOffsetY>f.maxY){b=f.maxY-this.mapOffsetY}if(b+this.mapOffsetY<f.minY){b=f.minY-this.mapOffsetY}if(Math.max(Math.abs(e),Math.abs(b))>65000){this.resetPosition();var e=a;var b=g}this.map.style.left=e+"px";this.map.style.top=b+"px";this.centerXY=this.offset2center({x:-this.mapOffsetX,y:-this.mapOffsetY});this.update();arivis.webview.event.fireEvent("viewChange")},moveTo:function(a,b){this.mapOffsetX=0-a;this.mapOffsetY=0-b;this.map.style.left=0+"px";this.map.style.top=0+"px";this.centerXY=this.offset2center({x:-this.mapOffsetX,y:-this.mapOffsetY});arivis.webview.event.fireEvent("endmove")},update:function(a,d){var c=(a>=0&&d>=0)?{x:a,y:d}:this.getPosition();for(var b in this.layer){this.layer[b].update(c.x,c.y)}this.centerXY=this.offset2center({x:-this.mapOffsetX,y:-this.mapOffsetY})},updateAllTiles:function(){for(var a in this.layer){this.layer[a].updateAllTiles()}},center2offset:function(d){var c=parseInt(d.x);var b=parseInt(d.y);var a=c-this.viewport.offsetWidth/2+0.1;var e=b-this.viewport.offsetHeight/2+0.1;return{x:Math.round(a),y:Math.round(e)}},offset2center:function(b){var a=parseInt(b.x);var e=parseInt(b.y);var d=a+this.viewport.offsetWidth/2-0.1;var c=e+this.viewport.offsetHeight/2-0.1;return{x:Math.round(d),y:Math.round(c)}},getPosition:function(){var a=0-this.map.offsetLeft-this.mapOffsetX;var b=0-this.map.offsetTop-this.mapOffsetY;return{x:a,y:b}},getViewArea:function(){var e=this.getPosition();var b=getViewportWidth();var d=getViewportHeight();var c=Math.round(this.zoom*this.image.size.width)-e.x;var a=Math.round(this.zoom*this.image.size.height)-e.y;e.w=Math.min(c,b);e.h=Math.min(a,d);return e},getCenterPosition:function(){var b=getViewportWidth();var a=getViewportHeight();var e=this.getPosition();var d=e.x+(b/2);var c=e.y+(a/2);return{x:d,y:c}},resetPosition:function(){var b=this.map.offsetLeft;var a=this.map.offsetTop;this.mapOffsetX+=b;this.mapOffsetY+=a;this.map.style.left="0px";this.map.style.top="0px";for(var c in this.layer){this.layer[c].map.style.left=(this.layer[c].map.offsetLeft+b)+"px";this.layer[c].map.style.top=(this.layer[c].map.offsetTop+a)+"px"}arivis.webview.loadingLayer.map.style.left=(arivis.webview.loadingLayer.map.offsetLeft+b)+"px";arivis.webview.loadingLayer.map.style.top=(arivis.webview.loadingLayer.map.offsetTop+a)+"px";this.centerXY=this.offset2center({x:-this.mapOffsetX,y:-this.mapOffsetY})},handleResize:function(){if(arivis.webview.application.isRunning){var a=this.center2offset(this.centerXY);this.changeView(this.zoom,a.x,a.y);this.centerXY=this.offset2center({x:-this.mapOffsetX,y:-this.mapOffsetY})}},setZoomRegion:function(j,i,p,m){if(!this.image){return}var k=this.getPosition();var o={x:k.x+j+p/2,y:k.y+i+m/2};var q=getViewportWidth();var b=getViewportHeight();var e=q/p;var u=b/m;var n=Math.min(e,u);if(this.zoom*n>this.image.zoom.max){n=this.image.zoom.max/this.zoom}var d={x:o.x*n,y:o.y*n};var a=this.center2offset(d);var c=this.zoom*n;this.changeView(c,a.x,a.y);return;var k=this.getPosition();var q=getViewportWidth();var b=getViewportHeight();var e=q/p;var u=b/m;var n=Math.min(e,u);if(this.zoom*n>this.image.zoom.max){n=this.image.zoom.max/this.zoom}var h=k.x+j+(p/2);var f=k.y+i+(m/2);h=h*n;f=f*n;var s=Math.round(h-(q/2));var r=Math.round(f-(b/2));c=this.zoom*n;var g=this.clipPosition(s,r);s=g.x;r=g.y;this.changeView(c,s,r)},getZoomFit:function(d){if(!this.image){return}var e=this.image.size.x;var c=this.image.size.y;var f=this.image.size.width;var h=this.image.size.height;var a=getViewportWidth()/f;var g=getViewportHeight()/h;var b=(d)?Math.max(a,g):Math.min(a,g);return b},setZoomFit:function(b){if(!this.image){return}var a=this.getZoomFit(b);this.setZoom(a)},getPlane:function(){return this.plane},setPlane:function(a,d,c,b){if(d){a=this.plane+a}if(isNaN(a)){a=this.plane}if(a>=this.image.size.planes){a=this.image.size.planes-1}if(a<0){a=0}if(this.plane!=a||c==true){this.plane=a;if(!b){arivis.webview.event.fireEvent("planeChange",this.plane)}}},getFrame:function(){return this.frame},setFrame:function(d,c,b,a){if(c){d=this.frame+d}if(isNaN(d)){d=this.frame}if(d>=this.image.size.frames){d=this.image.size.frames-1}if(d<0){d=0}if(this.frame!=d||b==true){this.frame=d;if(!a){arivis.webview.event.fireEvent("frameChange",this.frame)}}},changeLayerRequestParam:function(b,a){for(var c in this.layer){if(!a||a==this.layer[c].conf.type){this.layer[c].changeRequestParam(b)}}},changeAllLayer:function(){var b=this.image.layer;var a={};for(var c in b){a[c]=true}this.changeView(this.zoom,-this.mapOffsetX,-this.mapOffsetY,a)},getConstraints:function(){var d=this.image.size.width*this.zoom;var b=this.image.size.height*this.zoom;var c=getViewportHeight();var e=getViewportWidth();if(e>d){var a=0;var g=e-d}else{var g=0;var a=e-d}if(c>b){var h=0;var f=c-b}else{var f=0;var h=c-b}return{minX:a,maxX:g,minY:h,maxY:f}}};arivis.webview.ScaleCache=function(c,b,a){this.conf={containerId:"scaleFocus",mapId:"scaleCacheMap",skipOutIfLoaded:false,skipInIfLoaded:false,useAddedCache:false,useDisplayFocus:true,hiddenByScale:true,clearCacheTime:0,startDelay:0,stepTime:101,stepLimit:31,stepInFactor:0.77,stepOutFactor:0.77,maxRelation:20,activeScaleTileClass:"activeScaleTile",passiveScaleTileClass:"passiveScaleTile",hiddenScaleTileClass:"unvisible",focusWidth:60,focusHeight:40,focusClearDelay:400,focusElemClass:"scale",focusElemClassExpand:"scaleExpand",focusElemClassReduce:"scaleReduce",contentHTML:'<a id="in" class="navigateControl" />\n<a id="out" class="navigateControl" />\n'};overrideConf(this.conf,a);this.init(c,b)};arivis.webview.ScaleCache.prototype={imageCache:null,map:null,container:null,focusElem:null,focusTimeId:0,isRunning:false,oldPos:null,newPos:null,curPos:null,timerId:0,cache:[],scaleStep:0,scaleStepCount:2,imagesLoaded:false,skip:false,init:function(b,a){this.imageCache=b;this.map=(typeof a=="object")?a:document.getElementById(this.conf.mapId);if(this.conf.skipOutIfLoaded||this.conf.skipInIfLoaded){arivis.webview.event.subscribe("imagesLoaded",this.handleSkipIfLoaded,this,true)}arivis.webview.event.subscribe("imageChange",this.stop,this,true);YAHOO.util.Event.addListener(window,"resize",this.clearCache,this,true);this.createHTML()},createHTML:function(){this.container=document.getElementById(this.conf.containerId);this.focusElem=document.createElement("div");YAHOO.util.Dom.addClass(this.focusElem,this.conf.focusElemClass);this.container.appendChild(this.focusElem);var a=document.createElement("div");YAHOO.util.Dom.addClass(a,"corner");YAHOO.util.Dom.addClass(a,"lefttop");var d=document.createElement("div");YAHOO.util.Dom.addClass(d,"corner");YAHOO.util.Dom.addClass(d,"righttop");var c=document.createElement("div");YAHOO.util.Dom.addClass(c,"corner");YAHOO.util.Dom.addClass(c,"leftbottom");var b=document.createElement("div");YAHOO.util.Dom.addClass(b,"corner");YAHOO.util.Dom.addClass(b,"rightbottom");this.focusElem.appendChild(a);this.focusElem.appendChild(d);this.focusElem.appendChild(c);this.focusElem.appendChild(b)},toString:function(){return"arivis.webview.ScaleCache"},handleSkipIfLoaded:function(){if(this.isRunning){if((this.conf.skipOutIfLoaded&&this.oldPos.zoom>this.newPos.zoom)||(this.conf.skipInIfLoaded&&this.oldPos.zoom<this.newPos.zoom)){this.skip=true;this.passiveCache()}}},run:function(c,d,b){this.newPos=d;if(this.isRunning){if(this.conf.useAddedCache){this.addCache(b,c);return true}else{return false}}else{this.scaleStep=1;this.oldPos=c;this.curPos=clone(this.oldPos);this.isRunning=true;this.createCache(b,c);if(this.conf.hiddenByScale){YAHOO.util.Dom.addClass(this.map,this.conf.hiddenScaleTileClass)}var a=this;(this.conf.startDelay)?window.setTimeout(function(){a.step(true)},this.conf.startDelay):a.step(true);arivis.webview.event.fireEvent("scaleCacheStart");return true}},stop:function(){if(this.isRunning==false){return}window.clearTimeout(this.timerId);this.isRunning=false;this.skip=false;YAHOO.util.Dom.removeClass(this.map,this.conf.hiddenScaleTileClass);this.passiveCache();arivis.webview.event.fireEvent("scaleCacheStop");var a=this;this.displayFocus();if(this.conf.clearCacheTime){this.timerId=window.setTimeout(function(){a.clearCache()},this.conf.clearCacheTime)}},step:function(a){window.clearTimeout(this.timerId);this.isRunning=true;this.scaleStep++;if(this.curPos.zoom==this.newPos.zoom||this.scaleStep>this.conf.stepLimit){this.displayFocus();this.stop();return}this.curPos.zoom=(this.newPos.zoom>this.oldPos.zoom)?this.curPos.zoom/this.conf.stepInFactor:this.curPos.zoom*this.conf.stepOutFactor;var d=(this.curPos.zoom-this.oldPos.zoom)/(this.newPos.zoom-this.oldPos.zoom);this.curPos.x=Math.round(this.oldPos.x+(this.newPos.x-this.oldPos.x)*d);this.curPos.y=Math.round(this.oldPos.y+(this.newPos.y-this.oldPos.y)*d);if(this.skip||(this.newPos.zoom==this.oldPos.zoom)||(this.newPos.zoom>this.oldPos.zoom&&this.curPos.zoom>this.newPos.zoom)||(this.newPos.zoom<this.oldPos.zoom&&this.curPos.zoom<this.newPos.zoom)){this.curPos=clone(this.newPos)}var c=this.curPos.zoom/this.oldPos.zoom;this.scale();if(this.conf.useDisplayFocus){this.displayFocus(c)}var b=this;this.timerId=window.setTimeout(function(){b.step()},this.conf.stepTime)},scale:function(){for(var a=0;a<this.cache.length;a++){tile=this.cache[a];var b=this.curPos.zoom/tile.unscaledZoom;tile.style.width=Math.floor(tile.unscaledWidth*b+1)+"px";tile.style.height=Math.floor(tile.unscaledHeight*b+1)+"px";tile.style.left=Math.floor((tile.unscaledLeft+tile.unscaledOldPosX)*b-this.curPos.x)+"px";tile.style.top=Math.floor((tile.unscaledTop+tile.unscaledOldPosY)*b-this.curPos.y)+"px"}},createCache:function(a,b){this.clearCache();this.addCache(a,b)},addCache:function(c,f){for(var e=0;e<c.length;e++){var d=c[e];for(var a=0;a<d.length;a++){var b=d[a];b.unscaledWidth=b.width;b.unscaledHeight=b.height;b.unscaledLeft=b.offsetLeft+this.map.offsetLeft;b.unscaledTop=b.offsetTop+this.map.offsetTop;b.unscaledZoom=f.zoom;b.unscaledOldPosX=f.x;b.unscaledOldPosY=f.y;YAHOO.util.Dom.addClass(b,this.conf.activeScaleTileClass);this.cache.push(b)}}},clearCache:function(){for(var a=0;a<this.cache.length;a++){this.removeTile(this.cache[a])}this.cache=[]},activeCache:function(){for(var a=0;a<this.cache.length;a++){var b=this.cache[a];YAHOO.util.Dom.addClass(b,this.conf.activeScaleTileClass);YAHOO.util.Dom.removeClass(b,this.conf.passiveScaleTileClass)}},passiveCache:function(){for(var a=0;a<this.cache.length;a++){var b=this.cache[a];YAHOO.util.Dom.removeClass(b,this.conf.activeScaleTileClass);YAHOO.util.Dom.addClass(b,this.conf.passiveScaleTileClass)}},removeTile:function(a){if(a.parentNode==this.map){this.map.removeChild(a)}},displayFocus:function(d,e){window.clearTimeout(this.focusTimeId);if(!this.focusElem){return}if(!d){var b=this;this.focusTimeId=window.setTimeout(function(){b.focusElem.style.display=""},this.conf.focusClearDelay);return}if(!e){e=Math.min(this.curPos.zoom/this.newPos.zoom,this.newPos.zoom/this.curPos.zoom)}var c=Math.round(this.conf.focusWidth*1/3)+Math.round((d>1)?this.conf.focusWidth*2/3*e:this.conf.focusWidth*2/3*(1-e));if(c%2==0){c=c-1}var a=Math.round(this.conf.focusHeight*1/3)+Math.round((d>1)?this.conf.focusHeight*2/3*e:this.conf.focusHeight*2/3*(1-e));if(a%2==0){a=a-1}var g=(d==1)?0:Math.round((this.curPos.x-this.oldPos.x)/(d-1))-this.oldPos.x;var f=(d==1)?0:Math.round((this.curPos.y-this.oldPos.y)/(d-1))-this.oldPos.y;this.focusElem.style.width=c+"px";this.focusElem.style.height=a+"px";this.focusElem.style.left=Math.round(g-c/2)+"px";this.focusElem.style.top=Math.round(f-a/2)+"px";this.focusElem.style.display="block";if(d>1){YAHOO.util.Dom.removeClass(this.focusElem,this.conf.focusElemClassReduce);YAHOO.util.Dom.addClass(this.focusElem,this.conf.focusElemClassExpand)}else{YAHOO.util.Dom.removeClass(this.focusElem,this.conf.focusElemClassExpand);YAHOO.util.Dom.addClass(this.focusElem,this.conf.focusElemClassReduce)}}};arivis.webview.Layer=function(f,a,e,b,d,c){this.conf=b;this.map=document.getElementById(f)||this.createLayer(f,a,b,c);this.active=this.setActive(e);this.image=(d)?d:null;this.mapOffsetX=0;this.mapOffsetY=0;this.cache=[];this.prefetch={left:0,right:0,top:0,bottom:0};this.tileHeight=512;this.tileWidth=512;this.zoom=0};arivis.webview.Layer.prototype.createLayer=function(e,a,b,d){var c=document.createElement("div");c.setAttribute("id",e);YAHOO.util.Dom.addClass(c,"layer");(d);YAHOO.util.Dom.addClass(c,"hiddenLayer");if(b&&b.htmlClass){YAHOO.util.Dom.addClass(c,b.htmlClass)}a.appendChild(c);return c};arivis.webview.Layer.prototype.getConf=function(b){var a={id:b.getAttribute("id"),type:b.getAttribute("type"),name:b.getAttribute("name"),url:b.getAttribute("url"),useid:b.getAttribute("useid")};var d=b.getElementsByTagName("param");a.param=[];for(var c=0;c<d[0].attributes.length;c++){a.param[d[0].attributes[c].nodeName]=d[0].attributes[c].nodeValue}return a};arivis.webview.Layer.prototype.init=function(c,a,b){this.setActive(activ);this.layer=a||this.layer;this.map=document.getElementById(c)};arivis.webview.Layer.prototype.toString=function(){return"arivis.webview.Layer"};arivis.webview.Layer.prototype.removeLayer=function(){var b=this.map;var a=b.parentNode;a.removeChild(b)};arivis.webview.Layer.prototype.setActive=function(a){if(a){this.active=true;arivis.webview.event.fireEvent("layerActivate",this.conf.layerid)}else{this.active=false;arivis.webview.event.fireEvent("layerDeactivate",this.conf.layerid)}return this.active};arivis.webview.Layer.prototype.activate=function(){if(this.isactive()){return this.active}this.setActive(true);this.buildCache();return this.active};arivis.webview.Layer.prototype.deactivate=function(){if(!this.isactive()){return this.active}this.setActive(false);this.clearCache();return this.active};arivis.webview.Layer.prototype.isactive=function(){return this.active};arivis.webview.Layer.prototype.handleImageChange=function(c,b,a,d){this.clearCache();this.image=c;this.zoom=b;this.moveTo(a,d)};arivis.webview.Layer.prototype.changeView=function(d,b,a,e){var c=this.getPosition();if((!e||e!=true)&&this.zoom==d&&b==c.x&&a==c.y){return false}this.zoom=d;this.moveTo(b,a);return true};arivis.webview.Layer.prototype.getPosition=function(){var a=0-this.map.offsetLeft-this.mapOffsetX;var b=0-this.map.offsetTop-this.mapOffsetY;return{x:a,y:b}};arivis.webview.Layer.prototype.moveTo=function(a,c,b){this.resetPosition(a,c);if(this.buildCache){this.buildCache(b)}};arivis.webview.Layer.prototype.changeRequestParam=function(a){for(var b in a){this.conf.param[b]=a[b]}};arivis.webview.Layer.prototype.resetPosition=function(a,b){this.mapOffsetX=0-a;this.mapOffsetY=0-b;this.map.style.left=0+"px";this.map.style.top=0+"px"};arivis.webview.Layer.prototype.resetTiles=function(){var d=this.mapOffsetX;var c=this.mapOffsetY;var a,f,e,b;for(f=0;f<this.cache.length;f++){e=this.cache[f];for(a=0;a<e.length;a++){b=e[a];b.style.left=(b.offsetLeft+d)+"px";b.style.top=(b.offsetTop+c)+"px"}}};arivis.webview.LoadingLayer=function(a){this.conf={containerId:"movebleMap",mapId:"loadingLayer"};overrideConf(this.conf,a);this.container=document.getElementById(this.conf.containerId);this.map=document.getElementById(this.conf.mapId)||this.createLayer();this.mapOffsetX=0;this.mapOffsetY=0;this.init()};with(arivis.webview.LoadingLayer){prototype.init=function(){};prototype.toString=function(){return"arivis.webview.LoadingLayer"};prototype.createLayer=function(d,a,b){var c=document.createElement("div");c.setAttribute("id",this.conf.mapId);YAHOO.util.Dom.addClass(c,"layer");if(b){YAHOO.util.Dom.addClass(c,b)}this.container.appendChild(c);return c};prototype.clearAll=function(){while(this.map.firstChild){this.map.removeChild(this.map.firstChild)}};prototype.clearElement=function(a){if(a&&a.parentNode==this.map){this.map.removeChild(a)}};prototype.loading=function(b){var a=b.cloneNode(true);YAHOO.util.Dom.addClass(a,"loading");this.map.appendChild(a);return a};prototype.moveTo=function(a,b){this.mapOffsetX=0-a;this.mapOffsetY=0-b;this.map.style.left=0+"px";this.map.style.top=0+"px"}}arivis.webview.ImageLayer=function(d,b,c,a){arivis.webview.ImageLayer.superclass.constructor.apply(this,arguments);this.imageLoader=arivis.webview.imageLoader;this.tileType="img";this.tileHeight=this.tileHeight;this.tileWidth=this.tileWidth;this.scaleCache=null;this.init(d,b,c,a)};YAHOO.lang.extend(arivis.webview.ImageLayer,arivis.webview.Layer);arivis.webview.ImageLayer.prototype.toString=function(){return"arivis.webview.ImageLayer"};arivis.webview.ImageLayer.prototype.init=function(){if(this.conf&&this.conf.param.w){this.tileWidth=parseInt(this.conf.param.w)}if(this.conf&&this.conf.param.h){this.tileHeight=parseInt(this.conf.param.h)}if(arivis.webview.ScaleCache){this.scaleCache=new arivis.webview.ScaleCache(this.cache,this.map)}};arivis.webview.Layer.prototype.changeView=function(b,c,e,d){if(this.scaleCache){if(this.zoom&&b.zoom&&c.zoom&&this.zoom!=c.zoom){if(this.scaleCache.run(b,c,this.cache)){this.cache=[]}}else{var a=this;setTimeout(function(){a.scaleCache.clearCache()},101)}}this.zoom=c.zoom;this.moveTo(c.x,c.y,d);return true};arivis.webview.ImageLayer.prototype.clearCache=function(){for(y=0;y<this.cache.length;y++){var c=this.cache[y];for(x=0;x<c.length;x++){var a=c[x];this.removeTile(a)}}this.cache.splice(0,this.cache.length);var b=this.conf.layerid+this.conf.imageid;this.imageLoader.clear(b)};arivis.webview.ImageLayer.prototype.removeLayer=function(){var c=this.conf.layerid+this.conf.imageid;this.imageLoader.clear(c);var b=this.map;var a=b.parentNode;a.removeChild(b)};arivis.webview.ImageLayer.prototype.buildCache=function(a){if(this.active!==true){return}this.clearCache();var e=arivis.webview.layerContainer.getPosition();var d=e.x;var b=e.y;var j=d+getViewportWidth();var i=b+getViewportHeight();d-=this.prefetch.left*this.tileWidth;b-=this.prefetch.top*this.tileHeight;j+=this.prefetch.right*this.tileWidth;i+=this.prefetch.bottom*this.tileHeight;d=Math.floor(d/this.tileWidth)*this.tileWidth;j=Math.ceil(j/this.tileWidth)*this.tileWidth;b=Math.floor(b/this.tileHeight)*this.tileHeight;i=Math.ceil(i/this.tileHeight)*this.tileHeight;var h=d;var g=b;var c=null;var h=d;var g=b;var c=null;while(g<i){c=[];h=d;while(h<j){var f=this.createTile(h,g);c.push(f);h+=this.tileWidth}this.cache.push(c);g+=this.tileHeight}this.updateAllTiles(a)};arivis.webview.ImageLayer.prototype.updateAllTiles=function(d){var e=this.conf.layerid+this.conf.imageid;this.imageLoader.clear(e);if(this.cache.length===0){return}var s=Math.floor(this.prefetch.top);var a=this.cache.length-Math.floor(this.prefetch.bottom);var u=Math.floor(this.prefetch.left);var b=this.cache[0].length-Math.floor(this.prefetch.right);var m=Math.abs(u+(b-u)/2);var k=Math.abs(s+(a-s)/2);var q={};var h,g,o;for(g=s;g<a;g++){o=this.cache[g];for(h=u;h<b;h++){var c=Math.abs(h-m)+Math.abs(g-k);if(!q[c]){q[c]=new Array()}q[c].push(o[h])}}var n=new Array();for(var r in q){n.push(r)}var f=function(j,i){return j-i};n.sort(f);for(var r=0;r<n.length;r++){var v=n[r];for(var p=0;p<q[v].length;p++){this.updateTile(q[v][p])}}for(g=0;g<this.cache.length;g++){o=this.cache[g];for(h=0;h<o.length;h++){if(h<u||h>=b||g<s||g>=a){this.updateTile(o[h],c)}}}};arivis.webview.ImageLayer.prototype.loadTile=function(b,a){var c=this.conf.layerid+this.conf.imageid;this.imageLoader.requestImage(b,a,c)};arivis.webview.ImageLayer.prototype.removeTile=function(a){this.imageLoader.cancleRequest(this.map.removeChild(a))};arivis.webview.ImageLayer.prototype.freeTile=function(a){this.imageLoader.cancleRequest(this.map.removeChild(a))};arivis.webview.ImageLayer.prototype.createTile=function(a,c){var b=document.createElement(this.tileType);b.tk_x=a;b.tk_y=c;b.style.position="absolute";this.map.appendChild(b);b.src="images/webview/transparent.png";return b};arivis.webview.ImageLayer.prototype.updateTile=function(n){if(!n){return}n.style.left=(n.tk_x+this.mapOffsetX)+"px";n.style.top=(n.tk_y+this.mapOffsetY)+"px";var h=this.image.size.x*this.zoom;var f=this.image.size.y*this.zoom;var c=Math.round((this.image.size.x+this.image.size.width)*this.zoom);var a=Math.round((this.image.size.y+this.image.size.height)*this.zoom);if(n.tk_x+this.tileWidth<=h||n.tk_y+this.tileHeight<=f||n.tk_x>=c||n.tk_y>=a){n.style.background="";n.style.height=this.tileHeight+"px";n.style.width=this.tileWidth+"px"}else{var q=(n.tk_y+this.tileHeight>a)?(a-n.tk_y):this.tileHeight;var d=(n.tk_x+this.tileWidth>c)?(c-n.tk_x):this.tileWidth;var g={};for(var m in this.conf.param){g[m]=this.conf.param[m]}g.x=n.tk_x;g.y=n.tk_y;g.w=d;g.h=q;g.p=arivis.webview.layerContainer.getPlane();g.t=arivis.webview.layerContainer.getFrame();if(this.image.zoom.paramName){var e=this.image.zoom.paramName;var p=this.zoom;if(this.image.zoom.paramValue){for(var k=0;k<=this.image.zoom.level.length;k++){if(this.zoom==(this.image.zoom.level[k])){p=this.image.zoom.paramValue[k]}}}g[e]=p}else{g.z=this.zoom}if(this.conf.useid!="false"&&!g.id){if(this.conf.imageid){g.id=this.conf.imageid}else{g.id=this.image.id}}var o=(this.conf.url)?this.conf.url:this.image.url;var b=composeURL(o,g);n.style.height=q+"px";n.style.width=d+"px";if(this.active===true){this.loadTile(n,b)}}};arivis.webview.ImageLayer.prototype.setPrefetch=function(a){this.prefetch.left=a;this.prefetch.top=a;this.prefetch.right=a;this.prefetch.bottom=a;this.update(this.map.offsetLeft,this.map.offsetRight)};arivis.webview.ImageLayer.prototype.getPrefetch=function(){return this.prefetch.left};arivis.webview.ImageLayer.prototype.update=function(a,b){if(this.active!==true){return}this.updateTop(a,b);this.updateBottom(a,b);this.updateLeft(a,b);this.updateRight(a,b)};arivis.webview.ImageLayer.prototype.updateTop=function(k,e){var g=this.cache[0][0].tk_x;var a=this.cache[0].length;var d=Math.floor(e-this.prefetch.top*this.tileHeight);var f=this.cache[0][0].tk_y;var b,j,h,c;while(f>d){j=[];h=f-this.tileHeight;for(b=0;b<a;b++){c=this.createTile(g+b*this.tileWidth,h);this.updateTile(c);j.push(c)}this.cache.unshift(j);f=h}while(f+this.tileHeight<d){j=this.cache.shift();for(b=0;b<j.length;b++){c=j[b];this.removeTile(c)}f+=this.tileWidth}};arivis.webview.ImageLayer.prototype.updateBottom=function(k,e){var g=this.cache[0][0].tk_x;var a=this.cache[0].length;var d=Math.ceil(e+getViewportHeight()+this.prefetch.bottom*this.tileHeight-this.tileHeight);var f=this.cache[this.cache.length-1][0].tk_y;var b,j,h,c;while(f<d){h=[];j=f+this.tileHeight;for(b=0;b<a;b++){c=this.createTile(g+b*this.tileWidth,j);this.updateTile(c);h[b]=c}this.cache.push(h);f=j}while(f>d+this.tileHeight){h=this.cache.pop();for(b=0;b<h.length;b++){c=h[b];this.removeTile(c)}f-=this.tileWidth}};arivis.webview.ImageLayer.prototype.updateLeft=function(a,g){var f=this.cache[0][0].tk_y;var e=Math.floor(a-this.prefetch.left*this.tileWidth);var c=this.cache[0][0].tk_x;var h,b,d;while(c>e){h=c-this.tileWidth;for(b=0;b<this.cache.length;b++){d=this.createTile(h,f+b*this.tileHeight);this.updateTile(d);this.cache[b].unshift(d)}c=h}while(c+this.tileWidth<e){for(b=0;b<this.cache.length;b++){d=this.cache[b].shift();this.removeTile(d)}c+=this.tileWidth}};arivis.webview.ImageLayer.prototype.updateRight=function(a,g){var f=this.cache[0][0].tk_y;var c=this.cache[0][this.cache[0].length-1].tk_x;var e=Math.ceil(a+getViewportWidth()+this.prefetch.right*this.tileWidth-this.tileWidth);var h,b,d;while(c<e){h=c+this.tileWidth;for(b=0;b<this.cache.length;b++){d=this.createTile(h,f+b*this.tileHeight);this.updateTile(d);this.cache[b].push(d)}c=h}while(c>e+this.tileWidth){for(b=0;b<this.cache.length;b++){d=this.cache[b].pop();this.removeTile(d)}c-=this.tileWidth}};arivis.webview.ImageLayer.prototype.getLoadCondition=function(){var a=this.getCountTiles();if(a<=0){return 1}var b=this.conf.layerid+this.conf.imageid;var c=this.imageLoader.getLoadingCount(b);if(a<=c){return 0}return(a-c)/a};arivis.webview.ImageLayer.prototype.getCountTiles=function(){var b=0;for(var a in this.cache){b+=this.cache[a].length}return b};arivis.webview.ImageLoader=function(a){this.conf={maxLoad:10,timer:100,timeout:5,cacheCount:100};overrideConf(this.conf,a);this.init()};arivis.webview.ImageLoader.prototype={requestList:[],loadList:[],maxLoad:10,isRunning:0,useDirectMode:false,timer:100,timeout:5,cacheCount:1000,cache:[],init:function(){this.maxLoad=this.conf.maxLoad;this.timer=this.conf.timer;this.timeout=this.conf.timeout;this.cacheCount=this.conf.cacheCount;arivis.webview.event.subscribe("viewAfterChange",this.limitCache,this,true)},clear:function(b){var a=this;count1=a.clearByCategory(a.requestList,b);count2=a.clearByCategory(a.loadList,b)},clearByCategory:function(d,c){var b=0;for(var a=(d.length-1);a>=0;a--){if(d[a].category==c){arivis.webview.loadingLayer.clearElement(d[a].element.loadingElem);d.splice(a,1);b++}}return b},requestImage:function(c,b,f,g,d){window.clearTimeout(this.loadedEventTimer);var a=this;var e={element:c,url:b,category:f,loaded:false,method:g,scope:d};if(a.useDirectMode){a.applyImage(e);return}if(c.complete){a.applyImage(e)}else{a.requestList.push(e);e.element.loadingElem=arivis.webview.loadingLayer.loading(c)}if(!a.isRunning){var a=this;a.isRunning=window.setTimeout(function(){a.run()},a.timer)}},cancleRequest:function(a){a.cancel=true;arivis.webview.loadingLayer.clearElement(a.loadingElem);a.loadingElem=null},applyImage:function(b){b.loaded=true;if(!b.method){b.element.src=b.url;arivis.webview.loadingLayer.clearElement(b.element.loadingElem)}else{if(b.scope){b.method.call(b.scope,b.element,b.url)}else{b.method(b.element,b.url)}}var a=new Date();b.element.cacheRange=a.getTime();this.cache[b.element.src]=b.element},limitCache:function(){var b=[];for(var c in this.cache){b.push(this.cache[c])}if(b.length<this.cacheCount){return}b.sort(function(e,d){return d.cacheRange-e.cacheRange});for(var a=this.cacheCount;a<b.length;a++){delete this.cache[b[a].src]}},getIndexCache:function(){var a=[];for(var b in this.cache){a.push(this.cache[b])}a.sort(function(d,c){return c.cacheRange-d.cacheRange});return a},getCacheCount:function(){var a=0;for(var b in this.cache){a++}return a},getLoadingCount:function(b){var d=0;var c=this.requestList;for(var a=(c.length-1);a>=0;a--){if(!b||c[a].category==b){if(c[a].loaded!=true&&c[a].element.cancel!=true){d++}}}return d},run:function(){var a=this;var e=new Date().getTime()/1000;clearTimeout(a.isRunning);var b=0;var d;while(b<a.loadList.length){d=a.loadList[b];if(d.image.complete||d.timeout<e){a.applyImage(d);a.loadList.splice(b,1)}else{b++}}while(a.requestList.length>0&&a.loadList.length<a.maxLoad){d=a.requestList.shift();var c=(d.element.cancel&&d.element.cancel===true)?true:false;if(c===false){d.image=new Image();d.image.src=d.url;d.timeout=e+a.timeout;if(d.image.complete){a.applyImage(d)}else{a.loadList.push(d)}this.requested++}}if(a.requestList.length==0&&a.loadList.length==0){a.isRunning=0;arivis.webview.loadingLayer.clearAll();arivis.webview.event.fireEvent("imagesLoaded")}else{a.isRunning=window.setTimeout(function(){a.run()},a.timer)}}};arivis.webview.Tool=function(a){this.conf={className:"toolbarItem",activeClassName:"activeToolbarItem",deactiveClassName:"deactiveToolbarItem",description:"Abstract Tool"};this.init(a)};arivis.webview.Tool.prototype.enabled=false;arivis.webview.Tool.prototype.buttonElement=null;arivis.webview.Tool.prototype.autoDisableFunction=null;arivis.webview.Tool.prototype.init=function(a){for(var b in a){this.conf[b]=a[b]}};arivis.webview.Tool.prototype.lock=function(){};arivis.webview.Tool.prototype.unlock=function(){};arivis.webview.Tool.prototype.onEnable=function(){};arivis.webview.Tool.prototype.onDisable=function(){};arivis.webview.Tool.prototype.enable=function(a){this.autoDisableFunction=a;this.unlock();this.enabled=true;YAHOO.util.Dom.removeClass(this.buttonElement,this.conf.deactiveClassName);YAHOO.util.Dom.addClass(this.buttonElement,this.conf.activeClassName);this.onEnable()};arivis.webview.Tool.prototype.autoDisable=function(){if(this.autoDisableFunction){}this.autoDisableFunction()};arivis.webview.Tool.prototype.disable=function(){this.lock();this.enabled=false;YAHOO.util.Dom.removeClass(this.buttonElement,this.conf.activeClassName);YAHOO.util.Dom.addClass(this.buttonElement,this.conf.deactiveClassName);this.onDisable()};arivis.webview.Tool.prototype.createButton=function(a,b){this.buttonElement=document.createElement("a");YAHOO.util.Dom.setAttribute(this.buttonElement,"id",this.conf.buttonId);YAHOO.util.Dom.setAttribute(this.buttonElement,"alt",this.conf.description);YAHOO.util.Dom.setAttribute(this.buttonElement,"title",this.conf.description);YAHOO.util.Dom.addClass(this.buttonElement,this.conf.className);YAHOO.util.Dom.addClass(this.buttonElement,this.conf.className);YAHOO.util.Event.addListener(this.buttonElement,"click",function(){b.enable(this)},this,true);a.appendChild(this.buttonElement);this.disable()};arivis.webview.MoveTool=function(a){this.conf={buttonId:"moveItem",deactiveButton:"images/move.png",activeButton:"images/move_highlight.png",className:"toolbarItem",activeClassName:"activeMoveItem",deactiveClassName:"deactiveMoveItem",description:"Move Tool",handle:"overflow",dragElement:"movebleMap",invalidElements:["navigator"]};this.initTool(a)};YAHOO.lang.augmentProto(arivis.webview.MoveTool,YAHOO.util.DD);YAHOO.lang.augmentProto(arivis.webview.MoveTool,arivis.webview.Tool);arivis.webview.MoveTool.prototype.initTool=function(a){for(var c in a){this.conf[c]=a[c]}if(this.conf.handle){this.init(this.conf.handle);this.setDragElId(this.conf.dragElement);for(var b in this.conf.invalidElements){this.addInvalidHandleId(this.conf.invalidElements[b])}}};arivis.webview.MoveTool.prototype.toString=function(){return"arivis.webview.MoveTool"};arivis.webview.MoveTool.prototype.onDrag=function(a){setCursor(getViewport(),"url(images/webview/moveTool/drag.png), move");arivis.webview.event.fireEvent("drag")};arivis.webview.MoveTool.prototype.startDrag=function(a,b){arivis.webview.event.fireEvent("startdrag")};arivis.webview.MoveTool.prototype.endDrag=function(a){setCursor(getViewport(),"url(images/webview/moveTool/drop.png), move");arivis.webview.event.fireEvent("enddrag")};arivis.webview.MoveTool.prototype.onMouseMove=function(a){};arivis.webview.MoveTool.prototype.onMouseDown=function(i){setCursor(getViewport(),"url(images/webview/moveTool/drag.png), move");var g=YAHOO.util.Event.getXY(i);var f=YAHOO.util.Dom.getXY(this.getEl());var d=arivis.webview.layerContainer.image.size.width*arivis.webview.layerContainer.zoom;var b=arivis.webview.layerContainer.image.size.height*arivis.webview.layerContainer.zoom;var c=getViewportHeight();var h=getViewportWidth();var a=arivis.webview.layerContainer.getPosition();this.constrainX=true;if(h>d){this.minX=YAHOO.util.Dom.getX(this.getDragEl())+a.x;this.maxX=this.minX+h-d}else{this.maxX=YAHOO.util.Dom.getX(this.getDragEl())+a.x;this.minX=this.maxX+h-d}this.constrainY=true;if(c>b){this.minY=YAHOO.util.Dom.getY(this.getDragEl())+a.y;this.maxY=this.minY+c-b}else{this.maxY=YAHOO.util.Dom.getY(this.getDragEl())+a.y;this.minY=this.maxY+c-b}};arivis.webview.MoveTool.prototype.onMouseUp=function(a){setCursor(getViewport(),"url(images/webview/moveTool/drop.png), move")};arivis.webview.MoveTool.prototype.onDisable=function(){setCursor(getViewport(),"")};arivis.webview.MoveTool.prototype.onEnable=function(){setCursor(getViewport(),"url(images/webview/moveTool/drop.png), move")};arivis.webview.MoveTool.prototype.setStartPosition=function(b){var a=b||YAHOO.util.Dom.getXY(this.getDragEl());this.deltaSetXY=null;this.startPageX=a[0];this.startPageY=a[1]};arivis.webview.SelectionTool=function(b){this.conf={buttonId:"selectionItem",deactiveButton:"images/selection.png",activeButton:"images/selection_highlight.png",className:"toolbarItem",activeClassName:"activeSelectionItem",deactiveClassName:"deactiveSelectionItem",description:"Zoom Region Tool",panel:"selectionPanel",display:"selectionDisplay"};this.initTool(b);var a=null;var c=null};YAHOO.lang.augmentProto(arivis.webview.SelectionTool,arivis.webview.Tool);arivis.webview.SelectionTool.prototype.initTool=function(a){overrideConf(this.conf,a);this.panel=document.getElementById(this.conf.panel);this.display=document.createElement("div");this.display.id=this.conf.display;this.panel.appendChild(this.display)};arivis.webview.SelectionTool.prototype.toString=function(){return"arivis.webview.SelectionTool"};arivis.webview.SelectionTool.prototype.onMouseDown=function(a){if(this.draw){return}this.draw=true;this.startWidth=0;this.startHeight=0;this.startPos=[YAHOO.util.Event.getPageX(a),YAHOO.util.Event.getPageY(a)];this.display.style.width=0+"px";this.display.style.height=0+"px";YAHOO.util.Dom.setXY(this.display,this.startPos)};arivis.webview.SelectionTool.prototype.onMouseUp=function(d){if(!this.draw){return}this.draw=false;var b=this.display.offsetLeft;var f=this.display.offsetTop;var c=this.display.offsetWidth;var a=this.display.offsetHeight;YAHOO.util.Dom.setStyle(this.display,"display","none");arivis.webview.layerContainer.setZoomRegion(b,f,c,a)};arivis.webview.SelectionTool.prototype.onMouseMove=function(f){if(!this.draw){return}var c=[YAHOO.util.Event.getPageX(f),YAHOO.util.Event.getPageY(f)];var b,g,d,a;if(c[0]>this.startPos[0]){b=this.startPos[0];d=c[0]-this.startPos[0]}else{b=c[0];d=this.startPos[0]-c[0]}if(c[1]>this.startPos[1]){g=this.startPos[1];a=c[1]-this.startPos[1]}else{g=c[1];a=this.startPos[1]-c[1]}if(d<=0||a<=0){return}this.display.style.width=d+"px";this.display.style.height=a+"px";this.display.style.display="block";YAHOO.util.Dom.setXY(this.display,[b,g])};arivis.webview.SelectionTool.prototype.onDisable=function(){setCursor(this.panel,"");this.panel.style.display="";YAHOO.util.Event.removeListener(this.panel,"mousedown",this.onMouseDown);YAHOO.util.Event.removeListener(this.panel,"mousemove",this.onMouseMove);YAHOO.util.Event.removeListener(this.panel,"mouseup",this.onMouseUp)};arivis.webview.SelectionTool.prototype.onEnable=function(){setCursor(this.panel,"crosshair");this.panel.style.display="block";YAHOO.util.Event.addListener(this.panel,"mousedown",this.onMouseDown,this,true);YAHOO.util.Event.addListener(this.panel,"mousemove",this.onMouseMove,this,true);YAHOO.util.Event.addListener(this.panel,"mouseup",this.onMouseUp,this,true)};arivis.webview.MeasureTool=function(a){this.conf={buttonId:"measureItem",containerId:"measure",distanceId:"distance",activeClassName:"activeMeasureItem",deactiveClassName:"deactiveMeasureItem",className:"toolbarItem",description:"Measure Tool",isDefaultPixelSize:false,defaultPixelWidth:1,isUnit:true};overrideConf(this.conf,a);this.init()};arivis.webview.MeasureTool.prototype={measureContainer:null,measure:null,pad:null,distance:null,pixelwidth:0,pixelheight:0,active:false,isDraw:false,beginPoint:null,endPoint:null,toString:function(){return"arivis.webview.Measure"},init:function(){this.measureContainer=document.getElementById(this.conf.containerId);this.distance=document.createElement("div");YAHOO.util.Dom.addClass(this.distance,"distance");this.measureContainer.appendChild(this.distance);this.measureContainer.style.display="block";this.measure=this.createCanvas();this.measureContainer.appendChild(this.measure);if(window.G_vmlCanvasManager){this.measure=G_vmlCanvasManager.fixDynamicElement(this.measure)}this.pad=this.measure.getContext("2d");this.measureContainer.style.display="none";arivis.webview.event.subscribe("imageChange",this.handleImageChange,this,true);arivis.webview.event.subscribe("viewChange",this.handleChangeView,this,true);return this.pad},handleImageChange:function(a){if(parseFloat(a.image.size.pixelSizeX)){this.pixelwidth=parseFloat(a.image.size.pixelSizeX);this.pixelheight=(parseFloat(a.image.size.pixelSizeY))?parseFloat(a.image.size.pixelSizeY):this.pixelwidth}else{if(a.image.pixelwidth){this.pixelwidth=a.image.pixelwidth;this.pixelheight=a.image.pixelwidth}else{if(this.conf.isDefaultPixelSize==true&&this.conf.defaultPixelWidth){this.pixelwidth=this.conf.defaultPixelWidth;this.pixelheight=this.conf.defaultPixelWidth}}}},handleChangeView:function(){this.clearCanvas()},unlock:function(){if(this.active){this.lock()}else{this.measureContainer.style.display="block";YAHOO.util.Event.addListener(this.measure,"mousedown",this.beginCanvas,this,true);YAHOO.util.Event.addListener(this.measure,"mouseup",this.endCanvas,this,true);this.active=true}},lock:function(){this.clearCanvas();YAHOO.util.Event.removeListener(this.measure,"mousedown",this.clickCanvas);YAHOO.util.Event.removeListener(this.measure,"mouseup",this.endCanvas);this.measureContainer.style.display="none";this.active=false},createCanvas:function(){var a=document.createElement("canvas");a.style.width=getElementWidth(arivis.webview.viewport)+"px";a.style.height=getElementHeight(arivis.webview.viewport)+"px";a.setAttribute("width",getElementWidth(arivis.webview.viewport)+"px");a.setAttribute("height",getElementHeight(arivis.webview.viewport)+"px");return a},lineCanvas:function(b){if(!this.isDraw){return}var a=getRelMousePos(b,this.measure);if(a[0]==0||a[1]==0){return}this.pad.clearRect(0,0,getElementWidth(this.measure),getElementHeight(this.measure));this.line(this.beginPoint,a,true);this.lineOrtho(this.beginPoint,a,true);this.writeDistance(a)},lineOrtho:function(e,d,b){var h=d[0]-e[0];var f=d[1]-e[1];var k=f/h;var a=-1/k;var c=Math.atan(a);var j=5;var i=[Math.round(-j*Math.cos(c)+e[0]),Math.round(-j*Math.sin(c)+e[1])];var g=[Math.round(j*Math.cos(c)+e[0]),Math.round(j*Math.sin(c)+e[1])];this.line(i,g,b)},beginCanvas:function(a){if(this.isDraw){return}this.beginPoint=getRelMousePos(a,this.measure);this.clearCanvas();YAHOO.util.Event.addListener(this.measure,"mousemove",this.lineCanvas,this,true);this.isDraw=true;this.distance.innerHTML=""},endCanvas:function(a){this.endPoint=getRelMousePos(a,this.measure);YAHOO.util.Event.removeListener(this.measure,"mousemove",this.lineCanvas);this.isDraw=false;this.pad.clearRect(0,0,getElementWidth(this.measure),getElementHeight(this.measure));if(this.beginPoint[0]==this.endPoint[0]&&this.beginPoint[1]==this.endPoint[1]){return this.clearCanvas()}this.pad.beginPath();this.line(this.beginPoint,this.endPoint);this.lineOrtho(this.beginPoint,this.endPoint);this.lineOrtho(this.endPoint,this.beginPoint);this.pad.closePath();this.writeDistance()},clearCanvas:function(){this.pad.clearRect(0,0,getElementWidth(this.measure),getElementHeight(this.measure));this.distance.style.display="none";this.isDraw=false},getDistance:function(a){var d=arivis.webview.layerContainer.zoom;if(!a){a=this.endPoint}if(this.pixelwidth&&this.pixelheight){var c=(this.beginPoint[0]-a[0])*this.pixelwidth/d;var b=(this.beginPoint[1]-a[1])*this.pixelheight/d}else{var c=(this.beginPoint[0]-a[0]);var b=(this.beginPoint[1]-a[1])}var e=Math.sqrt(Math.pow(c,2)+Math.pow(b,2));return e},writeDistance:function(a){if(!a){a=this.endPoint}var b=this.getDistance(a);this.distance.style.display="block";this.distance.innerHTML=(this.conf.isUnit==true&&this.pixelwidth&&this.pixelheight)?getOutputFormat(b,3):Math.round(b)+" Pixel";var d=Math.round(this.beginPoint[0]+(a[0]-this.beginPoint[0])/2)-getElementWidth(this.distance)/2;var c=Math.round(this.beginPoint[1]+(a[1]-this.beginPoint[1])/2)-getElementHeight(this.distance)/2;var e=this.distanceDisplayPosition(this.beginPoint,a);this.distance.style.left=e[0]+"px";this.distance.style.top=e[1]+"px"},distanceDisplayPosition:function(b,d){var e=d[0]-b[0];var a=d[1]-b[1];var c=a/e;var h=Math.atan(c);var g=(c>0)?Math.round(this.beginPoint[0]+(d[0]-this.beginPoint[0])/2+Math.sin(h)*getElementWidth(this.distance)/2):Math.round(this.beginPoint[0]+(d[0]-this.beginPoint[0])/2-Math.sin(h)*getElementWidth(this.distance)/2);var f=(c>0)?Math.round(this.beginPoint[1]+(d[1]-this.beginPoint[1])/2-Math.cos(h)*getElementHeight(this.distance)*3/2):Math.round(this.beginPoint[1]+(d[1]-this.beginPoint[1])/2+Math.cos(h)*getElementHeight(this.distance)/2);return[g,f]},line:function(a,b,c){this.pad.strokeStyle=(c)?"rgb(0,0,0)":"rgb(255,255,255)";this.pad.lineWidth=3;this.pad.lineCap="square";this.pad.beginPath();this.pad.moveTo(a[0],a[1]);this.pad.lineTo(b[0],b[1]);this.pad.stroke();this.pad.strokeStyle=(c)?"rgb(255,255,255)":"rgb(0,0,0)";this.pad.lineWidth=1;this.pad.moveTo(a[0],a[1]);this.pad.lineTo(b[0],b[1]);this.pad.stroke();this.pad.closePath()}};YAHOO.lang.augmentProto(arivis.webview.MeasureTool,arivis.webview.Tool);arivis.webview.ScreenshotTool=function(a){this.conf={buttonId:"screenshotItem",containerId:"viewport",deactiveButton:"images/screenshot.png",activeButton:"images/screenshot_highlight.png",className:"toolbarItem",activeClassName:"activeScreenshotItem",deactiveClassName:"deactiveScreenshotItem",description:"Screenshot Tool",windowTitle:"Printausgabe Screenshot",contentHTML:'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\n<html xmlns="http://www.w3.org/1999/xhtml">\n<head>\n	<title>{TITLE}</title>\n	<!--[if IE]>\n		<script type="text/javascript" src="js/excanvas/excanvas.arivis.js"><\/script>\n	<![endif]-->\n	<link rel="stylesheet" type="text/css" href="css/screenshot.css" />\n	<script type="text/javascript" src="js/yui_2.7/yahoo-dom-event/yahoo-dom-event.js"><\/script>\n	<script type="text/javascript">\n		function init(){\n			var img = new Image();\n			img.src = "{IMGSRC}";\n			YAHOO.util.Event.addListener(img, "load", function (){ window.opener.{OPENER}.renderScreenshot(img); }, this, true);\n		}	<\/script>\n</head>\n<body onload="init();">\n	<canvas id="screenshot" width="{WIDTH}" height="{HEIGHT}" style="width:{WIDTH}; height:{HEIGHT};"></canvas>\n</body>\n</html>'};overrideConf(this.conf,a)};arivis.webview.ScreenshotTool.prototype={winOnFly:null,toString:function(){return"arivis.webview.Screenshot"},onEnable:function(){var imageParam=this.getImageParam();var template=new arivis.webview.Template(this.conf.contentHTML);template.assign({OPENER:"arivis.webview.screenshotTool",IMGSRC:imageParam.src,WIDTH:imageParam.width,HEIGHT:imageParam.height,TITLE:this.conf.windowTitle});if(this.winOnFly&&this.winOnFly.closed!=true){this.winOnFly.focus()}else{this.winOnFly=window.open("empty.html","printWindow","width="+imageParam.width+",height="+imageParam.height+",location=no,menubar=yes,scrollbars=yes,status=yes,toolbar=no,resizable=yes")}with(this.winOnFly.document){open("text/html","replace");write(template);close()}if(document.all&&!window.opera){this.winOnFly.location.reload()}},renderScreenshot:function(a){this.renderImages(a);if(arivis.webview.annotationLayer){this.renderAnnotations()}this.autoDisable()},renderImages:function(a){var c=this.winOnFly.document.getElementById("screenshot");if(c.getContext&&typeof a=="object"){var b=c.getContext("2d");b.drawImage(a,0,0)}},renderAnnotations:function(){var b=this.winOnFly.document.getElementById("screenshot");var a=arivis.webview.annotationLayer.data;for(var c in a){arivis.webview.annotationLayer.annotationPad.drawInElem(a[c],b)}},getImageParam:function(){var a=arivis.webview.layerContainer.image.url;var d=new Array();d.z=arivis.webview.layerContainer.zoom;d.x=-arivis.webview.layerContainer.mapOffsetX;d.y=-arivis.webview.layerContainer.mapOffsetY;var c=Math.round(arivis.webview.application.active.size.width*d.z)-d.x;var b=Math.round(arivis.webview.application.active.size.height*d.z)-d.y;d.w=Math.min(getViewportWidth(),c);d.h=Math.min(getViewportHeight(),b);d.p=arivis.webview.layerContainer.getPlane();d.t=arivis.webview.layerContainer.getFrame();a=composeURL(a,d);return{width:d.w,height:d.h,src:a}}};YAHOO.lang.augmentProto(arivis.webview.ScreenshotTool,arivis.webview.Tool);arivis.webview.Wheel=function(a,b){this.conf={containerId:"viewport",timer:71,rasterEvent:true};overrideConf(this.conf,a);this.init(b)};arivis.webview.Wheel.prototype={domElement:null,eventSpace:null,eventName:"wheel",waitingEventArg:{step:0,delta:0,x:0,y:0},timerId:0,delta:0,step:0,toString:function(){return"arivis.webview.Wheel"},init:function(a){this.domElement=document.getElementById(this.conf.containerId);this.eventSpace=(a)?a:arivis.webview.event;if(!this.eventSpace.hasEvent(this.eventName)){this.eventSpace.createEvent(this.eventName)}this.enable()},wheel:function(c){if(this.conf.rasterEvent&&this.timerId){this.wheelEnd(c)}var f=0;if(!c){c=window.event}if(c.wheelDelta){f=c.wheelDelta/120;if(window.opera){var a=window.opera.version().split(".");if(a[0]>=9&&a[1].charAt[0]<"2"){f=-f*3/4}}}else{if(c.detail){f=-c.detail/4}}var b=getAbsPosition(this.domElement);var e=c.clientX-b.left;var d=c.clientY-b.top;if(f){this.waitingEventArg.delta+=f;this.waitingEventArg.step+=(f>0)?+1:-1;this.waitingEventArg.x=e;this.waitingEventArg.y=d;(this.conf.timer)?this.wheelEvent():this.fireWheel()}this.wheelEnd(c)},wheelEnd:function(a){if(a.preventDefault){a.preventDefault()}a.returnValue=false},wheelEvent:function(){if(this.timerId){return}var a=this;this.timerId=window.setTimeout(function(){a.fireWheel()},this.conf.timer)},fireWheel:function(){if(this.waitingEventArg.delta){this.eventSpace.fireEvent(this.eventName,this.waitingEventArg)}this.waitingEventArg={step:0,delta:0,x:0,y:0};this.timerId=0},enable:function(){YAHOO.util.Event.addListener(this.domElement,"mousewheel",function(a){this.wheel(a)},this,true);YAHOO.util.Event.addListener(this.domElement,"DOMMouseScroll",function(a){this.wheel(a)},this,true)},disable:function(){YAHOO.util.Event.removeListener(this.domElement,"mousewheel");YAHOO.util.Event.removeListener(this.domElement,"DOMMouseScroll")}};arivis.webview.Click=function(a,b){this.conf={elemListenerId:"movebleMap",isBlockContext:true};this.init(this.conf.elemListenerId,this.conf.isBlockContext)};arivis.webview.Click.prototype={isWindowFocus:false,focusId:0,elem:null,decisionId:0,decisionTime:300,decision:"",toString:function(){return"arivis.webview.Click"},init:function(a,b){this.windowFocus();if(document.all&&!window.opera){YAHOO.util.Event.addListener(document,"focusin",this.windowFocus,this,true);YAHOO.util.Event.addListener(document,"focusout",this.windowBlur,this,true)}else{YAHOO.util.Event.addListener(window,"focus",this.windowFocus,this,true);YAHOO.util.Event.addListener(window,"blur",this.windowBlur,this,true)}this.elem=document.getElementById(a);arivis.webview.event.subscribe("drag",function(){this.decision="long"},this,true);YAHOO.util.Event.addListener(this.elem,"mousedown",this.handleDown,this,true);YAHOO.util.Event.addListener(this.elem,"mouseup",this.handleUp,this,true);if(b){YAHOO.util.Event.addListener(this.elem,"contextmenu",this.stopEvent,this,true)}},windowFocus:function(){window.clearTimeout(this.focusId);var a=this;this.focusId=window.setTimeout(function(){a.isWindowFocus=true},200)},windowBlur:function(){window.clearTimeout(this.focusId);var a=this;this.focusId=window.setTimeout(function(){a.isWindowFocus=false},200)},handleUp:function(a){if(this.isWindowFocus==false){return}if(this.decisionId){if(this.decision=="short"){this.decision="dbl";this.endDecisionPhase(a,true)}else{if(this.decision!="long"){this.decision="short"}}}else{this.endDecisionPhase(a,true)}},handleDown:function(b){if(this.decisionId){this.decision="dbl";this.endDecisionPhase(b,true)}else{var a=this;b=this._getConsistentEvent(b);this.decision="delay";this.decisionId=window.setTimeout(function(){a.endDecisionPhase(b)},this.decisionTime)}},endDecisionPhase:function(b,a){window.clearTimeout(this.decisionId);this.decisionId=0;if(this.decision=="delay"){this.delayAction(b);this.decision="long"}else{if(this.decision=="short"){this.clickAction(b,this.decision);this.decision=""}else{if(this.decision&&a){this.clickAction(b,this.decision);this.decision=""}}}},stopEvent:function(a){YAHOO.util.Event.stopEvent(a)},clickAction:function(c,b){arivis.webview.event.fireEvent(b+"Click",c);var a=this.getKey(c);if(a){arivis.webview.event.fireEvent(b+a+"Click",c)}},delayAction:function(c){var b=YAHOO.util.Event.getXY(c);arivis.webview.event.fireEvent("delayClickDown",b);var a=this.getKey(c);if(a){arivis.webview.event.fireEvent("delay"+a+"ClickDown",b)}},getKey:function(b){var a="";if(window.opera){if(b.shiftKey==true){a="Right"}else{a="Left"}}else{if(b.button){if(b.button==1){a="Left"}else{if(b.button==2){a="Right"}else{if(b.button==4){a="Middle"}}}}else{if(b.which){if(b.which==1){a="Left"}else{if(b.which==3){a="Right"}else{if(b.which==2){a="Middle"}}}}}}return a},_getConsistentEvent:function(b){if(document.all){var a=new Object;for(var c in b){a[c]=b[c]}b=a}return b}};arivis.webview.Arrow=function(a){this.conf={};this.init(a)};arivis.webview.Arrow.prototype={domElement:null,timeId:0,timer:100,speedX:0,speedY:0,changed:false,speedMax:20,speedFactor:4,isRunning:false,shiftFactor:5,toString:function(){return"arivis.webview.Arrow"},init:function(){var i=this;var h=new YAHOO.util.KeyListener(document,{keys:37},function(){i.navigate(1,0)});h.enable();var g=new YAHOO.util.KeyListener(document,{keys:38},function(){i.navigate(0,1)});g.enable();var f=new YAHOO.util.KeyListener(document,{keys:39},function(){i.navigate(-1,0)});f.enable();var e=new YAHOO.util.KeyListener(document,{keys:40},function(){i.navigate(0,-1)});e.enable();var d=new YAHOO.util.KeyListener(document,{shift:true,keys:37},function(){i.navigate(1,0,true)});d.enable();var c=new YAHOO.util.KeyListener(document,{shift:true,keys:38},function(){i.navigate(0,1,true)});c.enable();var b=new YAHOO.util.KeyListener(document,{shift:true,keys:39},function(){i.navigate(-1,0,true)});b.enable();var a=new YAHOO.util.KeyListener(document,{shift:true,keys:40},function(){i.navigate(0,-1,true)});a.enable()},navigate:function(a,c,b){if(a||c){this.changed=true}this.speedX=this.speedX+a;this.speedY=this.speedY+c;if(this.isRunning!==true){this.run(b)}},run:function(c){this.isRunning=true;clearTimeout(this.timeId);if(this.changed){var e=(c)?this.speedFactor*this.shiftFactor:this.speedFactor;var d=this.speedMax*e;var a=this.speedX*e;var f=this.speedY*e;if(Math.abs(a)>d){a=d*a/Math.abs(a)}if(Math.abs(f)>d){f=d*f/Math.abs(f)}arivis.webview.event.fireEvent("arrow",{x:a,y:f});var b=this;this.timeId=setTimeout(function(){b.run(c)},this.timer)}else{this.isRunning=false;this.speedX=0;this.speedY=0;arivis.webview.event.fireEvent("endArrow")}this.changed=false}};arivis.webview.Slider=function(a){this.conf={containerId:"",sliderBgId:"sliderBg",sliderThumbId:"sliderThumb",sliderDisplayId:"sliderDisplay",sliderWidth:122,precision:0,minValue:0,maxValue:100,displayIsXY:true,displayXAdd:7,displayY:1,displayTextAdd:"",contentHTML:'<div class="sliderBg"><div class="sliderDisplay" id="sliderDisplay"></div><div class="sliderThumb"  id="sliderThumb"></div></div>',values:[],defaultValue:0};overrideConf(this.conf,a);this.init()};arivis.webview.Slider.prototype={container:null,slider:null,display:null,distance:1,value:0,sliderwidth:0,init:function(){this.container=document.getElementById(this.conf.containerId);this.container.innerHTML=this.conf.contentHTML;var b=YAHOO.util.Dom.getElementsByClassName("sliderBg","",this.container)[0];YAHOO.util.Dom.setAttribute(b,"id",this.conf.sliderBgId);var a=YAHOO.util.Dom.getElementsByClassName("sliderThumb","",this.container)[0];YAHOO.util.Dom.setAttribute(a,"id",this.conf.sliderThumbId);this.display=YAHOO.util.Dom.getElementsByClassName("sliderDisplay","",this.container)[0];if(parseInt(this.conf.sliderWidth)){this.sliderwidth=parseInt(this.conf.sliderWidth)}else{this.sliderwidth=bgRegion.width-minRegion.width/2-maxRegion.width/2}if(this.conf.values&&this.conf.values.length){this.distance=Math.floor((this.sliderwidth-1)/(this.conf.values.length-1))}else{this.distance=1}this.slider=YAHOO.widget.Slider.getHorizSlider(this.conf.sliderBgId,this.conf.sliderThumbId,0,this.sliderwidth,this.distance);this.slider.subscribe("change",this.sliderChanged,this,true);this.slider.subscribe("slideEnd",this.sliderEnd,this,true);this.setValue(this.conf.defaultValue)},toString:function(){return"arivis.webview.Slider"},subscribe:function(a,b){return this.slider.subscribe(a,function(){this.handleEvent(b)},this,true)},handleEvent:function(a){a(this.value)},sliderChanged:function(){this.value=this.getValue();this.updateDisplay()},sliderEnd:function(){this.sliderChanged()},getValue:function(){var c=this.slider.getValue();if(this.conf.values&&this.conf.values.length){var a=Math.floor(c*this.conf.values.length/this.sliderwidth);var b=this.conf.values[a]}else{var b=this.convertSliderToValue(c)}return b},setValue:function(b){this.value=b;if(this.conf.values&&this.conf.values.length){var a=this.conf.values.indexOf(b);if(a>=0){var c=a*this.distance}}else{var c=this.convertValueToSlider(b)}this.slider.setValue(c);this.updateDisplay()},convertValueToSlider:function(a){if(a){this.value=a}var b=Math.round((this.value-this.conf.minValue)/(this.conf.maxValue-this.conf.minValue)*this.sliderwidth);return b},convertSliderToValue:function(b){var a=b/this.sliderwidth*(this.conf.maxValue-this.conf.minValue)+this.conf.minValue;return this.precision(a,this.conf.precision)},precision:function(c,a){if(!a){a=0}var b=Math.pow(10,a);return Math.round(c*b)/b},updateDisplay:function(){var c=this.slider.getValue();this.display.innerHTML=this.value+this.conf.displayTextAdd;if(this.conf.displayIsXY){if(this.conf.displayXAdd){if(c/this.sliderwidth>0.5){var b=true;var a=getElementWidth(this.display);this.display.style.left=(c-this.conf.displayXAdd-a)+"px"}else{this.display.style.left=(c+this.conf.displayXAdd)+"px"}}if(this.conf.displayY){this.display.style.top=this.conf.displayY+"px"}}}};arivis.webview.DualSlider=function(a){this.conf={containerId:"",sliderBgId:"sliderBg",sliderMinThumbId:"sliderMinThumb",sliderMaxThumbId:"sliderMaxThumb",sliderMinDisplayId:"sliderMinDisplay",sliderMaxDisplayId:"sliderMaxDisplay",sliderWidth:0,precision:1,minValue:0,maxValue:100,defaultMinValue:0,defaultMaxValue:80,minRange:0,displayIsXY:true,displayXAdd:7,displayY:0,displayTextAdd:"%",contentHTML:'<div class="sliderDualBg"><div class="sliderDisplay sliderMinDisplay" id="sliderMinDisplay"></div><div class="sliderDisplay sliderMaxDisplay" id="sliderMaxDisplay"></div><div class="sliderThumb sliderMinThumb" id="sliderMinThumb"></div><div class="sliderThumb sliderMaxThumb" id="sliderMaxThumb"></div></div>',values:[]};overrideConf(this.conf,a);this.init()};YAHOO.lang.extend(arivis.webview.DualSlider,arivis.webview.Slider);arivis.webview.DualSlider.prototype.toString=function(){return"arivis.webview.DualSlider"};arivis.webview.DualSlider.prototype.minSlider=null;arivis.webview.DualSlider.prototype.maxSlider=null;arivis.webview.DualSlider.prototype.minDisplay=null;arivis.webview.DualSlider.prototype.maxDisplay=null;arivis.webview.DualSlider.prototype.minValue=0;arivis.webview.DualSlider.prototype.maxValue=0;arivis.webview.DualSlider.prototype.init=function(){this.container=document.getElementById(this.conf.containerId);this.container.innerHTML=this.conf.contentHTML;var d=YAHOO.util.Dom.getElementsByClassName("sliderDualBg","",this.container)[0];YAHOO.util.Dom.setAttribute(d,"id",this.conf.sliderBgId);var a=YAHOO.util.Dom.getElementsByClassName("sliderMinThumb","",this.container)[0];YAHOO.util.Dom.setAttribute(a,"id",this.conf.sliderMinThumbId);var b=YAHOO.util.Dom.getElementsByClassName("sliderMaxThumb","",this.container)[0];YAHOO.util.Dom.setAttribute(b,"id",this.conf.sliderMaxThumbId);this.minDisplay=YAHOO.util.Dom.getElementsByClassName("sliderDisplay","",this.container)[0];this.maxDisplay=YAHOO.util.Dom.getElementsByClassName("sliderDisplay","",this.container)[1];var f=YAHOO.util.Dom.getRegion(d);var e=YAHOO.util.Dom.getRegion(a);var c=YAHOO.util.Dom.getRegion(b);if(parseInt(this.conf.sliderWidth)){this.sliderwidth=parseInt(this.conf.sliderWidth)}else{this.sliderwidth=f.width-e.width/2-c.width/2}if(this.conf.values&&this.conf.values.length){this.distance=Math.floor((this.sliderwidth-1)/(this.conf.values.length-1))}else{this.distance=1}this.slider=YAHOO.widget.Slider.getHorizDualSlider(this.conf.sliderBgId,this.conf.sliderMinThumbId,this.conf.sliderMaxThumbId,this.sliderwidth,this.distance);this.slider.minRange=Math.round(this.conf.minRange-e.width/2-c.width/2);this.slider.subscribe("change",this.sliderChanged,this,true);this.slider.subscribe("slideEnd",this.sliderChanged,this,true);this.setValue(this.conf.defaultMinValue);this.setValue(this.conf.defaultMaxValue,true)};arivis.webview.DualSlider.prototype.setValue=function(c,b){if(b){this.maxValue=c}else{this.minValue=c}if(this.conf.values&&this.conf.values.length){var a=this.conf.values.indexOf(c);if(a>=0){var d=a*this.distance}}else{var d=this.convertValueToSlider(c)}(b)?this.slider.setMaxValue(d):this.slider.setMinValue(d);this.updateDisplays()};arivis.webview.DualSlider.prototype.sliderChanged=function(){this.updateDisplays()};arivis.webview.DualSlider.prototype.updateDisplays=function(){this.minValue=this.convertSliderToValue(this.slider.minVal);this.maxValue=this.convertSliderToValue(this.slider.maxVal);this.updateDisplay(this.slider.minVal,this.minValue,this.minDisplay);this.updateDisplay(this.slider.maxVal,this.maxValue,this.maxDisplay,true)};arivis.webview.DualSlider.prototype.updateDisplay=function(f,e,g,d){g.innerHTML=e+this.conf.displayTextAdd;if(this.conf.displayIsXY){if(parseInt(this.conf.displayXAdd)>=0){var b=(d)?0.7:0.3;if(f/this.sliderwidth>b){var c=true;var a=getElementWidth(g);g.style.left=(f-this.conf.displayXAdd-a)+"px"}else{g.style.left=(f+this.conf.displayXAdd)+"px"}}if(this.conf.displayY){g.style.top=(d)?(-1*this.conf.displayY)+"px":this.conf.displayY+"px"}}};arivis.webview.ToolbarControl=function(a){this.conf={containerId:"toolbar",contentHTML:'<div class="floatbox">{HELP}{CONTENT}</div>',sectionClass:"toolbarSection_{SECTION}",sectionHTML:'<div class="{SECTIONCLASS} floatbox"></div>',itemHTML:'<a class="toolbarItem" onclick="{ONCLICK}" class="toolbarLink"><img src="{SRC}" class="toolbarIcon" /></a>',tools:{def:["arivis.webview.tool"]}};this.init(a)};arivis.webview.ToolbarControl.prototype={container:null,tools:{},active:null,firstActive:null,lastActive:null,tools:new Array(),toString:function(){return"arivis.webview.ToolbarControl"},init:function(a){for(var b in a){this.conf[b]=a[b]}this.createHTML()},createHTML:function(){this.container=document.getElementById(this.conf.containerId);var h=this.conf.tools;sectionListHTML="";for(var e in h){itemListHTML="";var b=new arivis.webview.Template(this.conf.sectionClass,{SECTION:e});var a=new arivis.webview.Template(this.conf.sectionHTML,{SECTIONCLASS:b});this.container.innerHTML+=a;var f=YAHOO.util.Dom.getElementsByClassName(b)[0];for(var d=0;d<h[e].length;d++){var g=h[e][d].match(/[^\.]+$/);if(!g){continue}var c=arivis.webview[g];if(typeof c!="object"){continue}c.createButton(f,this);if(d==0){this.firstActive=c}this.tools.push(c)}this.enable(this.firstActive)}},activate:function(){this.enable(this.active)},getActiveTool:function(){return this.active},disable:function(a){if(a&&typeof a=="object"&&typeof a.disable=="function"){a.disable()}else{if(a&&typeof a=="number"&&typeof this.tools[a].disable=="function"){this.tools[b].disable()}else{for(var b=0;b<this.tools.length;b++){this.tools[b].disable()}}}},enable:function(b){this.disable();if(b){var a=this;b.enable(function(){a.autoDisable()});this.lastActive=this.active;this.active=b}},autoDisable:function(){if(this.lastActive&&this.lastActive!=this.active){this.enable(this.lastActive)}else{this.enable(this.firstActive)}}};arivis.webview.ZoomControl=function(a){this.conf={containerId:"zoomTool",defaultZoom:0,controlClass:"zoomControl",sliderClass:"sliderBg",sliderWidth:122,sliderControlClass:"sliderThumb",displayClass:"sliderDisplay",displayIsXY:true,displayXAdd:7,displayY:1,displayPrecission:3,outButtonClass:"zoomOutButton",inButtonClass:"zoomInButton",fitButtonClass:"zoomFitButton",orig11ButtonClass:"zoom11Button",contentHTML:'<div><div class="floatbox"><a id="zoomFitButton" class="zoomFitButton"><img src="images/webview/zoomControl/zoomfit.png" /></a><a id="zoom11Button" class="zoom11Button"><img src="images/webview/zoomControl/zoom_11.png" /></a></div><div class="floatbox" id="zoomSlider"><a class="zoomOutButton"><img src="images/webview/zoomControl/zoomout.png" /></a><div class="sliderBg"><div class="sliderDisplay"></div><div class="sliderThumb"></div></div><a class="zoomInButton"><img src="images/webview/zoomControl/zoomin.png" /></a></div></div>'};this.init(a)};arivis.webview.ZoomControl.prototype={container:null,zoomControl:null,zoomSlider:null,zoomDisplay:null,init:function(a){for(var b in a){this.conf[b]=a[b]}this.createHTML();arivis.webview.event.subscribe("imageChange",function(c){this.handleImageChange(c)},this,true);arivis.webview.event.subscribe("zoomChange",this.update,this,true)}};arivis.webview.ZoomControl.prototype.toString=function(){return"arivis.webview.ZoomControl"};arivis.webview.ZoomControl.prototype.createHTML=function(){this.container=document.getElementById(this.conf.containerId);this.container.innerHTML=this.conf.contentHTML;this.zoomControl=document.getElementById(this.conf.controlId);var b=YAHOO.util.Dom.getElementsByClassName(this.conf.outButtonClass,null,this.container)[0];YAHOO.util.Event.addListener(b,"click",this.zoomout,this,true);var f=YAHOO.util.Dom.getElementsByClassName(this.conf.inButtonClass,null,this.container)[0];YAHOO.util.Event.addListener(f,"click",this.zoomin,this,true);var a=YAHOO.util.Dom.getElementsByClassName(this.conf.fitButtonClass,null,this.container)[0];YAHOO.util.Event.addListener(a,"click",this.zoomfit,this,true);var d=YAHOO.util.Dom.getElementsByClassName(this.conf.orig11ButtonClass,null,this.container)[0];YAHOO.util.Event.addListener(d,"click",this.zoom11,this,true);var e=YAHOO.util.Dom.getElementsByClassName(this.conf.sliderClass,null,this.container)[0];e.id=this.conf.containerId+"_"+this.conf.sliderClass;var c=YAHOO.util.Dom.getElementsByClassName(this.conf.sliderControlClass,null,this.container)[0];c.id=this.conf.containerId+"_"+this.conf.sliderControlClass;this.zoomSlider=YAHOO.widget.Slider.getHorizSlider(e.id,c.id,0,this.conf.sliderWidth,1);this.zoomSlider.subscribe("change",this.sliderChanged,this,true);this.zoomSlider.subscribe("slideEnd",this.sliderEnd,this,true);this.zoomDisplay=YAHOO.util.Dom.getElementsByClassName(this.conf.displayClass,null,this.container)[0]};arivis.webview.ZoomControl.prototype.handleImageChange=function(a){this.zoomLevel=a.image.zoom.level;if(parseFloat(a.image.zoom.def)){this.update(parseFloat(a.image.zoom.def))}else{if(parseFloat(this.conf.defaultZoom)){arivis.webview.layerContainer.setZoom(parseFloat(this.conf.defaultZoom))}else{this.zoomfit()}}};arivis.webview.ZoomControl.prototype.sliderChanged=function(){var b=this.zoomSlider.getValue()/this.conf.sliderWidth;var a=Number(this.convertSliderToZoom(b));this.updateDisplay(a)};arivis.webview.ZoomControl.prototype.sliderEnd=function(b){var b=this.zoomSlider.getValue()/this.conf.sliderWidth;var a=Number(this.convertSliderToZoom(b));this.handleChange(a)};arivis.webview.ZoomControl.prototype.convertSliderToZoom=function(e){var h=Number((this.zoomLevel.length-1)*e);var c=Number(Math.floor(h));if(c==(this.zoomLevel.length-1)){return this.zoomLevel[this.zoomLevel.length-1]}var a=Number(this.zoomLevel[c]);var g=Number(this.zoomLevel[c+1]);var f=Number(g-a);var d=Number(h-c);f=Number(f*d);var b=Number(a+f);return b};arivis.webview.ZoomControl.prototype.convertZoomToSlider=function(f){if(!f){f=arivis.webview.layerContainer.zoom}f=Number(f);var a=0;if(f>=Number(this.zoomLevel[this.zoomLevel.length-1])){a=1}else{if(f<=Number(this.zoomLevel[0])){a=0}else{for(var c in this.zoomLevel){if(f>=this.zoomLevel[c]){var e=parseInt(c);var g=this.zoomLevel[c]}else{var d=parseInt(c);var b=this.zoomLevel[c];break}}if(!d){var d=this.zoomLevel.length-1;var b=this.zoomLevel[this.zoomLevel.length-1]}var h=(f-g)/(b-g);a=(e+h)/(this.zoomLevel.length-1)}}return a};arivis.webview.ZoomControl.prototype.handleChange=function(a){arivis.webview.layerContainer.setZoom(parseFloat(a))};arivis.webview.ZoomControl.prototype.zoomin=function(){var a=arivis.webview.layerContainer.nextZoom();if(a){this.handleChange(a)}};arivis.webview.ZoomControl.prototype.zoomout=function(){var a=arivis.webview.layerContainer.prevZoom();if(a){this.handleChange(a)}};arivis.webview.ZoomControl.prototype.zoomfit=function(b,a){arivis.webview.layerContainer.setZoomFit()};arivis.webview.ZoomControl.prototype.zoom11=function(b,a){arivis.webview.layerContainer.setZoom(1)};arivis.webview.ZoomControl.prototype.update=function(a){this.updateControl(a);this.updateSlider(a);this.updateDisplay(a)};arivis.webview.ZoomControl.prototype.updateSlider=function(a){if(!this.zoomLevel){return}var b=this.convertZoomToSlider(a)*this.conf.sliderWidth;this.zoomSlider.setValue(parseInt(b),true,true,true)};arivis.webview.ZoomControl.prototype.updateDisplay=function(b){this.zoomDisplay.innerHTML=parseFloat((b*100).toPrecision(this.conf.displayPrecission))+"%";if(this.conf.displayIsXY){if(this.conf.displayXAdd){if(this.zoomSlider.getValue()/this.conf.sliderWidth>0.5){var c=true;var a=getElementWidth(this.zoomDisplay);this.zoomDisplay.style.left=(this.zoomSlider.getValue()-this.conf.displayXAdd-a)+"px"}else{this.zoomDisplay.style.left=(this.zoomSlider.getValue()+this.conf.displayXAdd)+"px"}}if(this.conf.displayY){this.zoomDisplay.style.top=this.conf.displayY+"px"}}};arivis.webview.ZoomControl.prototype.updateControl=function(e){if(!this.zoomControl){return}while(this.zoomControl.hasChildNodes()){this.zoomControl.removeChild(this.zoomControl.firstChild)}var d=false;for(var b=0;b<this.zoomLevel.length;b++){var a=this.zoomLevel[b];var c=document.createElement("option");c.setAttribute("value",a);if(a==e){c.selected=true;d=true}c.appendChild(document.createTextNode((a*100)+" %"));this.zoomControl.appendChild(c)}};arivis.webview.PlaneControl=function(a){this.conf={containerId:"plane",containerObjectName:"planeWin",sliderClass:"sliderBg",sliderWidth:122,sliderControlClass:"sliderThumb",displayClass:"sliderDisplay",displayIsXY:true,displayXAdd:7,displayY:1,countBigSteps:20,minBigStep:2,upButtonClass:"planeUpButton",downButtonClass:"planeDownButton",contentHTML:'<div><div class="floatbox"><a class="planeDownButton"><img src="images/webview/planeControl/planedown.png" alt="plane down" title="plane down (key: s, big: shift+s, abs: str+alt+s)" /></a><div class="sliderBg"><div class="sliderDisplay"></div><div class="sliderThumb"></div></div><a class="planeUpButton"><img src="images/webview/planeControl/planeup.png" alt="plane up" title="plane up (key: w, big: shift+w, abs: str+alt+w)" /></a></div></div>'};overrideConf(this.conf,a);this.init()};arivis.webview.PlaneControl.prototype={container:null,containerObject:null,disableContainer:false,slider:null,display:null,maxPlanes:1,bigstep:10,keyListener:null,init:function(){this.createHTML();this.containerObject=arivis.webview[this.conf.containerObjectName];arivis.webview.event.subscribe("imageBeforeChange",function(b){this.handleImageChange(b)},this,true);arivis.webview.event.subscribe("planeChange",this.update,this,true);var a=this;this.keyListener=new Array();this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:87},function(){a.upByKey()}));this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:87,shift:true},function(){a.upByKey(true)}));this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:87,ctrl:true,alt:true},function(){a.upAbs()}));this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:83},function(){a.downByKey()}));this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:83,shift:true},function(){a.downByKey(true)}));this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:83,ctrl:true,alt:true},function(){a.downAbs()}))},toString:function(){return"arivis.webview.PlaneControl"},createHTML:function(){this.container=document.getElementById(this.conf.containerId);this.container.innerHTML=this.conf.contentHTML;var d=YAHOO.util.Dom.getElementsByClassName(this.conf.downButtonClass,null,this.container)[0];YAHOO.util.Event.addListener(d,"click",this.down,this,true);var a=YAHOO.util.Dom.getElementsByClassName(this.conf.upButtonClass,null,this.container)[0];YAHOO.util.Event.addListener(a,"click",this.up,this,true);var c=YAHOO.util.Dom.getElementsByClassName(this.conf.sliderClass,null,this.container)[0];c.id=this.conf.containerId+"_"+this.conf.sliderClass;var b=YAHOO.util.Dom.getElementsByClassName(this.conf.sliderControlClass,null,this.container)[0];b.id=this.conf.containerId+"_"+this.conf.sliderControlClass;this.slider=YAHOO.widget.Slider.getHorizSlider(c.id,b.id,0,this.conf.sliderWidth);this.slider.subscribe("change",this.sliderChanged,this,true);this.slider.subscribe("slideEnd",this.sliderEnd,this,true);this.display=YAHOO.util.Dom.getElementsByClassName(this.conf.displayClass,null,this.container)[0]},handleImageChange:function(a){this.maxPlanes=parseInt(a.image.size.planes);if(this.maxPlanes==1&&this.disableContainer!=true){this.containerObjectState=this.containerObject.disable();this.disableContainer=true;this.disableKeys()}else{if(this.maxPlanes>1){if(this.disableContainer==true){this.containerObjectState=this.containerObject.enable(this.containerObjectState);this.disableContainer=false}this.enableKeys();this.bigstep=Math.floor(this.maxPlanes/this.conf.countBigSteps+1);this.bigstep=Math.max(this.conf.minBigStep,this.bigstep)}}},enableKeys:function(){for(var a=0;a<this.keyListener.length;a++){this.keyListener[a].enable()}},disableKeys:function(){for(var a=0;a<this.keyListener.length;a++){this.keyListener[a].disable()}},sliderChanged:function(){var b=this.slider.getValue()/this.conf.sliderWidth;var a=Math.round(this.convertSliderToPlane(b));this.updateDisplay(a)},sliderEnd:function(){var b=this.slider.getValue()/this.conf.sliderWidth;var a=Math.round(this.convertSliderToPlane(b));this.update(a);arivis.webview.layerContainer.setPlane(a)},down:function(a){a=(parseInt(a))?parseInt(a):1;arivis.webview.layerContainer.setPlane(-a,true)},downAbs:function(){arivis.webview.layerContainer.setPlane(0)},downByKey:function(a){(a)?this.down(this.bigstep):this.down()},up:function(a){a=(parseInt(a))?parseInt(a):1;arivis.webview.layerContainer.setPlane(a,true)},upAbs:function(){arivis.webview.layerContainer.setPlane(this.maxPlanes-1)},upByKey:function(a){(a)?this.up(this.bigstep):this.up()},update:function(a){this.updateSlider(a);this.updateDisplay(a)},updateSlider:function(a){var b=this.convertPlaneToSlider(a)*this.conf.sliderWidth;this.slider.setValue(Math.round(b),true,true,true)},convertPlaneToSlider:function(b){if(this.maxPlanes==1){return 0}var a=b/(this.maxPlanes-1);return a},convertSliderToPlane:function(b){var a=Math.round(b*(this.maxPlanes-1));return a},updateDisplay:function(a){this.display.innerHTML=(a+1);if(this.conf.displayIsXY){if(this.conf.displayXAdd){if(this.slider.getValue()/this.conf.sliderWidth>0.5){var c=true;var b=getElementWidth(this.display);this.display.style.left=(this.slider.getValue()-this.conf.displayXAdd-b)+"px"}else{this.display.style.left=(this.slider.getValue()+this.conf.displayXAdd)+"px"}}if(this.conf.displayY){this.display.style.top=this.conf.displayY+"px"}}}};arivis.webview.FrameControl=function(a){this.conf={containerId:"frames",containerObjectName:"frameWin",sliderClass:"sliderBg",sliderWidth:122,sliderControlClass:"sliderThumb",displayClass:"sliderDisplay",displayIsXY:true,displayXAdd:7,displayY:1,countBigSteps:20,minBigStep:2,upButtonClass:"frameUpButton",downButtonClass:"frameDownButton",contentHTML:'<div><div class="floatbox"><a class="frameDownButton"><img src="images/webview/frameControl/framedown.png" alt="frame down" title="frame down (key: a, big: shift+a, abs: ctrl+alt+a)" /></a><div class="sliderBg"><div class="sliderDisplay"></div><div class="sliderThumb"></div></div><a class="frameUpButton"><img src="images/webview/frameControl/frameup.png" alt="frame down" title="frame down (key: d, big: shift+d, abs: ctrl+alt+d)" /></a></div></div>'};this.init(a)};arivis.webview.FrameControl.prototype={container:null,containerObject:null,disableContainer:false,slider:null,display:null,maxFrames:1,bigstep:10,keyListener:null,init:function(b){for(var c in b){this.conf[c]=b[c]}this.createHTML();this.containerObject=arivis.webview[this.conf.containerObjectName];arivis.webview.event.subscribe("imageBeforeChange",function(d){this.handleImageChange(d)},this,true);arivis.webview.event.subscribe("frameChange",this.update,this,true);var a=this;this.keyListener=new Array();this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:68},function(){a.upByKey()}));this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:68,shift:true},function(){a.upByKey(true)}));this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:68,ctrl:true,alt:true},function(){a.upAbs()}));this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:65},function(){a.downByKey()}));this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:65,shift:true},function(){a.downByKey(true)}));this.keyListener.push(new YAHOO.util.KeyListener(document,{keys:65,ctrl:true,alt:true},function(){a.downAbs()}))},toString:function(){return"arivis.webview.FrameControl"},createHTML:function(){this.container=document.getElementById(this.conf.containerId);this.container.innerHTML=this.conf.contentHTML;var d=YAHOO.util.Dom.getElementsByClassName(this.conf.downButtonClass,null,this.container)[0];YAHOO.util.Event.addListener(d,"click",this.down,this,true);var a=YAHOO.util.Dom.getElementsByClassName(this.conf.upButtonClass,null,this.container)[0];YAHOO.util.Event.addListener(a,"click",this.up,this,true);var c=YAHOO.util.Dom.getElementsByClassName(this.conf.sliderClass,null,this.container)[0];c.id=this.conf.containerId+"_"+this.conf.sliderClass;var b=YAHOO.util.Dom.getElementsByClassName(this.conf.sliderControlClass,null,this.container)[0];b.id=this.conf.containerId+"_"+this.conf.sliderControlClass;this.slider=YAHOO.widget.Slider.getHorizSlider(c.id,b.id,0,this.conf.sliderWidth);this.slider.subscribe("change",this.sliderChanged,this,true);this.slider.subscribe("slideEnd",this.sliderEnd,this,true);this.display=YAHOO.util.Dom.getElementsByClassName(this.conf.displayClass,null,this.container)[0]},handleImageChange:function(a){this.maxFrames=(parseInt(a.image.size.frames))?parseInt(a.image.size.frames):1;if(this.maxFrames==1&&this.disableContainer!=true){this.containerObjectState=this.containerObject.disable();this.disableContainer=true;this.disableKeys()}else{if(this.maxFrames>1){if(this.disableContainer==true){this.containerObjectState=this.containerObject.enable(this.containerObjectState);this.disableContainer=false}this.enableKeys();this.bigstep=Math.floor(this.maxFrames/this.conf.countBigSteps+1);this.bigstep=Math.max(this.conf.minBigStep,this.bigstep)}}},enableKeys:function(){for(var a=0;a<this.keyListener.length;a++){this.keyListener[a].enable()}},disableKeys:function(){for(var a=0;a<this.keyListener.length;a++){this.keyListener[a].disable()}},sliderChanged:function(){var a=this.slider.getValue()/this.conf.sliderWidth;var b=Math.round(this.convertSliderToFrame(a));this.updateDisplay(b)},sliderEnd:function(){var a=this.slider.getValue()/this.conf.sliderWidth;var b=Math.round(this.convertSliderToFrame(a));this.update(b);arivis.webview.layerContainer.setFrame(b)},down:function(a){a=(parseInt(a))?parseInt(a):1;arivis.webview.layerContainer.setFrame(-a,true)},downAbs:function(){arivis.webview.layerContainer.setFrame(0)},downByKey:function(a){(a)?this.down(this.bigstep):this.down()},up:function(a){a=(parseInt(a))?parseInt(a):1;arivis.webview.layerContainer.setFrame(a,true)},upAbs:function(){arivis.webview.layerContainer.setFrame(this.maxFrames-1)},upByKey:function(a){(a)?this.up(this.bigstep):this.up()},update:function(a){this.updateSlider(a);this.updateDisplay(a)},updateSlider:function(b){var a=this.convertFrameToSlider(b)*this.conf.sliderWidth;this.slider.setValue(Math.round(a),true,true,true)},convertFrameToSlider:function(b){if(this.maxFrames==1){return 0}var a=b/(this.maxFrames-1);return a},convertSliderToFrame:function(a){var b=Math.round(a*(this.maxFrames-1));return b},updateDisplay:function(c){this.display.innerHTML=(c+1);if(this.conf.displayIsXY){if(this.conf.displayXAdd){if(this.slider.getValue()/this.conf.sliderWidth>0.5){var b=true;var a=getElementWidth(this.display);this.display.style.left=(this.slider.getValue()-this.conf.displayXAdd-a)+"px"}else{this.display.style.left=(this.slider.getValue()+this.conf.displayXAdd)+"px"}}if(this.conf.displayY){this.display.style.top=this.conf.displayY+"px"}}}};arivis.webview.Viewer3dControl=function(a){this.conf={containerId:"win3d",notWebglId:"notWebgl",containerObjectName:"3dWin",viewerId:"viewer3d",canvasId:"canvas3d",loaderId:"loader3d",loaderSliderId:"loader3dSlider",loaderDisplayId:"loader3dDisplay",displayButton2d:"display2d",displayButton3d:"display3d",activeButtonClass:"button_on",alphaId:"alpha",resolutionId:"resolution",minPlanes:10,scriptLoadTextureUrl:"js/webview/3d/webview.php",disable2DWin:[],disable3DWin:[],contentHTML:'<div class="floatbox"><div>Alpha:<div class="floatbox" id="alphaSlider"></div></div><div>Resolution:<div class="floatbox" id="resolutionSlider"></div></div></div>',switchContainerId:"",switchContainerObjectName:"",switchHTML:'<div class="floatbox"><pre class="nobreak"><button class="button2d button_on" id="display2d" title="Viewer 2D">2D</<button><button class="button3d" id="display3d" title="Viewer 3D">3D</<button></pre></div>',contentNotWebglHTML:'<div class="floatbox"><p><strong>3D mode is not available on your system.</strong> <a href="requirements.html" target="_blank" onvlick="popup(this,760,480);return false;">Check requirements!</a></p></div>',contentViewerHTML:'<canvas id="canvas3d"></canvas><div id="loader3d"><div id="loader3dSlider"></div><div id="loader3dDisplay"></div></div>',alphaConf:{containerId:"alphaSlider",precision:0,defaultMinValue:15,defaultMaxValue:100,displayTextAdd:"%",sliderWidth:122},resolutionConf:{containerId:"resolutionSlider",type:"slider",sliderBgId:"resolutionSliderBg",sliderThumbId:"resolutionSliderThumb",sliderDisplayId:"resolutionSliderDisplay",values:["low","medium","high"],defaultValue:"low",sliderWidth:122},resolutionValues:{low:64,medium:128,high:256,"very hight":512},preview3dConf:{canvasElement:"canvas3d"}};overrideConf(this.conf,a);this.init()};arivis.webview.Viewer3dControl.prototype={container:null,preview3d:null,image:null,status3d:false,containerObject:null,containerObjectState:false,disableContainer:false,technicalPreferencies:false,loaderTimer:0,alphaSlider:null,resolutionSlider:null,isDisplay:false,resolution:0,disabledWin:[],init:function(a){this.createHTML();this.containerObject=arivis.webview[this.conf.containerObjectName];arivis.webview.event.subscribe("imageBeforeChange",function(b){this.handleImageChange(b)},this,true);arivis.webview.event.subscribe("frameChange",this.handleFrameChange,this,true)},toString:function(){return"arivis.webview.Viewer3dControl"},createHTML:function(){this.viewer=document.getElementById(this.conf.viewerId);this.viewer.innerHTML=this.conf.contentViewerHTML;this.preview3d=new arivis.webview.Preview3D(this.conf.preview3dConf);if(this.preview3d.gl){this.technicalPreferencies=true}if(!this.technicalPreferencies){var d=document.getElementById(this.conf.notWebglId);if(d&&this.conf.contentNotWebglHTML){d.innerHTML=this.conf.contentNotWebglHTML}return}if(this.conf.switchContainerId&&this.conf.switchHTML){var c=document.getElementById(this.conf.switchContainerId);c.innerHTML=this.conf.switchHTML}var b=document.getElementById(this.conf.displayButton2d);var e=document.getElementById(this.conf.displayButton3d);this.resolutionSlider=new arivis.webview.Slider(this.conf.resolutionConf);this.alphaSlider=new arivis.webview.DualSlider(this.conf.alphaConf);var a=this;if(this.alphaSlider){this.alphaSlider.subscribe("slideEnd",function(){a.changeAlpha()})}if(this.resolutionSlider){this.resolutionSlider.subscribe("slideEnd",function(){a.changeResolution()})}if(b&&e){YAHOO.util.Event.addListener(b,"click",function(){this.handle3dButtonClick(true)},this,true);YAHOO.util.Event.addListener(e,"click",this.handle3dButtonClick,this,true)}},handleImageChange:function(a){this.image=a.image;this.pixelSizeX=parseFloat(a.image.size.pixelSizeX);this.pixelSizeY=parseFloat(a.image.size.pixelSizeY);this.pixelSizeZ=parseFloat(a.image.size.pixelSizeZ);this.maxPlanes=parseInt(a.image.size.planes);if(this.preview3d){var d=Math.max(a.image.size.width,a.image.size.height);var f=this.pixelSizeX;var e=this.pixelSizeY;var c=this.maxPlanes/d;var b=Math.max(f,Math.max(e,c));f=f/b;e=e/b;c=c/b;if(f&&e&&c){this.preview3d.buildScaling(f,e,c)}else{this.preview3d.buildScaling(1,1,1)}}if(!this.technicalPreferencies){this.disable()}else{if(this.maxPlanes<this.conf.minPlanes){this.disable()}else{this.enable()}}this.undisplay()},enable:function(){this.containerObjectState=this.containerObject.enable(this.containerObjectState);if(this.conf.switchContainerObjectName){var a=arivis.webview[this.conf.switchContainerObjectName];a.enable()}this.disableContainer=false},disable:function(){if(this.disableContainer){return}this.containerObjectState=this.containerObject.disable();if(this.conf.switchContainerObjectName){var a=arivis.webview[this.conf.switchContainerObjectName];a.disable()}this.disableContainer=true},viewerDisplay:function(){this.viewer=document.getElementById(this.conf.viewerId);this.viewer.style.display="block";this.isDisplay=true},viewerHide:function(){this.viewer=document.getElementById(this.conf.viewerId);this.viewer.style.display="none";this.isDisplay=false},beginLoader:function(){loaderElement=document.getElementById(this.conf.loaderId);loaderElement.style.display="block";loaderDisplayElement=document.getElementById(this.conf.loaderDisplayId);loaderDisplayElement.innerHTML="0%";loaderSliderElement=document.getElementById(this.conf.loaderSliderId);loaderSliderElement.style.width="0px";var a=this;this.loader(true)},endLoader:function(){clearTimeout(this.loaderTimer);if(this.preview3d){this.preview3d.handleLoadedEnd()}loaderElement=document.getElementById(this.conf.loaderId);loaderElement.style.display="none"},loader:function(b){clearTimeout(this.loaderTimer);if(b){var c=0}else{var c=this.preview3d.texture3D.loaderStatus()}if(c==1){return this.endLoader()}loaderElement=document.getElementById(this.conf.loaderId);loaderElement.style.display="block";loaderDisplayElement=document.getElementById(this.conf.loaderDisplayId);loaderDisplayElement.innerHTML=Math.round(c*100)+"%";loaderSliderElement=document.getElementById(this.conf.loaderSliderId);loaderSliderElement.style.width=Math.round(c*200)+"px";var a=this;this.loaderTimer=setTimeout(function(){a.loader()},100)},changeAlpha:function(){var b=this.calculateAlpha(this.alphaSlider.minValue);var a=this.calculateAlpha(this.alphaSlider.maxValue);this.preview3d.setAlpha(b,a)},changeResolution:function(){var a=this.calculateResolution();if(this.isDisplay&&this.resolution!=a){this.render()}},calculateAlpha:function(a){return a/100},calculateResolution:function(a){var b=this.resolutionSlider.value;if(this.conf.resolutionValues[b]){var a=this.conf.resolutionValues[b]}else{var a=64}return a},handleFrameChange:function(a){if(this.status3d){this.render()}},handle3dButtonClick:function(a){if(a===true||this.isDisplay){this.undisplay()}else{this.display()}},buttonSwitch:function(b){var a=document.getElementById(this.conf.displayButton2d);var c=document.getElementById(this.conf.displayButton3d);if(b=="2d"){YAHOO.util.Dom.addClass(a,this.conf.activeButtonClass);YAHOO.util.Dom.removeClass(c,this.conf.activeButtonClass)}else{YAHOO.util.Dom.removeClass(a,this.conf.activeButtonClass);YAHOO.util.Dom.addClass(c,this.conf.activeButtonClass)}},undisplay:function(){this.manageWin("2d");arivis.webview.toolbarControl.autoDisable();this.buttonSwitch("2d");this.preview3d.unload();this.viewerHide();this.status3d=false},display:function(){if(!this.image||this.disableContainer){return}this.buttonSwitch("3d");this.manageWin("3d");this.alphaSlider.updateDisplays();this.viewerDisplay();var a=this;window.setTimeout(function(){a.render()},100)},render:function(){var resolution=this.calculateResolution();this.resolution=resolution;var datasource={textureDim:resolution,frame:arivis.webview.layerContainer.frame,xDim:parseInt(this.image.size.width),yDim:parseInt(this.image.size.height),zDim:parseInt(this.image.size.planes),xFactor:(parseInt(this.image.size.width)/parseInt(this.image.size.planes)),yFactor:(parseInt(this.image.size.width)/parseInt(this.image.size.planes)),texturesSrcStatic:this.image.url};var regex=eval("/^https?:\\/\\/"+location.hostname+"/");if(datasource.texturesSrcStatic.search(/^https?:/)>-1&&datasource.texturesSrcStatic.search(regex)==-1){datasource.scriptLoadUrl=this.conf.scriptLoadTextureUrl}else{datasource.scriptLoadUrl=""}this.beginLoader();this.preview3d.load(datasource);this.status3d=true},manageWin:function(c){var e=(c=="3d")?this.conf.disable3DWin:this.conf.disable2DWin;var a=[];for(var b=0;b<this.disabledWin.length;b++){arivis.webview[this.disabledWin[b]].enable()}if(e&&e.length){for(var b=0;b<e.length;b++){var d=arivis.webview[e[b]];if(d.getEnableState()){arivis.webview[e[b]].disable();a.push(e[b])}}}this.disabledWin=a},update:function(){this.preview3d.drawScene()}};arivis.webview.NavDrag=function(b,a,c){if(b){this.init(b);this.setDragElId(a);this.imagePanel=c}};YAHOO.extend(arivis.webview.NavDrag,YAHOO.util.DD);arivis.webview.NavDrag.prototype.onMouseDown=function(d){var b=1;var c=this.getEl();var a=this.getDragEl();a.style.left=c.offsetLeft+"px";a.style.top=c.offsetTop+"px";a.style.width=(c.offsetWidth-2*b)+"px";a.style.height=(c.offsetHeight-2*b)+"px";YAHOO.util.Dom.setStyle(a,"display","block")};arivis.webview.NavDrag.prototype.updateConstraints=function(){var d=this.getEl();var a=1;var c=d.offsetWidth-2*a;var b=d.offsetHeight-2*a;this.constrainX=true;this.constrainY=true;if(this.imagePanel.offsetWidth>c){this.minX=YAHOO.util.Dom.getX(this.imagePanel)-a;this.maxX=this.minX+this.imagePanel.offsetWidth-c}else{this.maxX=YAHOO.util.Dom.getX(this.imagePanel)-a;this.minX=this.maxX+this.imagePanel.offsetWidth-c}if(this.imagePanel.offsetHeight>b){this.minY=YAHOO.util.Dom.getY(this.imagePanel)-a;this.maxY=this.minY+this.imagePanel.offsetHeight-b}else{this.maxY=YAHOO.util.Dom.getY(this.imagePanel)-a;this.minY=this.maxY+this.imagePanel.offsetHeight-b}};arivis.webview.NavDrag.prototype.endDrag=function(c){var b=this.getEl();var a=this.getDragEl();b.style.left=a.offsetLeft+"px";b.style.top=a.offsetTop+"px";b.style.width=(a.offsetWidth-2)+"px";b.style.height=(a.offsetHeight-2)+"px";this.applyPosition()};arivis.webview.NavDrag.prototype.applyPosition=function(){var k=this.getEl();var h=this.imagePanel.zoom/arivis.webview.layerContainer.zoom;var b=Math.round((k.offsetLeft-this.imagePanel.offsetLeft+2)/h);var m=Math.round((k.offsetTop-this.imagePanel.offsetTop+2)/h);var f=arivis.webview.layerContainer.image;var j=arivis.webview.layerContainer.zoom;var i=getViewportWidth();var g=getViewportHeight();if(f.width*j>i){var c=Math.round((f.x+f.width)*j-i);var e=Math.round(f.x*j);b=Math.min(b,c);b=Math.max(b,e)}if(f.height*j>g){var a=Math.round((f.y+f.height)*j-g);var d=Math.round(f.y*j);m=Math.min(m,a);m=Math.max(m,d)}arivis.webview.event.fireEvent("navigate",{x:b,y:m})};arivis.webview.NavDrag.prototype.onMouseUp=function(a){YAHOO.util.Dom.setStyle(this.getDragEl(),"display","none")};arivis.webview.NavDrag.prototype.toString=function(){return"arivis.webview.NavDrag"};arivis.webview.NavigatorControl=function(a){this.conf={containerId:"navigator",imagePanelId:"navContent",cursorPanelId:"navOverlay",dragPanelId:"navDrag",contentHTML:'<div id="navContent"></div><div id="navOverlay"></div><div id="navDrag"></div>'};overrideConf(this.conf,a);this.init()};arivis.webview.NavigatorControl.prototype={conf:null,rootPanel:null,imagePanel:null,cursorPanel:null,cursorMark:null,minCursorMarkSize:20,minCursorSize:1,dragPanel:null,preloadImage:null,imageSize:null,dragHandler:null,borderWidth:1,imageChangeTimer:0,toString:function(){return"arivis.webview.NavigatorControl"},init:function(){if(this.conf.containerId){this.createHTML()}else{1}arivis.webview.event.subscribe("viewChange",this.handleZoomChange,this,true);arivis.webview.event.subscribe("drag",this.updatePosition,this,true);arivis.webview.event.subscribe("imageChange",this.handleImageChange,this,true);arivis.webview.event.subscribe("planeChange",this.handleImageChange,this,true);arivis.webview.event.subscribe("frameChange",this.handleImageChange,this,true);this.dragHandler=new arivis.webview.NavDrag(this.cursorPanel,this.dragPanel,this.imagePanel);YAHOO.util.Event.addListener(this.imagePanel,"click",this.handleNavigatorClick,this,true)},createHTML:function(){this.rootPanel=document.getElementById(this.conf.containerId);this.imagePanel=document.createElement("div");this.imagePanel.id=this.conf.imagePanelId;this.rootPanel.appendChild(this.imagePanel);this.cursorPanel=document.createElement("div");this.cursorPanel.id=this.conf.cursorPanelId;this.rootPanel.appendChild(this.cursorPanel);this.cursorPanel.innerHTML="";this.cursorMark=document.createElement("div");this.cursorMark.id="navMark";this.cursorPanel.appendChild(this.cursorMark);this.dragPanel=document.createElement("div");this.dragPanel.id=this.conf.dragPanelId;this.rootPanel.appendChild(this.dragPanel)},onExpand:function(){this.refresh()},switchNavigator:function(){arivis.webview.palette.switchPalette("nav");this.handleResize()},getNavigatorSize:function(){return{width:this.rootPanel.offsetWidth,height:this.rootPanel.offsetHeight}},handleNavigatorClick:function(c){var d=YAHOO.util.Event.getXY(c);d[0]=d[0]-Math.round(this.cursorPanel.offsetWidth/2)+1;d[1]=d[1]-Math.round(this.cursorPanel.offsetHeight/2)+1;d[0]=Math.min(d[0],this.dragHandler.maxX);d[0]=Math.max(d[0],this.dragHandler.minX);d[1]=Math.min(d[1],this.dragHandler.maxY);d[1]=Math.max(d[1],this.dragHandler.minY);var b=YAHOO.util.Dom.getXY(this.imagePanel);var a=d[0]-b[0]+this.imagePanel.offsetLeft;var e=d[1]-b[1]+this.imagePanel.offsetTop;this.cursorPanel.style.left=a+"px";this.cursorPanel.style.top=e+"px";this.dragHandler.applyPosition()},handleImageChange:function(a){if(a.image){this.image=a.image}this.refresh()},refresh:function(){if(!this.image){return}var e=this.image;this.imageSize=[e.size.width,e.size.height];var f=[this.rootPanel.offsetWidth,this.rootPanel.offsetHeight];var h=(f[0]-4)/this.imageSize[0];var a=(f[1]-4)/this.imageSize[1];var i=Math.min(h,a);var k=Math.floor(e.size.x*i);var j=Math.floor(e.size.y*i);var b=Math.ceil(this.imageSize[0]*i);var m=Math.ceil(this.imageSize[1]*i);var g=arivis.webview.layerContainer.getPlane();var c=arivis.webview.layerContainer.getFrame();if(e.url){var d={x:k,y:j,w:b,h:m,z:i,p:g,t:c,id:e.id};this.preloadImage=new Image();clearTimeout(this.imageChangeTimer);var n=this;YAHOO.util.Event.addListener(this.preloadImage,"load",function(o){this.imageChangeTimer=setTimeout(function(){n.imagePanel.style.background="url("+n.preloadImage.src+")"},101)},this,true);this.preloadImage.src=composeURL(e.url,d)}else{this.imagePanel.style.background="#333"}k=Math.round((f[0]-b)/2);j=Math.round((f[1]-m)/2);this.imagePanel.style.left=k+"px";this.imagePanel.style.top=j+"px";this.imagePanel.style.width=b+"px";this.imagePanel.style.height=m+"px";this.imagePanel.zoom=i;this.updatePosition();this.dragHandler.updateConstraints()},handleZoomChange:function(a){this.updatePosition();this.dragHandler.updateConstraints()},updatePosition:function(){if(!this.imageSize){return}var d=arivis.webview.layerContainer.getPosition();var k=arivis.webview.layerContainer.zoom;if(!k){return}var f=d.x/k;var e=d.y/k;var a=getViewportWidth()/k;var j=getViewportHeight()/k;var c=j/a;var i=Math.round(f*this.imagePanel.offsetWidth/this.imageSize[0])+this.imagePanel.offsetLeft;var h=Math.round(e*this.imagePanel.offsetHeight/this.imageSize[1])+this.imagePanel.offsetTop;var b=Math.round(a*this.imagePanel.offsetWidth/this.imageSize[0]);var g=Math.round(j*this.imagePanel.offsetHeight/this.imageSize[1]);if(b<this.minCursorSize){b=this.minCursorSize;g=Math.round(b*c)}if(g<this.minCursorSize){g=this.minCursorSize;b=Math.round(g/c)}if(b<this.minCursorMarkSize&&g<this.minCursorMarkSize){this.cursorMark.style.left=Math.round(b/2-this.cursorMark.offsetWidth/2)+"px";this.cursorMark.style.top=Math.round(g/2-this.cursorMark.offsetHeight/2)+"px";this.cursorMark.style.visibility="visible"}else{this.cursorMark.style.visibility="hidden"}this.cursorPanel.style.left=(i-this.borderWidth)+"px";this.cursorPanel.style.top=(h-this.borderWidth)+"px";this.cursorPanel.style.width=(b)+"px";this.cursorPanel.style.height=(g)+"px"}};arivis.webview.GalleryControl=function(a){this.conf={containerId:"gallery",prevScrollClassName:"prevScroll",nextScrollClassName:"nextScroll",scrollClassName:"galleryScroll",hideIfSingle:true,scrollerHide:true,itemMaxWidth:100,itemMaxHeight:100,useTooltip:false,contentHTML:'<!-- {COUNT} --><div class="prevScroll scroller"></div><div class="galleryScroll"><table><tr>{LIST}</tr></table></div><div class="nextScroll scroller"></div>',itemHTML:'<td class="galleryItem" style="max-width:{MAXWIDTH}px;max-height:{MAXHEIGHT}px;"><a id="galleryItem_{IMAGEID}" class="galleryLink" title="{TITLE}"><img src="{SRC}" alt="{TITLE}" title="{TITLE}" width="{WIDTH}" height="{HEIGHT}" /><div class="galleryTitle">{TITLE}</div></a></td>'};this.init(a)};arivis.webview.GalleryControl.prototype={container:null,scrollElement:null,scrollLeft:null,scrollRight:null,table:null,scroller:null,scrollSpeedPixel:3,scrollSpeedInterval:20,galleryItemId:[],toString:function(){return"arivis.webview.GalleryControl"},init:function(a){overrideConf(this.conf,a);arivis.webview.event.subscribe("applicationRun",function(b){this.createHTML(b)},this,true);arivis.webview.event.subscribe("imageChange",this.handleImageChange,this,true)},createHTML:function(){this.container=document.getElementById(this.conf.containerId);var f=arivis.webview.application.registry;if(this.conf.hideIfSingle&&f.length<=1){this.container.style.display="none";return}var h="";for(var c=0;c<f.length;c++){var d=this.getPreviewDim(f[c]);var a=(f[c].preview)?f[c].preview:this.getPreviewUrl(f[c],d.zoom);this.galleryItemId.push("galleryItem_"+f[c].id);h+=new arivis.webview.Template(this.conf.itemHTML,{MAXWIDTH:this.conf.itemMaxWidth,MAXHEIGHT:this.conf.itemMaxHeight,WIDTH:d.w,HEIGHT:d.h,IMAGEID:f[c].id,SRC:a,TITLE:f[c].name})}this.container.innerHTML=new arivis.webview.Template(this.conf.contentHTML,{LIST:h,COUNT:f.length});YAHOO.widget.Tooltip.CSS_TOOLTIP="tooltip";for(var c=0;c<f.length;c++){var g="galleryItem_"+f[c].id;if(this.conf.useTooltip){var e=new YAHOO.widget.Tooltip("tt_"+g,{context:g})}var j=this;var b=function(){var i=f[c].id;YAHOO.util.Event.addListener(g,"click",function(){j.selectItem(i)},this,true)};b()}this.scrollLeft=YAHOO.util.Dom.getElementsByClassName(this.conf.prevScrollClassName,null,this.container)[0];this.scrollRight=YAHOO.util.Dom.getElementsByClassName(this.conf.nextScrollClassName,null,this.container)[0];this.scrollElement=YAHOO.util.Dom.getElementsByClassName(this.conf.scrollClassName,null,this.container)[0];if(this.scrollLeft){YAHOO.util.Event.addListener(this.scrollLeft,"mouseover",this.startScrollLeft,this,true);YAHOO.util.Event.addListener(this.scrollLeft,"mouseout",this.stopScroll,this,true);YAHOO.util.Event.addListener(this.scrollLeft,"click",this.jumpLeft,this,true)}if(this.scrollRight){YAHOO.util.Event.addListener(this.scrollRight,"mouseover",this.startScrollRight,this,true);YAHOO.util.Event.addListener(this.scrollRight,"mouseout",this.stopScroll,this,true);YAHOO.util.Event.addListener(this.scrollRight,"click",this.jumpRight,this,true)}if(this.scrollRight||this.scrollLeft){YAHOO.util.Event.addListener(window,"resize",this.stopScroll,this,true)}this.stopScroll()},getPreviewDim:function(f){var d=(this.conf.itemMaxWidth)?this.conf.itemMaxWidth:(this.container.offsetWidth)?this.container.offsetWidth:100;var c=d/f.size.width;var a=(this.conf.itemMaxHeight)?this.conf.itemMaxHeight:(this.container.offsetHeight)?this.container.offsetHeight:100;var b=a/f.size.height;var e=Math.min(b,c);d=parseInt(f.size.width*e);a=parseInt(f.size.height*e);return{w:d,h:a,zoom:e}},getPreviewUrl:function(c,b){var a=c.url;var d=new Array();d.z=b;d.x=0;d.y=0;d.p=(parseInt(c.size.planes))?Math.floor(parseInt(c.size.planes)/2):0;d.t=(parseInt(c.size.ticks))?Math.floor(parseInt(c.size.ticks)/2):0;d.w=parseInt(c.size.width*b);d.h=parseInt(c.size.height*b);a=composeURL(a,d);return a},selectItem:function(a){this.jumpTo(a);arivis.webview.application.selectImage(a)},handleImageChange:function(a){this.markItem(a.image.id)},markItem:function(b){for(var a=0;a<this.galleryItemId.length;a++){if(this.galleryItemId[a]=="galleryItem_"+b){YAHOO.util.Dom.addClass(this.galleryItemId[a],"selected")}else{YAHOO.util.Dom.removeClass(this.galleryItemId[a],"selected")}}},jumpTo:function(f){this.stopScroll();var e=0;var c=this.scrollElement.scrollLeft+this.scrollElement.offsetWidth/2;for(var b=0;b<this.galleryItemId.length;b++){if(this.galleryItemId[b]=="galleryItem_"+f){var d=document.getElementById(this.galleryItemId[b]);var a=getAbsPosition(d).left-getAbsPosition(this.scrollElement).left+d.offsetWidth/2;e=a-this.scrollElement.offsetWidth/2;this.scrollElement.scrollLeft=e;break}}this.stopScroll()},stopScroll:function(){window.clearTimeout(this.startScroller);if(this.scroller){window.clearInterval(this.scroller);this.scroller=null}if(this.conf.scrollerHide){(this.scrollElement.scrollLeft==0)?this.scrollLeft.style.visibility="hidden":this.scrollLeft.style.visibility="visible";(this.scrollElement.scrollLeft+this.scrollElement.offsetWidth>=this.scrollElement.scrollWidth)?this.scrollRight.style.visibility="hidden":this.scrollRight.style.visibility="visible"}},startScrollLeft:function(){this.stopScroll();var a=this;this.startScroller=window.setTimeout(function(){a.scroller=window.setInterval(function(){a.doScrollLeft()},this.scrollSpeedInterval)},500)},jumpRight:function(){this.stopScroll();var e=0;var c=this.scrollElement.scrollLeft+this.scrollElement.offsetWidth/2;for(var b=0;b<this.galleryItemId.length;b++){var d=document.getElementById(this.galleryItemId[b]);var a=getAbsPosition(d).left-getAbsPosition(this.scrollElement).left+d.offsetWidth/2;if(this.scrollElement.scrollLeft+3<a-this.scrollElement.offsetWidth/2){e=a-this.scrollElement.offsetWidth/2;this.scrollElement.scrollLeft=e;break}}this.stopScroll()},jumpLeft:function(){this.stopScroll();var e=0;var c=this.scrollElement.scrollLeft+this.scrollElement.offsetWidth/2;for(var b=0;b<this.galleryItemId.length;b++){var d=document.getElementById(this.galleryItemId[b]);var a=getAbsPosition(d).left-getAbsPosition(this.scrollElement).left+d.offsetWidth/2;if(this.scrollElement.scrollLeft-3>a-this.scrollElement.offsetWidth/2){e=a-this.scrollElement.offsetWidth/2}else{break}}this.scrollElement.scrollLeft=e;this.stopScroll()},startScrollRight:function(){this.stopScroll();var a=this;this.startScroller=window.setTimeout(function(){a.scroller=window.setInterval(function(){a.doScrollRight()},this.scrollSpeedInterval)},500)},doScrollLeft:function(){var b=this.scrollElement.scrollLeft-this.scrollSpeedPixel;var a=0;if(b<0){this.stopScroll();b=0}this.scrollElement.scrollLeft=b},doScrollRight:function(){var a=this.scrollElement.scrollLeft+this.scrollSpeedPixel;if(a>this.scrollElement.innerWidth-this.scrollElement.offsetWidth){this.stopScroll();a=this.scrollElement.innerWidth-this.scrollElement.offsetWidth}this.scrollElement.scrollLeft=a}};arivis.webview.InfoControl=function(a){this.conf={containerId:"info",contentHTML:'<!-- {TITLE} --><div><div class="block">{DESCRIPTION}</div><h6>Attributes</h6><div class="block"><div>Width: {WIDTH} Pixel</div><div>Height: {HEIGHT} Pixel</div><div>Planes: {PLANES}</div><div>Frames: {FRAMES}</div>{SIZEHTML}</div></div>',sizeHTML:"<div>Size: {SIZE}</div>"};this.init(a)};arivis.webview.InfoControl.prototype={container:null,imageContent:"",init:function(a){for(var b in a){this.conf[b]=a[b]}arivis.webview.event.subscribe("imageChange",function(c){this.handleImageChange(c)},this,true);arivis.webview.event.subscribe("infoChange",function(c){this.handleInfoChange(c)},this,true)},toString:function(){return"arivis.webview.InfoControl"},createHTML:function(a){this.container=document.getElementById(this.conf.containerId);var c=(a.image.size.planes)?a.image.size.planes:1;var e=(a.image.size.frames)?a.image.size.frames:1;var b=(a.image.size.filesize)?new arivis.webview.Template(this.conf.sizeHTML,{SIZE:a.image.size.filesize}):"";var d=new arivis.webview.Template(this.conf.contentHTML,{TITLE:a.image.name,DESCRIPTION:a.image.description,WIDTH:a.image.size.width,HEIGHT:a.image.size.height,PLANES:c,FRAMES:e,SIZEHTML:b});this.imageContent=d;this.container.innerHTML=d},handleInfoChange:function(a){this.container.innerHTML=(a)?a:this.imageContent},handleImageChange:function(a){this.createHTML(a)}};arivis.webview.ScaleControl=function(a){this.conf={containerId:"scaleContainer",isDefaultPixelSize:false,defaultPixelWidth:1,isUnit:true,maxWidth:200};overrideConf(this.conf,a);this.init()};arivis.webview.ScaleControl.prototype={container:null,displayframe:null,display:null,spacerDD:null,pixelwidth:0,isDisplay:true,digitPattern:[5,2,1],startViewportSize:null,toString:function(){return"arivis.webview.ScaleControl"},init:function(){this.createHTML();this.startViewportSize=getViewportSize();this.spacerDD=new YAHOO.util.DD(this.conf.containerId);arivis.webview.event.subscribe("imageChange",this.handleImageChange,this,true);arivis.webview.event.subscribe("viewChange",this.update,this,true);YAHOO.util.Event.addListener(window,"resize",this.correctPosition,this,true)},createHTML:function(){if(document.getElementById(this.conf.containerId)){this.container=document.getElementById(this.conf.containerId)}this.displayframe=document.createElement("div");this.container.appendChild(this.displayframe);YAHOO.util.Dom.addClass(this.displayframe,"displayframe");this.display=document.createElement("div");this.displayframe.appendChild(this.display);YAHOO.util.Dom.addClass(this.display,"display");this.boundaryB=document.createElement("div");this.displayframe.appendChild(this.boundaryB);this.boundaryL=document.createElement("div");this.displayframe.appendChild(this.boundaryL);this.boundaryR=document.createElement("div");this.displayframe.appendChild(this.boundaryR);YAHOO.util.Dom.addClass(this.boundaryB,"boundary");YAHOO.util.Dom.addClass(this.boundaryL,"boundary");YAHOO.util.Dom.addClass(this.boundaryR,"boundary");YAHOO.util.Dom.addClass(this.boundaryB,"boundaryBottom");YAHOO.util.Dom.addClass(this.boundaryL,"boundaryLeft");YAHOO.util.Dom.addClass(this.boundaryR,"boundaryRight")},startPosition:function(){var c=YAHOO.util.Dom.getRegion(getViewport());var d=YAHOO.util.Dom.getRegion(this.container);var b=c.left+20;var a=c.top+c.height-d.height-20;YAHOO.util.Dom.setX(this.container,b);YAHOO.util.Dom.setY(this.container,a)},correctPosition:function(){var b=YAHOO.util.Dom.getRegion(getViewport());var c=YAHOO.util.Dom.getRegion(this.container);var a=b.left;var f=b.top;var e=b.right-c.width;var d=b.bottom-c.height;if(e<c.left){YAHOO.util.Dom.setX(this.container,e)}if(d<c.top){YAHOO.util.Dom.setY(this.container,d)}if(a>c.left){YAHOO.util.Dom.setX(this.container,a)}if(f>c.top){YAHOO.util.Dom.setY(this.container,f)}},handleImageChange:function(a){if(parseFloat(a.image.size.pixelSizeX)){this.pixelwidth=parseFloat(a.image.size.pixelSizeX);this.isDisplay=true}else{if(a.image.pixelwidth){this.pixelwidth=a.image.pixelwidth;this.isDisplay=true}else{if(this.conf.isDefaultPixelSize==true&&this.conf.defaultPixelWidth){this.pixelwidth=this.conf.defaultPixelWidth;this.isDisplay=true}else{this.isDisplay=false}}}if(this.isDisplay==true){this.container.style.display="block";this.update()}else{this.container.style.display="none"}this.startPosition()},update:function(){if(!this.isDisplay||!this.pixelwidth){return}var a=arivis.webview.layerContainer.zoom;var e=this.conf.maxWidth*this.pixelwidth/a;var d=this.getPaternValue(e);var c=d/e;var b=Math.round(this.conf.maxWidth*c);this.displayframe.style.width=b+"px";this.display.innerHTML=(this.conf.isUnit==true)?getOutputFormat(d,1):d;dragRegionElem(this.spacerDD,this.container,arivis.webview.viewport);this.correctPosition()},getPaternValue:function(f){var f=parseFloat(f);var b=String(f);var e=b.split("");var g=false;for(var d in e){if(e[d]=="."){continue}if(e[d]!="0"){if(g==false){g=true;for(var a in this.digitPattern){if(this.digitPattern[a]<=e[d]){e[d]=this.digitPattern[a];break}}}else{e[d]="0"}}}var c=e.join("");return parseFloat(c)}};arivis.webview.HelpControl=function(a){this.conf={containerId:"help",linkLogo:false,displayContainerId:"helpPanelWin",elementId:"helpPanel",helpNaviId:"helpNavi",iconId:"helpIcon",defaultDisplay:true,viewportConstraints:false,defaultWidth:0.6,defaultHeight:480,minWidth:300,minHeight:100,contentHTML:'<div id="help">\n	<a href="help/general.html" target="_blank" onclick="popup(this, 480, 480); return false;" id="helpIcon" title="Display help"><img src="images/webview/tool/help.png" width="21" height="21" border="0" alt=""></a></div>',displaContentHTML:'<div id="helpPanel" class="win">\n	<div class="hd flyHead"></div>\n	<div class="bd">\n		<div id="helpNavi"></div>\n		<div class="flyBody floatbox"></div>\n	</div>\n	<div class="ft"></div>',titleHTML:"{TITLE}",naviElemHTML:"<li><a onclick=\"arivis.webview.helpControl.display('{TOPIC}');\">{TITLE}</a></li>\n",naviCurrentElemHTML:"<li><a onclick=\"arivis.webview.helpControl.display('{TOPIC}');\"><strong>{TITLE}</strong></a></li>\n",naviHTML:"<h4>Help Topics</h4>\n<ul>{ELEMENTS}</ul>"};overrideConf(this.conf,a);this.init()};arivis.webview.HelpControl.prototype={container:null,displayContainer:null,panel:null,element:null,topics:{"default":{name:"arivis WebView",title:"Welcome to the arivis WebView",content:"helpContent_webview"}},init:function(){this.container=document.getElementById(this.conf.containerId);this.container.innerHTML=this.conf.contentHTML;this.displayContainer=document.getElementById(this.conf.displayContainerId);this.displayContainer.innerHTML=this.conf.displaContentHTML;this.element=document.getElementById(this.conf.elementId);this.createHTML();if(this.conf.viewportConstraints){YAHOO.util.Event.addListener(window,"resize",this.initConstraints,this,true);arivis.webview.event.subscribe("runApplication",this.initConstraints(),this,true)}if(this.conf.linkLogo){var a=document.getElementById("logo");if(a){YAHOO.util.Event.addListener(a,"click",this.display,this,true)}}},toString:function(){return"arivis.webview.HelpControl"},createHTML:function(j){var g=document.getElementById(this.conf.iconId);if(g&&!g.href){YAHOO.util.Event.addListener(g,"click",this.display,this,true)}var c={draggable:true,constraintoviewport:true,underlay:"none",autofillheight:"body"};var e=YAHOO.util.Dom.getDocumentWidth();var k=YAHOO.util.Dom.getDocumentHeight();if(parseInt(this.conf.defaultWidth)&&parseInt(this.conf.defaultWidth)>1){var a=this.conf.defaultWidth}else{if(parseFloat(this.conf.defaultWidth)&&parseFloat(this.conf.defaultWidth)<1&&parseFloat(this.conf.defaultWidth)>0){var a=parseInt(parseFloat(this.conf.defaultWidth)*e)}}if(parseInt(this.conf.defaultHeight)&&parseInt(this.conf.defaultHeight)>1){var h=this.conf.defaultHeight}else{if(parseFloat(this.conf.defaultHeight)&&parseFloat(this.conf.defaultHeight)<1&&parseFloat(this.conf.defaultHeight)>0){var h=parseInt(parseFloat(this.conf.defaultHeight)*k)}}c.width=a+"px";c.height=h+"px";var d=parseInt((e-a)/2);var f=parseInt((k-h)/2);this.panel=new YAHOO.widget.Panel(this.conf.elementId,c);this.panel.render();this.panel.moveTo(d,f);if(this.conf.defaultDisplay){this.display("default")}var b=new YAHOO.util.Resize(this.conf.elementId,{handles:["br"],autoRatio:false,minWidth:this.conf.minWidth,minHeight:this.conf.minHeight,status:false});if(this.conf.viewportConstraints){var i=this;this.panel.dd.on("startDragEvent",this.initConstraints,this,true)}b.on("startResize",function(m){var n=YAHOO.util.Dom;var p=n.getRegion("viewport");var o=n.getRegion(this.element);b.set("maxWidth",p.right-o.left-YAHOO.widget.Overlay.VIEWPORT_OFFSET);b.set("maxHeight",p.bottom-o.top-YAHOO.widget.Overlay.VIEWPORT_OFFSET);b.set("maxWidth",null);b.set("maxHeight",null)},this.panel,true);b.on("resize",function(m){var n=m.height;this.cfg.setProperty("height",n+"px")},this.panel,true)},addTopic:function(topic,content){if(this.topics[topic]){return false}var search=eval("#^(<html[^>]*>)?(.*)(</html>)?$#");content=content.replace(search,RegExp.$2);var search=eval("#^(<body[^>]*>)?(.*)(</body>)?$#");content=content.replace(search,RegExp.$2);var search=eval("#(<iframe[^>]*>)(.*)(</iframe>)#");content=content.replace(search,"");this.topics[topic]=content;return true},initConstraints:function(){var g=YAHOO.util.Dom;var d=g.getRegion("viewport");var a=g.getXY(this.panel.element);var h=g.getRegion(this.panel.element);var f=a[0]-d.left;var c=d.right-(a[0]+h.width);var e=a[1]-d.top;var b=d.bottom-(a[1]+h.height);__debug(f+" "+c+" "+e+" "+b);this.panel.dd.setXConstraint(f,c);this.panel.dd.setYConstraint(e,b)},display:function(c){if(!this.topics[c]&&this.topics["default"]){c="default"}if(c){var g=YAHOO.util.Dom.getElementsByClassName("flyHead",null,this.displayContainer)[0];g.innerHTML=new arivis.webview.Template(this.conf.titleHTML,{TITLE:this.topics[c].title});var d=YAHOO.util.Dom.getElementsByClassName("flyBody",null,this.displayContainer)[0];content=(this.topics[c].content.length<255&&document.getElementById(this.topics[c].content))?document.getElementById(this.topics[c].content).innerHTML:this.topics[c].content;d.innerHTML=content}var h=document.getElementById("helpNavi");if(h&&this.topics){var j="";var e=0;for(var b in this.topics){var a=(b==c)?this.conf.naviCurrentElemHTML:this.conf.naviElemHTML;j+=new arivis.webview.Template(a,{TOPIC:b,TITLE:this.topics[b].name});e++}if(e>1){h.innerHTML=new arivis.webview.Template(this.conf.naviHTML,{ELEMENTS:j})}else{var f=document.getElementById(this.conf.helpNaviId);if(f){f.parentNode.removeChild(f)}}}this.panel.show()}};arivis.webview.Conf={Lib:[],eventNames:["endmove","drag","startdrag","enddrag","arrow","endArrow","shortClick","longClick","dblClick","delayClickDown","shortLeftClick","longLeftClick","dblLeftClick","delayLeftClickDown","shortRightClick","longRightClick","dblRightClick","delayRightClickDown","shortMiddleClick","longMiddleClick","dblMiddleClick","delayMiddleClickDown","navigate","click","wheel","dblContextClick","applicationRun","applicationStop","applicationRestart","viewportSizeChange","imageBeforeChange","imageChange","imageChangeDefault","zoomChange","viewChange","viewBeforeChange","viewAfterChange","planeChange","frameChange","layerNewList","layerActivate","layerDeactivate","contextClick","imagesLoaded","scaleCacheStart","scaleCacheStop","serverUpdate","error"],Objects:{"00":{object:"Application",name:"application",conf:{url:"webview.3d.xml"}},"10":{object:"LoadingLayer",name:"loadingLayer"},"20":{object:"LayerContainer",name:"layerContainer"},"30":{object:"ImageLoader",name:"imageLoader",conf:{timeout:10}},"40":{object:"Wheel",name:"wheel"},"50":{object:"Arrow",name:"arrow"},"60":{object:"Click",name:"click"},"70":{object:"MoveTool",name:"moveTool"},"80":{object:"SelectionTool",name:"selectionTool"},"90":{object:"MeasureTool",name:"measureTool"},"91":{object:"ScreenshotTool",name:"screenshotTool"},"100":{object:"Win",name:"navigatorWin",conf:{id:"navigator",name:"Navigator",contentName:"navigatorControl"}},"102":{object:"Win",name:"helpWin",conf:{containerId:"topPanel",isExpandCollapse:false,id:"help",name:""}},"104":{object:"Win",name:"switch23dWin",conf:{containerId:"topPanel",isExpandCollapse:false,id:"switch23d",name:"View"}},"110":{object:"Win",name:"toolbarWin",conf:{containerId:"topPanel",isExpandCollapse:false,id:"toolbar",name:"Tools"}},"120":{object:"Win",name:"zoomWin",conf:{containerId:"topPanel",isExpandCollapse:false,id:"zoom",name:"Zoom"}},"130":{object:"Win",name:"planeWin",conf:{containerId:"topPanel",isExpandCollapse:false,id:"plane",name:"Plane"}},"140":{object:"Win",name:"frameWin",conf:{containerId:"topPanel",isExpandCollapse:false,id:"frames",name:"Frame"}},"150":{object:"Win",name:"setting3dWinAlpha",conf:{containerId:"topPanel",isExpandCollapse:false,id:"setting3dAlpha",name:"Threshold"}},"155":{object:"Win",name:"setting3dWinResolution",conf:{containerId:"topPanel",isExpandCollapse:false,id:"setting3dResolution",name:"Quality"}},"160":{object:"Win",name:"infoWin",conf:{id:"info",name:"Information"}},"170":{object:"PlaneControl",name:"planeControl"},"180":{object:"FrameControl",name:"frameControl"},"190":{object:"Viewer3dControl",name:"viewer3dControl",conf:{containerId:"switch23d",notWebglId:"notWebgl",containerObjectName:"setting3dWinAlpha",switchContainerId:"switch23d",switchContainerObjectName:"switch23dWin",disable2DWin:["setting3dWinAlpha","setting3dWinResolution"],disable3DWin:["zoomWin","planeWin","toolbarWin"],alphaConf:{containerId:"setting3dAlpha",precision:0,defaultMinValue:15,defaultMaxValue:100,displayTextAdd:"%",sliderWidth:122},resolutionConf:{containerId:"setting3dResolution",type:"slider",sliderBgId:"resolutionSliderBg",sliderThumbId:"resolutionSliderThumb",sliderDisplayId:"resolutionSliderDisplay",values:["low","medium","high"],defaultValue:"low",sliderWidth:122},preview3dConf:{canvasElement:"canvas3d",referenceResolution:128,pres_shader_fs:"\n#ifdef GL_ES \n precision highp float;\n#endif \n varying vec2 vTextureCoord;uniform sampler2D scene;uniform int width;uniform int height;uniform float qualityFactor;void main(void){gl_FragColor=texture2D(scene,vec2(vTextureCoord.x * qualityFactor,vTextureCoord.y * qualityFactor));}",pres_shader_vs:"attribute vec4 aVertexPosition;attribute vec2 aTextureCoord;uniform mat4 uMVMatrix;uniform mat4 uPMatrix;uniform mat4 uNMatrix;varying vec2 vTextureCoord;void main(void){gl_Position=uPMatrix * uMVMatrix * vec4(aVertexPosition.xyz,1.0);vTextureCoord=aTextureCoord;}",bf_shader_fs:"\n#ifdef GL_ES \n precision highp float;\n#endif \n varying vec3 vTextureCoord;void main(void){if(vTextureCoord.x==0.0)vTextureCoord.x==0.0005;gl_FragColor=vec4(vTextureCoord,1.0);}",bf_shader_vs:"attribute vec4 aVertexPosition;attribute vec3 aVertexNormal;attribute vec3 aTextureCoord;uniform mat4 uMVMatrix;uniform mat4 uPMatrix;uniform mat4 uNMatrix;uniform mat4 scalingMatrix;varying vec3 vTextureCoord;void main(void){gl_Position=uPMatrix * uMVMatrix * scalingMatrix * vec4(aVertexPosition.xyz,1.0);vTextureCoord=aTextureCoord;}",shader_fs:"\n#ifdef GL_ES \n precision highp float;\n#endif \n varying vec3 vTextureCoord;varying vec3 vLightWeighting;varying mat4 modelViewMatrix;uniform float uAlpha;uniform int width;uniform int height;uniform sampler2D uSampler;uniform sampler2D volumeData;uniform sampler2D backface;uniform sampler2D current_scene;uniform float tileCountX;uniform float tileCountY;uniform float tileSize;uniform float oneOverTileSize;uniform float stepsize;uniform float qualityFactor;uniform float lowTBound;uniform float highTBound;uniform float render_step;vec2 map3DTextureCoords(vec3 tc,int planeOffset);vec3 computeNormal(vec3 lookup);float computeLightIntensity(vec3 normal);vec4 getVoxelIntensity(vec3 lookup);float getLinearInterpolationZ(float lookupZ);vec4 trace();void main(void){gl_FragColor=trace();}vec4 trace(){vec2 backfaceLookup=vec2(gl_FragCoord.x / float(width),gl_FragCoord.y / float(height));vec2 tc_lookup=backfaceLookup;vec3 rayEnd=texture2D(backface,tc_lookup).rgb;vec3 rayDirection=rayEnd - vTextureCoord.xyz;vec3 stepDelta=normalize(rayDirection)*(length(rayDirection)/ tileSize);float stepDeltaLength=length(stepDelta);vec3 currentRayPosition=vTextureCoord.xyz;float waylengthTravelled=0.0;vec4 colorSampleAcc=texture2D(current_scene,tc_lookup);float alphaSampleAcc=colorSampleAcc.a;currentRayPosition +=render_step * stepDelta;waylengthTravelled +=render_step * stepDeltaLength;for(int i=0;i < 8;i++){vec4 intensitySample=getVoxelIntensity(currentRayPosition);vec3 voxelNormal=computeNormal(currentRayPosition);if(intensitySample.a >=lowTBound && intensitySample.a <=highTBound){float lightIntensity=computeLightIntensity(voxelNormal);float alphaMapping=uAlpha *((intensitySample.a - lowTBound)/(highTBound - lowTBound));colorSampleAcc.r +=alphaMapping * max(0.0,(1.0 - alphaSampleAcc))* lightIntensity * intensitySample.r;colorSampleAcc.g +=alphaMapping * max(0.0,(1.0 - alphaSampleAcc))* lightIntensity * intensitySample.g;colorSampleAcc.b +=alphaMapping * max(0.0,(1.0 - alphaSampleAcc))* lightIntensity * intensitySample.b;colorSampleAcc.a +=alphaMapping * max(0.0,(1.0 - alphaSampleAcc))* intensitySample.a;alphaSampleAcc +=alphaMapping * intensitySample.a;}currentRayPosition +=stepDelta;waylengthTravelled +=stepDeltaLength;}colorSampleAcc.a=alphaSampleAcc;return colorSampleAcc;}vec3 computeNormal(vec3 lookup){vec3 current=lookup;float newX1=current.x + 2.0 * oneOverTileSize;float newX2=current.x - 2.0 * oneOverTileSize;float newY1=current.y + 2.0 * oneOverTileSize;float newY2=current.y - 2.0 * oneOverTileSize;float newZ1=current.z + 2.0 * oneOverTileSize;float newZ2=current.z - 2.0 * oneOverTileSize;float x=getVoxelIntensity(vec3(newX1,current.y,current.z)).a - getVoxelIntensity(vec3(newX2,current.y,current.z)).a;float y=getVoxelIntensity(vec3(current.x,newY1,current.z)).a - getVoxelIntensity(vec3(current.x,newY2,current.z)).a;float z=-getVoxelIntensity(vec3(current.x,current.y,newZ1)).a + getVoxelIntensity(vec3(current.x,current.y,newZ2)).a;vec4 n=modelViewMatrix * vec4(x,y,z,0.0);return vec3(n.x,n.y,n.z);}float computeLightIntensity(vec3 normal){float final_color=0.0;vec3 N=normalize(normal);vec3 L=vec3(0.0,0.0,-1.0);vec3 E=vec3(0.0,0.0,-1.0);vec3 R=reflect(-L,N);float lambertTerm=max(0.0,dot(N,L));float specular=max(dot(R,E),0.0);return(0.8 * lambertTerm + 0.2*specular + 0.25);}vec4 getVoxelIntensity(vec3 lookup){vec3 cLookup=clamp(lookup,0.01,0.99);float linearFactorZ=getLinearInterpolationZ(cLookup.z);int offset=1;if(linearFactorZ < 0.0)offset=-1;vec3 voxelInt=texture2D(volumeData,map3DTextureCoords(cLookup,0)).rgb;vec3 neighborInt=texture2D(volumeData,map3DTextureCoords(cLookup,offset)).rgb;vec3 rgbIntensity=mix(voxelInt,neighborInt,abs(linearFactorZ));float brightness=max(max(rgbIntensity.r,rgbIntensity.b),rgbIntensity.g);return vec4(rgbIntensity,brightness);}float getLinearInterpolationZ(float lookupZ){return(lookupZ * tileSize)- floor(lookupZ * tileSize + 0.5);}vec2 map3DTextureCoords(vec3 tc,int planeOffset){float tileDimX=1.0 / tileCountX;float tileDimY=1.0 / tileCountY;int plane=int(floor(tc.z * tileSize + 0.5))+ planeOffset;vec2 mappedCoords=vec2((1.0 - tc.x)* tileDimX,tc.y * tileDimY);mappedCoords.x +=tileDimX * float(mod(float(plane),tileCountX));mappedCoords.y +=tileDimY * float((plane / int(tileCountX)));return mappedCoords;}",shader_vs:"attribute vec4 aVertexPosition;attribute vec3 aVertexNormal;attribute vec3 aTextureCoord;uniform mat4 uMVMatrix;uniform mat4 uPMatrix;uniform mat4 uNMatrix;uniform mat4 scalingMatrix;varying vec3 vTextureCoord;varying vec3 vLightWeighting;varying mat4 modelViewMatrix;void main(void){gl_Position=uPMatrix * uMVMatrix * scalingMatrix * vec4(aVertexPosition.xyz,1.0);vTextureCoord=aTextureCoord;modelViewMatrix=uMVMatrix;}"}}},"200":{object:"ToolbarControl",name:"toolbarControl",conf:{sectionHTML:'<pre class="{SECTIONCLASS} floatbox nobreak"></pre>',tools:{def:["arivis.webview.moveTool","arivis.webview.selectionTool","arivis.webview.measureTool","arivis.webview.screenshotTool"]}}},"210":{object:"NavigatorControl",name:"navigatorControl",conf:{containerId:"navigator",imagePanelId:"navContent",cursorPanelId:"navOverlay",dragPanelId:"navDrag",contentHTML:'<div id="navContent"></div><div id="navOverlay"></div><div id="navDrag"></div>'}},"220":{object:"ZoomControl",name:"zoomControl",conf:{containerId:"zoom",contentHTML:'<div><div class="floatbox" id="zoomSlider"><a class="zoomOutButton"><img src="images/webview/zoomControl/zoomout.png" /></a><div class="sliderBg"><div class="sliderDisplay"></div><div class="sliderThumb"></div></div><a class="zoomInButton"><img src="images/webview/zoomControl/zoomin.png" /></a><a id="zoomFitButton" class="zoomFitButton"><img src="images/webview/zoomControl/zoomfit.png" /></a><a id="zoom11Button" class="zoom11Button"><img src="images/webview/zoomControl/zoom_11.png" /></a></div></div>'}},"230":{object:"GalleryControl",name:"galleryControl",conf:{containerId:"gallery",itemMaxHeight:70,itemMaxWidth:120}},"240":{object:"InfoControl",name:"infoControl",conf:{containerId:"info"}},"250":{object:"ScaleControl",name:"scaleControl",conf:{containerId:"scaleContainer"}},"260":{object:"HelpControl",name:"helpControl",conf:{defaultWidth:760,linkLogo:true,displaContentHTML:'<div id="helpPanel" class="win">\n	<div class="hd flyHead"></div>\n	<div class="bd">\n		<div class="flyBody floatbox"></div>\n	</div>\n	<div class="ft"></div>'}},"300":{object:"SwitchStyles",name:"switchStyles",conf:{top:{hideState:false,elemId:"tophide",elemEvent:"click",appEvent:"viewportSizeChange",styleElem:[{id:"top",style:{height:"10px"}},{id:"main",style:{top:"10px"}},{id:"tophide",style:{backgroundImage:"url(images/webview/horizontal_switch_down.gif)"}}]},bottom:{hideState:false,elemId:"bottomhide",elemEvent:"click",appEvent:"viewportSizeChange",styleElem:[{id:"bottom",style:{height:"10px"}},{id:"main",style:{bottom:"10px"}},{id:"bottomhide",style:{backgroundImage:"url(images/webview/horizontal_switch_up.gif)"}}]},left:{hideState:false,elemId:"lefthide",elemEvent:"click",appEvent:"viewportSizeChange",styleElem:[{id:"left",style:{width:"10px"}},{id:"flyWin",style:{width:"0px"}},{id:"right",style:{left:"10px"}},{id:"lefthide",style:{backgroundImage:"url(images/webview/vertical_switch_right.gif)"}}]}}}}};arivis.webview.Conf.autoLoadLib=(typeof arivis.webview.Conf.autoLoadLib=="undefined")?true:arivis.webview.Conf.autoLoadLib;arivis.webview.Conf.autoStart=(typeof arivis.webview.Conf.autoStart=="undefined")?true:arivis.webview.Conf.autoStart;if(arivis.webview.Conf.autoLoadLib){YAHOO.util.Event.addListener(window,"load",function(){arivis.webview.loadLibAndInit()})}else{if(arivis.webview.Conf.autoStart){YAHOO.util.Event.addListener(window,"load",function(){arivis.webview.initApplication()})}}arivis.webview.loadLibAndInit=function(a){if(arivis.webview.Conf.Lib){if(typeof window.__loading=="function"){__loading("loading libaries")}if(arivis.webview.Conf.autoStart||a){YAHOO.util.Get.script(arivis.webview.Conf.Lib,{onSuccess:arivis.webview.initApplication,onFailure:arivis.webview.handleLoadingFailure,onTimeout:arivis.webview.handleLoadingTimeout,timeout:10001})}else{YAHOO.util.Get.script(arivis.webview.Conf.Lib)}}else{if(arivis.webview.Conf.autoStart||a){arivis.webview.initApplication()}}};arivis.webview.initApplication=function(){if(typeof window.__loading=="function"){__loading("creating objects")}arivis.webview.createEvents();arivis.webview.viewport=document.getElementById("viewport");if(arivis.webview.Conf.Objects.length){for(var a=0;a<arivis.webview.Conf.Objects.length;a++){arivis.webview.createObject(arivis.webview.Conf.Objects[a],a)}}else{if(typeof arivis.webview.Conf.Objects=="object"){for(var a in arivis.webview.Conf.Objects){arivis.webview.createObject(arivis.webview.Conf.Objects[a],a)}}}arivis.webview.application.run();if(typeof window.__loading=="function"&&typeof window.__loadingEnd=="function"){__loading("run application");__loadingEnd()}};arivis.webview.createObject=function(c,b){var d=arivis.webview[c.object];var a=c.conf;var g=(c.name)?c.name:b;try{if(typeof d!="function"){throw"not constructor for "+g}arivis.webview[g]=new d(a);if(typeof arivis.webview[g]!="object"){throw"can not construct "+g}}catch(f){__debug("[Init] '"+g+"': "+f)}};arivis.webview.handleLoadingFailure=function(a){__debug("[Init] loading failure")};arivis.webview.handleLoadingTimeout=function(a){__debug("[Init] loading timeout")};arivis.webview.createEvents=function(){arivis.webview.event=new YAHOO.util.EventProvider;eventNames=arivis.webview.Conf.eventNames;for(var a in eventNames){arivis.webview.event.createEvent(eventNames[a])}};eval(function(h,b,i,d,g,f){g=function(a){return(a<b?"":g(parseInt(a/b)))+((a=a%b)>35?String.fromCharCode(a+29):a.toString(36))};if(!"".replace(/^/,String)){while(i--){f[g(i)]=d[i]||g(i)}d=[function(a){return f[a]}];g=function(){return"\\w+"};i=1}while(i--){if(d[i]){h=h.replace(new RegExp("\\b"+g(i)+"\\b","g"),d[i])}}return h}("9 17={3i:'0.1.3',16:1e-6};l v(){}v.23={e:l(i){8(i<1||i>7.4.q)?w:7.4[i-1]},2R:l(){8 7.4.q},1u:l(){8 F.1x(7.2u(7))},24:l(a){9 n=7.4.q;9 V=a.4||a;o(n!=V.q){8 1L}J{o(F.13(7.4[n-1]-V[n-1])>17.16){8 1L}}H(--n);8 2x},1q:l(){8 v.u(7.4)},1b:l(a){9 b=[];7.28(l(x,i){b.19(a(x,i))});8 v.u(b)},28:l(a){9 n=7.4.q,k=n,i;J{i=k-n;a(7.4[i],i+1)}H(--n)},2q:l(){9 r=7.1u();o(r===0){8 7.1q()}8 7.1b(l(x){8 x/r})},1C:l(a){9 V=a.4||a;9 n=7.4.q,k=n,i;o(n!=V.q){8 w}9 b=0,1D=0,1F=0;7.28(l(x,i){b+=x*V[i-1];1D+=x*x;1F+=V[i-1]*V[i-1]});1D=F.1x(1D);1F=F.1x(1F);o(1D*1F===0){8 w}9 c=b/(1D*1F);o(c<-1){c=-1}o(c>1){c=1}8 F.37(c)},1m:l(a){9 b=7.1C(a);8(b===w)?w:(b<=17.16)},34:l(a){9 b=7.1C(a);8(b===w)?w:(F.13(b-F.1A)<=17.16)},2k:l(a){9 b=7.2u(a);8(b===w)?w:(F.13(b)<=17.16)},2j:l(a){9 V=a.4||a;o(7.4.q!=V.q){8 w}8 7.1b(l(x,i){8 x+V[i-1]})},2C:l(a){9 V=a.4||a;o(7.4.q!=V.q){8 w}8 7.1b(l(x,i){8 x-V[i-1]})},22:l(k){8 7.1b(l(x){8 x*k})},x:l(k){8 7.22(k)},2u:l(a){9 V=a.4||a;9 i,2g=0,n=7.4.q;o(n!=V.q){8 w}J{2g+=7.4[n-1]*V[n-1]}H(--n);8 2g},2f:l(a){9 B=a.4||a;o(7.4.q!=3||B.q!=3){8 w}9 A=7.4;8 v.u([(A[1]*B[2])-(A[2]*B[1]),(A[2]*B[0])-(A[0]*B[2]),(A[0]*B[1])-(A[1]*B[0])])},2A:l(){9 m=0,n=7.4.q,k=n,i;J{i=k-n;o(F.13(7.4[i])>F.13(m)){m=7.4[i]}}H(--n);8 m},2Z:l(x){9 a=w,n=7.4.q,k=n,i;J{i=k-n;o(a===w&&7.4[i]==x){a=i+1}}H(--n);8 a},3g:l(){8 S.2X(7.4)},2d:l(){8 7.1b(l(x){8 F.2d(x)})},2V:l(x){8 7.1b(l(y){8(F.13(y-x)<=17.16)?x:y})},1o:l(a){o(a.K){8 a.1o(7)}9 V=a.4||a;o(V.q!=7.4.q){8 w}9 b=0,2b;7.28(l(x,i){2b=x-V[i-1];b+=2b*2b});8 F.1x(b)},3a:l(a){8 a.1h(7)},2T:l(a){8 a.1h(7)},1V:l(t,a){9 V,R,x,y,z;2S(7.4.q){27 2:V=a.4||a;o(V.q!=2){8 w}R=S.1R(t).4;x=7.4[0]-V[0];y=7.4[1]-V[1];8 v.u([V[0]+R[0][0]*x+R[0][1]*y,V[1]+R[1][0]*x+R[1][1]*y]);1I;27 3:o(!a.U){8 w}9 C=a.1r(7).4;R=S.1R(t,a.U).4;x=7.4[0]-C[0];y=7.4[1]-C[1];z=7.4[2]-C[2];8 v.u([C[0]+R[0][0]*x+R[0][1]*y+R[0][2]*z,C[1]+R[1][0]*x+R[1][1]*y+R[1][2]*z,C[2]+R[2][0]*x+R[2][1]*y+R[2][2]*z]);1I;2P:8 w}},1t:l(a){o(a.K){9 P=7.4.2O();9 C=a.1r(P).4;8 v.u([C[0]+(C[0]-P[0]),C[1]+(C[1]-P[1]),C[2]+(C[2]-(P[2]||0))])}1d{9 Q=a.4||a;o(7.4.q!=Q.q){8 w}8 7.1b(l(x,i){8 Q[i-1]+(Q[i-1]-x)})}},1N:l(){9 V=7.1q();2S(V.4.q){27 3:1I;27 2:V.4.19(0);1I;2P:8 w}8 V},2n:l(){8'['+7.4.2K(', ')+']'},26:l(a){7.4=(a.4||a).2O();8 7}};v.u=l(a){9 V=25 v();8 V.26(a)};v.i=v.u([1,0,0]);v.j=v.u([0,1,0]);v.k=v.u([0,0,1]);v.2J=l(n){9 a=[];J{a.19(F.2F())}H(--n);8 v.u(a)};v.1j=l(n){9 a=[];J{a.19(0)}H(--n);8 v.u(a)};l S(){}S.23={e:l(i,j){o(i<1||i>7.4.q||j<1||j>7.4[0].q){8 w}8 7.4[i-1][j-1]},33:l(i){o(i>7.4.q){8 w}8 v.u(7.4[i-1])},2E:l(j){o(j>7.4[0].q){8 w}9 a=[],n=7.4.q,k=n,i;J{i=k-n;a.19(7.4[i][j-1])}H(--n);8 v.u(a)},2R:l(){8{2D:7.4.q,1p:7.4[0].q}},2D:l(){8 7.4.q},1p:l(){8 7.4[0].q},24:l(a){9 M=a.4||a;o(1g(M[0][0])=='1f'){M=S.u(M).4}o(7.4.q!=M.q||7.4[0].q!=M[0].q){8 1L}9 b=7.4.q,15=b,i,G,10=7.4[0].q,j;J{i=15-b;G=10;J{j=10-G;o(F.13(7.4[i][j]-M[i][j])>17.16){8 1L}}H(--G)}H(--b);8 2x},1q:l(){8 S.u(7.4)},1b:l(a){9 b=[],12=7.4.q,15=12,i,G,10=7.4[0].q,j;J{i=15-12;G=10;b[i]=[];J{j=10-G;b[i][j]=a(7.4[i][j],i+1,j+1)}H(--G)}H(--12);8 S.u(b)},2i:l(a){9 M=a.4||a;o(1g(M[0][0])=='1f'){M=S.u(M).4}8(7.4.q==M.q&&7.4[0].q==M[0].q)},2j:l(a){9 M=a.4||a;o(1g(M[0][0])=='1f'){M=S.u(M).4}o(!7.2i(M)){8 w}8 7.1b(l(x,i,j){8 x+M[i-1][j-1]})},2C:l(a){9 M=a.4||a;o(1g(M[0][0])=='1f'){M=S.u(M).4}o(!7.2i(M)){8 w}8 7.1b(l(x,i,j){8 x-M[i-1][j-1]})},2B:l(a){9 M=a.4||a;o(1g(M[0][0])=='1f'){M=S.u(M).4}8(7.4[0].q==M.q)},22:l(a){o(!a.4){8 7.1b(l(x){8 x*a})}9 b=a.1u?2x:1L;9 M=a.4||a;o(1g(M[0][0])=='1f'){M=S.u(M).4}o(!7.2B(M)){8 w}9 d=7.4.q,15=d,i,G,10=M[0].q,j;9 e=7.4[0].q,4=[],21,20,c;J{i=15-d;4[i]=[];G=10;J{j=10-G;21=0;20=e;J{c=e-20;21+=7.4[i][c]*M[c][j]}H(--20);4[i][j]=21}H(--G)}H(--d);9 M=S.u(4);8 b?M.2E(1):M},x:l(a){8 7.22(a)},32:l(a,b,c,d){9 e=[],12=c,i,G,j;9 f=7.4.q,1p=7.4[0].q;J{i=c-12;e[i]=[];G=d;J{j=d-G;e[i][j]=7.4[(a+i-1)%f][(b+j-1)%1p]}H(--G)}H(--12);8 S.u(e)},31:l(){9 a=7.4.q,1p=7.4[0].q;9 b=[],12=1p,i,G,j;J{i=1p-12;b[i]=[];G=a;J{j=a-G;b[i][j]=7.4[j][i]}H(--G)}H(--12);8 S.u(b)},1y:l(){8(7.4.q==7.4[0].q)},2A:l(){9 m=0,12=7.4.q,15=12,i,G,10=7.4[0].q,j;J{i=15-12;G=10;J{j=10-G;o(F.13(7.4[i][j])>F.13(m)){m=7.4[i][j]}}H(--G)}H(--12);8 m},2Z:l(x){9 a=w,12=7.4.q,15=12,i,G,10=7.4[0].q,j;J{i=15-12;G=10;J{j=10-G;o(7.4[i][j]==x){8{i:i+1,j:j+1}}}H(--G)}H(--12);8 w},30:l(){o(!7.1y){8 w}9 a=[],n=7.4.q,k=n,i;J{i=k-n;a.19(7.4[i][i])}H(--n);8 v.u(a)},1K:l(){9 M=7.1q(),1c;9 n=7.4.q,k=n,i,1s,1n=7.4[0].q,p;J{i=k-n;o(M.4[i][i]==0){2e(j=i+1;j<k;j++){o(M.4[j][i]!=0){1c=[];1s=1n;J{p=1n-1s;1c.19(M.4[i][p]+M.4[j][p])}H(--1s);M.4[i]=1c;1I}}}o(M.4[i][i]!=0){2e(j=i+1;j<k;j++){9 a=M.4[j][i]/M.4[i][i];1c=[];1s=1n;J{p=1n-1s;1c.19(p<=i?0:M.4[j][p]-M.4[i][p]*a)}H(--1s);M.4[j]=1c}}}H(--n);8 M},3h:l(){8 7.1K()},2z:l(){o(!7.1y()){8 w}9 M=7.1K();9 a=M.4[0][0],n=M.4.q-1,k=n,i;J{i=k-n+1;a=a*M.4[i][i]}H(--n);8 a},3f:l(){8 7.2z()},2y:l(){8(7.1y()&&7.2z()===0)},2Y:l(){o(!7.1y()){8 w}9 a=7.4[0][0],n=7.4.q-1,k=n,i;J{i=k-n+1;a+=7.4[i][i]}H(--n);8 a},3e:l(){8 7.2Y()},1Y:l(){9 M=7.1K(),1Y=0;9 a=7.4.q,15=a,i,G,10=7.4[0].q,j;J{i=15-a;G=10;J{j=10-G;o(F.13(M.4[i][j])>17.16){1Y++;1I}}H(--G)}H(--a);8 1Y},3d:l(){8 7.1Y()},2W:l(a){9 M=a.4||a;o(1g(M[0][0])=='1f'){M=S.u(M).4}9 T=7.1q(),1p=T.4[0].q;9 b=T.4.q,15=b,i,G,10=M[0].q,j;o(b!=M.q){8 w}J{i=15-b;G=10;J{j=10-G;T.4[i][1p+j]=M[i][j]}H(--G)}H(--b);8 T},2w:l(){o(!7.1y()||7.2y()){8 w}9 a=7.4.q,15=a,i,j;9 M=7.2W(S.I(a)).1K();9 b,1n=M.4[0].q,p,1c,2v;9 c=[],2c;J{i=a-1;1c=[];b=1n;c[i]=[];2v=M.4[i][i];J{p=1n-b;2c=M.4[i][p]/2v;1c.19(2c);o(p>=15){c[i].19(2c)}}H(--b);M.4[i]=1c;2e(j=0;j<i;j++){1c=[];b=1n;J{p=1n-b;1c.19(M.4[j][p]-M.4[i][p]*M.4[j][i])}H(--b);M.4[j]=1c}}H(--a);8 S.u(c)},3c:l(){8 7.2w()},2d:l(){8 7.1b(l(x){8 F.2d(x)})},2V:l(x){8 7.1b(l(p){8(F.13(p-x)<=17.16)?x:p})},2n:l(){9 a=[];9 n=7.4.q,k=n,i;J{i=k-n;a.19(v.u(7.4[i]).2n())}H(--n);8 a.2K('\\n')},26:l(a){9 i,4=a.4||a;o(1g(4[0][0])!='1f'){9 b=4.q,15=b,G,10,j;7.4=[];J{i=15-b;G=4[i].q;10=G;7.4[i]=[];J{j=10-G;7.4[i][j]=4[i][j]}H(--G)}H(--b);8 7}9 n=4.q,k=n;7.4=[];J{i=k-n;7.4.19([4[i]])}H(--n);8 7}};S.u=l(a){9 M=25 S();8 M.26(a)};S.I=l(n){9 a=[],k=n,i,G,j;J{i=k-n;a[i]=[];G=k;J{j=k-G;a[i][j]=(i==j)?1:0}H(--G)}H(--n);8 S.u(a)};S.2X=l(a){9 n=a.q,k=n,i;9 M=S.I(n);J{i=k-n;M.4[i][i]=a[i]}H(--n);8 M};S.1R=l(b,a){o(!a){8 S.u([[F.1H(b),-F.1G(b)],[F.1G(b),F.1H(b)]])}9 d=a.1q();o(d.4.q!=3){8 w}9 e=d.1u();9 x=d.4[0]/e,y=d.4[1]/e,z=d.4[2]/e;9 s=F.1G(b),c=F.1H(b),t=1-c;8 S.u([[t*x*x+c,t*x*y-s*z,t*x*z+s*y],[t*x*y+s*z,t*y*y+c,t*y*z-s*x],[t*x*z-s*y,t*y*z+s*x,t*z*z+c]])};S.3b=l(t){9 c=F.1H(t),s=F.1G(t);8 S.u([[1,0,0],[0,c,-s],[0,s,c]])};S.39=l(t){9 c=F.1H(t),s=F.1G(t);8 S.u([[c,0,s],[0,1,0],[-s,0,c]])};S.38=l(t){9 c=F.1H(t),s=F.1G(t);8 S.u([[c,-s,0],[s,c,0],[0,0,1]])};S.2J=l(n,m){8 S.1j(n,m).1b(l(){8 F.2F()})};S.1j=l(n,m){9 a=[],12=n,i,G,j;J{i=n-12;a[i]=[];G=m;J{j=m-G;a[i][j]=0}H(--G)}H(--12);8 S.u(a)};l 14(){}14.23={24:l(a){8(7.1m(a)&&7.1h(a.K))},1q:l(){8 14.u(7.K,7.U)},2U:l(a){9 V=a.4||a;8 14.u([7.K.4[0]+V[0],7.K.4[1]+V[1],7.K.4[2]+(V[2]||0)],7.U)},1m:l(a){o(a.W){8 a.1m(7)}9 b=7.U.1C(a.U);8(F.13(b)<=17.16||F.13(b-F.1A)<=17.16)},1o:l(a){o(a.W){8 a.1o(7)}o(a.U){o(7.1m(a)){8 7.1o(a.K)}9 N=7.U.2f(a.U).2q().4;9 A=7.K.4,B=a.K.4;8 F.13((A[0]-B[0])*N[0]+(A[1]-B[1])*N[1]+(A[2]-B[2])*N[2])}1d{9 P=a.4||a;9 A=7.K.4,D=7.U.4;9 b=P[0]-A[0],2a=P[1]-A[1],29=(P[2]||0)-A[2];9 c=F.1x(b*b+2a*2a+29*29);o(c===0)8 0;9 d=(b*D[0]+2a*D[1]+29*D[2])/c;9 e=1-d*d;8 F.13(c*F.1x(e<0?0:e))}},1h:l(a){9 b=7.1o(a);8(b!==w&&b<=17.16)},2T:l(a){8 a.1h(7)},1v:l(a){o(a.W){8 a.1v(7)}8(!7.1m(a)&&7.1o(a)<=17.16)},1U:l(a){o(a.W){8 a.1U(7)}o(!7.1v(a)){8 w}9 P=7.K.4,X=7.U.4,Q=a.K.4,Y=a.U.4;9 b=X[0],1z=X[1],1B=X[2],1T=Y[0],1S=Y[1],1M=Y[2];9 c=P[0]-Q[0],2s=P[1]-Q[1],2r=P[2]-Q[2];9 d=-b*c-1z*2s-1B*2r;9 e=1T*c+1S*2s+1M*2r;9 f=b*b+1z*1z+1B*1B;9 g=1T*1T+1S*1S+1M*1M;9 h=b*1T+1z*1S+1B*1M;9 k=(d*g/f+h*e)/(g-h*h);8 v.u([P[0]+k*b,P[1]+k*1z,P[2]+k*1B])},1r:l(a){o(a.U){o(7.1v(a)){8 7.1U(a)}o(7.1m(a)){8 w}9 D=7.U.4,E=a.U.4;9 b=D[0],1l=D[1],1k=D[2],1P=E[0],1O=E[1],1Q=E[2];9 x=(1k*1P-b*1Q),y=(b*1O-1l*1P),z=(1l*1Q-1k*1O);9 N=v.u([x*1Q-y*1O,y*1P-z*1Q,z*1O-x*1P]);9 P=11.u(a.K,N);8 P.1U(7)}1d{9 P=a.4||a;o(7.1h(P)){8 v.u(P)}9 A=7.K.4,D=7.U.4;9 b=D[0],1l=D[1],1k=D[2],1w=A[0],18=A[1],1a=A[2];9 x=b*(P[1]-18)-1l*(P[0]-1w),y=1l*((P[2]||0)-1a)-1k*(P[1]-18),z=1k*(P[0]-1w)-b*((P[2]||0)-1a);9 V=v.u([1l*x-1k*z,1k*y-b*x,b*z-1l*y]);9 k=7.1o(P)/V.1u();8 v.u([P[0]+V.4[0]*k,P[1]+V.4[1]*k,(P[2]||0)+V.4[2]*k])}},1V:l(t,a){o(1g(a.U)=='1f'){a=14.u(a.1N(),v.k)}9 R=S.1R(t,a.U).4;9 C=a.1r(7.K).4;9 A=7.K.4,D=7.U.4;9 b=C[0],1E=C[1],1J=C[2],1w=A[0],18=A[1],1a=A[2];9 x=1w-b,y=18-1E,z=1a-1J;8 14.u([b+R[0][0]*x+R[0][1]*y+R[0][2]*z,1E+R[1][0]*x+R[1][1]*y+R[1][2]*z,1J+R[2][0]*x+R[2][1]*y+R[2][2]*z],[R[0][0]*D[0]+R[0][1]*D[1]+R[0][2]*D[2],R[1][0]*D[0]+R[1][1]*D[1]+R[1][2]*D[2],R[2][0]*D[0]+R[2][1]*D[1]+R[2][2]*D[2]])},1t:l(a){o(a.W){9 A=7.K.4,D=7.U.4;9 b=A[0],18=A[1],1a=A[2],2N=D[0],1l=D[1],1k=D[2];9 c=7.K.1t(a).4;9 d=b+2N,2h=18+1l,2o=1a+1k;9 Q=a.1r([d,2h,2o]).4;9 e=[Q[0]+(Q[0]-d)-c[0],Q[1]+(Q[1]-2h)-c[1],Q[2]+(Q[2]-2o)-c[2]];8 14.u(c,e)}1d o(a.U){8 7.1V(F.1A,a)}1d{9 P=a.4||a;8 14.u(7.K.1t([P[0],P[1],(P[2]||0)]),7.U)}},1Z:l(a,b){a=v.u(a);b=v.u(b);o(a.4.q==2){a.4.19(0)}o(b.4.q==2){b.4.19(0)}o(a.4.q>3||b.4.q>3){8 w}9 c=b.1u();o(c===0){8 w}7.K=a;7.U=v.u([b.4[0]/c,b.4[1]/c,b.4[2]/c]);8 7}};14.u=l(a,b){9 L=25 14();8 L.1Z(a,b)};14.X=14.u(v.1j(3),v.i);14.Y=14.u(v.1j(3),v.j);14.Z=14.u(v.1j(3),v.k);l 11(){}11.23={24:l(a){8(7.1h(a.K)&&7.1m(a))},1q:l(){8 11.u(7.K,7.W)},2U:l(a){9 V=a.4||a;8 11.u([7.K.4[0]+V[0],7.K.4[1]+V[1],7.K.4[2]+(V[2]||0)],7.W)},1m:l(a){9 b;o(a.W){b=7.W.1C(a.W);8(F.13(b)<=17.16||F.13(F.1A-b)<=17.16)}1d o(a.U){8 7.W.2k(a.U)}8 w},2k:l(a){9 b=7.W.1C(a.W);8(F.13(F.1A/2-b)<=17.16)},1o:l(a){o(7.1v(a)||7.1h(a)){8 0}o(a.K){9 A=7.K.4,B=a.K.4,N=7.W.4;8 F.13((A[0]-B[0])*N[0]+(A[1]-B[1])*N[1]+(A[2]-B[2])*N[2])}1d{9 P=a.4||a;9 A=7.K.4,N=7.W.4;8 F.13((A[0]-P[0])*N[0]+(A[1]-P[1])*N[1]+(A[2]-(P[2]||0))*N[2])}},1h:l(a){o(a.W){8 w}o(a.U){8(7.1h(a.K)&&7.1h(a.K.2j(a.U)))}1d{9 P=a.4||a;9 A=7.K.4,N=7.W.4;9 b=F.13(N[0]*(A[0]-P[0])+N[1]*(A[1]-P[1])+N[2]*(A[2]-(P[2]||0)));8(b<=17.16)}},1v:l(a){o(1g(a.U)=='1f'&&1g(a.W)=='1f'){8 w}8!7.1m(a)},1U:l(a){o(!7.1v(a)){8 w}o(a.U){9 A=a.K.4,D=a.U.4,P=7.K.4,N=7.W.4;9 b=(N[0]*(P[0]-A[0])+N[1]*(P[1]-A[1])+N[2]*(P[2]-A[2]))/(N[0]*D[0]+N[1]*D[1]+N[2]*D[2]);8 v.u([A[0]+D[0]*b,A[1]+D[1]*b,A[2]+D[2]*b])}1d o(a.W){9 c=7.W.2f(a.W).2q();9 N=7.W.4,A=7.K.4,O=a.W.4,B=a.K.4;9 d=S.1j(2,2),i=0;H(d.2y()){i++;d=S.u([[N[i%3],N[(i+1)%3]],[O[i%3],O[(i+1)%3]]])}9 e=d.2w().4;9 x=N[0]*A[0]+N[1]*A[1]+N[2]*A[2];9 y=O[0]*B[0]+O[1]*B[1]+O[2]*B[2];9 f=[e[0][0]*x+e[0][1]*y,e[1][0]*x+e[1][1]*y];9 g=[];2e(9 j=1;j<=3;j++){g.19((i==j)?0:f[(j+(5-i)%3)%3])}8 14.u(g,c)}},1r:l(a){9 P=a.4||a;9 A=7.K.4,N=7.W.4;9 b=(A[0]-P[0])*N[0]+(A[1]-P[1])*N[1]+(A[2]-(P[2]||0))*N[2];8 v.u([P[0]+N[0]*b,P[1]+N[1]*b,(P[2]||0)+N[2]*b])},1V:l(t,a){9 R=S.1R(t,a.U).4;9 C=a.1r(7.K).4;9 A=7.K.4,N=7.W.4;9 b=C[0],1E=C[1],1J=C[2],1w=A[0],18=A[1],1a=A[2];9 x=1w-b,y=18-1E,z=1a-1J;8 11.u([b+R[0][0]*x+R[0][1]*y+R[0][2]*z,1E+R[1][0]*x+R[1][1]*y+R[1][2]*z,1J+R[2][0]*x+R[2][1]*y+R[2][2]*z],[R[0][0]*N[0]+R[0][1]*N[1]+R[0][2]*N[2],R[1][0]*N[0]+R[1][1]*N[1]+R[1][2]*N[2],R[2][0]*N[0]+R[2][1]*N[1]+R[2][2]*N[2]])},1t:l(a){o(a.W){9 A=7.K.4,N=7.W.4;9 b=A[0],18=A[1],1a=A[2],2M=N[0],2L=N[1],2Q=N[2];9 c=7.K.1t(a).4;9 d=b+2M,2p=18+2L,2m=1a+2Q;9 Q=a.1r([d,2p,2m]).4;9 e=[Q[0]+(Q[0]-d)-c[0],Q[1]+(Q[1]-2p)-c[1],Q[2]+(Q[2]-2m)-c[2]];8 11.u(c,e)}1d o(a.U){8 7.1V(F.1A,a)}1d{9 P=a.4||a;8 11.u(7.K.1t([P[0],P[1],(P[2]||0)]),7.W)}},1Z:l(a,b,c){a=v.u(a);a=a.1N();o(a===w){8 w}b=v.u(b);b=b.1N();o(b===w){8 w}o(1g(c)=='1f'){c=w}1d{c=v.u(c);c=c.1N();o(c===w){8 w}}9 d=a.4[0],18=a.4[1],1a=a.4[2];9 e=b.4[0],1W=b.4[1],1X=b.4[2];9 f,1i;o(c!==w){9 g=c.4[0],2l=c.4[1],2t=c.4[2];f=v.u([(1W-18)*(2t-1a)-(1X-1a)*(2l-18),(1X-1a)*(g-d)-(e-d)*(2t-1a),(e-d)*(2l-18)-(1W-18)*(g-d)]);1i=f.1u();o(1i===0){8 w}f=v.u([f.4[0]/1i,f.4[1]/1i,f.4[2]/1i])}1d{1i=F.1x(e*e+1W*1W+1X*1X);o(1i===0){8 w}f=v.u([b.4[0]/1i,b.4[1]/1i,b.4[2]/1i])}7.K=a;7.W=f;8 7}};11.u=l(a,b,c){9 P=25 11();8 P.1Z(a,b,c)};11.2I=11.u(v.1j(3),v.k);11.2H=11.u(v.1j(3),v.i);11.2G=11.u(v.1j(3),v.j);11.36=11.2I;11.35=11.2H;11.3j=11.2G;9 $V=v.u;9 $M=S.u;9 $L=14.u;9 $P=11.u;",62,206,"||||elements|||this|return|var||||||||||||function|||if||length||||create|Vector|null|||||||||Math|nj|while||do|anchor||||||||Matrix||direction||normal||||kj|Plane|ni|abs|Line|ki|precision|Sylvester|A2|push|A3|map|els|else||undefined|typeof|contains|mod|Zero|D3|D2|isParallelTo|kp|distanceFrom|cols|dup|pointClosestTo|np|reflectionIn|modulus|intersects|A1|sqrt|isSquare|X2|PI|X3|angleFrom|mod1|C2|mod2|sin|cos|break|C3|toRightTriangular|false|Y3|to3D|E2|E1|E3|Rotation|Y2|Y1|intersectionWith|rotate|v12|v13|rank|setVectors|nc|sum|multiply|prototype|eql|new|setElements|case|each|PA3|PA2|part|new_element|round|for|cross|product|AD2|isSameSizeAs|add|isPerpendicularTo|v22|AN3|inspect|AD3|AN2|toUnitVector|PsubQ3|PsubQ2|v23|dot|divisor|inverse|true|isSingular|determinant|max|canMultiplyFromLeft|subtract|rows|col|random|ZX|YZ|XY|Random|join|N2|N1|D1|slice|default|N3|dimensions|switch|liesIn|translate|snapTo|augment|Diagonal|trace|indexOf|diagonal|transpose|minor|row|isAntiparallelTo|ZY|YX|acos|RotationZ|RotationY|liesOn|RotationX|inv|rk|tr|det|toDiagonalMatrix|toUpperTriangular|version|XZ".split("|"),0,{}));Matrix.Translation=function(a){if(a.elements.length==2){var b=Matrix.I(3);b.elements[2][0]=a.elements[0];b.elements[2][1]=a.elements[1];return b}if(a.elements.length==3){var b=Matrix.I(4);b.elements[0][3]=a.elements[0];b.elements[1][3]=a.elements[1];b.elements[2][3]=a.elements[2];return b}throw"Invalid length for Translation"};Matrix.prototype.flatten=function(){var a=[];if(this.elements.length==0){return[]}for(var b=0;b<this.elements[0].length;b++){for(var c=0;c<this.elements.length;c++){a.push(this.elements[c][b])}}return a};Matrix.prototype.ensure4x4=function(){if(this.elements.length==4&&this.elements[0].length==4){return this}if(this.elements.length>4||this.elements[0].length>4){return null}for(var b=0;b<this.elements.length;b++){for(var a=this.elements[b].length;a<4;a++){if(b==a){this.elements[b].push(1)}else{this.elements[b].push(0)}}}for(var b=this.elements.length;b<4;b++){if(b==0){this.elements.push([1,0,0,0])}else{if(b==1){this.elements.push([0,1,0,0])}else{if(b==2){this.elements.push([0,0,1,0])}else{if(b==3){this.elements.push([0,0,0,1])}}}}}return this};Matrix.prototype.make3x3=function(){if(this.elements.length!=4||this.elements[0].length!=4){return null}return Matrix.create([[this.elements[0][0],this.elements[0][1],this.elements[0][2]],[this.elements[1][0],this.elements[1][1],this.elements[1][2]],[this.elements[2][0],this.elements[2][1],this.elements[2][2]]])};Vector.prototype.flatten=function(){return this.elements};function makePerspective(d,c,b,h){var a=b*Math.tan(d*Math.PI/360);var f=-a;var g=f*c;var e=a*c;return makeFrustum(g,e,f,a,b,h)}function makeFrustum(h,k,b,j,m,i){var g=2*m/(k-h);var e=2*m/(j-b);var f=(k+h)/(k-h);var d=(j+b)/(j-b);var c=-(i+m)/(i-m);var a=-2*i*m/(i-m);return $M([[g,0,f,0],[0,e,d,0],[0,0,c,a],[0,0,-1,0]])}function makeOrtho(b,h,a,g,i,f){var e=-(h+b)/(h-b);var d=-(g+a)/(g-a);var c=-(f+i)/(f-i);return $M([[2/(h-b),0,0,e],[0,2/(g-a),0,d],[0,0,-2/(f-i),c],[0,0,0,1]])}function create3DTranslationMatrix(a){if(a.elements.length!=3){throw"Invalid vector length"}var b=Matrix.I(4);b.elements[0][3]=a.elements[0];b.elements[1][3]=a.elements[1];b.elements[2][3]=a.elements[2];return(b)}function mvPushMatrix(b,c,a){if(b){a.push(b.dup());c=b.dup()}else{a.push(c.dup())}}function mvPopMatrix(b,a){if(a.length==0){throw"Invalid popMatrix!"}b=a.pop();return b}function loadIdentity(a){a=Matrix.I(4);return a}function multMatrix(a,b){b=b.x(a)}function mvTranslate(b,c){var a=Matrix.Translation($V([b[0],b[1],b[2]])).ensure4x4();multMatrix(a,c)}function mvRotate(c,b,e){var d=c*Math.PI/180;var a=Matrix.Rotation(d,$V([b[0],b[1],b[2]])).ensure4x4();multMatrix(a,e)}function perspective(c,b,a,d){pMatrix=makePerspective(c,b,a,d);return pMatrix}function setMatrixUniforms(d,e,a,c){d.uniformMatrix4fv(e.pMatrixUniform,false,new Float32Array(c.flatten()));d.uniformMatrix4fv(e.mvMatrixUniform,false,new Float32Array(a.flatten()));var b=a.inverse();b=b.transpose();d.uniformMatrix4fv(e.nMatrixUniform,false,new Float32Array(b.flatten()))}function Point(a,b){this.x=a;this.y=b}arivis.webview.Preview3D=function(a){this.conf={canvasElement:"canvas3d",referenceResolution:264,pres_shader_fs:"pres_shader-fs",pres_shader_vs:"pres_shader-vs",bf_shader_fs:"bf_shader-fs",bf_shader_vs:"bf_shader-vs",shader_fs:"shader-fs",shader_vs:"shader-vs",shader_test_fs:"precision highp float; varying vec3 vTextureCoord; uniform int width;uniform int height;uniform sampler2D volumeData;uniform sampler2D backface;vec4 trace();void main(void) {	vec4 col = trace();	gl_FragColor = col;}vec4 trace(){	vec2 backfaceLookup = vec2(gl_FragCoord.x / float(width), gl_FragCoord.y / float(height));	vec3 rayEnd = texture2D(backface, backfaceLookup).rgb;		vec3 rayStart = vTextureCoord.xyz;	vec3 rayDirection = rayEnd - rayStart;	float rayLength = length(rayDirection);	float rayStepsize = rayLength / 64.0;	vec3 stepDelta = normalize(rayDirection) * rayStepsize;	float stepDeltaLength = length(stepDelta);		float waylengthTravelled = 0.0;	vec4 colorSampleAcc = vec4(0.0, 0.0, 0.0, 0.0);	for(int i = 0; i < 1024; i++)	{		vec4 intensitySample = texture2D(volumeData, vec2(0.5, 0));		colorSampleAcc += intensitySample;		waylengthTravelled += stepDeltaLength;				if(waylengthTravelled >= rayLength)			break;	}		return colorSampleAcc;}",shader_test_vs:"attribute vec4 aVertexPosition;attribute vec3 aVertexNormal;attribute vec3 aTextureCoord;uniform mat4 uMVMatrix;uniform mat4 uPMatrix;uniform mat4 uNMatrix;uniform mat4 scalingMatrix;varying vec3 vTextureCoord;void main(void){	gl_Position = uPMatrix * uMVMatrix * scalingMatrix * vec4(aVertexPosition.xyz, 1.0);	vTextureCoord = aTextureCoord;}",wheel:{containerId:"canvas3d",timer:211,rasterEvent:true}};overrideConf(this.conf,a);this.init()};arivis.webview.Preview3D.prototype={gl:null,status:false,volume_shader:null,backface_shader:null,presentation_shader:null,eventSpace:null,wheel:null,shaderError:[],backfaceFramebuffer:null,backfaceRenderbuffer:null,backfaceRenderbufferLQ:null,backfaceTexture:null,renderTargetTexture:null,intermediateRenderTargetTexture:null,backfaceTextureLQ:null,renderTargetTextureLQ:null,intermediateRenderTargetTextureLQ:null,presentationVertexBuffer:null,presentationIndexBuffer:null,presentationTexCoordsBuffer:null,volumeVertexBuffer:null,volumeNormalBuffer:null,volumeTexCoordsBuffer:null,volumeIndexBuffer:null,volumeData:null,texture3D:null,textures:{x:[],y:[],z:[]},mouseLastpoint:new Point(0,0),mouseDown:false,scalingMatrix:null,mvMatrix:null,mvMatrixStack:[],camPos:null,camUp:null,camLookAt:null,shiftKeyDown:false,lowTBound:0.15,highTBound:1,alpha:1,useLowQuality:false,lowQualityFactor:0.25,lqWidth:0,lqHeight:0,dataSource:{textureDim:64,frame:0,xDim:512,yDim:512,zDim:64,xFactor:1,yFactor:1,zFactor:1,texturesSrcStatic:"",scriptLoadUrl:"",previewImg:"",blending:true,animationXPos:0,animationYAngle:0,animationXAngle:0,animationZAngle:0,translationTimeArg:0,zZoomlevel:-5,translatX:0,translatY:0,alpha:1,tileCountX:8,tileCountY:8,tileSize:64,qualityFactor:1},defaultDataSource:{animationXPos:0,animationYAngle:0,animationXAngle:0,animationZAngle:0,zZoomlevel:-5,translatX:0,translatY:0,},toString:function(){return"arivis.webview.Preview3D"},init:function(){var c=document.getElementById(this.conf.canvasElement);this.gl=this.initGL(c);if(!this.gl){__debug("WebGL is not available in your system. Use WebGL supported browser like FF4, Chrome6 or Safari on OS X 10.6!");return}var b=this.gl.getError();if(b!=0){__debug("Initialization Error: "+b)}var a=this;c.onmousedown=function(d){a.mouseDown(d)};c.onmouseup=function(d){a.mouseUp(d)};c.onmousemove=function(d){a.mouseMove(d)};this.eventSpace=new YAHOO.util.EventProvider;this.wheel=new arivis.webview.Wheel(this.conf.wheel,this.eventSpace);this.eventSpace.subscribe("wheel",this.mouseWheel,this,true);document.addEventListener("keydown",function(d){a.keyDown(d)},false);document.addEventListener("keyup",function(d){a.keyUp(d)},false);YAHOO.util.Event.addListener(window,"resize",this.onResize,this,true);this.camPos=$V([0,0,1]);this.camLookAt=$V([0,0,0]);this.camUp=$V([0,1,0])},initGL:function(b){var d;try{d=b.getContext("webgl");if(!d){d=b.getContext("experimental-webgl")}var a=d.getError();if(a!=0){__debug("InitGL Error clear: "+a)}d.viewportWidth=b.width;d.viewportHeight=b.height;a=d.getError();if(a!=0){__debug("InitGL Error done: "+a)}}catch(c){1}if(!d){return false}return d},setParam:function(a){overrideConf(this.dataSource,a)},unload:function(){if(this.texture3D){this.texture3D.unload()}var a=this.gl;a.clear(a.COLOR_BUFFER_BIT|a.DEPTH_BUFFER_BIT);a.flush();this.status=false},load:function(f){__clearDebug();overrideConf(this.dataSource,f);overrideConf(this.dataSource,this.defaultDataSource);clearInterval(this.tickId);var d=document.getElementById(this.conf.canvasElement);var e=this.gl;var c=e.getError();if(c!=0){__debug("OnLoad Error clear: "+c)}YAHOO.util.Dom.setStyle(d,"width",getViewportWidth()+"px");YAHOO.util.Dom.setStyle(d,"height",getViewportHeight()+"px");YAHOO.util.Dom.setAttribute(d,"width",getViewportWidth());YAHOO.util.Dom.setAttribute(d,"height",getViewportHeight());e.viewportWidth=d.width;e.viewportHeight=d.height;e.clearColor(0,0,0,1);e.clearDepth(1);e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT);e.flush();e.enable(e.DEPTH_TEST);e.disable(e.CULL_FACE);e.frontFace(e.CW);e.disable(e.BLEND);e.depthFunc(e.LEQUAL);this.textures={x:[],y:[],z:[]};if(this.volumeData!=null&&e.isTexture(this.volumeData)){e.deleteTexture(this.volumeData)}c=e.getError();if(c!=0){__debug("Errors in GL initialization: "+c)}this.volumeData=null;this.initShaders();this.initBuffers();this.initFramebuffer();var a=this;var b={dataSource:this.dataSource,autoload:true,imageLoadedCallback:function(h,g){return a.handleImageLoaded(h,g)},dimLoadedCallback:function(g){if(g){1}else{__debug("ready!");clearInterval(this.tickId)}}};this.texture3D=new arivis.webview.Texture3D(b);clearInterval(this.tickId);this.lastAngle.x=this.dataSource.animationXAngle;this.lastAngle.y=this.dataSource.animationYAngle;this.moveAngle={x:0,y:0};this.qualityFactor=1;this.useLowQuality=false;this.alpha=this.conf.referenceResolution/this.dataSource.textureDim;this.status=true},mouseWheel:function(a){this.dataSource.zZoomlevel+=(a.delta*0.3);this.drawScene()},lastAngle:{x:0,y:0},moveAngle:{x:0,y:0},mouseMove:function(a){if(this.mousedown==true){this.moveAngle.x=(a.clientX-this.mouseLastpoint.x);this.moveAngle.y=(a.clientY-this.mouseLastpoint.y);this.dataSource.animationYAngle=this.moveAngle.y;this.dataSource.animationXAngle=this.moveAngle.x;this.drawScene()}this.mouseLastpoint.x=a.clientX;this.mouseLastpoint.y=a.clientY},mouseDown:function(a){clearInterval(this.tickId);this.moveAngle={x:0,y:0};this.mouseLastpoint.x=a.clientX;this.mouseLastpoint.y=a.clientY;this.mousedown=true;this.qualityFactor=0.25;this.useLowQuality=true},mouseUp:function(a){clearInterval(this.tickId);this.mousedown=false;this.ttYAngle=this.dataSource.animationYAngle;this.qualityFactor=1;this.useLowQuality=false;this.drawScene()},keyDown:function(a){if(!this.status){return}switch(a.keyCode){case 16:this.shiftKeyDown=true;break;case 37:if(this.shiftKeyDown){this.dataSource.animationXAngle=-5}else{this.dataSource.translatX-=0.2}break;case 38:if(this.shiftKeyDown){this.dataSource.animationYAngle=-5}else{this.dataSource.translatY+=0.2}break;case 39:if(this.shiftKeyDown){this.dataSource.animationXAngle=5}else{this.dataSource.translatX+=0.2}break;case 40:if(this.shiftKeyDown){this.dataSource.animationYAngle=5}else{this.dataSource.translatY-=0.2}break;default:break}this.drawScene()},keyUp:function(a){if(!this.status){return}switch(a.keyCode){case 16:this.shiftKeyDown=false;break}},loadedImages:0,handleImageLoaded:function(b,a){this.prepareTexture(b,a);this.qualityFactor=0.15;this.useLowQuality=true;this.loadedImages++;if(this.loadedImages%11==0){this.drawScene()}},handleLoadedEnd:function(){this.loadedImages=0;this.qualityFactor=1;this.useLowQuality=false;this.drawScene()},prepareTexture:function(e,b){var g=this.gl;var d=this.dataSource.textureDim;var a=this.dataSource.textureDim;this.tileCountX=Math.ceil(Math.sqrt(d));this.tileCountY=Math.floor(Math.sqrt(d));this.tileSize=d;if(this.volumeData==null){this.volumeData=g.createTexture();g.bindTexture(g.TEXTURE_2D,this.volumeData);g.texParameteri(g.TEXTURE_2D,g.TEXTURE_MAG_FILTER,g.LINEAR);g.texParameteri(g.TEXTURE_2D,g.TEXTURE_MIN_FILTER,g.LINEAR);g.texParameteri(g.TEXTURE_2D,g.TEXTURE_WRAP_S,g.CLAMP_TO_EDGE);g.texParameteri(g.TEXTURE_2D,g.TEXTURE_WRAP_T,g.CLAMP_TO_EDGE);g.texImage2D(g.TEXTURE_2D,0,g.RGBA,this.tileCountX*d,this.tileCountY*a,0,g.RGBA,g.UNSIGNED_BYTE,null)}else{g.bindTexture(g.TEXTURE_2D,this.volumeData)}var c=b%this.tileCountX;var f=Math.floor(b/this.tileCountX);g.texSubImage2D(g.TEXTURE_2D,0,c*d,f*a,g.RGBA,g.UNSIGNED_BYTE,e);g.bindTexture(g.TEXTURE_2D,null)},onResize:function(){var a=document.getElementById(this.conf.canvasElement);var b=this.gl;YAHOO.util.Dom.setStyle(a,"width",getViewportWidth()+"px");YAHOO.util.Dom.setStyle(a,"height",getViewportHeight()+"px");YAHOO.util.Dom.setAttribute(a,"width",getViewportWidth());YAHOO.util.Dom.setAttribute(a,"height",getViewportHeight());b.viewportWidth=a.width;b.viewportHeight=a.height;this.initFramebuffer();this.drawScene()},createTexture:function(c,d,a){var e=this.gl;var b=null;if(c!=null&&e.isTexture(c)){e.deleteTexture(c)}b=e.createTexture();e.activeTexture(e.TEXTURE1);e.bindTexture(e.TEXTURE_2D,b);e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR);e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR);e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE);e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE);e.texImage2D(e.TEXTURE_2D,0,e.RGBA,d,a,0,e.RGBA,e.UNSIGNED_BYTE,null);e.bindTexture(e.TEXTURE_2D,null);return b},initFramebuffer:function(){var a=this.gl;this.backfaceTexture=this.createTexture(this.backfaceTexture,a.viewportWidth,a.viewportHeight);this.renderTargetTexture=this.createTexture(this.renderTargetTexture,a.viewportWidth,a.viewportHeight);this.intermediateRenderTargetTexture=this.createTexture(this.intermediateRenderTargetTexture,a.viewportWidth,a.viewportHeight);this.lqWidth=Math.ceil(a.viewportWidth*this.lowQualityFactor);this.lqHeight=Math.ceil(a.viewportHeight*this.lowQualityFactor);this.backfaceTextureLQ=this.createTexture(this.backfaceTextureLQ,this.lqWidth,this.lqHeight);this.renderTargetTextureLQ=this.createTexture(this.renderTargetTextureLQ,this.lqWidth,this.lqHeight);this.intermediateRenderTargetTextureLQ=this.createTexture(this.intermediateRenderTargetTextureLQ,this.lqWidth,this.lqHeight);this.backfaceFramebuffer=a.createFramebuffer();a.bindFramebuffer(a.FRAMEBUFFER,this.backfaceFramebuffer);if(this.backfaceRenderbuffer!=null&&a.isRenderbuffer(this.backfaceRenderbuffer)){a.deleteRenderbuffer(this.backfaceRenderbuffer)}this.backfaceRenderbuffer=a.createRenderbuffer();a.bindRenderbuffer(a.RENDERBUFFER,this.backfaceRenderbuffer);a.renderbufferStorage(a.RENDERBUFFER,a.DEPTH_COMPONENT16,a.viewportWidth,a.viewportHeight);a.bindRenderbuffer(a.RENDERBUFFER,null);if(this.backfaceRenderbufferLQ!=null&&a.isRenderbuffer(this.backfaceRenderbufferLQ)){a.deleteRenderbuffer(this.backfaceRenderbufferLQ)}this.backfaceRenderbufferLQ=a.createRenderbuffer();a.bindRenderbuffer(a.RENDERBUFFER,this.backfaceRenderbufferLQ);a.renderbufferStorage(a.RENDERBUFFER,a.DEPTH_COMPONENT16,this.lqWidth,this.lqHeight);a.bindRenderbuffer(a.RENDERBUFFER,null);a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,this.backfaceTexture,0);a.framebufferRenderbuffer(a.FRAMEBUFFER,a.DEPTH_ATTACHMENT,a.RENDERBUFFER,this.backfaceRenderbuffer);a.bindFramebuffer(a.FRAMEBUFFER,null);this.checkErrors("End Framebuffer creation")},initShaders:function(){var d=this.gl;var a=this.getShader(d,this.conf.shader_fs,"fragment");var c=this.getShader(d,this.conf.shader_vs,"vertex");var e=d.createProgram();d.attachShader(e,c);d.attachShader(e,a);d.linkProgram(e);var b=d.getProgramInfoLog(e);if(b!=""){__debug("Volume Program log: "+b)}if(!d.getProgramParameter(e,d.LINK_STATUS)){__debug("Could not initialize volume shaders");return}d.useProgram(e);b=d.getError();e.vertexPositionAttribute=d.getAttribLocation(e,"aVertexPosition");d.enableVertexAttribArray(e.vertexPositionAttribute);e.textureCoordAttribute=d.getAttribLocation(e,"aTextureCoord");d.enableVertexAttribArray(e.textureCoordAttribute);e.pMatrixUniform=d.getUniformLocation(e,"uPMatrix");e.mvMatrixUniform=d.getUniformLocation(e,"uMVMatrix");e.nMatrixUniform=d.getUniformLocation(e,"uNMatrix");e.scalingMatrixUniform=d.getUniformLocation(e,"scalingMatrix");e.samplerUniform=d.getUniformLocation(e,"uSampler");e.alphaUniform=d.getUniformLocation(e,"uAlpha");e.volumeData=d.getUniformLocation(e,"volumeData");e.currentScene=d.getUniformLocation(e,"current_scene");e.backface=d.getUniformLocation(e,"backface");e.width=d.getUniformLocation(e,"width");e.height=d.getUniformLocation(e,"height");e.tileCountX=d.getUniformLocation(e,"tileCountX");e.tileCountY=d.getUniformLocation(e,"tileCountY");e.tileSize=d.getUniformLocation(e,"tileSize");e.oneOverTileSize=d.getUniformLocation(e,"oneOverTileSize");e.stepsize=d.getUniformLocation(e,"stepsize");e.qualityFactor=d.getUniformLocation(e,"qualityFactor");e.lowTBound=d.getUniformLocation(e,"lowTBound");e.highTBound=d.getUniformLocation(e,"highTBound");e.renderStep=d.getUniformLocation(e,"render_step");this.volume_shader=e;b=d.getShaderInfoLog(c);if(b!=""){__debug("Vertex log: "+b)}b=d.getShaderInfoLog(a);if(b!=""){__debug("Fragment log: "+b)}b=d.getProgramInfoLog(e);if(b!=""){__debug("Program log: "+b)}a=this.getShader(d,this.conf.bf_shader_fs,"fragment");c=this.getShader(d,this.conf.bf_shader_vs,"vertex");e=d.createProgram();d.attachShader(e,c);d.attachShader(e,a);d.linkProgram(e);if(!d.getProgramParameter(e,d.LINK_STATUS)){__debug("Could not initialize backface shaders")}d.useProgram(e);e.vertexPositionAttribute=d.getAttribLocation(e,"aVertexPosition");d.enableVertexAttribArray(e.vertexPositionAttribute);e.textureCoordAttribute=d.getAttribLocation(e,"aTextureCoord");d.enableVertexAttribArray(e.textureCoordAttribute);e.pMatrixUniform=d.getUniformLocation(e,"uPMatrix");e.mvMatrixUniform=d.getUniformLocation(e,"uMVMatrix");e.nMatrixUniform=d.getUniformLocation(e,"uNMatrix");e.scalingMatrixUniform=d.getUniformLocation(e,"scalingMatrix");this.backface_shader=e;b=d.getShaderInfoLog(c);if(b!=""){this.shaderError.push(b);__debug("Vertex log: "+b)}b=d.getShaderInfoLog(a);if(b!=""){this.shaderError.push(b);__debug("Fragment log: "+b)}b=d.getProgramInfoLog(e);if(b!=""){this.shaderError.push(b);__debug("Program log: "+b)}b=d.getError();if(b!=0){this.shaderError.push(b);__debug("Errors in shader creation: "+b)}a=this.getShader(d,this.conf.pres_shader_fs,"fragment");c=this.getShader(d,this.conf.pres_shader_vs,"vertex");e=d.createProgram();d.attachShader(e,c);d.attachShader(e,a);d.linkProgram(e);if(!d.getProgramParameter(e,d.LINK_STATUS)){__debug("Could not initialize presentation shaders")}d.useProgram(e);e.vertexPositionAttribute=d.getAttribLocation(e,"aVertexPosition");d.enableVertexAttribArray(e.vertexPositionAttribute);e.textureCoordAttribute=d.getAttribLocation(e,"aTextureCoord");d.enableVertexAttribArray(e.textureCoordAttribute);e.pMatrixUniform=d.getUniformLocation(e,"uPMatrix");e.mvMatrixUniform=d.getUniformLocation(e,"uMVMatrix");e.nMatrixUniform=d.getUniformLocation(e,"uNMatrix");e.width=d.getUniformLocation(e,"width");e.height=d.getUniformLocation(e,"height");e.sceneUniform=d.getUniformLocation(e,"scene");e.qualityFactor=d.getUniformLocation(e,"qualityFactor");this.presentation_shader=e;b=d.getShaderInfoLog(c);if(b!=""){this.shaderError.push(b);__debug("Vertex log: "+b)}b=d.getShaderInfoLog(a);if(b!=""){this.shaderError.push(b);__debug("Fragment log: "+b)}b=d.getProgramInfoLog(e);if(b!=""){this.shaderError.push(b);__debug("Program log: "+b)}b=d.getError();if(b!=0){this.shaderError.push(b);__debug("Errors in shader creation: "+b)}},testShader:function(d,c,a){textContent=getElementTextContent(c);if(!textContent){textContent=c}var b;if(a=="fragment"){b=d.createShader(d.FRAGMENT_SHADER)}else{if(a=="vertex"){b=d.createShader(d.VERTEX_SHADER)}else{return"error"}}d.shaderSource(b,textContent);d.compileShader(b);return d.getShaderInfoLog(b)},getShader:function(d,c,a){textContent=getElementTextContent(c);if(!textContent){textContent=c}var b;if(a=="fragment"){b=d.createShader(d.FRAGMENT_SHADER)}else{if(a=="vertex"){b=d.createShader(d.VERTEX_SHADER)}else{return null}}d.shaderSource(b,textContent);d.compileShader(b);if(!d.getShaderParameter(b,d.COMPILE_STATUS)){this.shaderError.push(d.getShaderInfoLog(b));__debug("Errors in shader creation: "+d.getShaderInfoLog(b));return null}return b},initBuffers:function(){var d=this.gl;this.volumeVertexBuffer=d.createBuffer();d.bindBuffer(d.ARRAY_BUFFER,this.volumeVertexBuffer);vertices=[-1,-1,-1,1,-1,-1,1,1,-1,-1,1,-1,-1,-1,1,1,-1,1,1,1,1,-1,1,1];d.bufferData(d.ARRAY_BUFFER,new Float32Array(vertices),d.STATIC_DRAW);this.volumeVertexBuffer.itemSize=3;this.volumeVertexBuffer.numItems=8;this.volumeTexCoordsBuffer=d.createBuffer();d.bindBuffer(d.ARRAY_BUFFER,this.volumeTexCoordsBuffer);var c=[0,0,1,1,0,1,1,1,1,0,1,1,0,0,0,1,0,0,1,1,0,0,1,0];d.bufferData(d.ARRAY_BUFFER,new Float32Array(c),d.STATIC_DRAW);this.volumeTexCoordsBuffer.itemSize=3;this.volumeTexCoordsBuffer.numItems=8;this.volumeIndexBuffer=d.createBuffer();d.bindBuffer(d.ELEMENT_ARRAY_BUFFER,this.volumeIndexBuffer);this.cubeVertexIndices=[0,1,2,0,2,3,4,7,6,4,6,5,1,5,6,1,6,2,4,0,3,4,3,7,4,5,1,4,1,0,3,2,6,3,6,7];d.bufferData(d.ELEMENT_ARRAY_BUFFER,new Uint16Array(this.cubeVertexIndices),d.STATIC_DRAW);this.volumeIndexBuffer.itemSize=1;this.volumeIndexBuffer.numItems=36;this.presentationVertexBuffer=d.createBuffer();d.bindBuffer(d.ARRAY_BUFFER,this.presentationVertexBuffer);vertices=[-1,-1,-1,1,-1,-1,1,1,-1,-1,1,-1];d.bufferData(d.ARRAY_BUFFER,new Float32Array(vertices),d.STATIC_DRAW);this.presentationVertexBuffer.itemSize=3;this.presentationVertexBuffer.numItems=4;this.presentationTexCoordsBuffer=d.createBuffer();d.bindBuffer(d.ARRAY_BUFFER,this.presentationTexCoordsBuffer);c=[0,0,1,0,1,1,0,1];d.bufferData(d.ARRAY_BUFFER,new Float32Array(c),d.STATIC_DRAW);this.presentationTexCoordsBuffer.itemSize=2;this.presentationTexCoordsBuffer.numItems=4;this.presentationIndexBuffer=d.createBuffer();d.bindBuffer(d.ELEMENT_ARRAY_BUFFER,this.presentationIndexBuffer);var b=[0,1,2,0,2,3];d.bufferData(d.ELEMENT_ARRAY_BUFFER,new Uint16Array(b),d.STATIC_DRAW);this.presentationIndexBuffer.itemSize=1;this.presentationIndexBuffer.numItems=6;var a=d.getError();if(a!=0){__debug("Errors in buffer creation: "+a)}},buildScaling:function(e,d,c){var b=new Array(e*1.75,0,0,0);var a=new Array(0,d*1.75,0,0);var g=new Array(0,0,c*1.75,0);var f=new Array(0,0,0,1);this.scalingMatrix=$M([b,a,g,f])},drawScene:function(){var e=this.gl;this.checkErrors("Draw Scene begin");e.viewport(0,0,e.viewportWidth,e.viewportHeight);e.clearColor(0,0,0,1);e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT);var j=perspective(45,e.viewportWidth/e.viewportHeight,0.1,100);this.mvMatrix=loadIdentity(this.mvMatrix);var d=this.dataSource.animationXAngle*Math.PI/180;var b=this.dataSource.animationYAngle*Math.PI/180;var f=Matrix.RotationY(d);var g=Matrix.RotationX(b);var n=f.multiply(g);this.camPos=n.multiply(this.camPos);this.camUp=n.multiply(this.camUp);var c=(this.camLookAt.subtract(this.camPos)).toUnitVector();var a=(this.camUp.cross(c)).toUnitVector();var i=(c.cross(a)).toUnitVector();var o=new Array(a.elements[0],i.elements[0],c.elements[0],this.dataSource.translatX);var m=new Array(a.elements[1],i.elements[1],c.elements[1],this.dataSource.translatY);var k=new Array(a.elements[2],i.elements[2],c.elements[2],this.dataSource.zZoomlevel);var h=new Array(0,0,0,1);this.mvMatrix=$M([o,m,k,h]);this.dataSource.animationXAngle=0;this.dataSource.animationYAngle=0;this.checkErrors("Draw Scene pre init");e.enable(e.CULL_FACE);e.cullFace(e.FRONT);e.bindFramebuffer(e.FRAMEBUFFER,this.backfaceFramebuffer);if(!this.useLowQuality){e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this.backfaceTexture,0);e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,this.backfaceRenderbuffer);e.viewport(0,0,e.viewportWidth,e.viewportHeight)}else{e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this.backfaceTextureLQ,0);e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,this.backfaceRenderbufferLQ);e.viewport(0,0,this.lqWidth,this.lqHeight)}this.checkErrors("Draw Scene done set targets");e.clearColor(0,0,0,1);e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT);this.checkErrors("Draw Scene pre backface");this.renderBackface(j);this.checkErrors("Draw Scene post backface");e.clearColor(0,0,0,0);if(!this.useLowQuality){e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this.renderTargetTexture,0);e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT);e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this.intermediateRenderTargetTexture,0);e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}else{e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this.renderTargetTextureLQ,0);e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT);e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this.intermediateRenderTargetTextureLQ,0);e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}e.cullFace(e.BACK);this.renderScene("z",j);e.bindFramebuffer(e.FRAMEBUFFER,null);e.disable(e.CULL_FACE);this.mvMatrix=loadIdentity(this.mvMatrix);j=makeOrtho(-1,1,-1,1,-1,1);e.viewport(0,0,e.viewportWidth,e.viewportHeight);this.presentScene(j);this.checkErrors("Draw Scene end")},setAlpha:function(b,a){this.lowTBound=b;this.highTBound=a;this.drawScene()},presentScene:function(b){var a=this.gl;var c=this.presentation_shader;a.useProgram(c);a.bindBuffer(a.ARRAY_BUFFER,this.presentationVertexBuffer);a.vertexAttribPointer(c.vertexPositionAttribute,this.presentationVertexBuffer.itemSize,a.FLOAT,false,0,0);a.bindBuffer(a.ARRAY_BUFFER,this.presentationTexCoordsBuffer);a.vertexAttribPointer(c.textureCoordAttribute,this.presentationTexCoordsBuffer.itemSize,a.FLOAT,false,0,0);if(!this.useLowQuality){a.activeTexture(a.TEXTURE3);a.bindTexture(a.TEXTURE_2D,this.renderTargetTexture);a.uniform1i(c.sceneUniform,3)}else{a.activeTexture(a.TEXTURE3);a.bindTexture(a.TEXTURE_2D,this.renderTargetTextureLQ);a.uniform1i(c.sceneUniform,3)}a.uniform1f(c.qualityFactor,1);a.uniform1i(c.width,a.viewportWidth);a.uniform1i(c.height,a.viewportHeight);a.bindBuffer(a.ELEMENT_ARRAY_BUFFER,this.presentationIndexBuffer);setMatrixUniforms(a,c,this.mvMatrix,b);a.drawElements(a.TRIANGLES,this.presentationIndexBuffer.numItems,a.UNSIGNED_SHORT,0);a.useProgram(null);error=a.getError();if(error!=0){__debug("Errors in presenting: "+error)}},renderBackface:function(b){this.checkErrors("Begin Render Backface");var a=this.gl;var c=this.backface_shader;a.useProgram(c);a.bindBuffer(a.ARRAY_BUFFER,this.volumeVertexBuffer);a.vertexAttribPointer(c.vertexPositionAttribute,this.volumeVertexBuffer.itemSize,a.FLOAT,false,0,0);a.bindBuffer(a.ARRAY_BUFFER,this.volumeTexCoordsBuffer);a.vertexAttribPointer(c.textureCoordAttribute,this.volumeTexCoordsBuffer.itemSize,a.FLOAT,false,0,0);a.bindBuffer(a.ELEMENT_ARRAY_BUFFER,this.volumeIndexBuffer);setMatrixUniforms(a,c,this.mvMatrix,b);a.uniformMatrix4fv(c.scalingMatrixUniform,false,new Float32Array(this.scalingMatrix.flatten()));a.drawElements(a.TRIANGLES,this.volumeIndexBuffer.numItems,a.UNSIGNED_SHORT,0);a.useProgram(null);this.checkErrors("End Render Backface")},renderScene:function(g,k){var f=this.gl;this.checkErrors("Begin Scene Rendering");var b=this.volume_shader;f.useProgram(b);f.bindBuffer(f.ARRAY_BUFFER,this.volumeVertexBuffer);f.vertexAttribPointer(b.vertexPositionAttribute,this.volumeVertexBuffer.itemSize,f.FLOAT,false,0,0);f.bindBuffer(f.ARRAY_BUFFER,this.volumeTexCoordsBuffer);f.vertexAttribPointer(b.textureCoordAttribute,this.volumeTexCoordsBuffer.itemSize,f.FLOAT,false,0,0);f.activeTexture(f.TEXTURE0);f.bindTexture(f.TEXTURE_2D,this.textures[g][0]);f.uniform1i(b.samplerUniform,0);f.activeTexture(f.TEXTURE1);if(!this.useLowQuality){f.bindTexture(f.TEXTURE_2D,this.backfaceTexture)}else{f.bindTexture(f.TEXTURE_2D,this.backfaceTextureLQ)}f.uniform1i(b.backface,1);f.activeTexture(f.TEXTURE2);f.bindTexture(f.TEXTURE_2D,this.volumeData);f.uniform1i(b.volumeData,2);f.uniform1f(b.tileCountX,this.tileCountX);f.uniform1f(b.tileCountY,this.tileCountY);f.uniform1f(b.tileSize,this.tileSize);f.uniform1f(b.oneOverTileSize,1/this.tileSize);f.uniform1f(b.alphaUniform,this.alpha);f.uniform1f(b.qualityFactor,1);f.uniform1f(b.lowTBound,this.lowTBound);f.uniform1f(b.highTBound,this.highTBound);f.uniform1f(b.stepsize,1/64);if(!this.useLowQuality){f.uniform1i(b.width,f.viewportWidth);f.uniform1i(b.height,f.viewportHeight)}else{f.uniform1i(b.width,this.lqWidth);f.uniform1i(b.height,this.lqHeight)}f.bindBuffer(f.ELEMENT_ARRAY_BUFFER,this.volumeIndexBuffer);setMatrixUniforms(f,b,this.mvMatrix,k);f.uniformMatrix4fv(b.scalingMatrixUniform,false,new Float32Array(this.scalingMatrix.flatten()));var a=9;var d=9;var h=Math.floor(f.viewportWidth/d)+1;var i=Math.floor(f.viewportHeight/a)+1;f.uniform1i(b.currentScene,3);f.enable(f.SCISSOR_TEST);var e=Math.ceil(this.dataSource.textureDim/8);for(var m=0;m<d;m++){for(var j=0;j<a;j++){f.scissor(m*h,j*i,h,i);for(var c=0;c<e+1;c+=2){this.setRenderTarget(c*8);f.drawElements(f.TRIANGLES,this.volumeIndexBuffer.numItems,f.UNSIGNED_SHORT,0);this.setIntermediateTarget((c+1)*8);f.drawElements(f.TRIANGLES,this.volumeIndexBuffer.numItems,f.UNSIGNED_SHORT,0)}f.flush()}}f.disable(f.SCISSOR_TEST);f.useProgram(null);this.checkErrors("End Scene Rendering")},setIntermediateTarget:function(a){var b=this.gl;var c=this.volume_shader;b.activeTexture(b.TEXTURE3);if(!this.useLowQuality){b.bindTexture(b.TEXTURE_2D,this.renderTargetTexture)}else{b.bindTexture(b.TEXTURE_2D,this.renderTargetTextureLQ)}b.uniform1f(c.renderStep,a);if(!this.useLowQuality){b.framebufferTexture2D(b.FRAMEBUFFER,b.COLOR_ATTACHMENT0,b.TEXTURE_2D,this.intermediateRenderTargetTexture,0)}else{b.framebufferTexture2D(b.FRAMEBUFFER,b.COLOR_ATTACHMENT0,b.TEXTURE_2D,this.intermediateRenderTargetTextureLQ,0)}},setRenderTarget:function(a){var b=this.gl;var c=this.volume_shader;b.activeTexture(b.TEXTURE3);if(!this.useLowQuality){b.bindTexture(b.TEXTURE_2D,this.intermediateRenderTargetTexture)}else{b.bindTexture(b.TEXTURE_2D,this.intermediateRenderTargetTextureLQ)}b.uniform1f(c.renderStep,a);if(!this.useLowQuality){b.framebufferTexture2D(b.FRAMEBUFFER,b.COLOR_ATTACHMENT0,b.TEXTURE_2D,this.renderTargetTexture,0)}else{b.framebufferTexture2D(b.FRAMEBUFFER,b.COLOR_ATTACHMENT0,b.TEXTURE_2D,this.renderTargetTextureLQ,0)}},checkErrors:function(a){var c=this.gl;var b=c.getError();if(b!=0){__debug(a+": "+b)}}};arivis.webview.Texture3D=function(a){this.conf={autoload:false,dataSource:{},imageLoadedCallback:null,dimLoadedCallback:null};this.objectCountLoaded={z:0};overrideConf(this.conf,a);this.conf.dataSource=a.dataSource;this.init()};arivis.webview.Texture3D.prototype={loaderTimerId:0,loaderTimer:31,maxLoading:2,currentloading:0,waitingList:[],loadingList:[],loadedList:[],texImages:{x:new Array(),y:new Array(),z:new Array()},toString:function(){return"arivis.webview.Texture3D"},init:function(){if(this.conf.autoload){this.load()}},unload:function(){this.waitingList=[];this.loadingList=[];this.loadedList=[]},load:function(){this.unload();this.waitingList=new Array(this.conf.dataSource.textureDim);for(var a=0;a<this.conf.dataSource.textureDim;a++){this.waitingList[a]=this.prepareImage(a)}this.runLoadingTexture()},runLoadingTexture:function(){clearTimeout(this.loaderTimerId);var b=0;while(b<this.loadingList.length){if(this.loadingList[b].image.complete==true){this.applyTexture(this.loadingList[b]);this.loadingList.splice(b,1)}else{b++}}var b=0;while(this.waitingList.length&&b<=this.maxLoading){this.waitingList[0].image.src=this.waitingList[0].src;this.loadingList.push(this.waitingList[0]);this.waitingList.shift();b++}var a=this;this.loaderTimerId=setTimeout(function(){a.runLoadingTexture()},this.loaderTimer)},prepareImage:function(b){var c={};var a=this.conf.dataSource.zDim/this.conf.dataSource.textureDim;var d=this.conf.dataSource.textureDim/Math.max(this.conf.dataSource.xDim,this.conf.dataSource.yDim);var f={x:0,y:0,w:this.conf.dataSource.textureDim,h:this.conf.dataSource.textureDim,p:Math.floor(a*b),t:this.conf.dataSource.frame,z:d};if(this.conf.dataSource.xDim<=this.conf.dataSource.yDim){f.x=Math.round((this.conf.dataSource.xDim*d-this.conf.dataSource.yDim*d)/2)}else{f.y=Math.round((this.conf.dataSource.yDim*d-this.conf.dataSource.xDim*d)/2)}var e=composeURL(this.conf.dataSource.texturesSrcStatic,f);if(this.conf.dataSource.scriptLoadUrl){e=this.conf.dataSource.scriptLoadUrl+"?src="+escape(e)}c.src=e;c.plane=b;c.image=new Image();return c},applyTexture:function(a){if(typeof this.conf.imageLoadedCallback=="function"){this.conf.imageLoadedCallback(a.image,a.plane)}},loaderStatus:function(){if(!this.conf.dataSource.textureDim){return 1}var b=this.conf.dataSource.textureDim-this.waitingList.length-this.loadingList.length;var a=b/this.conf.dataSource.textureDim;return a}};
