function ControlVersion() {
	var version;
	var axo;
	var e;

	// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry

	try {
		// version will be set for 7.X or greater players
		axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.10");
		version = axo.GetVariable("$version");
	} catch (e) {
	}
	
	if (!version) {
		try {
			// version will be set for 7.X or greater players
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.9");
			version = axo.GetVariable("$version");
		} catch (e) {
		}
	}
	
	if (!version) {
		try {
			// version will be set for 7.X or greater players
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.8");
			version = axo.GetVariable("$version");
		} catch (e) {
		}
	}
	
	if (!version) {
		try {
			// version will be set for 7.X or greater players
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
			version = axo.GetVariable("$version");
		} catch (e) {
		}
	}

	if (!version) {
		try {
			// version will be set for 6.X players only
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
			
			// installed player is some revision of 6.0
			// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
			// so we have to be careful. 
			
			// default to the first public version
			version = "WIN 6,0,21,0";

			// throws if AllowScripAccess does not exist (introduced in 6.0r47)		
			axo.AllowScriptAccess = "always";

			// safe to call for 6.0r47 or greater
			version = axo.GetVariable("$version");

		} catch (e) {
		}
	}

	if (!version) {
		try {
			// version will be set for 4.X or 5.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = axo.GetVariable("$version");
		} catch (e) {
		}
	}

	if (!version) {
		try {
			// version will be set for 3.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = "WIN 3,0,18,0";
		} catch (e) {
		}
	}

	if (!version) {
		try {
			// version will be set for 2.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			version = "WIN 2,0,0,11";
		} catch (e) {
			version = -1;
		}
	}
	
	return version;
}

function DetectFlashVer(reqMajorVer, reqMinorVer, reqMajorRevision, reqMinorRevision)
{
	var versionStr = ControlVersion(),
		tempArray,
		tempString,
		versionArray,
		versionMajor,
		versionMinor,
		versionMajorRevision,
		versionMinorRevision;
	
	if (versionStr == -1 ) {
		return false;
	} else if (versionStr != 0) {
		
		// Given "WIN 2,0,0,11"
		
		tempArray				= versionStr.split(" "); 	// ["WIN", "2,0,0,11"]
		tempString				= tempArray[1];			// "2,0,0,11"
		versionArray			= tempString.split(",");	// ['2', '0', '0', '11']
	
		versionMajor			= versionArray[0];
		versionMinor			= versionArray[1];
		versionMajorRevision	= versionArray[2];
		versionMinorRevision	= versionArray[3];

        // is the major.revision >= requested major.revision AND the minor version >= requested minor
		if (versionMajor > parseFloat(reqMajorVer)) {
			return true;
		} else if (versionMajor == parseFloat(reqMajorVer)) {
			if (versionMinor > parseFloat(reqMinorVer)) {
				return true;
			} else if (versionMinor == parseFloat(reqMinorVer)) {
				if (versionMajorRevision > parseFloat(reqMajorRevision)) {
					return true;
				} else if (versionMajorRevision == parseFloat(reqMajorRevision)) {
					if (versionMinorRevision >= reqMinorRevision) {
						return true;
					}
				}
			}
		}
		return false;
	}
}

var IE8 = (navigator.userAgent.indexOf("MSIE 8") > -1), LatestFlash;
if (IE8) {
	LatestFlash = DetectFlashVer(10, 0, 22, 87);
	if (!LatestFlash) {
		alert ("Due to a bug in some earlier Flash Player versions your browser cannot display this page correctly. Please either update your Flash Player to the most recent version (http://get.adobe.com/flashplayer/) or use browser other than Internet Explorer 8 to see this page.");
	}
}