function fadeshow_(theimages, fadewidth, fadeheight, borderwidth, delay, pause, displayorder){
      
     /***********************************************
     * Ultimate Fade-In Slideshow (v1.51): © Dynamic Drive (http://www.dynamicdrive.com)
     * This notice MUST stay intact for legal use
     * Visit http://www.dynamicdrive.com/ for this script and 100s more.
     ***********************************************/
      
     this.fadebgcolor = "white";
     
     ////NO need to edit beyond here/////////////
      
     this.fadearray = new Array(); //array to cache fadeshow instances
     this.fadeclear = new Array(); //array to cache corresponding clearinterval pointers
      
     this.dom=( document.getElementById ); //modern dom browsers
     this.iebrowser = document.all;
      
     this.theimages = theimages;
     
     this.fadewidth = fadewidth;
     this.fadeheight = fadeheight;
     this.borderwidth = borderwidth;
     this.delay = delay;
     this.pause = pause;
     this.displayorder = displayorder;
     
     this.curimageindex=0;
     this.pausecheck=this.pause;
     this.mouseovercheck=0;
     this.degree=10; //initial opacity degree (10%)
     this.nextimageindex=1;
     
     this.fadearray[ this.fadearray.length ] = this;
     
     this.slideshowid=this.fadearray.length-1;
     this.canvasbase="canvas"+this.slideshowid;
     this.curcanvas=this.canvasbase+"_0";
     
     if (typeof displayorder!="undefined")
          this.theimages.sort(function() {return 0.5 - Math.random();}); //thanks to Mike (aka Mwinter) :)
     
     this.imageborder=parseInt( this.borderwidth );
     this.postimages=new Array(); //preload images
     
     for ( p=0; p < this.theimages.length; p++){
          this.postimages[p]=new Image();
          this.postimages[p].src=this.theimages[p][0];
     }
      
     this.fadewidth = this.fadewidth + this.imageborder*2;
     this.fadeheight = this.fadeheight + this.imageborder*2;
     
     if (typeof(_fadeshow__prototype_called) == 'undefined')
     {
        _fadeshow__prototype_called = true;
        fadeshow_.prototype.startit = startit;
        fadeshow_.prototype.fadepic = fadepic;
        fadeshow_.prototype.populateslide = populateslide;
        fadeshow_.prototype.rotateimage = rotateimage;
        fadeshow_.prototype.resetit = resetit;
     }
      
     if ( this.iebrowser && this.dom || this.dom) //if IE5+ or modern browsers (ie: Firefox)
          document.write('<div id="master'+this.slideshowid+'" style="position:relative;width:'+this.fadewidth+'px;height:'+this.fadeheight+'px;overflow:hidden;"><div id="'+this.canvasbase+'_0" style="position:absolute;width:'+this.fadewidth+'px;height:'+this.fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:0.1;-moz-opacity:0.1;-khtml-opacity:0.1;background-color:'+this.fadebgcolor+'"></div><div id="'+this.canvasbase+'_1" style="position:absolute;width:'+this.fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:0.1;-moz-opacity:0.1;-khtml-opacity:0.1;background-color:'+this.fadebgcolor+'"></div></div>');
     else
          document.write('<div><img name="defaultslide'+this.slideshowid+'" src="'+this.postimages[0].src+'"></div>');
      
     if ( this.iebrowser && this.dom || this.dom){ //if IE5+ or modern browsers such as Firefox
          this.startit();
     }
     else{
          this.curimageindex++;
          setInterval("this.fadearray["+this.slideshowid+"].this.rotateimage()", this.delay);
     }
     
     function fadepic( obj ){
          if ( obj.degree<100 )
          {
               obj.degree+=10;
               if (obj.tempobj.filters&&obj.tempobj.filters[0])
               {
                    if (typeof obj.tempobj.filters[0].opacity=="number") //if IE6+
                         obj.tempobj.filters[0].opacity=obj.degree;
                    else //else if IE5.5-
                         obj.tempobj.style.filter="alpha(opacity="+obj.degree+")";
               }
               else if (obj.tempobj.style.MozOpacity)
                    obj.tempobj.style.MozOpacity=obj.degree/101;
               else if (obj.tempobj.style.KhtmlOpacity)
                    obj.tempobj.style.KhtmlOpacity=obj.degree/100;
               else if (obj.tempobj.style.opacity&&!obj.tempobj.filters)
                    obj.tempobj.style.opacity=obj.degree/101;
          }
          else
          {
               clearInterval(fadeclear[obj.slideshowid]);
               obj.nextcanvas=(obj.curcanvas==obj.canvasbase+"_0")? obj.canvasbase+"_0" : obj.canvasbase+"_1";
               obj.tempobj=iebrowser? iebrowser[obj.nextcanvas] : document.getElementById(obj.nextcanvas);
               obj.populateslide(obj.tempobj, obj.nextimageindex);
               obj.nextimageindex=(obj.nextimageindex<obj.postimages.length-1)? obj.nextimageindex+1 : 0;
               setTimeout("this.fadearray["+obj.slideshowid+"].this.rotateimage()", obj.delay);
          }
     }
      
     function populateslide(picobj, picindex){
          var slideHTML="";
          if (this.theimages[picindex][1]!="") //if associated link exists for image
               slideHTML='<a href="'+this.theimages[picindex][1]+'" target="'+this.theimages[picindex][2]+'">';
          slideHTML+='<img src="'+this.postimages[picindex].src+'" border="'+this.imageborder+'px">';
          if (this.theimages[picindex][1]!="") //if associated link exists for image
               slideHTML+='</a>';
          picobj.innerHTML=slideHTML;
     }
      
      
     function rotateimage(){
          if (this.pausecheck==1) //if pause onMouseover enabled, cache object
               var cacheobj=this;
          if (this.mouseovercheck==1)
               setTimeout(function(){cacheobj.rotateimage()}, 100);
          else if ( this.iebrowser && this.dom || this.dom )
          {
               this.resetit();
               var crossobj=this.tempobj=this.iebrowser? this.iebrowser[this.curcanvas] : document.getElementById(this.curcanvas);
               crossobj.style.zIndex++;
               this.fadeclear[this.slideshowid]=setInterval('this.fadepic( this.fadearray['+this.slideshowid+'] )',50);
               this.curcanvas=(this.curcanvas==this.canvasbase+"_0")? this.canvasbase+"_1" : this.canvasbase+"_0";
          }
          else
          {
               var ns4imgobj=document.images['defaultslide'+this.slideshowid];
               ns4imgobj.src=this.postimages[this.curimageindex].src;
          }
          this.curimageindex = ( this.curimageindex < this.postimages.length-1 ) ? this.curimageindex+1 : 0;
     }
      
     function resetit(){
          this.degree=10;
          var crossobj=this.iebrowser? this.iebrowser[this.curcanvas] : document.getElementById(this.curcanvas);
          if (crossobj.filters&&crossobj.filters[0])
          {
               if (typeof crossobj.filters[0].opacity=="number") //if IE6+
                    crossobj.filters(0).opacity=this.degree;
               else //else if IE5.5-
                    crossobj.style.filter="alpha(opacity="+this.degree+")";
          }
          else if (crossobj.style.MozOpacity)
               crossobj.style.MozOpacity=this.degree/101;
          else if (crossobj.style.KhtmlOpacity)
               crossobj.style.KhtmlOpacity=this.degree/100;
          else if (crossobj.style.opacity&&!crossobj.filters)
               crossobj.style.opacity=this.degree/101;
     }
      
      
     function startit(){
          var crossobj=this.iebrowser? this.iebrowser[this.curcanvas] : document.getElementById(this.curcanvas);
          this.populateslide( crossobj, this.curimageindex );
          if (this.pausecheck==1)
          { //IF SLIDESHOW SHOULD PAUSE ONMOUSEOVER
               var cacheobj=this;
               var crossobjcontainer=this.iebrowser? this.iebrowser["master"+this.slideshowid] : document.getElementById("master"+this.slideshowid);
               crossobjcontainer.onmouseover=function(){cacheobj.mouseovercheck=1};
               crossobjcontainer.onmouseout=function(){cacheobj.mouseovercheck=0};
          }
          this.rotateimage();
     }
}
