    function sInterval(){
        this.setInterval=function(todo,time){clearInterval(this.interval);this.interval=setInterval(todo,time);}
        this.clearInterval=function(){clearInterval(this.interval);this.interval=false;}
    }
    function sTimeOut(){this.setTimeOut=function(todo,time){clearTimeout(this.timeout);this.timeout=setTimeout(todo,time);}} 
    function iSlider(direction,object){
        this.object=object;
        this.direction=direction;        
        switch(this.direction)
        {
            case 'left':                             
              this.slideIn=function(value){this.object.style.left=value+'px';}
              this.slideOut=function(value){this.object.style.right=value+'px';}             
              break;
            case 'top':
              this.slideIn=function(value){this.object.style.top=value+'px';}
              this.slideOut=function(value){this.object.style.bottom=value+'px';}       
              break;
        }       
    }
    function iterator(current,start,stop,jump,startAccel,accel,container,skip){
        this.container=container.offsetWidth;
        this.iterate=current;
        this.storeIterate=current;
        this.startIterate=start;
        this.stopIterate=stop;
        this.storeJump=jump;
        this.jumpIterate=accel;      
        this.startAccel=startAccel;
        this.accel=accel;  
        this.skip=skip;
        this.doIterate=function(operator){
            switch(operator){
            case '+':                        
                if(this.iterate<(this.storeIterate+this.stopIterate)){
                    if(Math.abs(this.iterate)<Math.abs(this.storeIterate+this.startAccel)){this.jumpIterate+=this.accel;} 
                    if((this.iterate>(this.storeIterate+this.stopIterate)-this.startAccel)){                        
                        if(this.jumpIterate>=this.accel*2){this.jumpIterate-=this.accel;}}                                                  
                    this.iterate+=this.jumpIterate; 
                    if(this.iterate>this.storeIterate+this.stopIterate){this.reset(this.storeIterate+this.stopIterate,this.accel,0);}                    
                    if(this.iterate>(this.container-((this.stopIterate*this.skip)+(this.stopIterate-this.startIterate)))){this.reset(this.startIterate,this.accel,1);}  
                    return this.iterate;}
                break;
            case '-':                     
                if(this.iterate>(this.storeIterate-this.stopIterate)){                        
                    if(this.iterate<=this.startIterate){this.reset((this.container-(this.stopIterate*this.skip)-(this.stopIterate-this.startIterate)),this.accel,1);}             
                    if(Math.abs(this.iterate)>Math.abs(this.storeIterate-this.startAccel)){this.jumpIterate+=this.accel;}                        
                    if((this.iterate<=(this.storeIterate-this.stopIterate)+this.startAccel)){                         
                        if(this.jumpIterate>=this.accel*2){this.jumpIterate-=this.accel;}}            
                    this.iterate-=this.jumpIterate;                       
                    //try{display2.innerHTML=this.iterate+"   <-~   "+this.jumpIterate+"   <-~   "+this.storeIterate+"   <-~   "+this.stopIterate;}catch(e){}                    
                    if(this.iterate<this.storeIterate-this.stopIterate){this.reset(this.storeIterate-this.stopIterate,this.accel,0);}                                              
                    return this.iterate;}                
                break;
            };          
            this.jumpIterate=this.accel;  
            this.storeIterate=this.iterate;       
            //try{display1.innerHTML=this.iterate+"   <-~   "+this.jumpIterate+"   <-~   "+this.storeIterate+"   <-~   "+this.stopIterate;}catch(e){}
            return "finished";
        }
    }   
    iterator.prototype.check=function()
    {
        this.lessThanStart=function(){if(this.iterate<this.startIterate){return true;}return false;}
        this.accelerate=function(){if(Math.abs(this.iterate)>=Math.abs(this.fudgEq)){return true;}return false;}    
    }
    iterator.prototype.negToZero=function(a,b){if(a-b<0)return 0;return a-b;}
    iterator.prototype.reset=function(a,b,bool){
        this.iterate=a;
        if(bool){this.storeIterate=a;}
        this.jumpIterate=b;    
    }       