function toHTML()
 {
     // I'm Still having erratic problems with NN4
     // Hence this check.
     if ($GLOBALS['tmsDoesMenus'] == 'maybe') {
         $tmb = new ccBrowserInfo();
         $GLOBALS['tmsDoesMenus'] = $tmb->is_ie5up() || $tmb->is_moz5up();
     }
     if (!$GLOBALS['tmsDoesMenus']) {
         $this_sucks =& new HTML_TreeMenu_RigidXL($this->menu, array('images' => $this->images, 'defaultClass' => $this->defaultClass, 'autostyles' => $this->autostyles, 'linkSelectKey' => $this->linkSelectKey, 'lineImageWidth' => $this->lineImageWidth, 'lineImageHeight' => $this->lineImageHeight, 'iconImageWidth' => $this->iconImageWidth, 'iconImageHeight' => $this->iconImageHeight, 'linkTarget' => $this->linkTarget, 'selectedStyle' => $this->selectedStyle, 'brOK' => $this->brOK));
         return $this_sucks->toHTML();
     }
     // Expand the branch(es), if any, that contain nodes with matching links.
     if (!empty($this->linkSelectKey)) {
         $keys = $this->linkSelectKey;
         if (!is_array($keys)) {
             $keys = array($keys);
         }
         foreach ($keys as $key) {
             $this->_expandSelected($this->menu, $key);
         }
     }
     // Is the entire menu "expanded"?  Then make it so...
     if (isset($this->expanded) && $this->expanded) {
         for ($i = 0; $i < count($this->menu->items); $i++) {
             $this->menu->items[$i]->setChildProperties(array('expanded' => true));
         }
     }
     return HTML_TreeMenu_DHTML::toHTML();
 }