  var ScaleView=new Class({
  	Implements:[Events,Options],
  	options:{
  		css:'#slide',
  		operafix:true,
  		letterbox:true
  	},
  	initialize:function(options){
  		var self=this.setOptions(options);
  		this.needHelp=Browser.Engine.trident?(Browser.Engine.version<5||(document.documentMode||0)<8):Browser.Engine.webkit;
  		this.loads=$$(this.options.css+' img');
  		if(this.needHelp) this.scale();
  		
  		window.addEvents({
  			mousewheel:$lambda(!(Browser.Engine.presto&&this.options.operafix)),
  			resize:this.scale.bind(this)
  		});
  	},
  	scale:function(e){
  		this.loads.each( function(i){ 
  			var self = this;
  			if(i.complete){
  				i.store('js',i.style.width=i.style.height='auto');
  				try{i.style.minWidth=i.style.minHeight='inherit'}catch(e){}
  				if(!this.needHelp)i.setStyles((i.width>i.height||!this.options.letterbox)?{minWidth:'100%',minHeight:'50%'}:{height:'50%'});
  				if(this.needHelp&&((e=window.getSize()).x!=i.x||e.y!=i.y)){
  		
  					var s=i,width=Math.round(e.y*(s.width/s.height));this.x=e.x;this.y=e.y;
  					if((s.width>s.height||!this.options.letterbox)&&e.x>width)width='100%';
  					i.setStyle('width',width);
  				}
  			}else{
  				setTimeout(self.scale.bind(self), 1);
  			}
  		}, this);
  	}
  });
  window.addEvent('domready',function(){new ScaleView()});
