function Browser() {  var ua, s, i;  ua = navigator.userAgent;  this.isIE     = false;  this.isOP     = false;  this.isNS     = false;  this.isSafari = false;  this.isLinux	= false;  this.isMac	= false;  s = "Opera";  if ((i = ua.indexOf(s)) >= 0) {    this.isOP = true;    return;  }  s = "Netscape6/";  if ((i = ua.indexOf(s)) >= 0) {    this.isNS = true;    return;  }  s = "Macintosh";  if ((i = ua.indexOf(s)) >= 0) {    this.isMac = true;  }  s = "Linux";  if ((i = ua.indexOf(s)) >= 0) {    this.isLinux = true;  }  s = "Safari";  if ((i = ua.indexOf(s)) >= 0) {    this.isSafari = true;  }  s = "Gecko";  if ((i = ua.indexOf(s)) >= 0) {    this.isNS = true;    return;  }  s = "MSIE";  if ((i = ua.indexOf(s))) {    this.isIE = true;    return;  }}var vbrowser = new Browser();if (vbrowser.isSafari){	document.write("<style>\n#gm div.normal,#gm div.over,#gm div.active{padding:6px 4px 2px 4px;}\n</style>\n");}else if (vbrowser.isLinux || vbrowser.isMac) {	document.write("<style>\n#gm div.normal,#gm div.over,#gm div.active{padding:6px 4px 2px 5px;}\n#gm a{padding:0;}\n</style>\n");}var activeButton = null;function buttonClick(event, menuId) {  var button;  if (vbrowser.isIE)    button = window.event.srcElement;  else    button = event.currentTarget;  if (button.menu == null) {    button.menu = document.getElementById(menuId);    if (button.menu.isInitialized == null)      menuInit(button.menu);  }  if (button.onmouseout == null) button.onmouseout = buttonOrMenuMouseout;  if (button == activeButton) return false;  if (activeButton != null) resetButton(activeButton);  if (button != activeButton && ( (button.nodeName == 'A' && vbrowser.isIE) || (vbrowser.isIE == false) ) ) {depressButton(button); activeButton = button;}  else activeButton = null;  return false;  }function overN0(event, menuId) {    var button;  if (activeButton == null) {    buttonClick(event, menuId);    return;  }  if (vbrowser.isIE)    button = window.event.srcElement;  else    button = event.currentTarget;  if (activeButton != null && activeButton != button)    buttonClick(event, menuId);	}function depressButton(button) {  	var x, y;	if(vbrowser.isIE){  		if(button.offsetParent!=null && button.offsetParent.offsetParent!=null){			if(button.offsetParent.offsetParent.id=="gm"){				button.offsetParent.className+= " over";			}		}	}else{		if(button.offsetParent!=null){			if(button.offsetParent.id=="gm"){				button.className+= " over";			}		}	}	button.className += " menuButtonActive";	if (button.onmouseout == null)    	button.onmouseout = buttonOrMenuMouseout;  	if (button.menu.onmouseout == null)  		button.menu.onmouseout = buttonOrMenuMouseout;	x = getPageOffsetLeft(button);	y = getPageOffsetTop(button) + button.offsetHeight;  	if(hasClassName(button,"active") && button.offsetParent!=null && (button.offsetParent.id=="gm")){		y-=5;  	}	if (vbrowser.isIE) {    	x += button.offsetParent.clientLeft;    	y += button.offsetParent.clientTop;  	}	if (vbrowser.isIE){	  	button.menu.style.left = x - 7 + "px";		button.menu.style.top  = y + "px";	}else{		button.menu.style.left = x + "px";  		button.menu.style.top  = y + "px";	}  	button.menu.style.visibility = "visible";  	if (button.menu.iframeEl != null){    	button.menu.iframeEl.style.left = button.menu.style.left;    	button.menu.iframeEl.style.top  = button.menu.style.top;    	button.menu.iframeEl.style.width  = button.menu.offsetWidth + "px";    	button.menu.iframeEl.style.height = button.menu.offsetHeight + "px";    	button.menu.iframeEl.style.display = "";  	}}function resetButton(button) {  // Supprime la classe menuButtonActive de l'element button  removeClassName(button, "menuButtonActive");    // Supprime la classe over de l'element  if(vbrowser.isIE){	removeClassName(button.offsetParent, "over");  }else{	removeClassName(button, "over");  }    // Si le menu est visible, on le cache  if (button.menu != null) {    closeSubMenu(button.menu);    button.menu.style.visibility = "hidden";    if (button.menu.iframeEl != null)      button.menu.iframeEl.style.display = "none";  }  }function overN1(event) {  // Definition de l'objet menu  var menu;    // Permet de recuperer l'element contenant l'objet item (objet menu)  if (vbrowser.isIE)    menu = getContainerWith(window.event.srcElement, "DIV", "sm");  else    menu = event.currentTarget;    // Si l'objet menu est deja actif, on le detruit  if (menu.activeItem != null)    closeSubMenu(menu);  }function overN2(event, menuId) {    // Definition des variables et des objets  var item, menu, x, y, maxX, maxY;    // Permet de recuperer l'element parent cible (objet item)  if (vbrowser.isIE)    item = getContainerWith(window.event.srcElement, "A", "me");  else    item = event.currentTarget;	  // Permet de recuperer l'element contenant l'objet item (objet menu)  menu = getContainerWith(item, "DIV", "sm");    // Si l'objet menu est deja actif, on le detruit puis on le reactive (reinitialisation)  if (menu.activeItem != null)    closeSubMenu(menu);  menu.activeItem = item;    // On ajoute la classe on a l'objet item  item.className += " on";    // On initialise le sous menu de l'item si il n'est pas deja initialise  if (item.subMenu == null) {    item.subMenu = document.getElementById(menuId);    if (item.subMenu.isInitialized == null)      menuInit(item.subMenu);  }    // Si l'item n'a pas d'evenement onmouseout alors l'evenement se voit associer la fonction buttonOrMenuMouseout  if (item.subMenu.onmouseout == null)    item.subMenu.onmouseout = buttonOrMenuMouseout;    // On initialise l'ordonnee et l'abscise du sous menu  x = getPageOffsetLeft(item) + item.offsetWidth+2;//+2 pour les bordures  y = getPageOffsetTop(item);  if (vbrowser.isIE) {    x += -1;  }    // On initialise l'ordonnee maximum et l'abscise maximum du sous menu  if (vbrowser.isIE) {    maxX = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft) +      (document.documentElement.clientWidth != 0 ? document.documentElement.clientWidth : document.body.clientWidth);    maxY = Math.max(document.documentElement.scrollTop, document.body.scrollTop) +      (document.documentElement.clientHeight != 0 ? document.documentElement.clientHeight : document.body.clientHeight);  }  if (vbrowser.isOP) {    maxX = document.documentElement.scrollLeft + window.innerWidth;    maxY = document.documentElement.scrollTop  + window.innerHeight;  }  if (vbrowser.isNS) {    maxX = window.scrollX + window.innerWidth;    maxY = window.scrollY + window.innerHeight;  }  maxX -= item.subMenu.offsetWidth;  maxY -= item.subMenu.offsetHeight;    // On recalcule x et en fonction des maxX et maxY  if (x > maxX)    x = Math.max(0, x - item.offsetWidth - item.subMenu.offsetWidth + (menu.offsetWidth - item.offsetWidth));  y = Math.max(0, Math.min(y, maxY));    // On attribue l'ordonnee et l'abscise au sous menu  item.subMenu.style.left  = x - 5 + "px";  item.subMenu.style.top   = y + "px";    // On rend le sous menu visisble  item.subMenu.style.visibility = "visible";    // S'il y a une iframe pour contrer le bug ie de non recouvrement des select par un div, alors on lui donne ses proprietes et on l'affiche  if (item.subMenu.iframeEl != null){    item.subMenu.iframeEl.style.left    = item.subMenu.style.left;    item.subMenu.iframeEl.style.top     = item.subMenu.style.top;    item.subMenu.iframeEl.style.width   = item.subMenu.offsetWidth + "px";    item.subMenu.iframeEl.style.height  = item.subMenu.offsetHeight + "px";    item.subMenu.iframeEl.style.display = "";  }    // On stoppe la propagation ascendante des objets  if (vbrowser.isIE)    window.event.cancelBubble = true;  else    event.stopPropagation();	}// Referme un menu et ses sous menufunction closeSubMenu(menu) {  // Si aucun menus n'est actif, on stoppe la fonction  if (menu == null || menu.activeItem == null)    return;    // Si le menu est ouvert, on le cache et on le detruit.  if (menu.activeItem.subMenu != null) {    closeSubMenu(menu.activeItem.subMenu);    menu.activeItem.subMenu.style.visibility = "hidden";    if (menu.activeItem.subMenu.iframeEl != null)      menu.activeItem.subMenu.iframeEl.style.display = "none";    menu.activeItem.subMenu = null;  }    // On supprime la classe on  removeClassName(menu.activeItem, "on");    // Enfin, on desactive l'objet menu  menu.activeItem = null;}function buttonOrMenuMouseout(event) {  var el;  if (activeButton == null)    return;  if (vbrowser.isIE)    el = window.event.toElement;  else if (event.relatedTarget != null)      el = (event.relatedTarget.tagName ? event.relatedTarget : event.relatedTarget.parentNode);  if (getContainerWith(el, "DIV", "sm") == null) {    resetButton(activeButton);    activeButton = null;  }}function menuInit(menu) {  // Definitions des variables  var itemList;  var w, dw;  if (vbrowser.isIE) {    // Definition des largeurs pour eviter les decalages	itemList = menu.getElementsByTagName("A");    if (itemList.length > 0)      itemWidth = itemList[0].offsetWidth;    else      return;	w = itemList[0].offsetWidth;    itemList[0].style.width = w + "px";    dw = itemList[0].offsetWidth - w;    w -= dw;    itemList[0].style.width = w + "px";	// Creation de l'iframe cachant le bug ei de recouvrement de la balise select par une balise div    var iframeEl = document.createElement("IFRAME");    iframeEl.frameBorder = 0;    iframeEl.src = "javascript:;";    iframeEl.style.display = "none";    iframeEl.style.position = "absolute";    iframeEl.style.filter = "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)";    menu.iframeEl = menu.parentNode.insertBefore(iframeEl, menu);  }    // On met le marqueur d'initialisation a true  menu.isInitialized = true;}// Retourn le noeud contenant function getContainerWith(node, tagName, className) {  while (node != null) {    if (node.tagName != null && node.tagName == tagName && hasClassName(node, className))      return node;    node = node.parentNode;  }  return node;}// Verifie l'appartenance d'un element a une classefunction hasClassName(el, name) {  var i, list;  list = el.className.split(" ");  for (i = 0; i < list.length; i++)    if (list[i] == name)      return true;  return false;}// Supprime une classe pour un element donneefunction removeClassName(el, name){  var i, curList, newList;  if (el.className == null)    return;  newList = new Array();  curList = el.className.split(" ");  for (i = 0; i < curList.length; i++)    if (curList[i] != name)      newList.push(curList[i]);  el.className = newList.join(" ");}// Retourne l'offset left d'un elementfunction getPageOffsetLeft(el){  var x;  x = el.offsetLeft;  if (el.offsetParent != null && el.offsetParent.id!="gm")    x += getPageOffsetLeft(el.offsetParent);  return x;}// Retourne l'offset top d'un elementfunction getPageOffsetTop(el){  var y = el.offsetTop;  if (el.offsetParent != null && el.offsetParent.id!="gm"){     y += getPageOffsetTop(el.offsetParent);  }  return y;}// Gere les evenements onmouseout et onmouseover des elements N0 videsfunction outN0Empty(el){	//el.className='normal';}function overN0Empty(el){	//el.className='over';}