if( !window.oTidyBrowser ){
// Do nothing
}else if( oTidyBrowser.bTopLoadBusy==false ){
	oTidyUtil.tidy.log( '<javascript>tidyEndDocumentLoadObserver' );
	oTidyBrowser.bTopLoadBusy = true;
	try{
// Validate the 1rst request
oTidyBrowser.bIgnorePageShow = true;
oTidyBrowser.validateFrame( window.content );
// oTidyBrowser.validateCache( subject.document, true );
// Process the events that fired during the 1rst one
// ex: page with frames.
var doc = oTidyBrowser.oEventQueue.pop();
while( doc ){
oTidyBrowser.validateCache( doc, true );
doc = oTidyBrowser.oEventQueue.pop();
	}
}
catch(ex){
tidyShowExceptionInConsole( ex );
}
oTidyBrowser.bTopLoadBusy = false;
}
else
{
// Parallel events are placed in a event queue.
oTidyBrowser.oEventQueue.push( event.originalTarget );
}


TextSlider = function(className) {
	document.write("<div id='TextSliderPLayer_"+ className +"'><div id='TextSliderLayer_"+ className +"'></div></div>");

	this.item = [];
	this.width = this.height = this.speed = this.pixel = this.interval =
		this.size = this.moveCount = this.X = this.Y = 0;
	this.direction = "";
	this.pLayer = document.getElementById("TextSliderPLayer_"+ className);
	this.layer = document.getElementById("TextSliderLayer_"+ className);
	this.align = "left";
	this.timeoutId = null;
	this.intervalId = null;
	this.className = className;
	this.isPause = false;
}
TextSlider.prototype.init = function() {
	with (this.pLayer.style) {
		width = this.width+"px";
		height = this.height+"px";
		overflow = "hidden";
	}
	with (this.layer.style) {
		width = this.direction=='up' || this.direction=='down' ? this.width+"px" : this.size*(this.item.length+1)+"px";
		height = this.direction=='up' || this.direction=='down' ? this.size*(this.item.length+1)+"px" : this.height+"px";
		top = 0;
		left = 0;
		position = "relative";
	}
	for (var i=0; i<parseInt(this.height / this.size, 10)+1; i++)
		this.item[this.item.length] = this.item[i];
	switch (this.direction) {
		case "up": this.X = this.Y = 0; break;
		case "down": this.X = 0; this.layer.style.top = this.Y = -this.size*(this.item.length-1); break;
		case "left": this.X = this.Y = 0; break;
		case "right": this.Y = 0; this.layer.style.left = this.X = -this.size*(this.item.length-1); break;
	}
	var __html = "<div onmouseover='"+this.className+".pause()' onmouseout='"+this.className+".unpause()'>";
	if (this.direction=='up' || this.direction=='down') {
		__html += "<table width='"+ this.layer.style.width +"' cellspacing='0' cellpadding='0' border='0'>";
		for(i = 0 ;this.item[i]; i++)
		{
			__html += "<tr><td height='"+this.size+"' style='overflow:hidden' align='"+this.align+"' valign='top'>"+this.item[i]+"</td></tr>";
		}
		__html += "</table>";
	} else {
		__html += "<table cellspacing='0' cellpadding='0' border='0'><tr>";
		for(i = 0 ;this.item[i]; i++)
		{
			__html += "<td width='"+this.size+"' height='"+ this.layer.style.height +"' align='"+this.align+"' \
				valign='top' style='overflow:hidden;'>"+this.item[i]+"</td>";
		}
		__html += "</tr></table>";
	}
	__html += "</div>";
	this.layer.innerHTML = __html;
	this.start();
}
TextSlider.prototype.start = function() {
	this.intervalId = setInterval(this.className+".move()", this.speed);
}
TextSlider.prototype.move = function() {
	if (this.isPause) return;
	switch (this.direction) {
		case "up": this.Y -= this.pixel; break;
		case "down": this.Y += this.pixel; break;
		case "left": this.X -= this.pixel; break;
		case "right": this.X += this.pixel; break;
	}
	if (this.direction=='up' || this.direction=='down') {
		if (Math.abs(this.Y)%this.size==0) this.stop();
		this.layer.style.top = this.Y;
	} else {
		if (Math.abs(this.X)%this.size==0) this.stop();
		this.layer.style.left = this.X;
	}
}
TextSlider.prototype.stop = function() {
	clearInterval(this.intervalId);
	switch (this.direction) {
	case "up":
		if (Math.abs(this.Y) >= parseInt(this.layer.style.height,10)-this.size) this.Y = this.layer.style.top = 0;
		break;

	case "down":
		if (Math.abs(this.Y) <= 0) this.Y = this.layer.style.top = -this.size*(this.item.length-1);
		break;

	case "left":
		if (Math.abs(this.X) >= parseInt(this.layer.style.width,10)-this.size) this.X = this.layer.style.left = 0;
		break;

	case "right":
		if (Math.abs(this.X) <= 0) this.X = this.layer.style.left = -this.size*(this.item.length-1);
		break;
	}
	this.timeoutId = setTimeout(this.className+".start()", this.interval);
}

TextSlider.prototype.next = function() {
	clearInterval(this.intervalId);
	clearTimeout(this.timeoutId);

	switch (this.direction) {
	case "up":
		if (Math.abs(this.Y)%this.size==0) this.Y-=this.size;
		else this.Y-=(this.size-(Math.abs(this.Y)%this.size));

		if (Math.abs(this.Y) >= parseInt(this.layer.style.height,10)-this.size) this.Y = this.layer.style.top = 0;
		break;

	case "down":
		if (Math.abs(this.Y)%this.size==0) this.Y+=this.size;
		else this.Y+=(this.size+(Math.abs(this.Y)%this.size));

		if (Math.abs(this.Y) <= 0) this.Y = this.layer.style.top = -this.size*(this.item.length-1);
		break;

	case "left":
		if (Math.abs(this.X)%this.size==0) this.X-=this.size;
		else this.X-=(this.size-(Math.abs(this.X)%this.size));

		if (Math.abs(this.X) >= parseInt(this.layer.style.width,10)-this.size) this.X = this.layer.style.left = 0;
		break;

	case "right":
		if (Math.abs(this.X)%this.size==0) this.X+=this.size;
		else this.X+=(this.size+(Math.abs(this.X)%this.size));

		if (Math.abs(this.X) <= 0) this.X = this.layer.style.left = -this.size*(this.item.length-1);
		break;
	}

	if (this.direction=='up' || this.direction=='down') {
		this.layer.style.top = this.Y;
	} else {
		this.layer.style.left = this.X;
	}

	this.timeoutId = setTimeout(this.className+".start()", this.interval);
}

TextSlider.prototype.prev = function() {
	clearInterval(this.intervalId);
	clearTimeout(this.timeoutId);

switch (this.direction) {
	case "up":
		if (Math.abs(this.Y)%this.size==0) this.Y+=this.size;
		else this.Y+=(Math.abs(this.Y)%this.size);

		if (Math.abs(this.Y) <= 0) this.Y = this.layer.style.top = -this.size*(this.item.length-1);
		break;

	case "down":
		if (Math.abs(this.Y)%this.size==0) this.Y-=this.size;
		else this.Y-=(this.size-(Math.abs(this.Y)%this.size));

		if (Math.abs(this.Y) <= 0) this.Y = this.layer.style.top = -this.size*(this.item.length-1);
		break;

	case "left":
		if (Math.abs(this.X)%this.size==0) this.X+=this.size;
		else this.X+=(Math.abs(this.X)%this.size);

		if (Math.abs(this.X) <= 0) this.X = this.layer.style.left = -this.size*(this.item.length-1);
		break;

	case "right":
		if (Math.abs(this.X)%this.size==0) this.X-=this.size;
		else this.X-=(this.size-(Math.abs(this.X)%this.size));

		if (Math.abs(this.X) <= 0) this.X = this.layer.style.left = -this.size*(this.item.length-1);
		break;
	}

	if (this.direction=='up' || this.direction=='down') {
		this.layer.style.top = this.Y;
	} else {
		this.layer.style.left = this.X;
	}

	this.timeoutId = setTimeout(this.className+".start()", this.interval);
}

TextSlider.prototype.pause = function() {this.isPause = true;}
TextSlider.prototype.unpause = function() {this.isPause = false;}
