function slide(obj,duration,space,limit,automoving){
	this.Zobj = obj;
	this.num = 0;
	this.target;
	this.point; // left=-1 right = 1
	this.space = space;
	this.autos = automoving;;
	this.limit = limit;
	this.distance;
	this.interval = 20000;
	this.duration = duration*1000;
	this.frequency = 50;
	this.freq = parseInt(this.duration/this.frequency);
	this.svs = 1;
	this.move = s_move;
	this.goto = s_goto;
	this.horizontal = s_horizontal;
	this.direct = adonde;
	this.automatic = s_automatic;
	this.start = s_start;
	this.clear = s_clear;
	this.moving = false;
}
function s_move(val){
	this.clear();
	if(val==1){ //right				
		if(this.num>=this.limit){
			this.num=0;
			this.Zobj.style.left = 0;		
		}
	}else{	// left		
		if(this.num<=0){
			this.num=this.limit;
			this.Zobj.style.left = -this.space*this.num+"px";				
		}
	}
	this.target = -1*this.space*(this.num+val);
	this.point = val;
	this.svs = 1;
	this.distance = Math.abs(this.target + this.num*this.space);
	this.moving = true;
	this.horizontal();
	var m = (val==1)?++this.num : --this.num;
	return this.num;
}
function s_goto(val){
	this.clear();
	this.target = -1*this.space*val;
	this.distance = Math.abs(this.target + this.num*this.space);
	this.point = (this.num>val && this.num<this.limit)?-1:1;
	if(this.num==this.limit) this.Zobj.style.left = 0;
	this.svs = 1;
	this.moving = true;
	this.horizontal();
	this.num = val;			
}
function adonde(val){
	this.clear();
	this.Zobj.style.left = -1*this.space*val+"px"; 
	this.num = val;		
}
function s_horizontal(){
	var amount = -this.distance/2/this.freq*Math.PI*Math.sin(Math.PI*this.svs/this.freq)*this.point;
	this.Zobj.style.left = parseInt(this.Zobj.style.left) + amount + "px";	
	var thisObj = this;
	var sss = window.setTimeout(function(){thisObj.horizontal();},this.frequency,this);
	if(this.svs>=(this.freq-1)){
		clearTimeout(sss);
		this.Zobj.style.left = this.target+"px"; 
		this.automatic();
		this.moving = false;
	}
	this.svs++;
}	
function s_automatic(){
	if(this.autos){ 
		var thisObj = this;
		this.autos = window.setTimeout(function(){thisObj.move(1);},this.interval,this);			
	}	
}
function s_clear(){
	if(this.autos) clearTimeout(this.autos);
	this.autos = false;
}
function s_start(){	
	this.Zobj.style.left = 0;
	this.automatic();
}