function Tween(varContentElement, varCloseElement, varOpenElement, varOpenWidth, varClosedWidth, varDuration, varDistance) {
	this.id = "tweenObject";
	this.ContentElement = varContentElement;
	this.OpenWidth = varOpenWidth;
	this.ClosedWidth = varClosedWidth;
	this.Duration = varDuration;
	this.Distance = varDistance;
	window[this.id] = this;
	this._getLeft = function(objElement) {
		if (objElement.currentStyle) {
			return (parseInt(objElement.currentStyle.left));
		}
		else {
			return (parseInt(document.defaultView.getComputedStyle(objElement, null).left));
		}
	}
	this._openTween = function() {
		var varClientLeft = this._getLeft(document.getElementById(this.ContentElement));
		if ((varClientLeft - this.Distance) > this.OpenWidth) {
			document.getElementById(this.ContentElement).style.left = (varClientLeft - this.Distance) + "px";
			window.setTimeout("window." + this.id + "._openTween()", this.Duration);
			return;
		}
		document.getElementById(varCloseElement).style.display = "block";
		document.getElementById(this.ContentElement).style.left = (this.OpenWidth) + "px";
		window[this.id] = null;
	}
	this._closeTween = function() {
		var varClientLeft = this._getLeft(document.getElementById(this.ContentElement));
		if ((varClientLeft + this.Distance) < this.ClosedWidth) {
			document.getElementById(this.ContentElement).style.left = (varClientLeft + this.Distance) + "px";
			window.setTimeout("window." + this.id + "._closeTween()", this.Duration);
			return;
		}
		document.getElementById(varOpenElement).style.display = "block";
		document.getElementById(this.ContentElement).style.left = (this.ClosedWidth) + "px";
		window[this.id] = null;
	}
	this.Start = function() {
		var varClientLeft = this._getLeft(document.getElementById(this.ContentElement));
		
		if (varClientLeft != this.OpenWidth) {
			document.getElementById(varOpenElement).style.display = "none";
			this._openTween();
			return;
		}
		
		if (varClientLeft != this.ClosedWidth) {
			document.getElementById(varCloseElement).style.display = "none";
			this._closeTween();
			return;
		}
	}
}

