    <!--
    /*
     * starts everything off with a bang.
     */
    function init() {
        //foo();
        first_formElem_focus();
    }
    
	/*
	 * Cookie setter function.
	 */
	function SetCookie(name,value,expires,path,domain,secure) {
		document.cookie = name + "=" + escape (value) + 
		((expires) ? "; expires=" + expires.toGMTString() : "") + 
		((path) ? "; path=" + path : "") + 
		((domain) ? "; domain=" + domain : "") + 
		((secure) ? "; secure" : ""); 
	}

	/*
	 * Cookie getter function.
	 */
	function GetCookie(name) {
		var arg = name + "="; 
		var alen = arg.length; 
		var clen = document.cookie.length; 
		var i = 0; 
		while (i < clen) {
			var j = i + alen; 
			if (document.cookie.substring(i, j) == arg) {
				return getCookieVal (j); 
			}
			i = document.cookie.indexOf(" ", i) + 1; 
			if (i == 0) {
				break;
			}
		}
		return null; 
	}

	/*
	 * Cookie helper function.
	 */
	function getCookieVal(offset) {
		var endstr = document.cookie.indexOf (";", offset);
		if (endstr == -1) {
			endstr = document.cookie.length;
		}
		return unescape(document.cookie.substring(offset, endstr));
	}
    
    
    /*
     * spawn the notification wiindow.
     */
    function display_notification(url) {
    	spawnWin(url);
    	return true;
    }
    
    function setCC() {
        if (cc = document.addUser.client_coord) {
        	cc.disabled = true;
        }
    }

    /**
     * As the name implies, brings focus to the first form element on a page.
     */
    function first_formElem_focus() {
        if (document.forms.length > 0) {
            document.forms[0].elements[0].focus();
        }
    }
    
    /**
     * Generic form focusing function... not the greatest.
     */
    function foo() {
    	if (document.forms.length > 0) {
	        if (!document.forms[0].elements[0].value == "") {
	            document.forms[0].elements[1].focus();
	            return;
	        } else {
	            document.forms[0].elements[0].focus();
	            return;
	        }
    	}
    }
    
    /**
     * The beginnings of a generalizable form validation process.
     */
    function validate(form) {
        var msg = "";
        if ((form.username.value == "") && (form.password.value == "")) {
            window.alert("Enter a valid user name and password to log in.");
            return false;
        }
        if (form.username.value == "") {
            form.username.focus();
            msg = "Enter a valid user name to log in.\n";
            //window.alert("Enter a valid user name to log in.");
            //return false;
        }
        
        if (form.password.value == "") {
            form.password.focus();
            msg += "Enter a valid password to log in.\n";
            //window.alert("Enter a valid password to log in.");
            //return false;
        }

        for (var i=0; i < form.username.value.length; i++) {
            var c = form.username.value.charAt(i);
            if (( c == ' ') || ( c == '\t') || ( c == '\n')) {
                form.username.focus();
                form.username.value = "";
                msg += "There can be no spaces in your username.  Try again.\n";
                //window.alert("There can be no spaces in your username.  Try again.");
                //return false;
            }
        } // username contains no spaces, tabs or newline characters   
        
        for (var i=0; i < form.password.value.length; i++) {
            var c = form.password.value.charAt(i);
            if (( c == ' ') || ( c == '\t') || ( c == '\n')) {
                form.password.focus();
                form.password.value = "";
                msg += "There can be no spaces in your password.  Try again.\n";
                //window.alert("There can be no spaces in your password.  Try again.");
                //return false;
            }
        } // password contains no spaces, tabs or newline characters   

        if (msg != '') {
            window.alert(msg);
            return false;
        } else {
            return true;
        }
    }

    /**
     * Little hack to turn an href based link into a form submitting link.
     */
    function post() {
        document.logout.submit();   
    }
    
    /**
     * Spawns a new window with the given given URL.
     */
	function spawnWin(url) {
        var screenW=(screen.width/2)-(500/2); 
        var screenH=(screen.height/2)-(400/2+(100)); 
        newWindow=window.open(url, "newWin", "width=500, height=400, top=" +
        						screenH + ", left=" + screenW +", scrollbars=yes, resizable=yes");
        newWindow.focus();
	}//OpenNewWin

    /**
     * Validates email address is of proper format.
     */
    function validate_emailAddress(form) {
        var pattern = /^[^\W]+[\.\w]*@{1}[\w\.\w]+$/;
        var re = new RegExp(pattern);
        var email = form.username.value;
        if (email.search(re) != -1) {
            //window.alert(email + " looks like a valid email address to me.");
            return true;
        } else {        
            window.alert(email + " does not appear to be a valid email address.");
            return false;
        }
        return false;
    }
    
	/**
	 * Confirms that to strings (usually form elements (of type text) match.
	 */
	function changePwd(form) {
		if (form.currPwd.value == "") {
			window.alert("You must enter your current password for this to work.");
			form.currPwd.focus();
			return false;
		}
		if (form.newPwd1.value == "" || form.newPwd2.value == "") {
			window.alert("You must enter your new password in both fields.");
			form.newPwd1.value = "";
			form.newPwd2.value = "";
			form.newPwd1.focus();
			return false;
		}
		if (form.newPwd1.value != form.newPwd2.value) {
			window.alert("The new passwords you entered do not match.");
			form.newPwd1.value = "";
			form.newPwd2.value = "";
			form.newPwd1.focus();
			return false;
		}
		if (form.newPwd1.value.length != 8) {
			window.alert("Passwords need to be 8 alphanumeric characters long.");
			return false;
		}
		var pattern = /[\!\\@$\%\^\*\(\)\=\+\[\]\{\}\|\\\<\>\/\?]/;
		var reg = new RegExp(pattern);
		if (form.newPwd1.value.search(reg) != -1) {
			window.alert("Passwords can only contain alphanumeric characters.\n" +
							"Valid characters are A-Z a-z 0-9 # - _");
			form.newPwd1.value = "";
			form.newPwd2.value = "";
			form.newPwd1.focus();
			return false;
		}
		return true;
	}//matchFields
	
	
	/**
	 * Enable or disable the Client Coordinator check box.
	 */
	function disableIt(obj) {
		obj.disabled = true;
	}
	
	/**
	 * Unchecks a chcked checkbox.
	 */
	function uncheckIt(obj) {
		obj.checked = false;
	}
	
	/**
	 * Enable the form element.
	 */
	function enbableIt(obj) {
		obj.disabled = false;
	}
	
	/**
	 * Pre-submit form validation for the add new user page.
	 */
	function validateNewUser(form) {
		if (form.firstName.value == "") {
			window.alert("A First Name is required.");
			form.firstName.focus();
			return false;
		}
		
		if (form.middleInitial.value == "") {
			if (!window.confirm("No middle initial was specified.  If this is correct, an underscore character (_) will be inserted.")) {
				form.middleInitial.focus();
				return false;
			}
		}		
		if (form.lastName.value == "") {
			window.alert("A Last Name is required.");
			form.lastName.focus();
			return false;
		}
		if (form.username.value == "") {
			window.alert("An Email Address is required.");
			form.username.focus();
			return false;
		}
		if ((form.phone1.value == "" ) || (form.phone2.value == "" ) || (form.phone3.value == "")) {
			if (form.phone1.value == "") {
				form.phone1.focus();
				window.alert("A full phone number is required.");
				return false;
			}
			if (form.phone2.value == "") {
				form.phone2.focus();
				window.alert("A full phone number is required.");
				return false;
			}
			if (form.phone3.value == "") {
				form.phone3.focus();
				window.alert("A full phone number is required.");
				return false;
			}
		}
		if (form.userType.value == 'null' ) {
			window.alert("The User Type must be specified.");
			form.userType.focus();
			return false;
		}
		if (form.status.value == 'null') {
			window.alert("The User Status must be specified.");
			form.status.focus();
			return false;
		}
		if (form.programList.options[form.programList.selectedIndex].length < 1) {
			window.alert("The new user must be assigned to a program from the Program List.");
			form.programList.focus();
			return false;
		}
		return true;
	}

	/**
	 * Numeral character checker (i.e. for realtime validation of phone numbers).
	 */
	function numeralCheck(evt) {
		evt = (evt) ? evt : window.event;
		var charCode = (evt.charCode) ? evt.charCode : ((evt.which) ? evt.which : evt.keyCode);
		if (charCode > 31 && (charCode < 48 || charCode > 57)) {
			return false;
		}
		return true;
	}
	
    /**
     * Validates email address is of proper format.
     */
    function validate_email(elem) {
        var pattern = /^[^\W]+[\.\w-]*@{1}[\w-\.\w]+$/;
        var re = new RegExp(pattern);
        var email = elem.value;
        if (email.search(re) != -1) {
            //window.alert(email + " looks like a valid email address to me.");
            return true;
        } else {        
            window.alert(email + " does not appear to be valid email address.  Please enter a new address.");
        	return false;
        }
        return false;
    }
    
    /**
     * Checks for null values on submit.
     */
    function validate_new_program(form) {
		if (form.programName.value == "") {
			window.alert("A Program Name is required.");
			form.programName.focus();
			return false;
		}
//		window.alert("new program name is " + form.programName.value);
		
		if (form.programStatus.options[form.programStatus.selectedIndex].value == "null") {
			window.alert("The Status field is required.");
			form.programStatus.focus();
			return false;
		}
//		window.alert("status is " + form.programStatus.options[form.programStatus.selectedIndex].value);
		return true;
    }
	
    function validate_addCampaign1(form) {
    	if (form.ID.options[form.ID.selectedIndex].value == "null") {
    		window.alert("Please select a program.");
    		return false;
    	}
    	return true;
    }
    
    
    /**
     * Validate the addCampaign form.
     */
	function validate_addCampaign(form) {
    	if (form.campaignName.value == ""){
    		window.alert("Please enter a name for this campaign.");
    		form.campaignName.focus();
    		return false;
    	}
    	if (form.campaignStatus.options[form.campaignStatus.selectedIndex].value == "null") {
    		window.alert("Please choose a status for this campaign.");
    		form.campaignStatus.focus();
    		return false;
    	}
    	if ((form.drop_date.value == "MM/DD/YY") || (form.drop_date.value == "")) {
    		window.alert("Please enter a drop date for this campaign.");
    		form.drop_date.value = "";
    		form.drop_date.focus();
    		return false;
    	}
    	var pattern = /^([0-1][0-9])\S([0-3][0-9])\S([0-1][0-9])$/;
    	//var pattern = /^[0-1]{1}[0-9][{1}\/[0-3]{1}[0-9]{1}\/[0-1]{1}[0-9]{1}$/;
    	var re = new RegExp(pattern);
    	var ddate = form.drop_date.value;
    	if (ddate.search(re) == -1) {
    		window.alert("Drop date must be in the format MM/DD/YY.");
    		form.drop_date.focus();
    		return false;
    	}
    	return true;
	}
    
    /**
     * Validate the editDetails - Program - form.
     */
	function validate_editProgramDetails(form) {
    	if (form.programName.value == "") {
    		window.alert("You must enter a Program name.");
    		form.programName.focus();
    		return false;
    	}
    	if (form.programStatus.options[form.programStatus.selectedIndex].value == "null") {
    		window.alert("Please choose a Program status.");
    		form.programStatus.focus();
    		return false;
    	}
    	return true;
    }
    
    /**
     * Validate the editDetails - Campaign - form.
     */
    function validate_editCampaignDetails(form) {
    	if (form.campaignName.value == "") {
    		window.alert("You must enter a Campaign name.");
    		form.campaignName.focus();
    		return false;
    	}
    	var pattern = /^([0-1][0-9])\S([0-3][0-9])\S([0-1][0-9])$/;
    	//var pattern = /^[0-1]{1}[0-9][{1}\/[0-3]{1}[0-9]{1}\/[0-1]{1}[0-9]{1}$/;
    	var re = new RegExp(pattern);
    	var ddate = form.drop_date.value;
    	if (ddate.search(re) == -1) {
    		window.alert("Drop date must be in the format MM/DD/YY.");
    		form.drop_date.focus();
    		return false;
    	}
    	if (form.campaignStatus.options[form.campaignStatus.selectedIndex].value == 'null') {
    		window.alert("Please choose a Campaign status.");
    		form.campaignStatus.focus();
    		return false;
    	}
    	return true;
    }
    
    /**
     * Validate the editDetails - User - form.
     */
    function validate_editUserDetails(form) {
    	if (form.firstName.value == "") {
    		window.alert("A First Name is required.");
    		form.firstName.focus();
    		return false;
    	}
    	if (form.middleInitial.value == "") {
    		window.alert("A Middle Initial is required.");
    		form.middleInitial.focus();
    		return false;
    	}
    	if (form.lastName.value == "") {
    		window.alert("A Last Name is required.");
    		form.lastName.focus();
    		return false;
    	}
    	var pattern = /^[2-9]{1}\d\d/;
        var re = new RegExp(pattern);
        if (form.phone1.value.search(re) < 0) {
    		window.alert("Please enter an Area Code for this user.  Valid Area codes do not start with a 0 or 1.");
    		form.phone1.focus();
    		return false;
    	}
    	var pattern = /^[2-9]{1}\d\d/;
        var re = new RegExp(pattern);
        if (form.phone2.value.search(re) < 0) {
    		window.alert("Please enter a valid prefix to this Telephone number.  Valid prefixes do not start with a 0 or 1.");
    		form.phone2.focus();
    		return false;
    	}
    	var pattern = /\d\d\d\d/;
        var re = new RegExp(pattern);
        if (form.phone3.value.search(re) < 0) {
    		window.alert("Please enter a valid exchange to the Telephone number.");
    		form.phone3.focus();
    		return false;
    	}
    	if (form.userStatus.options[form.userStatus.selectedIndex].value == 'null') {
    		window.alert("Please select a user status.");
    		form.userStatus.focus();
    		return false;
    	}
    	return true;
    }
    
    /**
     * Validate the addPackage form.
     */
    function validate_addPackage(form) {
    	if (form.program.type == "select-one") {
	    	if (form.program.options[form.program.selectedIndex].value == 'null') {
	    		window.alert("Please select a Program.");
	    		form.program.focus();
	    		return false;
	    	}
    	}
    	if (form.program.type == "text") {
    		if (form.program.value == "") {
    			window.alert("Please enter a Progam name.");
    			form.program.focus();
    			return false;
    		}
    	}
    	if (form.campaign.type == "select-one") {
    		if ((form.campaign.options[form.campaign.selectedIndex].value == 'null') ||
               (typeof(form.campaign.options[form.campaign.selectedIndex].value) == 'undefined')) {
        		window.alert("Please select a Campaign.");
    			form.campaign.focus();
    			return false;
    		}
    	}
    	if (form.campaign.type == "text") {
    		if (form.campaign.value == "") {
    			window.alert("Please enter a Campaign name.");
    			form.campaign.focus();
    			return false;
    		}
    	}
    	if (form.packageName.value == "") {
    		window.alert("You must enter a Package Name.");
    		form.packageName.focus();
    		return false;
    	}
    	if (form.packageStatus.options[form.packageStatus.selectedIndex].value == 'null') {
    		window.alert("Please select a status.");
    		form.packageStatus.focus();
    		return false;
    	}
    	return true;
    }	
    
    /**
     * Validate the package edit details form page.
     */
    function validate_packageEdit(form) {
    	if (form.newName.value == "") {
    		window.alert("Please enter a Package Name.");
    		form.newName.focus();
    		return false;
    	}
    	if (form.packageStatus.options[form.packageStatus.selectedIndex].value == 'null'){
    		window.alert("Please select a status.");
    		form.packageStatus.focus();
    		return false;
    	}
    	if ((form.newComponentName.value != "") && 
    		(form.newComponentType.options[form.newComponentType.selectedIndex].value == 'null')) {
    		window.alert("You've entered a custom name, but no component type.");
    		form.newComponentType.focus();
    		return false;
    	}
    	return true;
    }
    
    /**
     * Validate first page of add package form.
     */
    function validate_prog(form) {
    	if (form.PID.options[form.PID.selectedIndex].value == 'null') {
    		window.alert("You must choose a Program to continue.");
    		form.PID.focus();
    		return false;
    	}
    	return true;
    }
    
    /**
     * Validate the campaign menu option on addFile1.
     */
	function validate_camp(form) {
    	if (form.CID.options[form.CID.selectedIndex].value == 'null') {
    		window.alert("Please pick a campaign to continue.");
    		form.CID.focus();
    		return false;
    	}
    	return true;
	}
    
	/**
	 * Validate the package menu option on addFile2.
	 */
	function validate_pack(form) {
		if (form.PKGID.options[form.PKGID.selectedIndex].value == 'null') {
			window.alert("Please pick a package to continue.");
			form.PKGID.focus();
			return false;
		}
		return true;
	}
    
	/**
	 * Validate the whole addFile page.
	 */
	function validate_newFile(form) {
		if (form.componentType.options[form.componentType.selectedIndex].value == 'null') {
			window.alert("You must assign a component type to this file.");
			form.componentType.focus();
			return false;
		}
		if (form.fileStatus.options[form.fileStatus.selectedIndex].value == 'null') {
			window.alert("You must assign a status to this file.");
			form.fileStatus.focus();
			return false;
		}
		if (form.add_as_user) {
			if (form.add_as_user.options[form.add_as_user.selectedIndex].value == 'null') {
				window.alert("You must select a user from this campaign to assign this file to.");
				form.add_as_user.focus();
				return false;
			}
		}
		if (form.userfile.value == '') {
			window.alert("No file was selected for upload.");
			form.userfile.focus();
			return false;
		}
		return true;
	}
	
	/**
	 * Validate the edit File details form page.
	 */
	function validate_editFile(form) {
		/*if (form.new_name.value == "") {
			window.alert("You must enter a name for this file.");
			form.new_name.focus();
			return false;
		}*/
		if (form.fileStatus.options[form.fileStatus.selectedIndex].value == 'null') {
			window.alert("You must assign a status to this file.");
			form.fileStatus.focus();
			return false;
		}
		/*if (form.add_as_user.options[form.add_as_user.selectedIndex].value == 'null') {
			window.alert("You must select a user from this campaign to assign this file to.");
			form.add_as_user.focus();
			return false;
		}*/
		return true;
	}
	
	/**
	 * Validate the update file form page.
	 */
	function validate_updateFile(form) {
		if (form.add_as_user) {
			if (form.add_as_user.options[form.add_as_user.selectedIndex].value == 'null') {
				window.alert("You must select a user from this campaign to assign this file to.");
				form.add_as_user.focus();
				return false;
			}
		}
		if (form.userfile.value == '') {
			window.alert("No file was selected for upload.");
			form.userfile.focus();
			return false;
		}
		if (form.use_this_file_name) {
			if (form.use_this_file_name.checked) {
				if (-1 != navigator.userAgent.indexOf('Mac')) {
					pattern = '/';
				} else {
					pattern = '\\';
				}
				string = form.userfile.value;
				excerpt = string.substring(string.lastIndexOf(pattern)+1, string.length);
				//alert(excerpt);
				
				if (form.file_name.value == excerpt) {
					message = "ATTENTION: The file you have selected to upload (";
					message += excerpt + ") has the same name as the file history you ";
					message += "are uploading it to, but you have indicated to use the new file's name ";
					message += "by checking the check-box.\n\n";
					message += "No change will occur to the filename in the database.  Is this what you want?";
					
					if (!confirm(message)) return false;
				} else {
					message = "ATTENTION: You have elected to use the name of the file being uploaded rather ";
					message += "than using the name of the file history in the database.  Changing the name ";
					message += "now will not affect prior versions, but all future versions will have the new name.";
					message += "\n\n";
					message += "Current File Name: " + form.file_name.value + "\n";
					message += "New File Name: " + excerpt;
					message += "\n\n";
					message += "Do you want to change the filename to " + excerpt + "?";
					if (!confirm(message)) return false;
				}
			}
		}
		return true;
	}

	/**
	 * Make sure the user passes a term name to search on.
	 */
	function validate_search(form) {
		if (form.elements[0].value == "") {
			window.alert("Enter a term to search on.");
			form.elements[0].focus();
			return false;
		}
		
		return true;
	}
	
	/**
	 * Make sure the user passes a term name to search on.
	 * This is the advanced search form validation.
	 */
	function validate_adv_Search(form) {
		if (form.search.value == "") {
			window.alert("Enter a term to search on.");
			form.search.focus();
			return false;
		}
		if (form.name == "advancedSearch") {
			if (form.domain.options[form.domain.selectedIndex].value == "6") {
				var pattern = /[A-Za-z_\*]{3}/i;
				var re = new RegExp(pattern);
				if (form.search.value.search(re) < 0) {
					window.alert("You must enter 3 characters to search for a user by their initials.");
					form.search.focus();
					return false;
				}
			}
		}
		return true;
	}
	
	/**
	 * Throw up a confirm dialog box when the Admin clicks the delete button in the Files List view 
	 * to let them know there is no "Undo".
	 */
	function confirmDelete() {
		if (window.confirm("You are about to delete this item from the database. This action cannot be undone.  Are you sure?")) {
			return true;
		}
		return false;
	}
	
	/**
	 * Throw up a Confirm/Cancel javscript dialogue box to alert the user that they have selected an old (possibly non-ACTIVE) version
	 * of this component to update.
	 */
	function about_to_update_old_version() {
		if (!is_head_version) {
			//window.alert(update_old_version);
			msg = "WARNING!!! \n\n" +
					"You are about to update a file that is not the most current ACTIVE version of this component.\n\n" +
					"If this is not what you intended to do, click Cancel and select the appropriate version in the list below and click UPLOAD. \n\n";
			return (window.confirm(msg))? true : false;
		}
	}
	
	/**
	 * Throw up a confirm dialog box when the Admin selects a user to delete from the database.
	 */
	function deleteUser(form) {
		if (form.delete_user.options[form.delete_user.selectedIndex].value == "NULL") {
			window.alert("No user was selected for deletion.");
			return false;
		}
		if (window.confirm("You are about to delete this user from the database. This action cannot be undone.  Are you sure?")) {
			return true;
		}
		return false;
	}
	
	/**
	 * Validate the pulldown menus selection on the switch user view form.
	 */
	function suSelect(form) {
		if (form.elements[1].options[form.elements[1].selectedIndex].value == "NULL") {
			window.alert("No user was selected from the menu.\n");
			return false;
		}
		return true;
	}
	
	/**
	 * Validate new status label being entered.
	 */
	function newStatusLabel(form) {
		if (form.elements[2].value == "" ) {
			window.alert("Status labels cannot be blank.  Please entry a label.");
			form.elements[2].focus();
			return false;
		}
		return true;
	}
	
	/**
	 * Validate new status label being entered.
	 */
	function componentListDisplay(form) {
		if (form.elements[1].options[form.elements[1].selectedIndex].value == "NULL" ) {
			window.alert("You must specify the number of Package Components fields to be displayed on the Add / Edit Package pages.");
			form.elements[1].focus();
			return false;
		}
		return true;
	}
	
	/**
	 * Validate new component type being entered.
	 */
	function newComponentType(form) {
		if (form.newComponent.value == "" ) {
			window.alert("You must specify both a Component Type and its abbreviation.");
			form.newComponent.focus();
			return false;
		}
		if (form.abbrev.value == "") {
			window.alert("You must specify both a Component Type and its abbreviation.");
			form.abbrev.focus();
			return false;
		}
		return true;
	}
	
	
	
	
	
	
	
	
	// Ridiculous Dreamweaver generated image rollover code.    
	function MM_preloadImages() { //v3.0
		var d=document; 
		if (d.images){ 
			if (!d.MM_p) d.MM_p=new Array();
			var i,j=d.MM_p.length,a=MM_preloadImages.arguments; 
			for (i=0; i<a.length; i++)
				if (a[i].indexOf("#")!=0){ 
					d.MM_p[j]=new Image;
					d.MM_p[j++].src=a[i];
				}
		}
	}
	
	function MM_swapImgRestore() { //v3.0
		var i,x,a=document.MM_sr; 
		for (i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
	}
	
	function MM_findObj(n, d) { //v4.01
		var p,i,x;  if (!d) d=document; if ((p=n.indexOf("?"))>0&&parent.frames.length) {
		d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
		if (!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
		for (i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
		if (!x && d.getElementById) x=d.getElementById(n); return x;
	}
	
	function MM_swapImage() { //v3.0
		var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for (i=0;i<(a.length-2);i+=3)
		if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if (!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
	}
	
	function MM_reloadPage(init) {  //reloads the window if Nav4 resized
		if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
		document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
		else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
	}
	
	function MM_openBrWindow(theURL,winName,features) { //v2.0
		window.open(theURL,winName,features);
	}

	MM_reloadPage(true);
    
	//-->