window.onload = mladdevents;			function mladdevents(){				if(window.mlrunShim == false){					var Iframe = document.createElement("iframe");					Iframe.setAttribute("src","about:blank");					Iframe.setAttribute("scrolling","no");					Iframe.setAttribute("frameBorder","0");					Iframe.style.zIndex = "2";					Iframe.style.filter = 'alpha(opacity=0)';				}				var effects_a = new Array();				var divs = document.getElementsByTagName('div');				for(var j=0;j<divs.length;j++){					if(divs[j].className.indexOf('mlmenu') != -1){						var lis = divs[j].getElementsByTagName('li');						for(var i =0;i<lis.length;i++){							lis[i].onmouseover = mlover;							lis[i].onmouseout = mloutSetTimeout;							if(window.mlrunShim == true){								lis[i].appendChild(Iframe.cloneNode(false));							}							if(lis[i].getElementsByTagName('ul').length > 0){								lis[i].className += 'haschild';								if(divs[j].className.indexOf('arrow') != -1){									if(divs[j].className.indexOf('vertical') != -1 || lis[i].parentNode.parentNode.nodeName != 'DIV'){										lis[i].getElementsByTagName('a')[0].innerHTML += '>';									}									else{										lis[i].getElementsByTagName('a')[0].innerHTML += '<span class="horiz">&darr;</span>';									}								}								else if(divs[j].className.indexOf('plus') != -1){									lis[i].getElementsByTagName('a')[0].innerHTML += '<span class="plus">+</span>';								}							}							else{								if(divs[j].className.indexOf('arrow') != -1){									//This accounts for a wierd IE-specific bug in horizontal menus. CSS will set visibility: hidden;. This keeps the menu level(in IE)									lis[i].getElementsByTagName('a')[0].innerHTML += '<span class="noshow">&darr;</span>';								}							}							var uls = lis[i].getElementsByTagName('ul');							for(var k=0;k<uls.length;k++){								var found = 'no';								for(var z=0;z<effects_a.length;z++){									if(effects_a[z] == uls[k]){										found = 'yes';									}								}								if(found == 'no'){									effects_a[effects_a.length] = uls[k];									uls[k].style.zIndex = '100';									mlEffectLoad(uls[k]);								}							}						}					}				}			}			function mloutSetTimeout(e){				if(!e){					var the_e = window.event;				}				else{					var the_e = e;				}				var reltg = (the_e.relatedTarget) ? the_e.relatedTarget : the_e.toElement;				if(reltg){					var under = ancestor(reltg,this);					if(under === false && reltg != this){						window.mlLast = this;						var parent = this.parentNode;						while(parent.parentNode && parent.className.indexOf('mlmenu') == -1){							parent = parent.parentNode;						}						if(parent.className.indexOf('delay') != -1){							window.mlTimeout = setTimeout(function(){mlout()},500);						}						else{							mlout();						}					}				}			}			function mlout(){			if(window.mlLast==null)return false;				var uls = window.mlLast.getElementsByTagName('ul');				var sib;				for(var i=0;i<uls.length;i++){					mlEffectOut(uls[i]);					if(window.mlrunShim == true){						sib = uls[i];													while(sib.nextSibling && sib.nodeName != 'IFRAME'){								sib = sib.nextSibling						}						sib.style.display = 'none';					}				}				window.lastover = null;			}			function mlover(e){				if(!e){					var the_e = window.event;				}				else{					var the_e = e;				}				the_e.cancelBubble = true;				if(the_e.stopPropagation){					the_e.stopPropagation();				}				clearTimeout(window.mlTimeout);				if(window.mlLast && window.mlLast != this && ancestor(this,window.mlLast) == false){					mlout();				}				else{					window.mlLast = null;				}				var reltg = (the_e.relatedTarget) ? the_e.relatedTarget : the_e.fromElement;				var ob = this.getElementsByTagName('ul');				var under = ancestor(reltg,this);				if(ob[0] && under == false){					if(window.lastover != ob[0]){						if(window.mlrunShim == true){							var sib = ob[0];							while(sib.nextSibling && sib.nodeName != 'IFRAME'){								sib = sib.nextSibling							}							ob[0].style.display = 'block';							sib.style.top = ob[0].offsetTop+'px';							sib.style.left = ob[0].offsetLeft-2+'px';							sib.style.width = ob[0].offsetWidth+'px';							sib.style.height = ob[0].offsetHeight-2+'px';							sib.style.border = '1px solid red';							sib.style.display = 'block';						}						mlEffectOver(ob[0],this);						window.lastover = ob[0];					}				}			}			function mlSetOpacity(ob,level){				if(ob){					//level is between 0 and 10					//need to convert to decimal for standard					var standard = level/10;					//need to convert to 0-100 scale for IE filter					var ie = level*10;					ob.style.opacity = standard;					ob.style.filter = "alpha(opacity="+ie+")"				}			}			function mlIncreaseOpacity(ob){					var current = ob.style.opacity;					if(lastob == ob && lastop == current){						//mlout has not interfered						current = current *10;						var upone = current +1;						mlSetOpacity(ob,upone);						lastob = ob;						lastop = upone/10;					}			}			function mlIncreaseHeight(ob){				var current = parseInt(ob.style.height);				var newh = current + 1;				ob.style.height = newh+'px';			}			function mlIncreaseWidth(ob){				var current = parseInt(ob.style.width);				var newh = current + 1;				ob.style.width = newh+'px';			}			function mlBlink(ob){				var newb = '1px solid red';				var old = '';				if(ob.style.border==old){					ob.style.border=newb;				}				else{					ob.style.border=old;					ob.style.borderTop = '1px solid';				}			}			function mlShake(ob){				var newp = '5px';				var old = '';				if(ob.style.paddingLeft==old){					ob.style.paddingLeft=newp;				}				else{					ob.style.paddingLeft=old;				}			}			function mlEffectOver(ob,parent){				switch(ob.className){					case 'fade':						ob.style.display = 'block';						if(ob.style.opacity == 0){							lastob = ob							lastop = 0;							for(var i = 1;i<=10;i++){								setTimeout(function(){mlIncreaseOpacity(ob)},i*50);							}							setTimeout(function(){ob.style.filter = ''},500);						}						break;					case 'blink':						ob.style.display = 'block';						for(var i=0;i<10;i++){							setTimeout(function(){mlBlink(ob)},i*50);						}						break;					case 'shake':						ob.style.display = 'block';						for(var i=0;i<10;i++){							setTimeout(function(){mlShake(ob)},i*50);						}						break;					case 'blindv':						ob.style.display = 'block';						if(ob.offsetHeight){							var height = ob.offsetHeight							ob.style.height = '0px';							ob.style.overflow = 'hidden';							for(var i=0;i<height;i++){								setTimeout(function(){mlIncreaseHeight(ob)},i*3);							}							setTimeout(function(){ob.style.overflow='visible';},height*3)						}						break;					case 'blindh':						ob.style.display = 'block';						if(ob.offsetWidth){							var width = ob.offsetWidth;							ob.style.width = '0px';							ob.style.overflow = 'hidden';							for(var i=0;i<width;i++){								setTimeout(function(){mlIncreaseWidth(ob)},i*3);							}							setTimeout(function(){ob.style.overflow='visible';},width*3)						}						break;					default:						ob.style.display = 'block';						break;				}			}			function mlEffectOut(ob){				switch(ob.className){					case 'fade':						mlSetOpacity(ob,0);						ob.style.display = 'none';						break;					case 'blink':						ob.style.border = '';						ob.style.display = 'none';						break;					case 'shake':						ob.style.paddingLeft = '';						ob.style.display = 'none';						break;					default:						ob.style.display = 'none';						break;				}			}			function mlEffectLoad(ob){				var parent = ob.parentNode;				while(parent.parentNode && parent.className.indexOf('mlmenu') == -1){					parent = parent.parentNode;				}				if(parent.className.indexOf('fade') != -1){						ob.style.display = 'none';						ob.className = 'fade';						mlSetOpacity(ob,0);				}				else if(parent.className.indexOf('blink') != -1){					ob.className = 'blink';					ob.style.display = 'none';				}				else if(parent.className.indexOf('shake') != -1){					ob.className = 'shake';					ob.style.display = 'none';				}				else if(parent.className.indexOf('blindv') != -1){					ob.className = 'blindv';					ob.style.display = 'none';				}				else if(parent.className.indexOf('blindh') != -1){					ob.className = 'blindh';					ob.style.display = 'none';				}				else{					ob.className = 'none';					ob.style.display = 'none';				}			}			function ancestor(child, parent){				if(child==null)return false;//Saves checking elsewhere				//This is a fix for a Firefox bug *gasp*				//Aparantly causes a bug in Opera!				//I see no choice but a browser detect. *sigh* I didn't want to have to do this.				if(navigator.userAgent.indexOf('Gecko') != -1 && navigator.userAgent.indexOf('Opera') == -1){					//This should only be run by Gecko based browsers. this code should be fine in everything but Opera so forge away browsers.					var allc = parent.getElementsByTagName('*');					for(var i= 0;i<allc.length;i++){						if(allc[i] == child){							return true;						}					}				}				else{					//http://www.dynamicdrive.com/forums/showthread.php?t=12341 Thanks Twey!					for(; child.parentNode; child = child.parentNode){						if(child.parentNode === parent) return true;					}				}				return false;			}