
    var agt = navigator.userAgent.toLowerCase();
    var ie  = (agt.indexOf("msie") != -1);
    var ns  = (navigator.appName.indexOf("Netscape") != -1);
    var win = ((agt.indexOf("win")!=-1) || (agt.indexOf("32bit")!=-1));
    var mac = (agt.indexOf("mac")!=-1);
    
    if (ie && win) {	
    	pluginlist = detectIE("SWCtl.SWCtl.1","Shockwave Director") + detectIE("ShockwaveFlash.ShockwaveFlash.1","Shockwave Flash"); 
    }
    if (ns || !win) {
    	nse = ""; for (var i=0;i<navigator.mimeTypes.length;i++) nse += navigator.mimeTypes[i].type.toLowerCase();
    	pluginlist = detectNS("application/x-director","Shockwave Director") + detectNS("application/x-shockwave-flash","Shockwave Flash");
    }
    
    function detectIE(ClassID,name) { 
    	result = false; document.write('<SCRIPT LANGUAGE=VBScript>\n on error resume next \n result = IsObject(CreateObject("' + ClassID + '"))</SCR'+'IPT>\n'); 
    	if (result) {
    		return name+','; 
    	}	else {
    		return ''; 
    	}
    }
    function detectNS(ClassID,name) { 
    	n = ""; 
    	if (nse.indexOf(ClassID) != -1)  {
    		if (navigator.mimeTypes[ClassID].enabledPlugin != null) {
    			n = name+","; 
    		}
    	}
    	return n; 
    }
    
    if (pluginlist.length > 0) pluginlist = pluginlist.substring(0,pluginlist.length-1);
    
    if (pluginlist.indexOf("Flash")!=-1) {
    	flashPlugin = true;
    } else {
    	flashPlugin = false;
    }
