if(typeof sas=="undefined")
	var sas=new Object();
if(typeof sas.ued=="undefined")
	sas.ued=new Object();
if(typeof sas.ued.util=="undefined")
	sas.ued.util=new Object();
if(typeof sas.ued.FlashObjectUtil=="undefined")
	sas.ued.FlashObjectUtil=new Object();

sas.ued.FlashObject=function(swf,id,w,h,ver,c,useExpressInstall,quality,xiRedirectUrl,redirectUrl,detectKey){
	if(!document.createElement||!document.getElementById)
		return;

	this.DETECT_KEY=detectKey?detectKey:'detectflash';
	this.skipDetect=sas.ued.util.getRequestParameter(this.DETECT_KEY);
	this.params=new Object();
	this.variables=new Object();
	this.attributes=new Array();
	this.useExpressInstall=useExpressInstall;

	if(swf)
		this.setAttribute('swf',swf);

	if(id)
		this.setAttribute('id',id);

	if(w)
		this.setAttribute('width',w);

	if(h)
		this.setAttribute('height',h);

	if(ver)
		this.setAttribute('version',new sas.ued.PlayerVersion(ver.toString().split(".")));

	this.installedVer=sas.ued.FlashObjectUtil.getPlayerVersion(this.getAttribute('version'),useExpressInstall);

	if(c)
		this.addParam('bgcolor',c);
	var q=quality?quality:'high';

	this.addParam('quality',q);

	var xir=(xiRedirectUrl)?xiRedirectUrl:window.location;

	this.setAttribute('xiRedirectUrl',xir);
	this.setAttribute('redirectUrl','');

	if(redirectUrl)
		this.setAttribute('redirectUrl',redirectUrl)};
sas.ued.FlashObject.prototype={
	setAttribute:function(name,value){
		this.attributes[name]=value
	},
	getAttribute:function(name){
		return this.attributes[name]
	},
	addParam:function(name,value){
		this.params[name]=value
	},
	getParams:function(){
		return this.params
	},
	addVariable:function(name,value){
		this.variables[name]=value
	},
	getVariable:function(name){
		return this.variables[name]
	},
	getVariables:function(){
		return this.variables
	},
	createParamTag:function(n,v){
		var p=document.createElement('param');
		p.setAttribute('name',n);
		p.setAttribute('value',v);
		return p
	},
	getVariablePairs:function(){
		var variablePairs=new Array();
		var key;
		var variables=this.getVariables();
		for(key in variables){
			variablePairs.push(key+"="+variables[key])
		}
		return variablePairs
	},
	getFlashHTML:function(){
		var flashNode="";
		if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){
			if(this.getAttribute("doExpressInstall"))
				this.addVariable("MMplayerType","PlugIn");
				flashNode='<embed type="application/x-shockwave-flash" src="'+this.getAttribute('swf')+'" width="'+this.getAttribute('width')+'" height="'+this.getAttribute('height')+'"';
				flashNode+=' id="'+this.getAttribute('id')+'" name="'+this.getAttribute('id')+'" ';
				var params=this.getParams();
				for(var key in params){
					flashNode+=[key]+'="'+params[key]+'" '
				}
				var pairs=this.getVariablePairs().join("&");
				if(pairs.length>0){
					flashNode+='flashvars="'+pairs+'"'
				}
				flashNode+='/>'
		}else{
			if(this.getAttribute("doExpressInstall"))
				this.addVariable("MMplayerType","ActiveX");
		
			flashNode='<object id="'+this.getAttribute('id')+'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+this.getAttribute('width')+'" height="'+this.getAttribute('height')+'">';
			flashNode+='<param name="movie" value="'+this.getAttribute('swf')+'" />';
			var params=this.getParams();
			for(var key in params){
				flashNode+='<param name="'+key+'" value="'+params[key]+'" />'
			}
			var pairs=this.getVariablePairs().join("&");
			if(pairs.length>0){
				flashNode+='<param name="flashvars" value="'+pairs+'" />'
			}
			flashNode+="</object>"
		}
		return flashNode
	},
	write:function(elementId){
		if(this.useExpressInstall){
			var expressInstallReqVer=new sas.ued.PlayerVersion([6,0,65]);
			if(this.installedVer.versionIsValid(expressInstallReqVer)&&!this.installedVer.versionIsValid(this.getAttribute('version'))){
				this.setAttribute('doExpressInstall',true);
				this.addVariable("MMredirectURL",escape(this.getAttribute('xiRedirectUrl')));
				document.title=document.title.slice(0,47)+" - Flash Player Installation";
				this.addVariable("MMdoctitle",document.title)
			}
		}else{
			this.setAttribute('doExpressInstall',false)
		}
		if(this.skipDetect||this.getAttribute('doExpressInstall')||this.installedVer.versionIsValid(this.getAttribute('version'))){
			var n=(typeof elementId=='string')?document.getElementById(elementId):elementId;
			n.innerHTML=this.getFlashHTML()
		}else{
			if(this.getAttribute('redirectUrl')!=""){
				document.location.replace(this.getAttribute('redirectUrl'))
			}
		}
	}
};
sas.ued.FlashObjectUtil.getPlayerVersion=function(reqVer,xiInstall){
	var PlayerVersion=new sas.ued.PlayerVersion(0,0,0);
	if(navigator.plugins&&navigator.mimeTypes.length){
		var x=navigator.plugins["Shockwave Flash"];
		if(x&&x.description){
			PlayerVersion=new sas.ued.PlayerVersion(x.description.replace(/([a-z]|[A-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."))
		}
	}else{
		try{
			var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			for(var i=3;axo!=null;i++){
				axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i);
				PlayerVersion=new sas.ued.PlayerVersion([i,0,0])
			}
		}catch(e){
		}
		if(reqVer&&PlayerVersion.major>reqVer.major)
			return PlayerVersion;
		if(!reqVer||((reqVer.minor!=0||reqVer.rev!=0)&&PlayerVersion.major==reqVer.major)||PlayerVersion.major!=6||xiInstall){
			try{
				PlayerVersion=new sas.ued.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","))
			}catch(e){
			}
		}
	}
	return PlayerVersion
};
sas.ued.PlayerVersion=function(arrVersion){
	this.major=parseInt(arrVersion[0])||0;
	this.minor=parseInt(arrVersion[1])||0;
	this.rev=parseInt(arrVersion[2])||0};
sas.ued.PlayerVersion.prototype.versionIsValid=function(fv){
	if(this.major<fv.major)
		return false;

	if(this.major>fv.major)
		return true;

	if(this.minor<fv.minor)
		return false;
	if(this.minor>fv.minor)
		return true;
	
	if(this.rev<fv.rev)
		return false;

	return true
};
sas.ued.util={
	getRequestParameter:function(param){
		var q=document.location.search||document.location.href.hash;
		if(q){
			var startIndex=q.indexOf(param+"=");
			var endIndex=(q.indexOf("&",startIndex)>-1)?q.indexOf("&",startIndex):q.length;
			if(q.length>1&&startIndex>-1){
				return q.substring(q.indexOf("=",startIndex)+1,endIndex)
			}
		}
		return "";
	}
};
if(Array.prototype.push==null){
	Array.prototype.push=function(item){
		this[this.length]=item;
		return this.length
	}
}
var getQueryParamValue=sas.ued.util.getRequestParameter;
var objFlash=sas.ued.FlashObject;

function Cookie(document,name,hours,path,domain,secure){
	this.$document=document;
	this.$name=name;
	this.$expiration=hours?new Date((new Date()).getTime()+hours*3600000):null;
	this.$path=path?path:null;
	this.$domain=domain?domain:null;
	this.$secure=secure;
};
Cookie.prototype.store=function (){
	var cookieval="";
	for(var prop in this){
		if((prop.charAt(0)=='$')||((typeof this[prop])=='function'))
			continue;
	
		if(cookieval!="")
			cookieval+='&';
		cookieval+=prop+':'+escape(this[prop]);
	}
	var cookie=this.$name+'='+cookieval;
	if(this.$expiration)
		cookie+=';expires='+this.$expiration.toGMTString();

	if(this.$path)
		cookie+=';path='+this.$path;

	if(this.$domain)
		cookie+=';domain='+this.$domain;

	if(this.$secure)
		cookie+=';secure';

	this.$document.cookie=cookie;
};
Cookie.prototype.load=function(){
	var allcookies=this.$document.cookie;
	if(allcookies=="")
		return false;
	var start=allcookies.indexOf(this.$name+'=');
	if(start==-1)
		return false;
	start+=this.$name.length+1;
	var end=allcookies.indexOf(';',start);
	if(end==-1)
		end=allcookies.length;
	var cookieval=allcookies.substring(start,end);
	var a=cookieval.split('&');
	for(var i=0;i<a.length;i++)
		a[i]=a[i].split(':');

	for(var i=0;i<a.length;i++)
		this[a[i][0]]=unescape(a[i][1]);
	return true;
};
Cookie.prototype.remove = function(){
	var cookie;
	cookie = this.$name + '=';
	if (this.$path)
		cookie += ';path=' + this.$path;
	if (this.$domain)
		cookie += '; domain=' + this.$domain;

	cookie += ';expires=Fri, 02-Jan-1970 00:00:00 GMT';
	this.$document.cookie = cookie;
};
