
            // Initialize and render the menu bar when it is available in the DOM

            YAHOO.util.Event.onContentReady("productsandservices", function () {

                // Animation object

                var oAnim;


                // "beforeshow" event handler for each submenu of the menu bar

                function onMenuBeforeShow(p_sType, p_sArgs) {

                    var oBody,
                        oShadow,
                        oUL;
                
                    if (this.parent) {

                        oShadow = this.element.lastChild;

                        oShadow.style.height = "0px";
                    
                        if (oAnim && oAnim.isAnimated()) {
                        
                            oAnim.stop();
                            oAnim = null;
                        
                        }

                        oBody = this.body;
                        oUL = oBody.getElementsByTagName("ul")[0];
    
                        YAHOO.util.Dom.setStyle(oBody, "overflow", "hidden");
                        YAHOO.util.Dom.setStyle(oUL, "marginTop", ("-" + oUL.offsetHeight + "px"));
                    
                    }

                }

                function onTween(p_sType, p_aArgs, p_oShadow) {

                    if (this.cfg.getProperty("iframe")) {
                    
                        this.syncIframe();
                
                    }
                
                    if (p_oShadow) {
                
                        p_oShadow.style.height = this.element.offsetHeight + "px";
                    
                    }
                
                }

                function onAnimationComplete(p_sType, p_aArgs, p_oShadow) {

                    var oBody = this.body,
                        oUL = oBody.getElementsByTagName("ul")[0];

                    if (p_oShadow) {
                    
                        p_oShadow.style.height = this.element.offsetHeight + "px";
                    
                    }

                    YAHOO.util.Dom.setStyle(oUL, "marginTop", "auto");
                    YAHOO.util.Dom.setStyle(oBody, "overflow", "visible");
                    
                    if (YAHOO.env.ua.ie) {
                    
                        YAHOO.util.Dom.setStyle(oBody, "zoom", "1");
                    
                    }
                    
                }


                // "show" event handler for each submenu of the menu bar

                function onMenuShow(p_sType, p_sArgs) {

                    var oElement,
                        oShadow,
                        oUL;
                
                    if (this.parent) {

                        oElement = this.element;
                        oShadow = oElement.lastChild;
                        oUL = this.body.getElementsByTagName("ul")[0];
                    
                        oAnim = new YAHOO.util.Anim(oUL, 
                            { marginTop: { to: 0 } },
                            .01, YAHOO.util.Easing.easeOut);


                        oAnim.onStart.subscribe(function () {
        
                            oShadow.style.height = "100%";
                        
                        });
    

                        oAnim.animate();

    
                        /*
                             Refire the event handler for the "iframe" 
                             configuration property with each tween so that the  
                             size and position of the iframe shim remain in sync 
                             with the menu.
                        */
    
                        if (YAHOO.env.ua.ie) {
                            
                            oShadow.style.height = oElement.offsetHeight + "px";

                            oAnim.onTween.subscribe(onTween, oShadow, this);
    
                        }
    
                        oAnim.onComplete.subscribe(onAnimationComplete, oShadow, this);
                    
                    }
                
                }


                // Instantiate and render the menu bar

                var oMenuBar = new YAHOO.widget.MenuBar("productsandservices", { autosubmenudisplay: true, hidedelay: 750, showdelay: 50, lazyload: true, zindex:10000,effect: { 
                                            effect: YAHOO.widget.ContainerEffect.FADE,
                                            duration: 0
                                        }  });
                oMenuBar.subscribe("beforeShow", onMenuBeforeShow);
                oMenuBar.subscribe("show", onMenuShow);


                /*
                     Call the "render" method with no arguments since the markup for 
                     this menu already exists in the DOM.
                */

                oMenuBar.render();            
            
            });


            // Initialize and render the menu when it is available in the DOM

            YAHOO.util.Event.onContentReady("menuwithgroups", function () {

                 var oAnim;


                // "beforeshow" event handler for each submenu of the menu bar

                function onMenuBeforeShow(p_sType, p_sArgs) {

                    var oBody,
                        oShadow,
                        oUL;
                
                    if (this.parent) {

                        oShadow = this.element.lastChild;

                        oShadow.style.height = "0px";
                    
                        if (oAnim && oAnim.isAnimated()) {
                        
                            oAnim.stop();
                            oAnim = null;
                        
                        }

                        oBody = this.body;
                        oUL = oBody.getElementsByTagName("ul")[0];
    
                        YAHOO.util.Dom.setStyle(oBody, "overflow", "hidden");
                        YAHOO.util.Dom.setStyle(oUL, "marginTop", ("-" + oUL.offsetHeight + "px"));
                    
                    }

                }

                function onTween(p_sType, p_aArgs, p_oShadow) {

                    if (this.cfg.getProperty("iframe")) {
                    
                        this.syncIframe();
                
                    }
                
                    if (p_oShadow) {
                
                        p_oShadow.style.height = this.element.offsetHeight + "px";
                    
                    }
                
                }

                function onAnimationComplete(p_sType, p_aArgs, p_oShadow) {

                    var oBody = this.body,
                        oUL = oBody.getElementsByTagName("ul")[0];

                    if (p_oShadow) {
                    
                        p_oShadow.style.height = this.element.offsetHeight + "px";
                    
                    }

                    YAHOO.util.Dom.setStyle(oUL, "marginTop", "auto");
                    YAHOO.util.Dom.setStyle(oBody, "overflow", "visible");
                    
                    if (YAHOO.env.ua.ie) {
                    
                        YAHOO.util.Dom.setStyle(oBody, "zoom", "1");
                    
                    }
                    
                }


                // "show" event handler for each submenu of the menu bar

                function onMenuShow(p_sType, p_sArgs) {

                    var oElement,
                        oShadow,
                        oUL;
                
                    if (this.parent) {

                        oElement = this.element;
                        oShadow = oElement.lastChild;
                        oUL = this.body.getElementsByTagName("ul")[0];
                    
                        oAnim = new YAHOO.util.Anim(oUL, 
                            { marginTop: { to: 0 } },
                            .5, YAHOO.util.Easing.easeOut);


                        oAnim.onStart.subscribe(function () {
        
                            oShadow.style.height = "100%";
                        
                        });
    

                        oAnim.animate();

    
                        /*
                             Refire the event handler for the "iframe" 
                             configuration property with each tween so that the  
                             size and position of the iframe shim remain in sync 
                             with the menu.
                        */
    
                        if (YAHOO.env.ua.ie) {
                            
                            oShadow.style.height = oElement.offsetHeight + "px";

                            oAnim.onTween.subscribe(onTween, oShadow, this);
    
                        }
    
                        oAnim.onComplete.subscribe(onAnimationComplete, oShadow, this);
                    
                    }
                
                }
               /*
                     Instantiate the menu.  The first argument passed to the 
                     constructor is the id of the element in the DOM that 
                     represents the menu; the second is an object literal 
                     representing a set of configuration properties for 
                     the menu.
                */

                var oMenu = new YAHOO.widget.Menu(
                                    "menuwithgroups", 
                                    {
                                        position: "static", 
                                        hidedelay: 750, 
                                        showdelay: 50, 
                                        lazyload: true
/*
										, 
                                        effect: { 
                                            effect: YAHOO.widget.ContainerEffect.FADE,
                                            duration: 0.25
                                        } 
*/
                                    }
                                );

                /*
                     Call the "render" method with no arguments since the markup for 
                     this menu already exists in the DOM.
                */
                oMenu.subscribe("beforeShow", onMenuBeforeShow);
                oMenu.subscribe("show", onMenuShow);

                oMenu.render();            
            
            });

		
