// this is the JS function that recognizes browser type and version, OS type and versionfunction Is() {	// convert all characters to lowercase to simplify testing	var agt = navigator.userAgent.toLowerCase()//	alert("" + agt);		// browser version	this.major = parseInt(navigator.appVersion)	this.minor = parseFloat(navigator.appVersion)		// test for IE browser	this.ie = (agt.indexOf("msie") != -1)	this.ie3 = (this.ie && (this.major == 3))	this.ie4 = (this.ie && (this.major == 4))//	this.ie4up = (this.ie && (this.major >= 4))		// test for Netscape browser	this.nav = ((agt.indexOf('mozilla') != -1) && ((agt.indexOf('spoofer') == -1) && (agt.indexOf('compatible') == -1)))	this.nav2 = (this.nav && (this.major == 2))	this.nav3 = (this.nav && (this.major == 3))	this.nav4 = (this.nav && (this.major == 4))	this.nav4up = (this.nav && (this.major >= 4))	this.nav5up = (this.nav && (this.major >= 5))		this.ie5up = (this.ie && (this.major >= 4))		// test for JavaScript	this.js10 = this.nav2	this.js11 = this.nav3 || this.ie4 || this.ie5up//	this.js12 = this.nav4	this.js12 = this.nav4up// || this.ie5up	this.js15 = this.nav5up		// test for OS	this.win = ((agt.indexOf("win") != -1) || (agt.indexOf("16bit") != -1))	// NOTE: On Opera 3.0, the userAgent string includes "Windows 95/NT4" on all Win32,	// so you can't distinguish between Win95 and WinNT.	this.win95 = ((agt.indexOf("win95") != -1) || (agt.indexOf("windows 95") != -1))	// NOTE: Reliable detection of Win98 may not be possible. It appears that:	// - On Nav 4.x and before you'll get plain "Windows" in userAgent.	// - On Mercury client, the 32-bit version will return "Win98",	//	 but the 16-bit version running on Win98 will still return "Win95".	this.win98 = ((agt.indexOf("win98") != -1) || (agt.indexOf("windows 98") != -1))	this.winnt = ((agt.indexOf("winnt") != -1) || (agt.indexOf("windows nt") != -1))	this.win32 = this.win95 || this.winnt || this.win98 || ((this.major >= 4) && (navigator.platform == "Win32")) || (agt.indexOf("win32") != -1) || (agt.indexOf("32bit") != -1)		this.mac = (agt.indexOf("mac") != -1)}function browserID() {	var id = -1;	var is = new Is();		if(is.nav)		id = 0;	else if(is.ie)		id = 1;		return id;}function browserVersionID() {	var id = -1;	var is = new Is();		if(is.nav4up)		id = 0;	else if(is.ie5up)		id = 1;		return id;}function jsTest() {	var is = new Is();		if(is.js15) {		document.write("<H3>Current version of JavaScript is 1.5.</H3>");	} else if(is.js12) {		document.write("<H3>Current version of JavaScript is 1.2.</H3>");	} else if(is.js11) {		document.write("<H3>Current version of JavaScript is 1.1.</H3>");	} else if(is.js10) {		document.write("<H3>Current version of JavaScript is 1.0.</H3>");	}}function browserTest() {	var is = new Is();		if(is.win32) {		document.write("<H2>This page is currently tested on MacOS only.</H2>");	} else if(is.mac) {		if(is.nav) {			if(is.nav5up) {				document.write("<H2>This page is running in Netscape Navigator 6.x or later on MacOS.</H2>");			} else if(is.nav4) {				document.write("<H2>This page is running in Netscape Navigator 4.x on MacOS.</H2>");			} else if(is.nav3) {				document.write("<H2>This page is running in Netscape Navigator 3.x on MacOS.</H2>");			} else if(is.nav2) {				document.write("<H2>This page is running in Netscape Navigator 2.x on MacOS.</H2>");			}		} else if(is.ie) {			if(is.ie5up) {				document.write("<H2>This page is running in Internet Explorer 5.x or later on MacOS.</H2>");			} else if(is.ie4) {				document.write("<H2>This page is running in Internet Explorer 4.x on MacOS.</H2>");			} else if(is.ie3) {				document.write("<H2>This page is running in Internet Explorer 3.x on MacOS.</H2>");			}		} else {			document.write("<H2>This page is currently tested for Netscape and Microsoft browsers only, on MacOS.</H2>");		}	} else {		document.write("<H2>This page is currently tested on MacOS only.</H2>");//		document.write("<H2>This page is currently tested on MacOS and Windows32 OS only.</H2>");	}}