	document.onkeydown=getDown;
	document.onkeyup=getUp;
	
	var isNetscape = navigator.appName == "Netscape";
	var isMSIE = navigator.appName == "Microsoft Internet Explorer";
	var isOpera = navigator.userAgent.indexOf("Opera") > -1;

	if(isNetscape) 
	{
		document.captureEvents(Event.KEYDOWN);
		document.captureEvents(Event.KEYUP);
	}
	var objects = new Array("cityCodeFrom", "cityCodeTo", "cityCodeFrom2", "cityCodeTo2");
	
	function inArray(name)
	{
		for(i=0; i < objects.length; i++)
		{
			if(name == objects[i])
			{
					return true;
			}
		}
		return false;
	}
	
	function getDown(ev)
	{ 
	var ieKey=(isNetscape)?ev.which: window.event.keyCode;
	var obj=(isNetscape)?ev.target:window.event.srcElement;
	 if(obj.type == "text" && inArray(obj.name))
	 {
	 	if(checkKey(ieKey)) return true;
	 	else return false;
	 }
	 else return true;
	}
	
	function getUp(ev){
		var ieKey=(isNetscape)?ev.which: window.event.keyCode;
		var obj=(isNetscape)?ev.target:window.event.srcElement;
		var objName = obj.name;
		var objType = obj.type;
		var form = document.form1;
		
		if(objType == "text" && inArray(objName))
		{ 
			if(checkKey(ieKey))
			{
				if(objName == "cityCodeFrom" || objName == "cityCodeTo")
				(eval("form."+objName+"2")).value = obj.value;
				else if(objName == "cityCodeFrom2" || objName == "cityCodeTo2")
				{
					(eval("form."+objName.substring(0, objName.length-1))).value =  obj.value;
				}
			}
		}
	}
	
	function checkKey(key)
	{
		if(key == 8 || key == 9 || key == 13 || (key >= 65 && key <= 90) || key == 46 || key == 45 || (key>=32 && key <=40) || key == 189)
		return true;
		else return false;
	}
