var noobSlide=new Class({
    initialize:function(a){
	this.items=a.items;this.mode=a.mode||'horizontal';this.modes={
	    horizontal:['left','width'],
	    vertical:['top','height']
		//size antigo era 240
	    };this.size=a.size||250;this.box=a.box.setStyle(this.modes[this.mode][1],((this.size*this.items.length)+((this.size-1)*11))+'px');this.button_event=a.button_event||'click';this.handle_event=a.handle_event||'click';this.onWalk=a.onWalk||null;this.currentIndex=null;this.previousIndex=null;this.nextIndex=null;this.interval=a.interval||5000;this.autoPlay=a.autoPlay||false;this._play=null;this.handles=a.handles||null;if(this.handles){
	    this.addHandleButtons(this.handles)
	    }this.buttons={
	    previous:[],
	    next:[],
	    play:[],
	    playback:[],
	    stop:[]
	};if(a.addButtons){
	    for(var b in a.addButtons){
		this.addActionButtons(b,$type(a.addButtons[b])=='array'?a.addButtons[b]:[a.addButtons[b]])
		}
	    }this.fx=new Fx.Tween(this.box,$extend((a.fxOptions||{
	    duration:200,
	    wait:false
	}),{
	    property:this.modes[this.mode][0]
	    }));this.walk((a.startItem||0),true,true)
	this.maxlenght = a.maxlenght;
	},
    addHandleButtons:function(a){
	for(var i=0;i<a.length;i++){
	    a[i].addEvent(this.handle_event,this.walk.bind(this,[i,true]))
	    }
	},
    addActionButtons:function(a,b){
	for(var i=0;i<b.length;i++){
	    switch(a){
		case'previous':b[i].addEvent(this.button_event,this.previous.bind(this,[true]));break;case'next':b[i].addEvent(this.button_event,this.next.bind(this,[true]));break;case'play':b[i].addEvent(this.button_event,this.play.bind(this,[this.interval,'next',false]));break;case'playback':b[i].addEvent(this.button_event,this.play.bind(this,[this.interval,'previous',false]));break;case'stop':b[i].addEvent(this.button_event,this.stop.bind(this));break
		    }this.buttons[a].push(b[i])
	    }
	},
    previous:function(a){
	this.walk((this.currentIndex>0?this.currentIndex-1:this.items.length-1),a)
	},
    next:function(a){
	this.walk((this.currentIndex<this.items.length-1?this.currentIndex+1:0),a)
	},
    play:function(a,b,c){
	this.stop();if(!c){
	    this[b](false)
	    }this._play=this[b].periodical(a,this,[false])
	},
    stop:function(){
	$clear(this._play)
	},
    walk:function(a,b,c){
	if(a!=this.currentIndex){
	    this.currentIndex=a;this.previousIndex=this.currentIndex+(this.currentIndex>0?-1:this.items.length-1);this.nextIndex=this.currentIndex+(this.currentIndex<this.items.length-1?1:1-this.items.length);if(b){
		this.stop()
		}if(c){
		this.fx.cancel().set((this.size*-this.currentIndex)+'px')
		}else{
		   if( this.maxlenght - this.size * this.items.length  > this.size *-this.currentIndex ){
		    this.fx.start( 0 );
		    this.currentIndex = 0;
		}
		else{
		    this.fx.start(this.size *-this.currentIndex);
		}
		}if(b&&this.autoPlay){
		this.play(this.interval,'next',true)
		}if(this.onWalk){
		this.onWalk((this.items[this.currentIndex]||null),(this.handles&&this.handles[this.currentIndex]?this.handles[this.currentIndex]:null))
		}
	    }
	}
    });