<!--

   /* ============================= */
   /* -- Configuration Variables -- */
   /* ============================= */
      sliderIncrement  = 10;    // Slider nav speed. This must be an even number to prevent menu from "jumping" left or right 1 pixel when in motion!
      dropIncrement    = 30;    // Drop-down nav speed.
      menuCloseDelay   = 1;     // Delay to close menu's when mouse moves off (in milliseconds), not when cancelled (mouse off while opening).
      menuSlideUp      = false; // Slide menu's up (true) instead of down (false).
      enableMouseovers = true;  // Whether or not to enable mouseover's via this script.
   // --- Begin: Positioning Configuration ---
      dropMenuTopOffset = -18;   // Top offset for dropdown menus (necessary for overlaying shadows from menu buttons).
   // --- Begin: Shadow-specific Configuration ---
   // Universal:
      shadowImageLink = "../images/nav/shadow2.png";
      dropShadowOn    = false; // Drop shadows on (true) or off (false).
      balloonShadowOn = false; // Drop shadows on (true) or off (false) for balloons.
      topAlignShadow  = true;  // Aligns shadow with top of image (even with moving shadow), on (true) or off (false).
   // Variable offset (shadow with light-source):
      movingShadow    = false; // Calculate Shadow Movement (true or false).
      movementRange   = 30;    // Range for offset and overlay if shadow is moving.
   // ...OR:
   // Relative offset (static):
      shadowOffsetX   = -20;   // Shadow offset (from left).
      shadowOffsetY   = 0;     // Shadow offset (from top).
      shadowOverlayX  = 40;    // Shadow offset (past right).
      shadowOverlayY  = 15;    // Shadow offset (past bottom).
   // --- End: Shadow-specific Configuration ---
      fadeBalloons    = false; // Causes balloons to fade in/out.
      fadeSpeed       = 100;   // Speed of fade ( in milliseconds ).
   /* ============================= */

   /* ======================================= */
   /* -- Program Variables - DO NOT MODIFY -- */
   /* ======================================= */
      try {
         sliderVisible = false;

         if( sliderVisible == true ) {
            spacerIncrement = sliderIncrement / 2;
            leftSliderMax   = leftSpacerLength;
            rightSliderMax  = rightSpacerLength;
            sliderLength    = currentItemWidth; }

         shadowImage = new Image();

         shadowImage.src = shadowImageLink; }
      catch( err ) { /* Do nothing, ignore error */ }
   /* ======================================= */

   /* ============================================== */
   /* -- Debugging Tools - Remove When Going Live -- */
   /* ============================================== */
      var boxCount = 0;

   function drawBox( x1, y1, x2, y2, boxData ) {
      box = document.createElement( 'div' );

      boxCount++;

      box.id                    = 'box' + boxCount.toString();
      box.zIndex                = 10000;
      box.style.position        = 'absolute';
      box.style.left            = parseInt( x1 ) + 'px';
      box.style.top             = parseInt( y1 ) + 'px';
      box.style.width           = parseInt( x2 - x1 ) + 'px';
      box.style.height          = parseInt( y2 - y1 ) + 'px';
      box.style.borderStyle     = 'solid';
      box.style.borderColor     = '#ff0000';
      box.style.borderWidth     = '1px';
      box.style.backgroundColor = '#ffffff';
      box.style.opacity         = 0.50;
      box.style.MozOpacity      = 0.50;
      box.style.KhtmlOpacity    = 0.50;
      box.style.filter          = "alpha(opacity=50)";
      box.style.visibility      = 'visible';
      box.innerHTML             = boxData;
      box.style.fontFamily      = 'Verdana';
      box.style.fontWeight      = 'bold';
      box.style.fontSize        = '10pt';
      box.style.textAlign       = 'left';
      box.style.color           = '#000000';

      // Set click event to kill the box:
      try {
         eval ( "box.attachEvent( 'onclick', function() { setTimeout( \"document.body.removeChild( document.getElementById( '" + box.id + "' ) );\", 500 ); } );" );

         box.style.cursor = 'pointer'; }
      catch( err ) {
         box.setAttribute( 'onClick', "setTimeout( \"document.body.removeChild( document.getElementById( '" + box.id + "' ) )\", 500 );" );

         box.style.cursor = 'pointer'; }

      document.body.appendChild( box );

      return true; }
   /* ============================================== */

   function getBrowserWidth() {
      if( document.body.clientWidth ) {
         browseWidth  = document.body.clientWidth; }
      else if( window.outerWidth ) {
         browseWidth  = window.outerWidth; }

      return browseWidth; }

   function getBrowserHeight() {
      if( document.body.clientHeight ) {
         browseHeight = document.body.clientHeight; }
      else if( window.outerHeight ) {
         browseHeight = window.outerHeight; }

      return browseHeight; }

   // Initiate Mouse Functions:
   var mouseX = 0;
   var mouseY = 0;

   function checkBrowser() {
      this.ver = navigator.appVersion;
      this.dom = document.getElementById ? 1 : 0;
      this.ie6 = ( this.ver.indexOf( "MSIE 6" ) > -1 ) ? 1 : 0;
      this.ie5 = ( this.ver.indexOf( "MSIE 5" ) > -1 && this.dom ) ? 1 : 0;
      this.ie4 = ( document.all && !this.dom ) ? 1 : 0;
      this.ie  = ( this.ver.indexOf( "MSIE" ) > -1 ) ? 1 : 0;
      this.ns5 = ( this.dom && parseInt( this.ver ) >= 5 ) ? 1 : 0;
      this.ns4 = ( document.layers && !this.dom ) ? 1 : 0;
      this.bw  = ( this.ie5 || this.ie4 || this.ns4 || this.ns5 );

      return this; }

   bw = new checkBrowser();

   function cursorInit() {
      try { document.captureEvents( Event.MOUSEMOVE ); } catch( err ) { /* Do Nothing, Ignore Errore */ }

//      document.onmousemove = move;
      document.onmousemove = getMouseXY;
   }

   function makeCursorObj( obj, nest ) {
      nest        = ( !nest ) ? '' : 'document.' + nest + '.';
      this.css    = bw.dom ? document.getElementById( obj ).style : bw.ie4 ? document.all[ obj ].style : bw.ns4 ? eval( nest + "document.layers." + obj ) : 0;
      this.moveIt = b_moveIt;

      return this; }

   function move( e ) {
      var nX = 0;
      var nY = 0;

      errMsg = "Error: Browser not detected!";

      if( bw ) {
         errMsg = "";

         try {
            nX = e.clientX;
            nY = e.clientY; }
         catch( err ) {
            errMsg = 'Error [#' + err.number + '] tracking mouse: (' + nX.toString() + ', ' + nY.toString() + '), Description: ' + err.description; }

         try {
            nX = bw.ns4 || bw.ns5 ? e.pageX : event.x;
            nY = bw.ns4 || bw.ns5 ? e.pageY : event.y;

            errMsg = ""; }
         catch( err ) {
            errMsg = 'Error [#' + err.number + '] tracking mouse: (' + nX.toString() + ', ' + nY.toString() + '), Description: ' + err.description; }

         mouseX = nX;
         mouseY = nY; }

/* === Activate to Debug Mouse Tracker === */
//      if( errMsg > "" ) { window.status = errMsg; } else { window.status = 'Mouse: (' + mouseX.toString() + ', ' + mouseY.toString() + ') / '; }
/* ======================================= */ }

   function getMouseXY( e ) {
      var nX = 0;
      var nY = 0;

      errMsg = "Error: Browser not detected!";

         try {                                              // grab the x-y pos.s if browser is IE
            nX = event.clientX + document.body.scrollLeft;
            nY = event.clientY + document.body.scrollTop; }
         catch( err ) {
            errMsg = 'Error [#' + err.number + '] tracking mouse: (' + nX.toString() + ', ' + nY.toString() + '), Description: ' + err.description; }

         try {                                              // grab the x-y pos.s if browser is NS
            nX = e.pageX;
            nY = e.pageY;

            errMsg = ""; }
         catch( err ) {
            errMsg = 'Error [#' + err.number + '] tracking mouse: (' + nX.toString() + ', ' + nY.toString() + '), Description: ' + err.description; }

      if( nX < 0 ) { nX = 0; }
      if( nY < 0 ) { nY = 0; }

      mouseX = nX;
      mouseY = nY;

/* === Activate to Debug Mouse Tracker === */
//      if( errMsg > "" ) { window.status = errMsg; } else { window.status = 'Mouse: (' + mouseX.toString() + ', ' + mouseY.toString() + ') / '; }
/* ======================================= */

      return true; }

   cursorInit();

   function toggleSlider() {
      if( document.getElementById( 'menu_bar' ) ) {
         if( sliderVisible == false ) {
            showSlider(); }
         else if( sliderVisible == true ) {
            hideSlider(); } }

      return true; }

   function showSlider() {
      if( sliderVisible == false ) {
         setSlider();

         return false; }

      mb = document.getElementById( 'menu_bar'     );
      n  = document.getElementById( 'menu_buttons' );
      s  = document.getElementById( 'slider'       );
      ls = document.getElementById( 'left_spacer'  );
      rs = document.getElementById( 'right_spacer' );

      if( sliderLength > sliderMaxLength - sliderIncrement ) {
         document.getElementById( 'menu_slider_button' ).className = 'menu_slider_button_open';

         return false; }
      else {
         sliderVisible = true;

         leftSpacerLength  -= spacerIncrement;
         rightSpacerLength -= spacerIncrement;
         sliderLength      += sliderIncrement;

         if( leftSpacerLength < 0 ) {
            rightSpacerLength = rightSpacerLength + leftSpacerLength;
            leftSpacerLength  = 0; }
         else if( rightSpacerLength < 0 ) {
            leftSpacerLength  = leftSpacerLength + rightSpacerLength;
            rightSpacerLength = 0; }

         // Position current menu item in menu bar:
         mb.style.width = sliderLength + 'px';
         ls.style.width = leftSpacerLength  + 'px';
         rs.style.width = rightSpacerLength + 'px';
         s.style.width  = sliderLength + 'px';
         n.style.left   = -leftSpacerLength + 'px';

         setTimeout( "showSlider( false )", 1 ); }

      return true; }

   function hideSlider() {
      mb = document.getElementById( 'menu_bar'     );
      n  = document.getElementById( 'menu_buttons' );
      s  = document.getElementById( 'slider'       );
      ls = document.getElementById( 'left_spacer'  );
      rs = document.getElementById( 'right_spacer' );

      if( sliderLength <= currentItemWidth ) {
         s.style.width = currentItemWidth + 'px';
         sliderVisible = false;

         document.getElementById( 'menu_slider_button' ).className = 'menu_slider_button_closed';

         resetSlider();

         return false; }
      else {
         leftSpacerLength  += spacerIncrement;
         rightSpacerLength += spacerIncrement;
         sliderLength      -= sliderIncrement;

         if( leftSpacerLength > leftSliderMax ) {
            rightSpacerLength = rightSpacerLength + ( leftSpacerLength - leftSliderMax );
            leftSpacerLength  = leftSliderMax; }
         else if( rightSpacerLength > rightSliderMax ) {
            leftSpacerLength  = leftSpacerLength + ( rightSpacerLength - rightSliderMax );
            rightSpacerLength = rightSliderMax; }

         mb.style.width = sliderLength + 'px';
         ls.style.width = leftSpacerLength  + 'px';
         rs.style.width = rightSpacerLength + 'px';
         s.style.width  = sliderLength + 'px';
         n.style.left   = -leftSpacerLength + 'px';

         setTimeout( "hideSlider()", 1 ); }

      return true; }

   function setSlider() {
      ls = document.getElementById( 'left_spacer'  );
      rs = document.getElementById( 'right_spacer' );

      if( rightSpacerLength > rightSliderMax ) {
         if( rightSpacerLength > ( rightSliderMax + spacerIncrement ) ) {
            rightSpacerLength -= spacerIncrement;
            leftSpacerLength  += spacerIncrement; }
         else {
            leftSpacerLength  += rightSpacerLength - rightSliderMax;
            rightSpacerLength  = rightSliderMax; } }
      else {
         leftSpacerLength  -= ( rightSliderMax - rightSpacerLength );
         rightSpacerLength  = rightSliderMax; }

      rs.style.width = rightSpacerLength + 'px';
      ls.style.width = leftSpacerLength + 'px';

      if( rightSpacerLength <= rightSliderMax ) {
         sliderVisible = true;

         showSlider();

         return false; }
      else {
         setTimeout( "setSlider()", 1 ); }

      return true; }

   function resetSlider() {
      ls = document.getElementById( 'left_spacer'  );
      rs = document.getElementById( 'right_spacer' );

      if( leftSpacerLength > 0 ) {
         if( leftSpacerLength > spacerIncrement ) {
            leftSpacerLength  -= spacerIncrement;
            rightSpacerLength += spacerIncrement; }
         else {
            rightSpacerLength += leftSpacerLength;
            leftSpacerLength   = 0; } }
      else {
         rightSpacerLength += leftSpacerLength - leftSliderMax;
         leftSpacerLength   = 0; }

      ls.style.width = leftSpacerLength + 'px';
      rs.style.width = rightSpacerLength + 'px';

      if( leftSpacerLength <= 0 ) {
         return false; }
      else {
         setTimeout( "resetSlider()", 1 ); }

      return true; }

   function turnOnImage( imgId ) {
      if( !enableMouseovers ) { return; }

      if( document.getElementById( imgId ) ) {
         i = document.getElementById( imgId );

         if( i.src.indexOf( '_off.' ) > 0 ) {
            i.src = i.src.replace( '_off.', '_on.' ); }
         else if( i.getAttribute( 'originalSource' ) ) {
            if( i.getAttribute( 'originalSource' ).indexOf( '_off.' ) > 0 ) {
               i.src = i.getAttribute( 'originalSource' ).replace( '_off.', '_on.' ); } } }

      return true; }

   function turnOffImage( imgId ) {
      if( !enableMouseovers ) { return; }

      if( document.getElementById( imgId ) ) {
         i = document.getElementById( imgId );

         if( i.src.indexOf( '_on.' ) > 0 ) {
            i.src = i.src.replace( '_on.', '_off.' ); }
         else if( i.getAttribute( 'originalSource' ) ) {
            if( i.getAttribute( 'originalSource' ).indexOf( '_on.' ) > 0 ) {
               i.src = i.getAttribute( 'originalSource' ).replace( '_on.', '_off.' ); } } }

      return true; }

   function toggleImage( imgId ) {
      if( !enableMouseovers ) { return; }

      if( document.getElementById( imgId ) ) {
         i = document.getElementById( imgId );

         if( i.src.indexOf( '_on.' ) > 0 ) {
            i.src = i.src.replace( '_on.', '_off.' ); }
         else if( i.src.indexOf( '_off.' ) > 0 ) {
            i.src = i.src.replace( '_off.', '_on.' ); } }

      return true; }

   function findPosX( obj ) {
      var curleft = 0;

      if( obj.offsetParent ) {
         while( 1 ) {
            curleft += obj.offsetLeft;

            if( !obj.offsetParent ) { break; }

            obj = obj.offsetParent; } }
      else if( obj.x ) {
         curleft += obj.x; }

      return curleft; }

   function findPosY( obj ) {
      var curtop = 0;

      if( obj.offsetParent ) {
         while( 1 ) {
            curtop += obj.offsetTop;

            if( !obj.offsetParent ) { break; }

            obj = obj.offsetParent; } }
      else if( obj.y ) {
         curtop += obj.y; }

      return curtop; }

   function findWidth( obj ) {
      try {
         if( obj.style.width ) {
            return parseInt( obj.style.width ); } }
      catch( err ) { /* Do Nothing, Ignore Error */ }

      if( obj.offsetWidth ) {
         return parseInt( obj.offsetWidth ); }
      else if( obj.width ) {
         return parseInt( obj.width ); }
      else {
         return null; } }

   function findHeight( obj ) {
      try {
         if( obj.style.height ) {
            return parseInt( obj.style.height ); } }
      catch( err ) { /* Do Nothing, Ignore Error */ }

      if( obj.offsetHeight ) {
         return parseInt( obj.offsetHeight ); }
      else if( obj.height ) {
         return parseInt( obj.height ); }
      else {
         return null; } }

   function getContentHeight( obj ) {
      contentHeight = 0;

      if( obj.childNodes ) {
         for( i = 0; i < obj.childNodes.length; i++ ) {
            c = obj.childNodes[ i ];

            if( c.style ) {
               if( c.style.visibility == 'visible' ) {

                  contentHeight += findHeight( c ); } } } }

      return contentHeight; }

   function findSubmenuHeight( smo ) {
      submenuHeight = 0;

      if( smo.childNodes ) {
         for( i = 0; i < smo.childNodes.length; i++ ) {
            c = smo.childNodes[ i ];

            if( c.style ) {
               if( c.style.display == 'block' ) {
                  submenuHeight += findHeight( c ); } } } }

      return submenuHeight; }

   function findMenuHeight( obj ) {
      var totalHeight = getContentHeight( obj );

      var excludeHeight = 0;

      if( document.getElementById( obj.id + 'o' ) ) {
         smc = document.getElementById( obj.id + 'o' );

         if( smc.childNodes ) {
            for( var i = 0; i < smc.childNodes.length; i++ ) {
               cn = smc.childNodes[ i ];

               if( document.getElementById( cn.id + '_bp' ) ) {
                  bpe = document.getElementById( cn.id + '_bp' );

                  bpeh = findHeight( bpe );
                  cnh  = findHeight( cn  );

                  if( ( cnh > bpeh ) && ( cn.style.visibility == 'visible' ) ) {
                     excludeHeight += bpeh; } } } } }

      return ( totalHeight - excludeHeight ); }

   function opacity( id, opacStart, opacEnd, millisec ) {
      var speed = Math.round( fadeSpeed / 100 );
      var timer = 0;

      if( !document.getElementById( id ) ) {
         return; }
      else {
         oe = document.getElementById( id ); }

      if( opacStart > opacEnd ) {
         for( i = opacStart; i >= opacEnd; i-- ) {
            setTimeout( "changeOpac( " + i + ", '" + id + "' )", ( timer * speed ) );

            timer++; } }
      else if( opacStart < opacEnd ) {
         for( i = opacStart; i <= opacEnd; i++ ) {
            setTimeout( "changeOpac( " + i + ", '" + id + "' )", ( timer * speed ) );

            timer++; } } }

   function changeOpac( opacity, id ) {
      if( !document.getElementById( id ) ) {
         return; }
      else {
         pObj = document.getElementById( id );

         if( pObj.style ) {
            var object = document.getElementById( id ).style; }
         else {
            return; } }

      object.opacity      = ( opacity / 100 );
      object.MozOpacity   = ( opacity / 100 );
      object.KhtmlOpacity = ( opacity / 100 );
      object.filter       = "alpha(opacity=" + opacity + ")";

      if( ( opacity == 100 ) && ( object.visibility == 'visible' ) ) {
         if( document.getElementById( id + 's' ) ) {
            oes = document.getElementById( id + 's' );
            oes.style.visibility = 'visible'; } }
      else {
         if( document.getElementById( id + 's' ) ) {
            oes = document.getElementById( id + 's' );
            oes.style.visibility = 'hidden'; } } }

   function fadeIn( fadeElement ) {
      if( !document.getElementById( fadeElement ) ) {
         return; }
      else {
         fe = document.getElementById( fadeElement ); }

      changeOpac( 0, fadeElement );

      fe.style.visibility = 'visible';

      opacity( fadeElement, 1, 100, fadeSpeed ); }

   function fadeOut( fadeElement ) {
      if( !document.getElementById( fadeElement ) ) {
         return; }
      else {
         fe = document.getElementById( fadeElement ); }

      if( document.getElementById( fadeElement + 's' ) ) {
         fes = document.getElementById( fadeElement + 's' );

         fes.style.visibility = 'hidden'; }

       fe.style.visibility = 'hidden';
      // opacity( fadeElement, 100, 0, fadeSpeed );
   }

   function closeAllBalloons() {
      if( document.getElementById( 'submenu_container' ) ) {
         sc  = document.getElementById( 'submenu_container' );
         scc = sc.childNodes;

         for( var i = 0; i < scc.length; i++ ) {
            if( scc[ i ].className == 'balloon' || scc[ i ].className == 'balloonR' || scc[ i ].className == 'popupMenu' || scc[ i ].className == 'popupMenuR' ) {
               if( scc[ i ].style.visibility != 'hidden' ) {
                  scc[ i ].style.visibility = 'hidden'; } } } } }

   function balloonIsOpen() {
      if( document.getElementById( 'submenu_container' ) ) {
         sc  = document.getElementById( 'submenu_container' );
         scc = sc.childNodes;

         for( var i = 0; i < scc.length; i++ ) {
            if( scc[ i ].className == 'balloon' || scc[ i ].className == 'balloonR' || scc[ i ].className == 'popupMenu' || scc[ i ].className == 'popupMenuR' ) {
               if( scc[ i ].style.visibility == 'visible' ) {
                  return true; } } } }

      return false; }

   function loadBalloon( balloonId ) {
      if( document.getElementById( balloonId ) ) {
         b  = document.getElementById( balloonId );
         p  = document.getElementById( balloonId.replace( 'b', '' ) );

         if( p.parentNode.parentNode.moveTimer > 0 ) { return false; }

         if( bw ) {
            if( bw.ver.indexOf( 'MSIE' ) > 0 ) {
               for( var i = 0; i < p.parentNode.childNodes.length; i++ ) {
                  n = p.parentNode.childNodes[ i ];

                  if( n.className == "submenu_product" || n.className == "submenu_title" ) {
                     nx1 = findPosX( n );
                     ny1 = findPosY( n );
                     nx2 = nx1 + findWidth( n );
                     ny2 = ny1 + findHeight( n );

                     if( ( mouseX >= nx1 ) && ( mouseY >= ny1 ) && ( mouseX <= nx2 ) && ( mouseY <= ny2 ) ) {
                        pTop = ny1; } } } }
            else {
               pTop = findPosY( p ); } }
         else {
            pTop = findPosY( p ); }

         if( p.parentNode.id.replace( 'o', '' ) == p.parentNode.parentNode.id ) { p = p.parentNode.parentNode; }

         // Check balloon direction:
         if( b.className == "balloon" || b.className == "balloonr" ) {
            b.className = 'balloon'; }
         else if( b.className == "popupMenu" || b.className == "popupMenuR" ) {
            b.className = 'popupMenu'; }

         if( ( findPosX( p ) + findWidth( p ) + findWidth( b ) - 50 ) > getBrowserWidth() ) {
            if( b.className == "balloon" || b.className == "balloonr" ) {
               b.className = 'balloonr'; }
            else if( b.className == "popupMenu" || b.className == "popupMenuR" ) {
               b.className = 'popupMenuR'; } }

         if( b.className == 'balloon' ) {
            pLeft = findPosX( p ) + findWidth( p ) - 50; }
         else if( b.className == 'balloonr' || b.className == 'popupMenuR' ) {
            pLeft = findPosX( p ) - findWidth( b ) + 20; }
         else if( b.className == 'popupMenu' ) {
            pLeft = findPosX( p ) + findWidth( p ) + 1; }

         if( b.className == 'popupMenu' || b.className == 'popupMenuR' ) {
            if( document.getElementById( b.id + "o" ) ) {
               bs = document.getElementById( b.id + "o" );

               if( bs.childNodes ) {
                  for( i = 0; i < bs.childNodes.length; i++ ) {
                     c = bs.childNodes[ i ];

                     if( c.style ) {
                        c.style.display    = 'block';
                        c.style.visibility = 'visible'; } } }

               bs.style.visibility = 'visible';
               bsHeight = findHeight( bs );

               b.style.height  = bsHeight.toString() + 'px';
               bs.style.height = bsHeight.toString() + 'px';

               try {
                  b.attachEvent( 'onmouseover', function() { clearTimeout( this.closeTimer ); } ); }
               catch( err ) {
                  b.setAttribute( 'onMouseOver', "clearTimeout( this.closeTimer );" ); }

               try {
                  b.attachEvent( 'onmouseout', function() { this.closeTimer = setTimeout( "unloadBalloon( '" + balloonId + "' );", menuCloseDelay ); } ); }
               catch( err ) {
                  b.setAttribute( 'onMouseOut', "this.closeTimer = setTimeout( \"unloadBalloon( '" + balloonId + "' );\", menuCloseDelay );" ); } } }

         if( menuSlideUp == true ) { pTop -= findHeight( b ) - findHeight( document.getElementById( b.id.replace( 'b', '' ) ) ) + 2; }

         b.style.top  = pTop;
         b.style.left = pLeft;

         bs.style.position = 'absolute';
         bs.style.top      = '0px';
         bs.style.left     = '0px';

         // This corrects the positioning of the window content in MSIE:
         bs.style.borderBottom = '1px solid #000000';

         // Add drop shadow to balloon:
         if( ( !document.getElementById( balloonId + 's' ) ) && ( balloonShadowOn == true ) ) {
            newShadow = document.createElement( "div" );

            newShadow.id        = balloonId + 's';
            newShadow.className = "shadow";

            document.body.appendChild( newShadow );

            newShadowImage              = document.createElement( "img" );
            newShadowImage.src          = shadowImage.src;
            newShadowImage.id           = balloonId + 'si';
            newShadowImage.style.border = 'none';

            document.getElementById( balloonId + 's' ).appendChild( newShadowImage );

            // This is a modified 'PNGfix' for the shadow images in IE < 7:
            try { correctShadow( balloonId + 'si' ); } catch( err ) { /* Do nothing, ignore error */ } }

         if( document.getElementById( balloonId + 's' ) ) {
            s  = document.getElementById( balloonId + 's'  );
            si = document.getElementById( balloonId + 'si' );

            if( movingShadow == true ) {
               shadowOffsetX  = parseInt( ( findPosX( b ) - ( getBrowserWidth() / 2 ) ) / ( getBrowserWidth() / 2 ) * movementRange );
               shadowOffsetY  = parseInt( ( findPosY( b ) / getBrowserHeight() ) * movementRange );
               shadowOverlayX = parseInt( ( ( findPosX( b ) + findWidth( b ) ) - ( getBrowserWidth() / 2 ) ) / ( getBrowserWidth() / 2 ) * movementRange );
               shadowOverlayY = 2 * parseInt( ( ( findPosY( b ) + findHeight( b ) ) / getBrowserHeight() ) * movementRange ); }

            sTop    = findPosY( b ) + shadowOffsetY;
            sLeft   = findPosX( b ) + shadowOffsetX;
            sWidth  = findWidth( b ) + shadowOverlayX;
            sHeight = findHeight( b ) + shadowOverlayY;

            s.style.left       = sLeft.toString() + 'px';
            s.style.top        = sTop.toString() + 'px';
            s.style.width      = sWidth.toString() + 'px';
            s.style.height     = sHeight.toString() + 'px';
            si.style.width     = sWidth.toString() + 'px';
            si.style.height    = sHeight.toString() + 'px'; }

         // This prevents more than one balloon open at a time:
         closeAllBalloons();

         // Show balloon:
         if( fadeBalloons == true ) {
            fadeIn( b.id ); }
         else {
            b.style.visibility = 'visible'; } }

      return true; }

   function unloadBalloon( balloonId ) {
      try {
         b = document.getElementById( balloonId );

         if( b.className == 'popupMenu' || b.className == 'popupMenuR' ) {
            btx1 = findPosX( b );
            bty1 = findPosY( b );
            btx2 = btx1 + findWidth( b );
            bty2 = bty1 + findHeight( b );

            if( ( ( mouseX + 6 ) >= btx1 ) && ( mouseY >= bty1 ) && ( mouseX <= btx2 ) && ( mouseY <= bty2 ) ) {
               return false; }
            else {
               clearTimeout( b.closeTimer ); }

            if( document.getElementById( balloonId + "o" ) ) {
               bs = document.getElementById( balloonId + "o" );

               if( bs.childNodes ) {
                  for( i = 0; i < bs.childNodes.length; i++ ) {
                     c = bs.childNodes[ i ];

                     if( c.style ) {
                        c.style.display    = 'none';
                        c.style.visibility = 'hidden'; } } }

               bs.style.visibility = 'hidden'; } } }
      catch( err ) {
         /* Do nothing, Ignore error */ }

      if( fadeBalloons == true ) {
         fadeOut( balloonId );; }
      else if( document.getElementById( balloonId ) ) {
         b.style.visibility = 'hidden'; }

      return true; }

   function dropNav( objId ) {
      if( document.getElementById( objId ) ) {
         obj = document.getElementById( objId );

         // Configure and Display Shadow if requested:
         if( ( !document.getElementById( obj.id + 's' ) ) && ( dropShadowOn == true ) ) {
            newShadow = document.createElement( "div" );

            newShadow.id        = obj.id + 's';
            newShadow.className = "shadow";

            document.body.appendChild( newShadow );

            newShadowImage              = document.createElement( "img" );
            newShadowImage.src          = shadowImage.src;
            newShadowImage.id           = obj.id + 'si';
            newShadowImage.style.border = 'none';

            document.getElementById( obj.id + 's' ).appendChild( newShadowImage );

            // This is a modified 'PNGfix' for the shadow images in IE < 7:
            try { correctShadow( obj.id + 'si' ); } catch( err ) { /* Do nothing, ignore error */ } }

         // Retreive Height of Menu Options:
         if( document.getElementById( objId + 'o' ) ) {
            smo = document.getElementById( objId + 'o' );

            cHeight = parseInt( smo.parentNode.style.height ); }
         else {
            cHeight = getContentHeight( obj ); }

         // Correct semi-transparent background elements:
         if( ( obj.style.visibility != 'visible' ) && smo.childNodes ) {
            mcn = smo.childNodes;

            titleOptions = 0;

            for( var i = 0; i < mcn.length; i++ ) {
               mcno = mcn[ i ];

               if( mcno.nodeName.toLowerCase() == 'a' ) { // Ensure element is a link!
                  if( !document.getElementById( mcno.id + '_bp' ) ) {
                     if( mcno.className == "submenu_title" || mcno.className == "submenu_title_selected" || mcno.className == "submenu_subtitle" ) {
                        titleOptions++;

                        nbp = document.createElement( 'span' );

                        nbp.id           = mcno.id + '_bp';
                        nbp.className    = mcno.className;
                        nbp.innerHTML    = "&nbsp;";
                        nbp.style.top    = mcno.offsetTop;
                        nbp.style.left   = '0px';
                        nbp.style.height = 'auto';
                        nbp.style.width  = '110%';

                        mcno.insertBefore( nbp, mcno.firstChild ); } } } }

            if( !obj.getAttribute( 'titleOptions' ) ) {
               obj.setAttribute( 'titleOptions', titleOptions ); }
            else {
               titleOptions = obj.getAttribute( 'titleOptions' ); } }
         else {
            titleOptions = obj.getAttribute( 'titleOptions' ); }

         // Reposition "up-sliding" menus:
         if( menuSlideUp == true && obj.style.visibility != 'visible' ) {
            if( document.getElementById( 'img' + objId.replace( 'sm', '' ) ) ) {
               mi = document.getElementById( 'img' + objId.replace( 'sm', '' ) );

               upSlidingTop = findPosY( mi ) - 36;

               obj.style.top = upSlidingTop.toString() + 'px'; } }

         // Show Menu:
         obj.style.visibility = 'visible';

         if( titleOptions > 0 ) {
            if( !obj.getAttribute( 'topMenuHeight' ) ) {
               obj.setAttribute( 'topMenuHeight', findHeight( smo ) ); }

            topMenuHeight    = obj.getAttribute( 'topMenuHeight' );
            bottomMenuHeight = findSubmenuHeight( smo );

            targetHeight = parseInt( topMenuHeight ) + bottomMenuHeight; }
         else {
            if( !obj.getAttribute( 'productHeight' ) ) {
               if( smo ) {
                  if( smo.childNodes ) {
                     for( i = 0; i < smo.childNodes.length; i++ ) {
                        c = smo.childNodes[ i ];

                        if( c.style ) {
                           c.style.display = 'block'; } } } }

               obj.setAttribute( 'productHeight', findHeight( smo ) ); }

            targetHeight = obj.getAttribute( 'productHeight' ); }

         // Calculate target height:
         totalHeight = targetHeight;

         if( ( cHeight + dropIncrement ) < parseInt( targetHeight ) ) {
            targetHeight = cHeight + dropIncrement; }
         else {
            cHeight = parseInt( targetHeight ); }

         // Reposition "up-sliding" menus:
         if( menuSlideUp == true ) {
            if( document.getElementById( 'img' + objId.replace( 'sm', '' ) ) ) {
               mi = document.getElementById( 'img' + objId.replace( 'sm', '' ) );

               upSlidingTop = findPosY( mi ) - targetHeight;

               obj.style.top = upSlidingTop.toString() + 'px'; } }

         if( cHeight >= targetHeight ) {
            // Reposition "up-sliding" menus:
            if( menuSlideUp == true ) {
               if( document.getElementById( 'img' + objId.replace( 'sm', '' ) ) ) {
                  mi = document.getElementById( 'img' + objId.replace( 'sm', '' ) );

                  upSlidingTop = findPosY( mi ) - targetHeight;

                  obj.style.top = upSlidingTop.toString() + 'px'; } }

            obj.style.height = targetHeight.toString() + 'px';
            smo.style.top    = '0px';

            clearTimeout( obj.moveTimer );

            obj.moveTimer = 0;

            if( document.getElementById( obj.id + 's' ) ) {
               s  = document.getElementById( obj.id + 's'  );
               si = document.getElementById( obj.id + 'si' );

               if( movingShadow == true ) {
                  shadowOffsetX  = parseInt( ( findPosX( obj ) - ( getBrowserWidth() / 2 ) ) / ( getBrowserWidth() / 2 ) * movementRange );
                  shadowOffsetY  = parseInt( ( findPosY( obj ) / getBrowserHeight() ) * movementRange );
                  shadowOverlayX = parseInt( ( ( findPosX( obj ) + findWidth( obj ) ) - ( getBrowserWidth() / 2 ) ) / ( getBrowserWidth() / 2 ) * movementRange );
                  shadowOverlayY = 2 * parseInt( ( ( findPosY( obj ) + findHeight( obj ) ) / getBrowserHeight() ) * movementRange ); }

               sLeft   = findPosX( obj ) + shadowOffsetX;
               sWidth  = findWidth( obj ) + shadowOverlayX;
               sHeight = findHeight( obj ) + shadowOverlayY;

               if( topAlignShadow == true ) {
                  sTop     = findPosY( obj );
                  sHeight += shadowOffsetY; }
               else {
                  sTop    = findPosY( obj ) + shadowOffsetY; }

               s.style.left        = sLeft.toString() + 'px';
               s.style.top         = sTop.toString() + 'px';
               s.style.width       = sWidth.toString() + 'px';
               s.style.height      = sHeight.toString() + 'px';
               si.style.width      = sWidth.toString() + 'px';
               si.style.height     = sHeight.toString() + 'px';
               s.style.visibility  = 'visible';
               s.style.zIndex      = 150;
               si.style.zIndex     = 150; }

            // Correct submenu background:
            if( document.getElementById( obj.id + 'bkg' ) ) {
               sb = document.getElementById( obj.id + 'bkg' );

               sb.style.top    = '0px';
               sb.style.left   = '0px';
               sb.style.height = '100%';
               sb.style.width  = '100%'; }

            return true; }
         else {
            moHeight = targetHeight - totalHeight;

            // Reposition "up-sliding" menus:
            if( menuSlideUp == true ) {
               if( document.getElementById( 'img' + objId.replace( 'sm', '' ) ) ) {
                  mi = document.getElementById( 'img' + objId.replace( 'sm', '' ) );

                  upSlidingTop = findPosY( mi ) - targetHeight;

                  obj.style.top = upSlidingTop.toString() + 'px'; } }

            obj.style.height = targetHeight.toString() + 'px';

            if( menuSlideUp != true ) { smo.style.top = moHeight.toString() + 'px'; }

            if( document.getElementById( obj.id + 's' ) ) {
               s  = document.getElementById( obj.id + 's'  );
               si = document.getElementById( obj.id + 'si' );

               if( movingShadow == true ) {
                  shadowOffsetX  = parseInt( ( findPosX( obj ) - ( getBrowserWidth() / 2 ) ) / ( getBrowserWidth() / 2 ) * movementRange );
                  shadowOffsetY  = parseInt( ( findPosY( obj ) / getBrowserHeight() ) * movementRange );
                  shadowOverlayX = parseInt( ( ( findPosX( obj ) + findWidth( obj ) ) - ( getBrowserWidth() / 2 ) ) / ( getBrowserWidth() / 2 ) * movementRange );
                  shadowOverlayY = 2 * parseInt( ( ( findPosY( obj ) + findHeight( obj ) ) / getBrowserHeight() ) * movementRange ); }

               sLeft   = findPosX( obj ) + shadowOffsetX;
               sWidth  = findWidth( obj ) + shadowOverlayX;
               sHeight = findHeight( obj ) + shadowOverlayY;

               if( topAlignShadow == true ) {
                  sTop     = findPosY( obj );
                  sHeight += shadowOffsetY; }
               else {
                  sTop    = findPosY( obj ) + shadowOffsetY; }

               s.style.left        = sLeft.toString() + 'px';
               s.style.top         = sTop.toString() + 'px';
               s.style.width       = sWidth.toString() + 'px';
               s.style.height      = sHeight.toString() + 'px';
               si.style.width      = sWidth.toString() + 'px';
               si.style.height     = sHeight.toString() + 'px';
               s.style.visibility  = 'visible'; }

            // Correct submenu background:
            if( document.getElementById( obj.id + 'bkg' ) ) {
               sb = document.getElementById( obj.id + 'bkg' );

               sb.style.top    = '0px';
               sb.style.left   = '0px';
               sb.style.height = '100%';
               sb.style.width  = '100%'; }

            obj.moveTimer = setTimeout( "dropNav( '" + objId + "' );", 1 ); } }

      return false; }

   function closeNav( objId ) {
      if( document.getElementById( objId ) ) {
         obj = document.getElementById( objId );

         if( document.getElementById( objId + 'o' ) ) {
            smo = document.getElementById( objId + 'o' );

            cHeight = getContentHeight( smo ); }
         else {
            cHeight = getContentHeight( obj ); }

         if( obj.style.visibility == 'visible' ) {
            targetHeight = findHeight( obj ) - dropIncrement;

            if( targetHeight <= 1 ) {
               obj.style.height     = '1px';

               // Reposition "up-sliding" menus:
               if( menuSlideUp == true ) {
                  if( document.getElementById( 'img' + objId.replace( 'sm', '' ) ) ) {
                     mi = document.getElementById( 'img' + objId.replace( 'sm', '' ) );

                     upSlidingTop = findPosY( mi ) - 1;

                     obj.style.top = upSlidingTop.toString() + 'px'; } }

               smo.style.top        = '-' +  cHeight.toString() + 'px';
               obj.style.visibility = 'hidden';

               turnOffImage( 'img' + objId.substring( 2 ) ); 

               // Reset menu:
               for( var i = 0; i < smo.childNodes.length; i++ ) {
                  if( smo.childNodes[ i ].className == 'submenu_title' || smo.childNodes[ i ].className == 'submenu_title_selected' ) {
                     c = smo.childNodes[ i ];

                     c.className = 'submenu_title'; }
                  else if( smo.childNodes[ i ].className == 'submenu_product' && !obj.getAttribute( 'productHeight' ) ) {
                     c = smo.childNodes[ i ];

                     c.style.visibility = 'hidden';
                     c.style.display    = 'none'; } }

               clearTimeout( obj.moveTimer );

               obj.moveTimer = 0;

               if( document.getElementById( obj.id + 's' ) ) {
                  s  = document.getElementById( obj.id + 's'  );
                  si = document.getElementById( obj.id + 'si' );

                  if( movingShadow == true ) {
                     shadowOffsetX  = parseInt( ( findPosX( obj ) - ( getBrowserWidth() / 2 ) ) / ( getBrowserWidth() / 2 ) * movementRange );
                     shadowOffsetY  = parseInt( ( findPosY( obj ) / getBrowserHeight() ) * movementRange );
                     shadowOverlayX = parseInt( ( ( findPosX( obj ) + findWidth( obj ) ) - ( getBrowserWidth() / 2 ) ) / ( getBrowserWidth() / 2 ) * movementRange );
                     shadowOverlayY = 2 * parseInt( ( ( findPosY( obj ) + findHeight( obj ) ) / getBrowserHeight() ) * movementRange ); }

                  sLeft   = findPosX( obj ) + shadowOffsetX;
                  sWidth  = findWidth( obj ) + shadowOverlayX;
                  sHeight = findHeight( obj ) + shadowOverlayY;

                  if( topAlignShadow == true ) {
                     sTop     = findPosY( obj );
                     sHeight += shadowOffsetY; }
                  else {
                     sTop    = findPosY( obj ) + shadowOffsetY; }

                  s.style.left        = sLeft.toString() + 'px';
                  s.style.top         = sTop.toString() + 'px';
                  s.style.width       = sWidth.toString() + 'px';
                  s.style.height      = sHeight.toString() + 'px';
                  si.style.width      = sWidth.toString() + 'px';
                  si.style.height     = sHeight.toString() + 'px';
                  s.style.visibility  = 'hidden';
                  si.style.visibility = 'hidden'; }

               if( document.getElementById( 'img' + objId.substring( 2 ) ) ) {
                  document.getElementById( 'img' + objId.substring( 2 ) ).style.zIndex = 2; }

               return true; }
            else {
               moHeight = targetHeight - totalHeight;

               obj.style.height = targetHeight.toString() + 'px';

               // Reposition "up-sliding" menus:
               if( menuSlideUp == true ) {
                  if( document.getElementById( 'img' + objId.replace( 'sm', '' ) ) ) {
                     mi = document.getElementById( 'img' + objId.replace( 'sm', '' ) );

                     upSlidingTop = findPosY( mi ) - targetHeight;

                     obj.style.top = upSlidingTop.toString() + 'px'; } }

               if( menuSlideUp != true ) { smo.style.top = moHeight.toString() + 'px'; }

               if( document.getElementById( obj.id + 's' ) ) {
                  s  = document.getElementById( obj.id + 's'  );
                  si = document.getElementById( obj.id + 'si' );

                  if( movingShadow == true ) {
                     shadowOffsetX  = parseInt( ( findPosX( obj ) - ( getBrowserWidth() / 2 ) ) / ( getBrowserWidth() / 2 ) * movementRange );
                     shadowOffsetY  = parseInt( ( findPosY( obj ) / getBrowserHeight() ) * movementRange );
                     shadowOverlayX = parseInt( ( ( findPosX( obj ) + findWidth( obj ) ) - ( getBrowserWidth() / 2 ) ) / ( getBrowserWidth() / 2 ) * movementRange );
                     shadowOverlayY = 2 * parseInt( ( ( findPosY( obj ) + findHeight( obj ) ) / getBrowserHeight() ) * movementRange ); }

                  sLeft   = findPosX( obj ) + shadowOffsetX;
                  sWidth  = findWidth( obj ) + shadowOverlayX;
                  sHeight = findHeight( obj ) + shadowOverlayY;

                  if( topAlignShadow == true ) {
                     sTop     = findPosY( obj );
                     sHeight += shadowOffsetY; }
                  else {
                     sTop = findPosY( obj ) + shadowOffsetY; }

                  s.style.left    = sLeft.toString() + 'px';
                  s.style.top     = sTop.toString() + 'px';
                  s.style.width   = sWidth.toString() + 'px';
                  s.style.height  = sHeight.toString() + 'px';
                  si.style.width  = sWidth.toString() + 'px';
                  si.style.height = sHeight.toString() + 'px'; }

               // Correct submenu background:
               if( document.getElementById( obj.id + 'bkg' ) ) {
                  sb = document.getElementById( obj.id + 'bkg' );

                  sb.style.top    = '0px';
                  sb.style.left   = '0px';
                  sb.style.height = '100%';
                  sb.style.width  = '100%'; }

               obj.moveTimer = setTimeout( "closeNav( '" + objId + "' );", 1 ); } } }

      return false; }

   function loadMenu( menuId ) {
      if( document.getElementById( 'sm' + menuId ) ) {
         s = document.getElementById( 'sm' + menuId );

         if( s.style.visibility == 'visible' ) { return; } }

      closeAllMenus();

      if( document.getElementById( 'img' + menuId ) ) {
         m = document.getElementById( 'img' + menuId );

         m.style.position = 'relative';
         m.style.zIndex   = 100;

         turnOnImage( 'img' + menuId );

         if( s ) {
            mx = findPosX( m );
            my = findPosY( m ) + m.height;
            mw = parseInt( m.width ) - 2;

            menuTopPosition = my + dropMenuTopOffset;

            s.style.top    = menuTopPosition.toString() + 'px';
            s.style.left   = mx.toString() + 'px';
            s.style.width  = mw.toString() + 'px';

            s.setAttribute( 'onMouseOut', "function() { unloadMenu( '" + menuId + "' ); }" );

            if( document.getElementById( s.id + 'o' ) ) {
               so = document.getElementById( s.id + 'o' ); }
            else {
               so = s; }

            for( var i = 0; i < so.childNodes.length; i++ ) {
               if( so.childNodes[ i ].className == 'submenu_product' ) {
                  sml = so.childNodes[ i ];

                  if( document.getElementById( sml.id + 'b' ) ) {
                     try {
                        sml.attachEvent( 'onmouseover', function() { loadBalloon( sml.id + 'b' ); } ); }
                     catch( err ) {
                        sml.setAttribute( 'onMouseOver', "loadBalloon( '" + sml.id + "b' );" ); }

                     try {
                        sml.attachEvent( 'onmouseout', function() { unloadBalloon( sml.id + 'b' ); } ); }
                     catch( err ) {
                        sml.setAttribute( 'onMouseOut', "unloadBalloon( '" +  sml.id + "b' );" ); } } } }

            s.style.height = '1px';

            dropNav( s.id ); } }

      return true; }

   function unloadMenu( menuId ) {
      if( balloonIsOpen() ) {
         setTimeout( "unloadMenu( '" + menuId + "' )", menuCloseDelay );

         return false; }

      if( document.getElementById( 'img' + menuId ) ) {
         m = document.getElementById( 'img' + menuId );

         mx1 = findPosX( m );
         my1 = findPosY( m );
         mx2 = mx1 + findWidth( m ) + 2;
         my2 = my1 + findHeight( m ) + 2;

         if( ( mouseX >= mx1 ) && ( mouseY >= my1 ) && ( mouseX <= mx2 ) && ( mouseY <= my2 ) && !document.getElementById( 'sm' + menuId ).moveTimer ) {
            setTimeout( "unloadMenu( '" + menuId + "' )", menuCloseDelay ); }
         else {
            s = document.getElementById( 'sm' + menuId );

            smx1 = findPosX( s );
            smy1 = findPosY( s );
            smx2 = smx1 + findWidth( s );
            smy2 = smy1 + findHeight( s );

            if( ( ( mouseX >= smx1 ) && ( mouseY >= smy1 ) && ( mouseX <= smx2 ) && ( mouseY <= smy2 ) ) || ( document.getElementById( 'sm' + menuId ).moveTimer && ( mouseY > my1 ) ) ) {
               setTimeout( "unloadMenu( '" + menuId + "' )", menuCloseDelay ); }
            else {
               if( document.getElementById( 'sm' + menuId ) ) {
                  s = document.getElementById( 'sm' + menuId );

                  clearTimeout( document.getElementById( 'sm' + menuId ).moveTimer );

//                  drawBox( smx1, smy1, smx2, smy2, 'sm' + menuId + '<br /><br />(' + mouseX.toString() + ',' + mouseY.toString() + ') not in (' + smx1.toString() + ',' + smy1.toString() + ')-(' + smx2.toString() + ',' + smy2.toString() + ')' );

                  closeNav( s.id ); } } } } }

   function closeAllMenus() {
      if( document.getElementById( 'submenu_container' ) ) {
         sc  = document.getElementById( 'submenu_container' );
         scc = sc.childNodes;

         for( var i = 0; i < scc.length; i++ ) {
            if( scc[ i ].className == 'submenu' ) {
               if( scc[ i ].style.visibility != 'hidden' ) {
                  clearTimeout( scc[ i ].moveTimer );

                  closeNav( scc[ i ].id ); }

               turnOffImage( scc[ i ].id.replace( 'sm', 'img' ) ); } } } }

   function showOptions( obj ) {
      topElementOffset = 0;

      for( var i = 0; i < obj.parentNode.childNodes.length; i++ ) {
         if( obj.parentNode.childNodes[ i ].className == 'submenu_title' || obj.parentNode.childNodes[ i ].className == 'submenu_title_selected' ) {
            c = obj.parentNode.childNodes[ i ];

            if( c.id == obj.id ) {
               c.className = 'submenu_title_selected'; }
            else {
               c.className = 'submenu_title'; } }
         else if( obj.parentNode.childNodes[ i ].className == 'submenu_product' ) {
            c = obj.parentNode.childNodes[ i ];

            if( c.getAttribute( "group" ) == obj.id ) {
               if( topElementOffset == 0 ) { topElementOffset = findPosY( c ) - findPosY( c.parentNode ); }

               c.style.display    = 'block';
               c.style.visibility = 'visible'; }
            else {
               c.style.visibility = 'hidden';
               c.style.display    = 'none'; } } }

      // Fix menu height:
      dropNav( c.parentNode.parentNode.id );

      closeAllBalloons(); }

   function killSpanElements( obj ) {
      if( document.getElementById( obj.id + 'o' ) ) {
         smc = document.getElementById( obj.id + 'o' );

         if( smc.childNodes ) {
            for( var i = 0; i < smc.childNodes.length; i++ ) {
               cn = smc.childNodes[ i ];

               if( document.getElementById( cn.id + '_bp' ) ) {
                  bpe = document.getElementById( cn.id + '_bp' );

                  cn.removeChild( bpe ); } } } }

      return; }

//-->