var dw_event={add:function(D,C,A,B){B=B||false;if(D.addEventListener){D.addEventListener(C,A,B)}else{if(D.attachEvent){D.attachEvent("on"+C,A)}}},remove:function(D,C,A,B){B=B||false;if(D.removeEventListener){D.removeEventListener(C,A,B)}else{if(D.detachEvent){D.detachEvent("on"+C,A)}}},DOMit:function(A){A=A?A:window.event;A.tgt=A.srcElement?A.srcElement:A.target;if(!A.preventDefault){A.preventDefault=function(){return false}}if(!A.stopPropagation){A.stopPropagation=function(){if(window.event){window.event.cancelBubble=true}}}return A}};var Tooltip={followMouse:true,offX:8,offY:12,tipID:"tipDiv",showDelay:100,hideDelay:200,ready:false,timer:null,tip:null,init:function(){if(document.createElement&&document.body&&typeof document.body.appendChild!="undefined"){if(!document.getElementById(this.tipID)){var A=document.createElement("DIV");A.id=this.tipID;document.body.appendChild(A)}this.ready=true}},show:function(A,B){if(this.timer){clearTimeout(this.timer);this.timer=0}this.tip=document.getElementById(this.tipID);if(this.followMouse){dw_event.add(document,"mousemove",this.trackMouse,true)}this.writeTip("");this.writeTip(B);viewport.getAll();this.positionTip(A);this.timer=setTimeout("Tooltip.toggleVis('"+this.tipID+"', 'visible')",this.showDelay)},writeTip:function(A){if(this.tip&&typeof this.tip.innerHTML!="undefined"){this.tip.innerHTML=A}},positionTip:function(B){if(this.tip&&this.tip.style){var A=B.pageX?B.pageX:B.clientX+viewport.scrollX;var C=B.pageY?B.pageY:B.clientY+viewport.scrollY;if(A+this.tip.offsetWidth+this.offX>viewport.width+viewport.scrollX){A=A-this.tip.offsetWidth-this.offX;if(A<0){A=0}}else{A=A+this.offX}if(C+this.tip.offsetHeight+this.offY>viewport.height+viewport.scrollY){C=C-this.tip.offsetHeight-this.offY;if(C<viewport.scrollY){C=viewport.height+viewport.scrollY-this.tip.offsetHeight}}else{C=C+this.offY}this.tip.style.left=A+"px";this.tip.style.top=C+"px"}},hide:function(){if(this.timer){clearTimeout(this.timer);this.timer=0}this.timer=setTimeout("Tooltip.toggleVis('"+this.tipID+"', 'hidden')",this.hideDelay);if(this.followMouse){dw_event.remove(document,"mousemove",this.trackMouse,true)}this.tip=null},toggleVis:function(C,B){var A=document.getElementById(C);if(A){A.style.visibility=B}},trackMouse:function(A){A=dw_event.DOMit(A);Tooltip.positionTip(A)}};var viewport={getWinWidth:function(){this.width=0;if(window.innerWidth){this.width=window.innerWidth-18}else{if(document.documentElement&&document.documentElement.clientWidth){this.width=document.documentElement.clientWidth}else{if(document.body&&document.body.clientWidth){this.width=document.body.clientWidth}}}},getWinHeight:function(){this.height=0;if(window.innerHeight){this.height=window.innerHeight-18}else{if(document.documentElement&&document.documentElement.clientHeight){this.height=document.documentElement.clientHeight}else{if(document.body&&document.body.clientHeight){this.height=document.body.clientHeight}}}},getScrollX:function(){this.scrollX=0;if(typeof window.pageXOffset=="number"){this.scrollX=window.pageXOffset}else{if(document.documentElement&&document.documentElement.scrollLeft){this.scrollX=document.documentElement.scrollLeft}else{if(document.body&&document.body.scrollLeft){this.scrollX=document.body.scrollLeft}else{if(window.scrollX){this.scrollX=window.scrollX}}}}},getScrollY:function(){this.scrollY=0;if(typeof window.pageYOffset=="number"){this.scrollY=window.pageYOffset}else{if(document.documentElement&&document.documentElement.scrollTop){this.scrollY=document.documentElement.scrollTop}else{if(document.body&&document.body.scrollTop){this.scrollY=document.body.scrollTop}else{if(window.scrollY){this.scrollY=window.scrollY}}}}},getAll:function(){this.getWinWidth();this.getWinHeight();this.getScrollX();this.getScrollY()}};