if (typeof(Effect) != 'undefined'){		var subnav = new Array();		var Utilities = 		{ 			hideMenu: function(element, timeout) 			{				element = $(element);				element.status = 'hide';				clearTimeout (element.timeout);				if (timeout)				{					element.timeout = setTimeout (element.fxAnimate.bind(element), timeout);								}else{					element.fxAnimate();				}			},			showMenu: function(element,timeout) 			{				element = $(element);				element.status = 'show';				clearTimeout (element.timeout);				if (timeout)				{					//element.timeout = setTimeout (element.fxBlindDown.bind(element), timeout);					element.timeout = setTimeout (element.fxAnimate.bind(element), timeout);				}else{					element.fxAnimate();				}			},			setActive: function (element) {				element = $(element);				element.addClassName('sfhover');			},			setDeactive: function (element) {				element = $(element);				element.removeClassName('sfhover');			},			fxAnimate: function(element){				//console.log("fxAnim: "+ element.status +" ,hidding " + element.hidding + " right "+ element.style.right);				if ((element.status == 'hide' && element.style.right != 'auto')	|| (element.status == 'show' && element.style.right == 'auto' && !element.hidding)) return;							element.setStyle({'overflow': 'hidden'});				if (element.status == 'show') {						element.hidding = 0;					element.hideAll();				}				if (element.status == 'hide')				{					element.hidding = 1;					element.myFx2.cancel();					if (element.parent._id)					{						element.myFx2 = new Effect.Morph(element, {							style: 'width:'+ element.mw+'px;',							from: 1.0,							to: 0.0,							duration: .5,							afterFinish: function(effect) {								effect.element.animComp.bind(element)();								element.setStyle({'width': '0px'});							}													})					}					else					{						element.setStyle({'right': ''});						element.myFx2.cancel();						element.myFx2 = new Effect.Morph(element, {							style: 'width:'+ element.mw+'px;',							from: 1.0,							to: 0.0,							duration: .5,							afterFinish: function(effect) {								effect.element.animComp.bind(element)();								element.setStyle({'width': '0px'});							}													})					}					} 				else 				{					element.setStyle({'right': 'auto'});					element.myFx2.cancel();					if (element.parent._id)					{						element.myFx2 = new Effect.Morph(element, {							style: 'width:'+ element.mw+'px;',							from: 0.0,							to: 1.0,							duration: .5,							afterFinish: function(effect) {								effect.element.animComp.bind(element)();							}													})					}					else					{						element.myFx2.cancel();						element.myFx2 = new Effect.Morph(element, {							style: 'width:'+ element.mw+'px;',							from: 0.0,							to: 1.0,							duration: .5,							afterFinish: function(effect) {								effect.element.animComp.bind(element)();							}													})					}									}				},			init: function(element) 			{				element = $(element);				element.mw = element.getWidth(); //this.clientWidth;				element.mh = element.getHeight(); //this.clientHeight;				element.setStyle({'right':'-999em'});				if (element.parent._id)				{					element.myFx2 = new Effect.Morph(element, {	style: 'width: 0px', duration: 0.0});				}				else				{					element.myFx2 = new Effect.Morph(element, {	style: 'width: 0px',duration: 0.0});				}			},			animComp : function(element){				element = $(element);				if (element.status == 'hide')				{					element.setStyle({'right': '-999em'});					element.hidding = 0;				}				element.setStyle({'overflow':''});				//console.log("animComp: "+ element.status +" ,hidding " + element.hidding + " right "+ element.style.right);			},			hideAll: function(element) {				element = $(element);				for(var i=0;i<subnav.length; i++) {					if (!element.isChild(subnav[i]))					{						subnav[i].hideMenu(0);					}				}			},			isChild: function(element) {				element = $(element);				while (element.parent)				{					if (element._id == element._id)					{						return true;					}					element = element.parent;				}				return false;			}		  		}		Element.addMethods(Utilities);
		var DropdownMenu = new Class.create({				initialize: function(rootEl)			{				$(rootEl).childElements().each(function(el)				{					if(el.tagName.toLowerCase() == 'li')					{						$(el).childElements().each(function(el2)						{							if(el2.tagName.toLowerCase() == 'ul')							{								$(el2)._id = subnav.length+1;								$(el2).parent = $(rootEl);								subnav.push ($(el2));								el2.init();								el.observe('mouseover', function()								{									el.setActive();									el2.showMenu(0);									return false;								});								el.observe('mouseout', function()								{									el.setDeactive();									el2.hideMenu(20);								});								new DropdownMenu(el2);								el.hasSub = 1;							}						});						if (!el.hasSub)						{							el.observe('mouseover', function()							{								el.setActive();								//return false;							});							el.observe('mouseout', function()							{								el.setDeactive();							});						}					}				});				return this;			}		});		document.observe('dom:loaded', function(){			try{				new DropdownMenu('ittsc-menu2') ;			}			catch(e){			}			try{new DropdownMenu('ittsc-menu') ;			}			catch(eer){			}		});	}else {		sfHover = function(element_id) {		var sfEls = document.getElementById(element_id).getElementsByTagName("li");		for (var i=0; i<sfEls.length; ++i) {			sfEls[i].onmouseover=function() {				this.className+="sfhover";			}			sfEls[i].onmouseout=function() {				this.className=this.className.replace(new RegExp("sfhover\\b"), "");			}		}	}	if (window.attachEvent) window.attachEvent("onload", 		function()		{			sfHover('ittsc-menu');			sfHover('ittsc-menu2');		});}