// Improved Reflector code
// credits: http://julian.dreissig.net/?p=4
	
	var Reflector = {
	  reflect: function(element) {
		element = $(element);
		options = $H({
		  amount: 1/3,
		  opacity: 1/3,
		  fade: 1
		}).merge(arguments[1] || {});
	
		var p = element.parentNode, n = element.nextSibling;
		var d = 1.0/(element.height*options.amount);
		var f = document.createDocumentFragment();
		
		(element.height*options.amount).times( function(line) {
		  var h = Builder.node('div',{
			style: 'height:1px; width:'+element.width+'px;'
				  +'background-image:url('+element.src+');'
				  +'background-position:0 '+(line+1)+'px;'
				  +'overflow:hidden;'
		  });
		  $(h).setOpacity(Math.pow(1-d*line,options.fade)*options.opacity); // IE needs the $()
		  f.appendChild(h);
		});
		
		// update the view now
		p.insertBefore(f,n);    	
	  }  
	}	

	function Reflect(_num) {	
		// delete existing reflections by deleting surrounding div contents and re-inserting the original image
		div = $('imageDiv'+_num);
		var _img = document.getElementsByClassName('picture',div)[0];
		div.innerHTML = "";
		div.appendChild(_img);
		
		// do the reflection
		Reflector.reflect('picture'+_num,{ amount: 0.20, opacity: 0.33, fade: 1});	
	}