window.jscroller2 = new Object, jscroller2.obj = [], jscroller2.delayer = 0, jscroller2.ileave = 0;
jscroller2.set_eventListener = function (a, b, c) {
   if (a && b && c) {
      window.attachEvent ? a.attachEvent("on" + b, c) : a.addEventListener(b, c, false);
      }
   };
jscroller2.add_scroller = function (a, b) {
   if (a && b) {
      var c = 0, speed = 4, pause = 0, ileave = 0, alternate = 0, dynamic = 0, child_div = a, child_div_classNames = child_div.className.split(" "), parent_div = a.parentNode, child_endless = null, child_endless_Width = null, child_endless_Height = null;
      if (parent_div.className.indexOf("jscroller2") >= 0) {
         parent_div = parent_div.parentNode;
         }
      if (parent_div) {
         parent_div.style.position = "relative";
         parent_div.style.overflow = "hidden";
         var d = parent_div.getElementsByTagName("div");
         for (var i = 0; i < d.length; i++) {
            var e = d[i].className.split(" ");
            if (jscroller2.check_array(e, "jscroller2_" + b + "_endless")) {
               child_endless = d[i];
               }
            }
         if (child_div) {
            child_div.style.position = "absolute";
            child_div.style.top = 0;
            child_div.style.left = 0;
            switch (b) {
               case "down" : child_div.style.width = parent_div.clientWidth + "px";
               child_div.style.top = child_div.clientHeight * - 1 + parent_div.clientHeight + "px";
               break;
               case "up" : child_div.style.width = parent_div.clientWidth + "px";
               break;
               case "right" : child_div.style.height = parent_div.clientHeight + "px";
               child_div.style.left = child_div.clientWidth * - 1 + parent_div.clientWidth + "px";
               break;
               case "left" : child_div.style.height = parent_div.clientHeight + "px";
               break;
               default : ;
               }
            if (child_endless) {
               child_endless.style.position = "absolute";
               child_endless_Width = child_endless.clientWidth;
               child_endless_Height = child_endless.clientHeight;
               switch (b) {
                  case "down" : child_endless.style.top = child_endless_Height * - 1 + "px";
                  child_endless.style.left = 0;
                  child_endless.style.width = parent_div.clientWidth + "px";
                  break;
                  case "up" : child_endless.style.top = child_div.clientHeight + "px";
                  child_endless.style.left = 0;
                  child_endless.style.width = parent_div.clientWidth + "px";
                  break;
                  case "left" : child_endless.style.top = 0;
                  child_endless.style.left = child_div.clientWidth + "px";
                  child_endless.style.height = parent_div.clientHeight + "px";
                  break;
                  case "right" : child_endless.style.top = 0;
                  child_endless.style.left = child_div.clientWidth * - 1 + "px";
                  child_endless.style.height = parent_div.clientHeight + "px";
                  break;
                  default : ;
                  }
               }
            }
         if (dspeed = jscroller2.check_array(child_div_classNames, "jscroller2_speed-", 1)) {
            speed = parseFloat(dspeed.split("jscroller2_speed-")[1] || 10) / 10;
            if (window.attachEvent && speed < 1) {
               speed = 1;
               }
            }
         if (dspeed = jscroller2.check_array(child_div_classNames, "jscroller2_ignoreleave")) {
            jscroller2.ileave = 1;
            }
         if (jscroller2.check_array(child_div_classNames, "jscroller2_alternate")) {
            alternate = 1;
            }
         if (jscroller2.check_array(child_div_classNames, "jscroller2_dynamic")) {
            dynamic = 1;
            }
         if (ddelay = jscroller2.check_array(child_div_classNames, "jscroller2_delay-", 1)) {
            pause = 1;
            jscroller2.delayer = 1;
            c = ddelay.split("jscroller2_delay-")[1] * 1000;
            }
         if (jscroller2.check_array(child_div_classNames, "jscroller2_mousemove")) {
            jscroller2.set_eventListener(child_div, "mouseover", jscroller2.stop_sel_jscroller);
            jscroller2.set_eventListener(child_div, "mouseout", jscroller2.start_sel_jscroller);
            if (child_endless) {
               jscroller2.set_eventListener(child_endless, "mouseover", jscroller2.stop_sel_jscroller);
               jscroller2.set_eventListener(child_endless, "mouseout", jscroller2.start_sel_jscroller);
               }
            }
         jscroller2.obj.push([parent_div, parent_div.clientHeight, parent_div.clientWidth, child_div, child_div.clientHeight, child_div.clientWidth, child_endless, child_endless_Height, child_endless_Width, b, speed, pause, c, alternate, dynamic]);
         }
      }
   };
jscroller2.init_jscroller2 = function () {
   for (var i = 0; i < jscroller2.obj.length; i++) {
      var a = jscroller2.obj[i][0], parent_div_height = jscroller2.obj[i][1], parent_div_width = jscroller2.obj[i][2], child_div = jscroller2.obj[i][3], child_div_height = jscroller2.obj[i][4], child_div_width = jscroller2.obj[i][5], endless_div = jscroller2.obj[i][6], endless_div_height = jscroller2.obj[i][7], endless_div_width = jscroller2.obj[i][8], direction = jscroller2.obj[i][9], speed = jscroller2.obj[i][10], pause = jscroller2.obj[i][11], delay = jscroller2.obj[i][12], alternate = jscroller2.obj[i][13], dynamic = jscroller2.obj[i][14];
      if (!pause && !delay) {
         if (dynamic) {
            child_div_height = jscroller2.obj[i][4] = child_div.clientHeight;
            child_div_width = jscroller2.obj[i][5] = child_div.clientWidth;
            if (endless_div) {
               endless_div_height = jscroller2.obj[i][7] = endless_div.clientHeight;
               endless_div_width = jscroller2.obj[i][8] = endless_div.clientWidth;
               }
            }
         switch (direction) {
            case "down" : case "up" : var b = parseFloat(child_div.style.top.split("px")[0]);
            if (direction == "down") {
               alternate == 2 ? (b -= speed) : (b += speed);
               }
            else {
               alternate == 2 ? (b += speed) : (b -= speed);
               }
            if (endless_div && !alternate) {
               b = jscroller2.check_endless(direction, "top", b, endless_div, child_div_height, parent_div_height, endless_div_height, speed, alternate);
               }
            else {
               if (alternate) {
                  var c = direction == "down" ? 1 : 2, alternate_helper_2 = direction == "down" ? 2 : 1;
                  if (alternate == c && (child_div_height > parent_div_height && b + speed > 0 || child_div_height < parent_div_height && b + child_div_height + speed > parent_div_height)) {
                     jscroller2.obj[i][13] = alternate_helper_2;
                     }
                  if (alternate == alternate_helper_2 && (child_div_height > parent_div_height && b + child_div_height < parent_div_height + speed || child_div_height < parent_div_height && b < 0)) {
                     jscroller2.obj[i][13] = c;
                     }
                  }
               else {
                  if (direction == "down") {
                     if (b > parent_div_width) {
                        b = child_div_height * - 1;
                        }
                     }
                  else {
                     if (b < child_div_height * - 1) {
                        b = parent_div_height;
                        }
                     }
                  }
               }
            child_div.style.top = b + "px";
            break;
            case "left" : case "right" : var d = parseFloat(child_div.style.left.split("px")[0]);
            if (direction == "left") {
               alternate == 2 ? (d += speed) : (d -= speed);
               }
            else {
               alternate == 2 ? (d -= speed) : (d += speed);
               }
            if (endless_div && !alternate) {
               d = jscroller2.check_endless(direction, "left", d, endless_div, child_div_width, parent_div_width, endless_div_width, speed, alternate);
               }
            else {
               if (alternate) {
                  var c = direction == "left" ? 1 : 2, alternate_helper_2 = direction == "left" ? 2 : 1;
                  if (alternate == alternate_helper_2 && (child_div_width > parent_div_width && d + speed > 0 || child_div_width < parent_div_width && d + child_div_width + speed > parent_div_width)) {
                     jscroller2.obj[i][13] = c;
                     }
                  if (alternate == c && (child_div_width > parent_div_width && d + child_div_width < parent_div_width + speed || child_div_width < parent_div_width && d - speed < 0)) {
                     jscroller2.obj[i][13] = alternate_helper_2;
                     }
                  }
               else {
                  if (direction == "left") {
                     if (d < child_div_width * - 1) {
                        d = parent_div_width;
                        }
                     }
                  else {
                     if (d > parent_div_width) {
                        d = child_div_width * - 1;
                        }
                     }
                  }
               }
            child_div.style.left = d + "px";
            break;
            default : ;
            }
         }
      }
   };
jscroller2.check_endless = function (a, b, c, d, e, f, g, h, i) {
   switch (a) {
      case "down" : case "right" : var j = parseFloat(d.style[b].split("px")[0]) + h;
      if (c > 0 && c <= f) {
         d.style[b] = c - g + "px";
         }
      if (j + g >= f && j <= f + h) {
         d.style[b] = j + "px";
         c = j + e * - 1;
         }
      return c;
      break;
      case "up" : case "left" : var j = parseFloat(d.style[b].split("px")[0]) - h;
      if (c + e <= f) {
         d.style[b] = c + e + "px";
         }
      if (j + g <= f && j + g + h >= 0) {
         d.style[b] = j + "px";
         c = j + g;
         }
      return c;
      break;
      default : ;
      }
   };
jscroller2.start_jscroller = function (e) {
   if (!jscroller2.timer) {
      jscroller2.timer = window.setInterval(jscroller2.init_jscroller2, jscroller2.refreshtime || 150);
      }
   };
jscroller2.stop_jscroller = function (e) {
   if (jscroller2.timer) {
      window.clearInterval(jscroller2.timer);
      jscroller2.timer = false;
      }
   };
jscroller2.set_jscroller2_events = function (e) {
   var a = document.getElementsByTagName("div");
   for (var i = 0; i < a.length; i++) {
      var b = a[i].className.split(" ");
      if (jscroller2.check_array(b, "jscroller2_down")) {
         jscroller2.add_scroller(a[i], "down");
         }
      else if (jscroller2.check_array(b, "jscroller2_up")) {
         jscroller2.add_scroller(a[i], "up");
         }
      else if (jscroller2.check_array(b, "jscroller2_left")) {
         jscroller2.add_scroller(a[i], "left");
         }
      else if (jscroller2.check_array(b, "jscroller2_right")) {
         jscroller2.add_scroller(a[i], "right");
         }
      }
   if (jscroller2.obj.length > 0) {
      jscroller2.start_jscroller();
      if (jscroller2.delayer) {
         for (var i = 0; i < jscroller2.obj.length; i++) {
            if (jscroller2.obj[i][12] > 0) {
               window.setTimeout("jscroller2.update_delayer(" + jscroller2.obj[i][12] + ",0)", jscroller2.obj[i][12]);
               }
            }
         }
      if (jscroller2.ileave == 0) {
         jscroller2.set_eventListener(window, "focus", jscroller2.start_jscroller);
         jscroller2.set_eventListener(window, "blur", jscroller2.stop_jscroller);
         jscroller2.set_eventListener(window, "resize", jscroller2.start_jscroller);
         jscroller2.set_eventListener(window, "scroll", jscroller2.start_jscroller);
         }
      }
   };
jscroller2.stop_sel_jscroller = function (a) {
   if (a.target || a.srcElement) {
      var b = a.target ? a.target : a.srcElement;
      for (var i = 0; i < 5; i++) {
         if (b.className.indexOf("jscroller2_mousemove") < 0 && b.className.indexOf("_endless") < 0) {
            b = b.parentNode;
            }
         else {
            break;
            }
         }
      jscroller2.update_sel_jscroller(b, 1);
      }
   };
jscroller2.start_sel_jscroller = function (a) {
   if (a.target || a.srcElement) {
      var b = a.target ? a.target : a.srcElement;
      for (var i = 0; i < 5; i++) {
         if (b.className.indexOf("jscroller2_mousemove") < 0 && b.className.indexOf("_endless") < 0) {
            b = b.parentNode;
            }
         else {
            break;
            }
         }
      jscroller2.update_sel_jscroller(b, 0);
      }
   };
jscroller2.update_delayer = function (a) {
   if (a > 0) {
      for (var i = 0; i < jscroller2.obj.length; i++) {
         if (a == jscroller2.obj[i][12]) {
            jscroller2.obj[i][12] = 0;
            jscroller2.obj[i][11] = 0;
            }
         }
      }
   };
jscroller2.update_sel_jscroller = function (a, b) {
   if (a && b >= 0) {
      for (var i = 0; i < jscroller2.obj.length; i++) {
         if (a == jscroller2.obj[i][3] || a == jscroller2.obj[i][6]) {
            jscroller2.obj[i][11] = b;
            }
         }
      }
   };
jscroller2.check_array = function (a, b, c) {
   if (a && b) {
      var d = false;
      for (var i = 0; i < a.length; i++) {
         if (c) {
            if (a[i].indexOf(b) >= 0) {
               d = a[i];
               }
            }
         else {
            if (a[i] == b) {
               d = a[i];
               }
            }
         }
      }
   return d;
   };
jscroller2.set_eventListener(window, "load", jscroller2.set_jscroller2_events);