/**
*/

Slideshow.KenBurns=new Class(
					{
						Extends:Slideshow,options:{
							pan:[100,100],zoom:[50,50]
						},
						initialize:function(B,C,A){
							A.overlap=true;
							A.resize=true;
							["pan","zoom"].each(function(D){
								 if($chk(this[D])){
									 if($type(this[D])!="array"){
										 this[D]=[this[D],this[D]]
									  }
									   this[D].map(function(E){
														return(E.toInt()||0).limit(0,100)
									  })
								}
							},A);
							this.parent(B,C,A)
						},_show:function(B){
						if(!this.image.retrieve("morph")){
							["a","b"].each(function(G){
							    this[G].set("tween",{
										duration:this.options.duration,link:"cancel",onStart:this._start.bind(this),onComplete:this._complete.bind(this),property:"opacity"
								}).get("morph",{duration:(this.options.delay+this.options.duration*2),link:"cancel",transition:$arguments(0)})
							  },this)
							}this.image.set("styles",{
								bottom:"auto",left:"auto",right:"auto",top:"auto"
							});var D=["top left","top right","bottom left","bottom right"][this.counter%4].split(" ");
							D.each(function(G){this.image.setStyle(G,0)},this);
							dh=this.height/this.preloader.height;
							dw=this.width/this.preloader.width;
							delta=(dw>dh)?dw:dh;
							var A={};
							var E=($random.run(this.options.zoom)/100)+1;
							var F=Math.abs(($random.run(this.options.pan)/100)-1);
							["height","width"].each(function(J,G){
									             var I=Math.ceil(this.preloader[J]*delta);
												 var H=(I*E).toInt();A[J]=[H,I];
												  if(dw>dh||G){I=(this[J]-this.image[J]);
												   H=(I*F).toInt();
												   A[D[G]]=[H,I]}
											 },this);
							//var C=(this.firstrun&&this.options.paused);  comment by amit
							var C= true;
							if(B||C){
								
								this._center(this.image);this.image.get("morph").cancel();
								 if(C){
									this.image.get("tween").cancel().set(0).start(1)
								}else{
									this.image.get("tween").cancel().set(1)
								}
							}else{
								 this.image.get("morph").start(A);
								 this.image.get("tween").set(0).start(1)
							}
						}
				 });