var alt=function() {
	var id="tt";
	var top=3;
	var left=3;
	var maxw=300;
	var speed=10;
	var timer=20;
	var endalpha=90;
	var alpha=0;
	var tt, t, c, b, h;
	var ie=document.all ? true:false;
	if(ie) {
		var is_ie6=(window.external && typeof window.XMLHttpRequest=="undefined");
	} else {
		var is_ie6=false;
	}
	return {
		show:function(v, w) {
			if(tt==null){
				tt=document.createElement("div");
				tt.setAttribute("id", id);
				t=document.createElement("div");
				t.setAttribute("id", id + "top");
				c=document.createElement("div");
				c.setAttribute("id", id + "cont");
				b=document.createElement("div");
				b.setAttribute("id", id + "bot");
				tt.appendChild(t);
				tt.appendChild(c);
				tt.appendChild(b);
				document.body.appendChild(tt);
				tt.style.opacity=0;
				tt.style.filter="alpha(opacity=0)";
			}
			document.onmousemove=this.pos;
			tt.style.display="block";
			c.innerHTML=v;
			tt.style.width=w ? w+"px":"auto";
			if(!w && ie) {
				t.style.display="none";
				b.style.display="none";
				tt.style.width=tt.offsetWidth;
				t.style.display="block";
				b.style.display="block";
			}
			if(tt.offsetWidth > maxw) {tt.style.width=maxw+"px"}
			h = parseInt(tt.offsetHeight)+top;
			clearInterval(tt.timer);
			tt.timer = setInterval(function(){alt.fade(1)},timer);
		},
		pos:function(e) {
			var u=ie ? event.clientY+document.documentElement.scrollTop:e.pageY;
			var l=ie ? event.clientX+document.documentElement.scrollLeft:e.pageX;
			l=l+left;
			if((l+tt.offsetWidth)>=document.body.clientWidth) {
				l=l-tt.offsetWidth-left;
			}
			tt.style.left=(l)+"px";
			tt.style.top=(u-h)+"px";
		},
		fade:function(d) {
			if(is_ie6) {
				clearInterval(tt.timer);
				if(d==1) {
					tt.style.opacity=endalpha;
					tt.style.filter="alpha(opacity="+endalpha+")";
					tt.style.display="block";
				} else {
					document.onmousemove="";
					tt.style.opacity=0;
					tt.style.filter="alpha(opacity=0)";
					tt.style.display="none";
				}
			} else {
				var a=alpha;
				if((a!=endalpha && d==1) || (a!=0 && d==-1)) {
					var i=speed;
					if(endalpha-a<speed && d==1) {
						i=endalpha-a;
					} else if(alpha<speed && d==-1) {
						i=a;
					}
					alpha=a+(i*d);
					tt.style.opacity=alpha*.01;
					tt.style.filter="alpha(opacity="+alpha+")";
				} else {
					clearInterval(tt.timer);
					if(d==-1) {
						tt.style.display="none";
						document.onmousemove="";
					}
				}
			}
		},
		hide:function() {
			if(tt!=null) {
				if(typeof tt.timer=="number") {
					clearInterval(tt.timer);
				}
				tt.timer=setInterval(function() {alt.fade(-1)}, timer);
			}
		}
	};
}();
