/*
 * Modify these variables to change the location of the PEX
 * Be sure to update any references in the generic.xml as well
 */
var pexBaseURL = "/consumerfiles/pageitems/master/categorypages/Shavers2010/assets/pex/";
var genericConfigurationURL = "generic.xml";
var defaultPexId = "SensoTouch";

/*
 * PEX Runner, � 2009 by INDG
 */
var NULL=null
function createPackage(aPackage){var thePackageParts=aPackage.split(".");if(window[thePackageParts[0]]==undefined)window[thePackageParts[0]]=new Object();var thePackageObject=window[thePackageParts[0]];for(var i=1;i<thePackageParts.length;i++){if(thePackageObject[thePackageParts[i]]==undefined)thePackageObject[thePackageParts[i]]=new Object();thePackageObject=thePackageObject[thePackageParts[i]]}}
function bootClass(aClassName,aParameters){if(aParameters==null)aParameters=[];var theConstruction="new "+aClassName+"(";for(var i=0;i<aParameters.length;i++){if(i>0)theConstruction+=", ";theConstruction+="aParameters["+i+"]"};theConstruction+=");";var theInstance=eval(theConstruction);return theInstance};String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")};Array.prototype.contains=function(obj){for(var i=0;i<this.length;i++)if(this[i]==obj)return true;return false};var swfobject=function(){var UNDEF="undefined",OBJECT="object",SHOCKWAVE_FLASH="Shockwave Flash",SHOCKWAVE_FLASH_AX="ShockwaveFlash.ShockwaveFlash",FLASH_MIME_TYPE="application/x-shockwave-flash",EXPRESS_INSTALL_ID="SWFObjectExprInst",ON_READY_STATE_CHANGE="onreadystatechange",win=window,doc=document,nav=navigator,plugin=false,domLoadFnArr=[main],regObjArr=[],objIdArr=[],listenersArr=[],storedAltContent,storedAltContentId,storedCallbackFn,storedCallbackObj,isDomLoaded=false,isExpressInstallActive=false,dynamicStylesheet,dynamicStylesheetMedia,autoHideShow=true,ua=function(){var w3cdom=typeof doc.getElementById!=UNDEF&&typeof doc.getElementsByTagName!=UNDEF&&typeof doc.createElement!=UNDEF,u=nav.userAgent.toLowerCase(),p=nav.platform.toLowerCase(),windows=p?/win/.test(p):/win/.test(u),mac=p?/mac/.test(p):/mac/.test(u),webkit=/webkit/.test(u)?parseFloat(u.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,ie=!+"\v1",playerVersion=[0,0,0],d=null;if(typeof nav.plugins!=UNDEF&&typeof nav.plugins[SHOCKWAVE_FLASH]==OBJECT){d=nav.plugins[SHOCKWAVE_FLASH].description;if(d&&!(typeof nav.mimeTypes!=UNDEF&&nav.mimeTypes[FLASH_MIME_TYPE]&&!nav.mimeTypes[FLASH_MIME_TYPE].enabledPlugin)){plugin=true;ie=false;d=d.replace(/^.*\s+(\S+\s+\S+$)/,"$1");playerVersion[0]=parseInt(d.replace(/^(.*)\..*$/,"$1"),10);playerVersion[1]=parseInt(d.replace(/^.*\.(.*)\s.*$/,"$1"),10);playerVersion[2]=/[a-zA-Z]/.test(d)?parseInt(d.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else if(typeof win.ActiveXObject!=UNDEF)try{var a=new ActiveXObject(SHOCKWAVE_FLASH_AX);if(a){d=a.GetVariable("$version");if(d){ie=true;d=d.split(" ")[1].split(",");playerVersion=[parseInt(d[0],10),parseInt(d[1],10),parseInt(d[2],10)]}}}catch(e){};return{w3:w3cdom,pv:playerVersion,wk:webkit,ie:ie,win:windows,mac:mac}}(),onDomLoad=function(){if(!ua.w3)return;if((typeof doc.readyState!=UNDEF&&doc.readyState=="complete")||(typeof doc.readyState==UNDEF&&(doc.getElementsByTagName("body")[0]||doc.body)))callDomLoadFunctions();if(!isDomLoaded){if(typeof doc.addEventListener!=UNDEF)doc.addEventListener("DOMContentLoaded",callDomLoadFunctions,false);if(ua.ie&&ua.win){doc.attachEvent(ON_READY_STATE_CHANGE,function(){if(doc.readyState=="complete"){doc.detachEvent(ON_READY_STATE_CHANGE,arguments.callee);callDomLoadFunctions()}});if(win==top)(function(){if(isDomLoaded)return;try{doc.documentElement.doScroll("left")}catch(e){setTimeout(arguments.callee,0);return};callDomLoadFunctions()})()};if(ua.wk)(function(){if(isDomLoaded)return;if(!/loaded|complete/.test(doc.readyState)){setTimeout(arguments.callee,0);return};callDomLoadFunctions()})();addLoadEvent(callDomLoadFunctions)}}()
function callDomLoadFunctions(){if(isDomLoaded)return;try{var t=doc.getElementsByTagName("body")[0].appendChild(createElement("span"));t.parentNode.removeChild(t)}catch(e){return};isDomLoaded=true;var dl=domLoadFnArr.length;for(var i=0;i<dl;i++)domLoadFnArr[i]()}
function addDomLoadEvent(fn){if(isDomLoaded){fn()}else domLoadFnArr[domLoadFnArr.length]=fn}
function addLoadEvent(fn){if(typeof win.addEventListener!=UNDEF){win.addEventListener("load",fn,false)}else if(typeof doc.addEventListener!=UNDEF){doc.addEventListener("load",fn,false)}else if(typeof win.attachEvent!=UNDEF){addListener(win,"onload",fn)}else if(typeof win.onload=="function"){var fnOld=win.onload;win.onload=function(){fnOld();fn()}}else win.onload=fn}
function main(){if(plugin){testPlayerVersion()}else matchVersions()}
function testPlayerVersion(){var b=doc.getElementsByTagName("body")[0],o=createElement(OBJECT);o.setAttribute("type",FLASH_MIME_TYPE);var t=b.appendChild(o);if(t){var counter=0;(function(){if(typeof t.GetVariable!=UNDEF){var d=t.GetVariable("$version");if(d){d=d.split(" ")[1].split(",");ua.pv=[parseInt(d[0],10),parseInt(d[1],10),parseInt(d[2],10)]}}else if(counter<10){counter++;setTimeout(arguments.callee,10);return};b.removeChild(o);t=null;matchVersions()})()}else matchVersions()}
function matchVersions(){var rl=regObjArr.length;if(rl>0)for(var i=0;i<rl;i++){var id=regObjArr[i].id,cb=regObjArr[i].callbackFn,cbObj={success:false,id:id};if(ua.pv[0]>0){var obj=getElementById(id);if(obj)if(hasPlayerVersion(regObjArr[i].swfVersion)&&!(ua.wk&&ua.wk<312)){setVisibility(id,true);if(cb){cbObj.success=true;cbObj.ref=getObjectById(id);cb(cbObj)}}else if(regObjArr[i].expressInstall&&canExpressInstall()){var att={};att.data=regObjArr[i].expressInstall;att.width=obj.getAttribute("width")||"0";att.height=obj.getAttribute("height")||"0";if(obj.getAttribute("class"))att.styleclass=obj.getAttribute("class");if(obj.getAttribute("align"))att.align=obj.getAttribute("align");var par={},p=obj.getElementsByTagName("param"),pl=p.length;for(var j=0;j<pl;j++)if(p[j].getAttribute("name").toLowerCase()!="movie")par[p[j].getAttribute("name")]=p[j].getAttribute("value");showExpressInstall(att,par,id,cb)}else{displayAltContent(obj);if(cb)cb(cbObj)}}else{setVisibility(id,true);if(cb){var o=getObjectById(id);if(o&&typeof o.SetVariable!=UNDEF){cbObj.success=true;cbObj.ref=o};cb(cbObj)}}}}
function getObjectById(objectIdStr){var r=null,o=getElementById(objectIdStr);if(o&&o.nodeName=="OBJECT")if(typeof o.SetVariable!=UNDEF){r=o}else{var n=o.getElementsByTagName(OBJECT)[0];if(n)r=n};return r}
function canExpressInstall(){return !isExpressInstallActive&&hasPlayerVersion("6.0.65")&&(ua.win||ua.mac)&&!(ua.wk&&ua.wk<312)}
function showExpressInstall(att,par,replaceElemIdStr,callbackFn){isExpressInstallActive=true;storedCallbackFn=callbackFn||null;storedCallbackObj={success:false,id:replaceElemIdStr};var obj=getElementById(replaceElemIdStr);if(obj){if(obj.nodeName=="OBJECT"){storedAltContent=abstractAltContent(obj);storedAltContentId=null}else{storedAltContent=obj;storedAltContentId=replaceElemIdStr};att.id=EXPRESS_INSTALL_ID;if(typeof att.width==UNDEF||(!/%$/.test(att.width)&&parseInt(att.width,10)<310))att.width="310";if(typeof att.height==UNDEF||(!/%$/.test(att.height)&&parseInt(att.height,10)<137))att.height="137";doc.title=doc.title.slice(0,47)+" - Flash Player Installation";var pt=ua.ie&&ua.win?"ActiveX":"PlugIn",fv="MMredirectURL="+win.location.toString().replace(/&/g,"%26")+"&MMplayerType="+pt+"&MMdoctitle="+doc.title;if(typeof par.flashvars!=UNDEF){par.flashvars+="&"+fv}else par.flashvars=fv;if(ua.ie&&ua.win&&obj.readyState!=4){var newObj=createElement("div");replaceElemIdStr+="SWFObjectNew";newObj.setAttribute("id",replaceElemIdStr);obj.parentNode.insertBefore(newObj,obj);obj.style.display="none";(function(){if(obj.readyState==4){obj.parentNode.removeChild(obj)}else setTimeout(arguments.callee,10)})()};createSWF(att,par,replaceElemIdStr)}}
function displayAltContent(obj){if(ua.ie&&ua.win&&obj.readyState!=4){var el=createElement("div");obj.parentNode.insertBefore(el,obj);el.parentNode.replaceChild(abstractAltContent(obj),el);obj.style.display="none";(function(){if(obj.readyState==4){obj.parentNode.removeChild(obj)}else setTimeout(arguments.callee,10)})()}else obj.parentNode.replaceChild(abstractAltContent(obj),obj)}
function abstractAltContent(obj){var ac=createElement("div");if(ua.win&&ua.ie){ac.innerHTML=obj.innerHTML}else{var nestedObj=obj.getElementsByTagName(OBJECT)[0];if(nestedObj){var c=nestedObj.childNodes;if(c){var cl=c.length;for(var i=0;i<cl;i++)if(!(c[i].nodeType==1&&c[i].nodeName=="PARAM")&&!(c[i].nodeType==8))ac.appendChild(c[i].cloneNode(true))}}};return ac}
function createSWF(attObj,parObj,id){var r,el=getElementById(id);if(ua.wk&&ua.wk<312)return r;if(el){if(typeof attObj.id==UNDEF)attObj.id=id;if(ua.ie&&ua.win){var att="";for(var i in attObj)if(attObj[i]!=Object.prototype[i])if(i.toLowerCase()=="data"){parObj.movie=attObj[i]}else if(i.toLowerCase()=="styleclass"){att+=' class="'+attObj[i]+'"'}else if(i.toLowerCase()!="classid")att+=' '+i+'="'+attObj[i]+'"';var par="";for(var j in parObj)if(parObj[j]!=Object.prototype[j])par+='<param name="'+j+'" value="'+parObj[j]+'" />';el.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+att+'>'+par+'</object>';objIdArr[objIdArr.length]=attObj.id;r=getElementById(attObj.id)}else{var o=createElement(OBJECT);o.setAttribute("type",FLASH_MIME_TYPE);for(var m in attObj)if(attObj[m]!=Object.prototype[m])if(m.toLowerCase()=="styleclass"){o.setAttribute("class",attObj[m])}else if(m.toLowerCase()!="classid")o.setAttribute(m,attObj[m]);for(var n in parObj)if(parObj[n]!=Object.prototype[n]&&n.toLowerCase()!="movie")createObjParam(o,n,parObj[n]);el.parentNode.replaceChild(o,el);r=o}};return r}
function createObjParam(el,pName,pValue){var p=createElement("param");p.setAttribute("name",pName);p.setAttribute("value",pValue);el.appendChild(p)}
function removeSWF(id){var obj=getElementById(id);if(obj&&obj.nodeName=="OBJECT")if(ua.ie&&ua.win){obj.style.display="none";(function(){if(obj.readyState==4){removeObjectInIE(id)}else setTimeout(arguments.callee,10)})()}else obj.parentNode.removeChild(obj)}
function removeObjectInIE(id){var obj=getElementById(id);if(obj){for(var i in obj)if(typeof obj[i]=="function")obj[i]=null;obj.parentNode.removeChild(obj)}}
function getElementById(id){var el=null;try{el=doc.getElementById(id)}catch(e){};return el}
function createElement(el){return doc.createElement(el)}
function addListener(target,eventType,fn){target.attachEvent(eventType,fn);listenersArr[listenersArr.length]=[target,eventType,fn]}
function hasPlayerVersion(rv){var pv=ua.pv,v=rv.split(".");v[0]=parseInt(v[0],10);v[1]=parseInt(v[1],10)||0;v[2]=parseInt(v[2],10)||0;return(pv[0]>v[0]||(pv[0]==v[0]&&pv[1]>v[1])||(pv[0]==v[0]&&pv[1]==v[1]&&pv[2]>=v[2]))?true:false}
function createCSS(sel,decl,media,newStyle){if(ua.ie&&ua.mac)return;var h=doc.getElementsByTagName("head")[0];if(!h)return;var m=(media&&typeof media=="string")?media:"screen";if(newStyle){dynamicStylesheet=null;dynamicStylesheetMedia=null};if(!dynamicStylesheet||dynamicStylesheetMedia!=m){var s=createElement("style");s.setAttribute("type","text/css");s.setAttribute("media",m);dynamicStylesheet=h.appendChild(s);if(ua.ie&&ua.win&&typeof doc.styleSheets!=UNDEF&&doc.styleSheets.length>0)dynamicStylesheet=doc.styleSheets[doc.styleSheets.length-1];dynamicStylesheetMedia=m};if(ua.ie&&ua.win){if(dynamicStylesheet&&typeof dynamicStylesheet.addRule==OBJECT)try{dynamicStylesheet.addRule(sel,decl)}catch(e){}}else if(dynamicStylesheet&&typeof doc.createTextNode!=UNDEF)dynamicStylesheet.appendChild(doc.createTextNode(sel+" {"+decl+"}"))}
function setVisibility(id,isVisible){if(!autoHideShow)return;var v=isVisible?"visible":"hidden";if(isDomLoaded&&getElementById(id)){getElementById(id).style.visibility=v}else createCSS("#"+id,"visibility:"+v)}
function urlEncodeIfNecessary(s){var regex=/[\\\"<>\.;]/,hasBadChars=regex.exec(s)!=null;return hasBadChars&&typeof encodeURIComponent!=UNDEF?encodeURIComponent(s):s};var cleanup=function(){if(ua.ie&&ua.win)window.attachEvent("onunload",function(){var ll=listenersArr.length;for(var i=0;i<ll;i++)listenersArr[i][0].detachEvent(listenersArr[i][1],listenersArr[i][2]);var il=objIdArr.length;for(var j=0;j<il;j++)removeSWF(objIdArr[j]);for(var k in ua)ua[k]=null;ua=null;for(var l in swfobject)swfobject[l]=null;swfobject=null})}();return{registerObject:function(objectIdStr,swfVersionStr,xiSwfUrlStr,callbackFn){if(ua.w3&&objectIdStr&&swfVersionStr){var regObj={};regObj.id=objectIdStr;regObj.swfVersion=swfVersionStr;regObj.expressInstall=xiSwfUrlStr;regObj.callbackFn=callbackFn;regObjArr[regObjArr.length]=regObj;setVisibility(objectIdStr,false)}else if(callbackFn)callbackFn({success:false,id:objectIdStr})},getObjectById:function(objectIdStr){if(ua.w3)return getObjectById(objectIdStr)},embedSWF:function(swfUrlStr,replaceElemIdStr,widthStr,heightStr,swfVersionStr,xiSwfUrlStr,flashvarsObj,parObj,attObj,callbackFn){var callbackObj={success:false,id:replaceElemIdStr};if(ua.w3&&!(ua.wk&&ua.wk<312)&&swfUrlStr&&replaceElemIdStr&&widthStr&&heightStr&&swfVersionStr){setVisibility(replaceElemIdStr,false);addDomLoadEvent(function(){widthStr+="";heightStr+="";var att={};if(attObj&&typeof attObj===OBJECT)for(var i in attObj)att[i]=attObj[i];att.data=swfUrlStr;att.width=widthStr;att.height=heightStr;var par={};if(parObj&&typeof parObj===OBJECT)for(var j in parObj)par[j]=parObj[j];if(flashvarsObj&&typeof flashvarsObj===OBJECT)for(var k in flashvarsObj)if(typeof par.flashvars!=UNDEF){par.flashvars+="&"+k+"="+flashvarsObj[k]}else par.flashvars=k+"="+flashvarsObj[k];if(hasPlayerVersion(swfVersionStr)){var obj=createSWF(att,par,replaceElemIdStr);if(att.id==replaceElemIdStr)setVisibility(replaceElemIdStr,true);callbackObj.success=true;callbackObj.ref=obj}else if(xiSwfUrlStr&&canExpressInstall()){att.data=xiSwfUrlStr;showExpressInstall(att,par,replaceElemIdStr,callbackFn);return}else setVisibility(replaceElemIdStr,true);if(callbackFn)callbackFn(callbackObj)})}else if(callbackFn)callbackFn(callbackObj)},switchOffAutoHideShow:function(){autoHideShow=false},ua:ua,getFlashPlayerVersion:function(){return{major:ua.pv[0],minor:ua.pv[1],release:ua.pv[2]}},hasFlashPlayerVersion:hasPlayerVersion,createSWF:function(attObj,parObj,replaceElemIdStr){if(ua.w3){return createSWF(attObj,parObj,replaceElemIdStr)}else return undefined},showExpressInstall:function(att,par,replaceElemIdStr,callbackFn){if(ua.w3&&canExpressInstall())showExpressInstall(att,par,replaceElemIdStr,callbackFn)},removeSWF:function(objElemIdStr){if(ua.w3)removeSWF(objElemIdStr)},createCSS:function(selStr,declStr,mediaStr,newStyleBoolean){if(ua.w3)createCSS(selStr,declStr,mediaStr,newStyleBoolean)},addDomLoadEvent:addDomLoadEvent,addLoadEvent:addLoadEvent,getQueryParamValue:function(param){var q=doc.location.search||doc.location.hash;if(q){if(/\?/.test(q))q=q.split("?")[1];if(param==null)return urlEncodeIfNecessary(q);var pairs=q.split("&");for(var i=0;i<pairs.length;i++)if(pairs[i].substring(0,pairs[i].indexOf("="))==param)return urlEncodeIfNecessary(pairs[i].substring((pairs[i].indexOf("=")+1)))};return""},expressInstallCallback:function(){if(isExpressInstallActive){var obj=getElementById(EXPRESS_INSTALL_ID);if(obj&&storedAltContent){obj.parentNode.replaceChild(storedAltContent,obj);if(storedAltContentId){setVisibility(storedAltContentId,true);if(ua.ie&&ua.win)storedAltContent.style.display="block"};if(storedCallbackFn)storedCallbackFn(storedCallbackObj)};isExpressInstallActive=false}}}}()
function detectUnityWebPlayerActiveX(aRequiredVersion){var requiredVersion=aRequiredVersion.split("f").join(".").split("."),res=false;try{var tControl=new ActiveXObject("UnityWebPlayer.UnityWebPlayer.1");if(tControl)if(tControl.GetPluginVersion()=="2.5.0f5"){var ua=navigator.userAgent,re=new RegExp("Windows NT ([0-9]+)\."),matches=re.exec(ua),major=matches[1];if(major<6){res=true}else if((requiredVersion[0]>2)||((requiredVersion[0]==2)&&(requiredVersion[1]>5))||((requiredVersion[0]==2)&&(requiredVersion[1]==5)&&(requiredVersion[2]>0))||((requiredVersion[0]==2)&&(requiredVersion[1]==5)&&(requiredVersion[2]==0)&&(requiredVersion[3]>5))){res=false}else res=true}else res=true}catch(e){};return res}
function detectUnityWebPlayer(aRequiredVersion){var tInstalled=false;if(navigator.appVersion.indexOf("MSIE")!=-1&&navigator.appVersion.toLowerCase().indexOf("win")!=-1){tInstalled=detectUnityWebPlayerActiveX(aRequiredVersion)}else if(navigator.mimeTypes&&navigator.mimeTypes["application/vnd.unity"])if(navigator.mimeTypes["application/vnd.unity"].enabledPlugin&&navigator.plugins&&navigator.plugins["Unity Player"])tInstalled=true;return tInstalled};createPackage("indg.exf.system");PropertyConvertor=indg.exf.system.PropertyConvertor=function(){this.NUMBER=0;this.STRING=1;this.BOOLEAN=3;this.ARRAY=4;this.SIZE=5;this.DELIMITER=",";this.convert=function(aXMLNode,aPropertyName,aType,aDefault){var theAttributeNode=aXMLNode.attributes.getNamedItem(aPropertyName);if(theAttributeNode==null)return aDefault;var theAttributeText=theAttributeNode.nodeValue;if(theAttributeText==null)return aDefault;switch(aType){case PropertyConvertor.NUMBER:return Number(theAttributeText);break;case PropertyConvertor.BOOLEAN:return(theAttributeText.toLowerCase()=="true")?true:false;break;case PropertyConvertor.SIZE:if(theAttributeText.indexOf("%")==-1){return Number(theAttributeText)}else return theAttributeText;break;case PropertyConvertor.STRING:return theAttributeText;break;case PropertyConvertor.ARRAY:return theAttributeText.split(PropertyConvertor.DELIMITER);break};return null}};indg.exf.system.PropertyConvertor=new indg.exf.system.PropertyConvertor();PropertyConvertor=indg.exf.system.PropertyConvertor;createPackage("indg.exf.structure");PEXConfiguration=indg.exf.structure.PEXConfiguration=function(aProductId){this.mProductId="";this.mIsInGlobalConfig=false;this.playerURL="";this.baseURL="";this.assetBaseURL="";this.rootURL="";this.defaultConfigURL="config.xml";this.loadingHTML="";this.playerSize=new Object();this.configuration=new Array();this.usedViews=new Array();this.hasFlashPlugin=false;this.hasUnityPlugin=false;this.hasViewRequiringUnity=false;this.locale="en_US";this.pluginFlashRequiredVersion="9.0.124";this.pluginUnityRequiredVersion="2.5.0.5";this.pluginFlashSupportedViews=new Array();this.pluginUnitySupportedViews=new Array();this.pluginHtmlSupportedViews=new Array();this.getConfiguration=function(){return this.configuration};this.getLocale=function(){return this.locale};this.initWithFile=function(aFileName){var theFileName=this.getFileName(aFileName),theRequest=loadXMLDoc(theFileName,true);this.initWithRequest(theRequest)};this.initWithXML=function(aXML){for(var i=0;i<aXML.childNodes.length;i++){var theNode=aXML.childNodes[i];switch(theNode.nodeName){case"runner":var addProductDir=PropertyConvertor.convert(theNode,"addProductDir",PropertyConvertor.BOOLEAN,true);this.assetBaseURL=this.getFileName(PropertyConvertor.convert(theNode,"assetBaseURL",PropertyConvertor.STRING,""));if(this.assetBaseURL.substr(this.assetBaseURL.length-1)!="/")this.assetBaseURL+="/";if(addProductDir)this.assetBaseURL+=this.mProductId;if(this.assetBaseURL.substr(this.assetBaseURL.length-1)!="/")this.assetBaseURL+="/";if(!addProductDir)this.defaultConfigURL=this.mProductId+".xml";this.initRunnerSettingsWithXML(theNode);break;case"player":this.initPlayerSettingsWithXML(theNode);break;case"external":this.initExternalWithXML(theNode);break;default:break}}};this.detectRequirements=function(){this.hasFlashPlugin=swfobject.hasFlashPlayerVersion(this.pluginFlashRequiredVersion);this.hasUnityPlugin=detectUnityWebPlayer(this.pluginUnityRequiredVersion);this.hasViewRequiringUnity=false;for(var i=0;i<this.usedViews.length;i++){var theView=this.usedViews[i];if(this.pluginUnitySupportedViews.contains(theView)&&!this.pluginFlashSupportedViews.contains(theView))this.hasViewRequiringUnity=true}};this.initWithRequest=function(aRequest){this.configuration.push(aRequest.responseText);this.initLoadingWithText(aRequest.responseText);var theXML=aRequest.responseXML;this.initWithXML(theXML.childNodes[((theXML.childNodes[0].baseName=="xml")?1:0)])};this.initLoadingWithText=function(aText){var hasLoadingHTML=false;if(aText.indexOf("<loadingHTML>")!=-1){var theLoadingHTML=aText.substr(aText.indexOf("<loadingHTML>")+13);theLoadingHTML=theLoadingHTML.substr(0,theLoadingHTML.indexOf("</loadingHTML>"));this.loadingHTML=theLoadingHTML}};this.initRunnerSettingsWithXML=function(aXML){for(var i=0;i<aXML.childNodes.length;i++){var theNode=aXML.childNodes[i];switch(theNode.nodeName){case"loadingHTML":break;case"player":this.playerURL=this.getFileName(PropertyConvertor.convert(theNode,"source",PropertyConvertor.STRING,""));this.playerSize.width=PropertyConvertor.convert(theNode,"width",PropertyConvertor.SIZE,"100%");this.playerSize.height=PropertyConvertor.convert(theNode,"height",PropertyConvertor.SIZE,"100%");break;case"defaultConfig":this.defaultConfigURL=PropertyConvertor.convert(theNode,"source",PropertyConvertor.STRING,"config.xml");break;case"plugins":this.initPluginSettingsWithXML(theNode);break;default:break}}};this.initPluginSettingsWithXML=function(aXML){for(var i=0;i<aXML.childNodes.length;i++){var theNode=aXML.childNodes[i];switch(theNode.nodeName){case"flash":this.pluginFlashRequiredVersion=PropertyConvertor.convert(theNode,"requires",PropertyConvertor.STRING,this.pluginFlashRequiredVersion);this.pluginFlashSupportedViews=PropertyConvertor.convert(theNode,"supports",PropertyConvertor.ARRAY,[]);break;case"unity":this.pluginUnityRequiredVersion=PropertyConvertor.convert(theNode,"requires",PropertyConvertor.STRING,this.pluginUnityRequiredVersion);this.pluginUnitySupportedViews=PropertyConvertor.convert(theNode,"supports",PropertyConvertor.ARRAY,[]);break;case"html":this.pluginHtmlSupportedViews=PropertyConvertor.convert(theNode,"supports",PropertyConvertor.ARRAY,[]);break;default:break}}};this.initPlayerSettingsWithXML=function(aXML){for(var i=0;i<aXML.childNodes.length;i++){var theNode=aXML.childNodes[i];switch(theNode.nodeName){case"views":this.indexViewTypes(theNode);break;case"external":this.initExternalWithXML(theNode);break;default:break}}};this.initExternalWithXML=function(aXML){var theURL=PropertyConvertor.convert(aXML,"source",PropertyConvertor.STRING,"");if(theURL!=""){var theFileName=this.getFileName(theURL),theRequest=loadXMLDoc(theFileName,true);this.configuration.push(theRequest.responseText)}};this.getFileName=function(aFileName){if(aFileName.indexOf("%locale%")!=-1)aFileName=aFileName.split("%locale%").join(this.locale);if(aFileName.indexOf("://")!=-1)return aFileName;if(aFileName.substr(0,1)=="/")return this.rootURL+aFileName;if(this.mIsInGlobalConfig){return this.baseURL+aFileName}else return this.assetBaseURL+aFileName};this.indexViewTypes=function(aXML){for(var i=0;i<aXML.childNodes.length;i++){var theNode=aXML.childNodes[i],shouldIndex=true;switch(theNode.nodeName){case"transitionDefault":case"bulletDefaults":shouldIndex=false;break;default:if(theNode.nodeName.substr(0,1)=="#")shouldIndex=false;break};for(var j=0;j<this.usedViews.length;j++)if(this.usedViews[j]==theNode.nodeName)shouldIndex=false;if(shouldIndex)this.usedViews.push(theNode.nodeName)}};{this.mIsInGlobalConfig=true;this.mProductId=aProductId;this.baseURL=rootURL+pexBaseURL;this.assetBaseURL=rootURL+pexBaseURL;this.isLocal=isLocal;this.rootURL=rootURL;this.initWithFile(genericConfigurationURL);this.mIsInGlobalConfig=false}};createPackage("indg.exf");PEX=indg.exf.PEX=function(aProduct,aConfigURL,aLocale){this.mPEXConfiguration=NULL;this.mFlashHandler=NULL;this.mProductId=NULL;this.showPlugins=function(){var theLoading=document.getElementById("_pex_"+this.mProductId+"_loading_");theLoading.style.top="-3000px";theLoading.innerHTML="";theLoading.style.display="none"};this.setSize=function(aWidth,aHeight){var theWrapper=document.getElementById("_pex_"+this.mProductId+"_wrapper_");if(aWidth!=0)theWrapper.style.width=this.getSize(aWidth);if(aHeight!=0)theWrapper.style.height=this.getSize(aHeight)};this.embedUnityViewer=function(){return"__pex_unity__"};this.getSize=function(aSize){aSize=aSize.toString();return aSize+((aSize.substr(aSize.length-1)=="%")?"":"px")};this.embedFlashPlayer=function(){var unityConnectorId="",useUnity=false;if(this.mPEXConfiguration.hasViewRequiringUnity&&this.mPEXConfiguration.hasUnityPlugin){unityConnectorId=this.embedUnityViewer();if(unityConnectorId==""){alert("Something is wrong with your Unity installation")}else useUnity=true};var theFlashVars={useUnity:useUnity,product:this.mProductId,pexRunnerId:"PEX_"+this.mProductId,baseURL:this.mPEXConfiguration.assetBaseURL,isLocal:this.mPEXConfiguration.isLocal,rootURL:this.mPEXConfiguration.rootURL,recommendUnity:(this.mPEXConfiguration.hasViewRequiringUnity&&!this.mPEXConfiguration.hasUnityPlugin)},theParameters={allowFullscreen:true,fullscreen:true,wmode:"opaque"},theLocation=document.location.href;if(theLocation.split("?")[1]=="debug=true")theParameters.wmode="opaque";this.writeContainer();swfobject.embedSWF(this.mPEXConfiguration.playerURL,"_pex_"+this.mProductId+"_flash_","100%","100%",this.mPEXConfiguration.pluginFlashRequiredVersion,null,theFlashVars,theParameters,{});swfobject.createCSS("#_pex_"+this.mProductId+"_flash_","outline:none")};this.writeContainer=function(){if(this.mPEXConfiguration.viewType==this.mPEXConfiguration.VIEW_INLINE)document.write("<div id=\"_pex_"+this.mProductId+"_wrapper_\" class=\"pexContainer\" style=\"width: "+this.getSize(this.mPEXConfiguration.playerSize.width)+"; height: "+this.getSize(this.mPEXConfiguration.playerSize.height)+";\"><div id=\"_pex_"+this.mProductId+"_loading_\" style=\"position:absolute; top: 0px; left: 0px; width: "+this.getSize(this.mPEXConfiguration.playerSize.width)+"; height: "+this.getSize(this.mPEXConfiguration.playerSize.height)+"; \">"+this.mPEXConfiguration.loadingHTML+"</div><div id=\"_pex_"+this.mProductId+"_flash_\"></div></div>")};this.embedHTMLFallback=function(){var theHTML=loadXMLDoc(document.location.href),theTestString="<noscript pex=\""+this.mProductId+"\">";if(theHTML.indexOf(theTestString)!=-1){var theNoScript=theHTML.substr(theHTML.indexOf(theTestString)+theTestString.length);if(theNoScript.indexOf("</noscript>")!=-1)theNoScript=theNoScript.substr(0,theNoScript.indexOf("</noscript>"));document.write(theNoScript)}};{if(aLocale==null){var userLang=(navigator.language)?navigator.language:navigator.userLanguage;userLang=userLang.split("-").join("_");var userCodes=userLang.split("_");userCodes[1]=userCodes[(userCodes.length>1)?1:0].toUpperCase();userLang=userCodes.join("_");aLocale=userLang};this.mProductId=aProduct;if((aProduct==null)||(aProduct==""))this.mProductId=defaultPexId;eval("PEX_"+this.mProductId+" = this;");this.mPEXConfiguration=new PEXConfiguration(this.mProductId);this.mPEXConfiguration.locale=aLocale;if(aConfigURL==null)aConfigURL=this.mPEXConfiguration.defaultConfigURL;this.mPEXConfiguration.initWithFile(aConfigURL);this.mPEXConfiguration.detectRequirements();if(this.mPEXConfiguration.hasFlashPlugin){this.embedFlashPlayer()}else this.embedHTMLFallback()}};try{trackPage("")}catch(e){trackPage=function(aPage){}};if(pexBaseURL.substr(pexBaseURL.length-1)!="/")pexBaseURL+="/";var rootURL="",isLocal=false;if(document.location.href.indexOf("file://")!=-1){var thePaths=document.location.href.split("?")[0].split("#")[0].split("\\").join("/").split("/");thePaths.pop();rootURL=thePaths.join("/");rootURL=rootURL.split("file://localhost/").join("file://");isLocal=true}
function getXMLHttpRequestObject(){var req=false;if(window.XMLHttpRequest&&!(window.ActiveXObject)){try{req=new XMLHttpRequest()}catch(e){req=false}}else if(window.ActiveXObject)try{req=new ActiveXObject("Msxml2.XMLHTTP")}catch(e){try{req=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){req=false}};return req}
function loadXMLDoc(aURL,aAsRequest,aProps){var theXmlRequest=getXMLHttpRequestObject();if(aAsRequest==null)aAsRequest=false;if(aProps==null)aProps=new Object();if(isLocal&&(aURL.indexOf("://")==-1)){if(aURL.substr(0,1)!="/")aURL="/"+aURL;aURL=rootURL+aURL};var theRequestMethod=((aProps==null)||(aProps.method==null))?"GET":aProps.method,theSendString=((aProps==null)||(aProps.send==null))?"":aProps.send;if(theXmlRequest){theXmlRequest.open(theRequestMethod,aURL,false);if(theRequestMethod=="POST"){theXmlRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");theXmlRequest.setRequestHeader("Content-length",theSendString.length)};theXmlRequest.send(theSendString);if(theXmlRequest.readyState==4)if((theXmlRequest.status==200)||(theXmlRequest.status==0)){var theRequestObject={responseXML:theXmlRequest.responseXML,responseText:theXmlRequest.responseText};if(((theRequestObject.responseXML==null)||(theRequestObject.responseXML.childNodes.length==0))&&(theRequestObject.responseText!="")){var theXMLDocument;if(window.DOMParser){var theDOMParser=new DOMParser();theXMLDocument=theDOMParser.parseFromString(theXmlRequest.responseText,"text/xml")}else{theXMLDocument=new ActiveXObject("Microsoft.XMLDOM");theXMLDocument.async="false";theXMLDocument.loadXML(theXmlRequest.responseText)};theRequestObject.responseXML=theXMLDocument};return(aAsRequest)?theRequestObject:theRequestObject.responseText}else{alert("There was a problem loading file \""+aURL+"\":\n"+theXmlRequest.statusText);return null}};return null};var hasXmlRequest=getXMLHttpRequestObject();if(hasXmlRequest)hasXmlRequest=true
function patchSWFObject(){var UNDEF="undefined",SHOCKWAVE_FLASH_AX="ShockwaveFlash.ShockwaveFlash.7",win=window;if(typeof window.ActiveXObject!="undefined")try{var a=new ActiveXObject(SHOCKWAVE_FLASH_AX);if(a){d=a.GetVariable("$version");if(d){d=d.split(" ")[1].split(",");swfobject.ua.pv=[parseInt(d[0],10),parseInt(d[1],10),parseInt(d[2],10)]}}}catch(e){};if(swfobject.ua.ie)swfobject.ua.mac=true}
function placePEX(aProductId,aConfigURL,aLocale){patchSWFObject();if(hasXmlRequest){bootClass("indg.exf.PEX",[aProductId,aConfigURL,aLocale])}else document.write("Your webbrowser does not have the required functionality to display this application.")}
