
if(!window.__AtlasRichMedia__) window.__AtlasRichMedia__ = {
modules: {},
addModule: function(module) {
if(!this.modules[module.moduleId]) this.modules[module.moduleId] = module;
return this.modules[module.moduleId];
},
getModule: function(moduleId) {
return this.modules[moduleId];
}
};
__AtlasRichMedia__.addModule(
{
moduleId : "richMediaAd_a1",
Ad : function(adEnv)
{
this._adEnv = adEnv;
var path = adEnv.image_path;
var i = path.lastIndexOf("/");
this._advertiserId = path.substr(i + 1);
this._dsDirPath = path.substr(0, i);
this._adGuid = adEnv.placement_ad_id.substr(32);
this.getPaid = function()
{
return this._adEnv.placement_ad_id;
}
this.getAdvertiserId = function()
{
return this._advertiserId;
}
this.getAdGuid = function()
{
return this._adGuid;
}
this.getEnvironment = function()
{
return this._adEnv;
}
this.getProperties = function()
{
return this._adProp;
}
this.setProperties = function(props)
{
this._adProp = props;
}
this.getDsDirPath = function()
{
return this._dsDirPath;
}
}
});
__AtlasRichMedia__.addModule(
{
moduleId: 'richMediaAdMgr_a1',
_ads: {},
add: function(ad)
{
this._ads[ad.getPaid()] = ad;
},
getByPaid: function(paid)
{
var ad = this._ads[paid];
if (!ad)
ad = null;
return ad;
},
createAd : function(adEnv)
{
var adMod = __AtlasRichMedia__.getModule("richMediaAd_a1");
var adConstructor = adMod.Ad;
var ad = new adConstructor(adEnv);
return ad;
},
addAdProperties : function(props)
{
var paid = props.paid;
var ad = this._ads[paid];
if ( ad && ad.setProperties )
ad.setProperties(props);
}
});
__AtlasRichMedia__.addModule(
{
moduleId : "adPropertiesTransformation_a1",
adPropertiesTransform : function(adProps)
{
if ( this._propIsntSubstituted(adProps.flash_version) )
{
adProps.flash_version = adProps.blContent[0][8];
}
if ( this._propIsntSubstituted( adProps.movie_name) )
{
adProps.movie_name = adProps.blContent[0][0];
}
if ( this._propIsntSubstituted( adProps.alt_movie_name) )
{
adProps.alt_movie_name = adProps.blContent[0][13];
}
if ( this._propIsntSubstituted( adProps.is_alternate_contents_external) )
{
adProps.is_alternate_contents_external = adProps.blContent[0][17];
}
if ( this._propIsntSubstituted( adProps.is_alt_from_default_dir) )
{
adProps.is_alt_from_default_dir = adProps.blContent[0][14];
}
if ( this._propIsntSubstituted( adProps.alternate_movie_url) )
{
adProps.alternate_movie_url = adProps.blContent[0][18];
}
},
_propIsntSubstituted : function (propertyValue)
{
return propertyValue.match(/!~!.*!~!/);
}
});
if(!window.ARMRedirLib) ARMRedirLib = {};
if(!ARMRedirLib.AdParms) {
ARMRedirLib.AdParms = function(parms) {
for(var name in parms) {
var value = parms[name];
switch(name) {
case 'blContent':
case 'a4euserclicks':
if(typeof(value) == "string" && !value.match(/!~!/)) {
this[name] = [];
eval(value);
} else {
this[name] = value;
}
break;
case 'childmovies':
if(typeof(value) == "string" && !value.match(/!~!/)) {
this.childmovies = [{}];
eval(value);
} else {
this.childmovies = value;
}
break;
case 'locationdatafirefox':
if(typeof(value) == "string" && !value.match(/!~!/)) {
this.locationdata = [];
eval(value);
} else {
this.locationdata = value;
}
break;
case 'idTag':
this.paid = value;
break;
default:
this[name] = value;
break;
}
}
}
}
if(!window.__atlas_ad_info) __atlas_ad_info = {};
if(!window.ARM_rtc) ARM_rtc = {};
if(!ARM_rtc.RmAdParms) ARM_rtc.RmAdParms = [];
if(!ARM_rtc.AddRmAdParms) {
ARM_rtc.AddRmAdParms = function(adParms)
{
adParms.mods = [];
var modules = adParms.modules.split(",");
for (var j = 0; j < modules.length; j++)
{
adParms.mods[adParms.mods.length] = {moduleId:modules[j], moduleObject:null, moduleInitialized:false};
}
ARM_rtc.RmAdParms[ARM_rtc.RmAdParms.length] = adParms;
}
}
if(!ARM_rtc.getByPaid) {
ARM_rtc.getByPaid = function(paid)
{
for (var i = 0; i < ARM_rtc.RmAdParms.length; i++)
{
if (ARM_rtc.RmAdParms[i].paid == paid) return ARM_rtc.RmAdParms[i];
}
return null;
}
}
(function() {
if(!window.ARM_TestMode) {
var adProps =
{
a4euserclicks:"this.a4euserclicks[0]= new Array();",
blContent:"this.blContent[0]= new Array('TBOMTNISSNC4/Nissan_Versa_Sync_July24_2008/8167.728x90synextra.swf',true,'213ece379f-b117-4104-a5ce-37b5a082492c',0,0,0,0,0,8,1,0,0,0,'TBOMTNISSNC4/Nissan_Versa_Sync_July24_2008/8167.728x90synextra_backup.gif',false,'21446020a3-d8a0-41dd-a7f8-dd91596fc4a9',-1,false,'',1,0);",
cap:"100000",
childmovies:" this.childmovies[0]['movie1'] = 'Nissan_Versa_Sync_July24_2008/8167.728x90synextra_child.swf';",
endDate:"-1",
firefoxEnabled:"true",
freq:"-1",
idCampaign:"669110c9c96849a7b82e06f1fa71b01f",
idCat2Camp:"571230d07f814988aa1fc9c214d28371",
idMpgMovie:"",
idTag:"e4eed9d1ad294bf08a723a819659d808669110c9c96849a7b82e06f1fa71b01f",
idWeb:"001aa24f0412475590ad0e904ee3ede2",
idWebCat:"88cdb08ea8e6413e87cdcba5f078fba6",
impoliteDownload:"true",
locationdata:"this.locationdata[0] = new Array(0,0,90,728,1,2,'Alternate',0,0,90,728,1,2,'Alternate',0,0,90,728,1,2,'Alternate');",
locationdatafirefox:"this.locationdata[0] = new Array(0,0,90,728,1,2,1,'Alternate',0,0,90,728,1,2,1,'Alternate',0,0,90,728,1,2,0,'Alternate');",
minBrowserVersion5:"false",
modules:"ARMRedirLib_c1,ARMPreLib_c1,ARMRedirLib_ff_c1",
paramadserver:"false",
paramdynamic:"false",
paramdynamiclogicmain1:"",
paramdynamiclogicmain2:"",
paramdynamiclogicmain3:"",
paramdynamiclogicmain4:"",
paramdynamiclogicreminder1:"",
paramdynamiclogicreminder2:"",
paramdynamiclogicreminder3:"",
paramdynamiclogicreminder4:"",
paramdynamiclogicteaser1:"",
paramdynamiclogicteaser2:"",
paramdynamiclogicteaser3:"",
paramdynamiclogicteaser4:"",
paramhideselectmain:"true",
paramhideselectreminder:"false",
paramhideselectteaser:"false",
parammain:"false",
paramnoframesmain:"true",
paramnoframesreminder:"false",
paramnoframesteaser:"false",
paramonload:"false",
paramonscroll:"true",
paramreminder:"false",
paramres_1024x768:"false",
paramres_1152x864:"false",
paramres_1280x1024:"false",
paramres_1600x1200:"false",
paramres_640x480:"false",
paramres_800x600:"false",
showAnyResolution:"true",
startDate:"8017980644623795712",
TopLayerVersion:"v2v", 
ifbVersion:"7",
useAkamai:"false",
version:"6",
embed_wmode:"transparent",
flash_version:"!~!flash_version!~!",
movie_name:"!~!movie_name!~!",
alt_movie_name:"!~!alt_movie_name!~!",
is_alternate_contents_external:"!~!is_alternate_contents_external!~!",
is_alt_from_default_dir:"!~!is_alt_from_default_dir!~!",
alternate_movie_url : "!~!alternate_movie_url!~!"
};
var adParms = new ARMRedirLib.AdParms(adProps);
var adPropsTransformationMod = __AtlasRichMedia__.getModule("adPropertiesTransformation_a1");
adPropsTransformationMod.adPropertiesTransform(adParms);
var adMgrMod = __AtlasRichMedia__.getModule("richMediaAdMgr_a1");
adMgrMod.addAdProperties(adParms);
ARM_rtc.AddRmAdParms(adParms);
}
})();
__AtlasRichMedia__.addModule(
{
moduleId: 'client_a1',
isGenerallySupported: function() {
if(this.userAgent.isInternetExplorer() && this.platform.isOSX()) return false;
return (this.userAgent.isSupported() && this.platform.isSupported());
},
setPlatformString: function(str) {
this.platform.setString(str);
},
setUserAgentString: function(str) {
this.userAgent.setString(str);
},
userAgent: {
name: null,
version: {
major: null,
minor: null
},
getVersion: function() {
return this.version;
},
isFirefox: function()
{
return this.name == "Firefox";
},
isInternetExplorer: function()
{
return this.name == "Internet Explorer";
},
isOpera: function()
{
return this.name == "Opera";
},
isSafari: function()
{
return this.name == "Safari";
},
isAvant: function()
{
return this.name == "Avant Browser";
},
isSupported: function() {
if(this.isFirefox()) {
var version = this.getVersion();
if((version.major == 1 && version.minor >= 5) || version.major > 1) return true;
return false;
}
if(this.isInternetExplorer()) {
var version = this.getVersion();
if((version.major >= 5 && version.minor >= 5) || version.major > 5) return true;
return false;
}
if(this.isSafari()) 
{
return ("!~!safariSupported!~!" == "true");
}
return false;
},
setString: function(str) {
this.name = null;
this.version = {major: null, minor: null};
var matches = {
"Avant Browser":/.*(Advanced\sBrowser|Avant\sBrowser).*/i,
"Netscape":/.*(Netscape)[^\/]*\/([0-9]+)\.([0-9]+)/i,
"Opera":/.*(Opera)\s*\/*\s*([0-9]+)\.([0-9]+)/i,
"Safari":/.*(Safari)\s*\/*\s*([0-9]+)\.?([0-9]*)/i,
"Firefox":/.*(Firefox|BonEcho|Minefield)[\s|\/]*([0-9]+)\.([0-9]+)[\.]*([^\s]*)/i,
"Internet Explorer":/.*(MSIE|Microsoft\sInternet\sExplorer)[\s\/]([0-9]+)\.([0-9]+)/i
};
for(var browserName in matches) {
var match = str.match(matches[browserName]);
if (match) {
this.name = browserName;
if (match[2])
this.version.major = parseInt(match[2]);
if (match[3])
this.version.minor = parseInt(match[3]);
return;
}
}
}
},
platform: {
os: null,
isSupported: function() {
return (this.isWindows() || this.isOSX());
},
isOSX: function() {
return this.os == "OSX";
},
isWindows: function() {
return this.os == "Windows";
},
setString: function(str) {
this.os = null;
if(str.match(/^win/i)) this.os = "Windows"; 
if(str.match(/^mac/i)) this.os = "OSX"; 
}
},
supportsRichMediaAd: function(rmAdAlt) {
if(rmAdAlt.playWindow.isMsnHotmail() && (!this.os.isWindows() || !this.platform.isInternetExplorer() )) return false;
if(!ARMRedirLib.FlashPlayer.IsVersionSupported(rmAdAlt.flash_version)) return false;
return this.isGenerallySupported();
}
}
);
;
(function(){
var DocumentAdapter = function(doc) {
for(var i = 0; i < DocumentAdapter.instances.length; i++)
{
if(DocumentAdapter.instances[i].doc == doc)
return DocumentAdapter.instances[i];
}
this.doc = doc;
this.adCount = 0;
DocumentAdapter.instances.push(this);
}
DocumentAdapter.moduleId = 'Document_a1';
DocumentAdapter.instances = [];
DocumentAdapter.getWindow = function() {
return window;
}
DocumentAdapter.prototype = {
constructor: DocumentAdapter,
adCreated: function() {
this.adCount++;
if(this.adCount == 1)
this.prepare();
},
adDeleted: function() {
if(this.adCount > 0) {
if(this.adCount == 1)
this.unprepare();
this.adCount--;
}
},
getAdCount: function() {
return this.adCount;
},
prepare: function() {
var win = DocumentAdapter.getWindow();
if(win.getComputedStyle && this.doc.body) {
var bodyStyle = win.getComputedStyle(this.doc.body,null);
var htmlStyle = win.getComputedStyle(this.doc.documentElement,null);
if(bodyStyle && bodyStyle.overflowY == 'hidden' && htmlStyle && htmlStyle.overflowY == 'hidden') {
this.previousOverflowY = htmlStyle.overflowY;
this.doc.documentElement.style.overflowY = 'visible';
}
}
},
unprepare: function() {
if(this.previousOverflowY) this.doc.documentElement.style.overflowY = this.previousOverflowY;
}
};
__AtlasRichMedia__.addModule(DocumentAdapter);
})();
__AtlasRichMedia__.addModule(
{
moduleId: 'rmAdAltSetup_a1',
init: function()
{
var RmAdAlt = function(adParms,tplParams)
{
this.adParms = adParms;
adParms.adObjectAlt = this;
this.tplParms = this.tplParams = tplParams;
this.handleAdParamsDefaultValues(this.tplParams); 
this.bFirefoxEnabled = adParms.firefoxEnabled == "true" ? true : false;
this.idCampaign = adParms.idCampaign;
this.paid = adParms.paid;
this.idWebCat = adParms.idWebCat;
this.blContent = adParms.blContent;
this.flash_version = adParms.flash_version;
this.Version = adParms.version;
this.blTreeLocation = 0;
this.uniqueImp = true;
this.alternateExists = true;
this.bustingOut = false;
this.atlasObject = null;
this.OrigVersion = adParms.version;
this.TopLayerAdURL = "";
this.dynamicIframe = false;
this.oIframeTag = typeof(a4eIframe) != 'undefined';
var WindowWrap = __AtlasRichMedia__.getModule('WindowWrap_a1');
if(WindowWrap) {
var thisWindow = new WindowWrap(window);
if(this.isBustedOut()) {
this.loadWindow = null;
this.playWindow = thisWindow;
} else {
this.loadWindow = thisWindow;
if(this.loadWindow.inFriendlyIframe()) {
this.playWindow = new WindowWrap(this.loadWindow.findPlayWindow());
} else {
this.playWindow = thisWindow;
}
}
}
this.running = false;
}
RmAdAlt.prototype.isBustedOut = function() {
var result = ((this.tplParams != undefined && this.tplParams != null) && (this.tplParams.paid != undefined && this.tplParams.paid != null));
return result;
}
RmAdAlt.prototype.handleAdParamsDefaultValues = function(tplParams)
{
if(tplParams != null) {
if (tplParams.pub_click_url != null && (tplParams.pub_click_url).indexOf('pub_click_url') != -1)
tplParams.pub_click_url = '';
if (tplParams.pub_view_url != null && (tplParams.pub_view_url).indexOf ('pub_view_url') != -1)
tplParams.pub_view_url = '';
if (tplParams.buster_url != null && (tplParams.buster_url).indexOf ('buster_url') != -1)
tplParams.buster_url = '';
}
}
RmAdAlt.prototype.runAlternateAd = function(isCompatibleClient) {
if (!this.alternateExists || this.running) 
return;
this.running = true;
var alternateTextToWrite = '';
var tempAlternateMovieName = ARMRedirLib.urlBuilder.getAlt(this);
var matches = tempAlternateMovieName.match(/\.(gif|jpg|jpeg)/i);
if(matches && matches[matches.length-1])
{
alternateTextToWrite = this.getAlternateAdHtml(tempAlternateMovieName, isCompatibleClient);
var pub_view_url = (
this.impressionTrackURL1 ? this.impressionTrackURL1 : (
this.tplParams.pub_view_url ? this.tplParams.pub_view_url : ''
)
);
if (pub_view_url != '')
{
alternateTextToWrite = alternateTextToWrite + "<div style='visibility:hidden;position:absolute;height:0;width:0;top:0;left:0;'><IMG alt='' style='visibility:hidden;position:absolute;top:0;left:0;' name='AtlasPubReportImage' id='AtlasPubReportImage' border=0 width=1 height=1 src='" + pub_view_url + "'></div>";
}
if (window.testAtlasVt2EventFired)
testAtlasVt2EventFired(this.tplParams.atlas_view_url);
document.write(
alternateTextToWrite + 
(
(document.domain.indexOf("ultimateavmag.com") > 0 && document.domain.indexOf("ultimateavmag.com") < 10) ||
(document.domain.indexOf("weather.com") > 0 && document.domain.indexOf("weather.com") < 10) ? "<BR>" : ""
)
);
this.changeAlternatePositionToRelative();
this.fireVt2();
}
}
RmAdAlt.prototype.documentIsReady = function(w)
{
return (w.document.readyState === undefined || w.document.readyState == "complete");
}
RmAdAlt.prototype.insertAdElementsInParentWindow = function()
{
if ( this.documentIsReady(this.playWindow.win))
{ 
var tplObject = this.tplParams;
tplObject.paid = this.paid;
tplObject.loadWindow = this.loadWindow.win;
tplObject.playWindow = this.playWindow.win;
if(this.playWindow.win.__AtlasRichMedia__)
{
var adCollection = this.playWindow.win.__AtlasRichMedia__.getModule('adCollection_a1');
var ad = adCollection.getByPaid(this.paid);
if (ad)
ad.destroy();
}
tplObject.isAjaxScenario = this.loadWindow.inAjaxDynamicIframe();
if(!this.playWindow.win.__atlas_ad_info) 
this.playWindow.win.__atlas_ad_info = {};
this.playWindow.win.__atlas_ad_info[this.paid] = tplObject; 
this.writeRedirectScript();
}
else 
{
var obj = this;
window.setTimeout(function(){obj.insertAdElementsInParentWindow()}, 250);	
}	
}
RmAdAlt.prototype.writeRedirectScript = function()
{
var url = ARMRedirLib.urlBuilder.getRedirectBustout(this);
var script = this.playWindow.win.document.createElement('script');
script.type = 'text/javascript';
script.id = 'ad4everscript2' + this.paid;
script.src = url;
this.containerElement.appendChild(script);	
}
RmAdAlt.prototype.fireVt2 = function()
{ 
var iframe = document.getElementById("vt2Iframe_" + this.paid);
if(iframe)
{
iframe.contentWindow.document.open();
iframe.contentWindow.document.write('<html><head></head><body><script type="text/javascript" src="' + this.tplParams.atlas_view_url + '"></scr' + 'ipt><script type="text/javascript">window.setTimeout("document.close()", 2000);</scr' + 'ipt></body></html>');
}
}
RmAdAlt.prototype.changeAlternatePositionToRelative = function()
{
if(__AtlasRichMedia__.getModule('client_a1').userAgent.isFirefox())
{
var altImage = document.getElementById("orange_alternate_" + this.paid);
var element = altImage;
if (element)
{
while(element.offsetParent)
{
element = element.offsetParent;
if (element.tagName.toLowerCase() == "table" && element.style.display == "inline")
{
altImage.style.position = 'relative';
break;
}
}
}
} 
}
RmAdAlt.prototype.getAlternateAdHtml = function(tempAlternateMovieName, isCompatibleClient)
{
var timeStamp = (new Date()).getTime();
var isFirefox = __AtlasRichMedia__.getModule('client_a1').userAgent.isFirefox();
var isSafari = __AtlasRichMedia__.getModule('client_a1').userAgent.isSafari();
var visibility = (!isCompatibleClient || innerDebugMode == true ? "visible" : "hidden");
var rmAdAlt = this;
var getReportCall = function()
{
return "ARMRedirLib.reportA4EBannerActivity(\"" +
rmAdAlt.tplParams.pub_click_url +
"\",\"orange_alternate_" +
rmAdAlt.paid +
"_rep\", \"" +
rmAdAlt.tplParams.click_url_t +
"1\", " +
timeStamp +
")";
}
return "" +
"<a href='javascript:" +
getReportCall() +
"'><img alt='' " +
" onclick='" +
getReportCall() +
"' usemap=\"#AtlasAltMap_" + this.paid +
"\" style='visibility:" +
visibility +
"' border=0 name='orange_alternate_" +
this.paid +
"' id='orange_alternate_" +
this.paid +
"' src='" +
tempAlternateMovieName +
"'></a>" +
"<map name=\"AtlasAltMap_" + this.paid +
"\"><area href='javascript:" +
getReportCall() +
"' shape='default'></map>" +
"<div style='visibility:hidden;position:absolute;height:0;width:0;top:0;left:0;'>" +
(isFirefox || isSafari ?
(this.tplParams.atlas_view_url.indexOf("jview") != -1 ? "<iframe id='vt2Iframe_" + this.paid + "' src='about:blank' style='display:none'></iframe>" : "") +
(this.tplParams.atlas_view_url.indexOf("iview") != -1 ? "<iframe src='" + this.tplParams.atlas_view_url + "'></iframe>" : "")
:
"<img style='visibility:hidden;position:absolute;top:0;left:0;'  border=0 width=1 height=1 name='" +
"orange_alternate_" + this.paid +
"_rep' id='" +
"orange_alternate_" + this.paid +
"_rep' src='" +
this.tplParams.atlas_view_url + "'>"
) +
"</div>"
;
}
RmAdAlt.moduleId = "RmAdAlt_a1";
RmAdAlt = __AtlasRichMedia__.addModule(RmAdAlt);
}
}
).init();
if(!window.ARMRedirLib) ARMRedirLib = {};
if(window.navigator) {
__AtlasRichMedia__.getModule('client_a1').setUserAgentString(window.navigator.userAgent);
__AtlasRichMedia__.getModule('client_a1').setPlatformString(window.navigator.platform);
}
if(__AtlasRichMedia__.getModule('client_a1').userAgent.isFirefox() || __AtlasRichMedia__.getModule('client_a1').userAgent.isSafari())
{
if (typeof(bFirefoxGlobalVarsLoaded) == 'undefined')
{
if (typeof(toplayer_debug_mode) == 'undefined')
{
var innerDebugMode = false;
}
else
{
var innerDebugMode = toplayer_debug_mode;
}
var VBEngineEnabled = true;
var HTTP_CONST = "http://";
var MOVIE_NAME_PLACE = 0, IS_FROM_DEFAULT_DIR = 1, ID_ADVERTISEMENT_PLACE = 2, IMPRESSION = 3, CLICK = 4, INTERACT = 5, OPEN_FORM = 6, ACTION = 7, MOVIE_FLASH_VERSION = 8, IS_AUTO_CONVERTED = 9, ALTERNATE_MOVIE_NAME = 13,IS_ALT_FROM_DEFAULT_DIR = 14, ALTERNATE_CONTENTS_FLASH_VERSION = 16, IS_ALTERNATE_CONTENTS_EXTERNAL = 17, ALTERNATE_MOVIE_URL = 18, STOP_COMMAND_EXISTS = 19, INDEX_LOCATIONARRAY_ARRAY = 20;
var pageLoadDetectorInstance = null;
var bFirefoxGlobalVarsLoaded = true;
}
} else {
if (typeof(ALTERNATE_MOVIE_NAME) == 'undefined')
{
if (typeof(toplayer_debug_mode) == 'undefined')
var innerDebugMode = false;
else
var innerDebugMode = toplayer_debug_mode;
var nonCompliantClient = false;
var VBEngineEnabled = true;
var httpConst = "http://";
var MOVIE_NAME_PLACE = 0, IS_FROM_DEFAULT_DIR = 1, ID_ADVERTISEMENT_PLACE = 2, IMPRESSION = 3, CLICK = 4, INTERACT = 5, OPEN_FORM = 6, ACTION = 7, MOVIE_FLASH_VERSION = 8, IS_AUTO_CONVERTED = 9, ALTERNATE_MOVIE_NAME = 13,IS_ALT_FROM_DEFAULT_DIR = 14, ALTERNATE_CONTENTS_FLASH_VERSION = 16, IS_ALTERNATE_CONTENTS_EXTERNAL = 17, ALTERNATE_MOVIE_URL = 18, STOP_COMMAND_EXISTS = 19, INDEX_LOCATIONARRAY_ARRAY = 20;
var EXPLORER_MIN_VERSION=5;
}
}
if(!ARMRedirLib.reportA4EBannerActivity) {
ARMRedirLib.reportA4EBannerActivity = function(externalPubClickURL, A4EReportIMGName , callURLstring , A4EBannerShowTimeStamp)
{
var oNewWindow;
if (callURLstring != '')
{
if (innerDebugMode == false)
{
if ((callURLstring.indexOf("http://") != 0) && (callURLstring.indexOf('https') != 0))
oNewWindow = ARMRedirLib.reportA4EBannerActivity.openWindow("http://" + callURLstring);
else
oNewWindow = ARMRedirLib.reportA4EBannerActivity.openWindow(callURLstring);
if (oNewWindow != null)
{
if (document.layers)
{
document["AtlasPubReportImage"].src=externalPubClickURL;
}
else
{
ARMRedirLib.reportA4EBannerActivity.sendImageRequest(externalPubClickURL);
}
}
}
else
{
var eventObj = document.createEventObject();
eventObj.expando = 'exit=1&[No data Available]';
document.all.TopLayerDebugObject.fireEvent("onchange",eventObj);
event.cancelBubble = false;
}
}
elapsedShowtime = (new Date()).getTime() - A4EBannerShowTimeStamp;
}
ARMRedirLib.reportA4EBannerActivity.openWindow = function(url)
{
return window.open(url);
}
ARMRedirLib.reportA4EBannerActivity.sendImageRequest = function(url)
{
var imageA = new Image();
imageA.src = url;
}
}
ARMRedirLib.urlBuilder =
{
_getTopLayerBase : function(paid)
{
var url = __atlas_ad_info[paid].TL_files_path;
var i = url.indexOf("/tl/");
url = url.substring(0, i + 4);
return url;
},
_getRedirectBase : function(paid)
{
return __atlas_ad_info[paid].TL_files_path + paid;
},
_getRedirectQuery : function(paid, version)
{
var DELIM = "a4edelim";
var adinfo = __atlas_ad_info[paid];
var url = "?ver=" + parseInt(version) + "&atdmt=";
if ((adinfo.pub_click_url != "") && (adinfo.pub_click_url.indexOf("pub_click_url") == -1))
url = url + "&a4eclickmacro=" + adinfo.pub_click_url + DELIM;
if ((adinfo.pub_view_url != "") && (adinfo.pub_view_url.indexOf("pub_view_url") == -1))
url = url + "&a4eviewmacro=" + adinfo.pub_view_url + DELIM;
if ((adinfo.buster_url != "") && (adinfo.buster_url.indexOf("buster_url") == -1))
url = url + "&a4ehtm=" + adinfo.buster_url + DELIM;
return url;
},
getTopLayer : function(obj)
{
return this._getTopLayerBase(obj.paid) + "TopLayer." + obj.Version + ".js";
},
getBasicTemplate : function(obj)
{
return this._getRedirectBase(obj.paid) + "a.js" + this._getRedirectQuery(obj.paid, obj.Version);
},
getRedirect : function(paid)
{
return this._getRedirectBase(paid) + ".js" + this._getRedirectQuery(paid, TopLayer_Version);
},
getRedirectBustout : function(altObj)
{
var url = altObj.imageServerURL + altObj.uniqueA4EIdForTag2 + "?spd=" + altObj.Version + "&atdmt=" + altObj.innerTempTopLayerAdURL + "a4eflag&fn=";
if (altObj.dynamicIframe)
{
url += "di";
url += "a4edelim";
if (altObj.tplParams.adRootElementId)
url += "&adRootElemId=" + altObj.tplParams.adRootElementId + "a4edelim";
}
return url;
},
getRedirectFF : function(topLayerFilesDir, paid)
{
return topLayerFilesDir + paid + ".ff.js?ver=" + TopLayer_version;
},
getEmptyMovieSrc : function(obj)
{
var version = 5;
var requiredVersion = obj.flash_version;
if (requiredVersion > 3 && requiredVersion < 9)
version = requiredVersion;
var emptyCacheMovie = "emptyA4E.ver" + version + ".swf";
return this._getTopLayerBase(obj.paid) + emptyCacheMovie;
},
getMovieSrc : function(obj)
{
var movieName = obj.blContent[0][MOVIE_NAME_PLACE];
return this._getTopLayerBase(obj.paid) + movieName;
},
getAlt : function(altObj)
{
var creativeProps = altObj.blContent[0];
var altMovieName = creativeProps[ALTERNATE_MOVIE_NAME];
if (creativeProps[IS_ALTERNATE_CONTENTS_EXTERNAL])
{
altMovieName = creativeProps[ALTERNATE_MOVIE_URL] + altMovieName;
}
else
{
var tplParams = altObj.tplParams;
if (creativeProps[IS_ALT_FROM_DEFAULT_DIR])
{
altMovieName = tplParams.TL_files_path.substring(0, tplParams.TL_files_path.indexOf("/tl/") + 4) + altMovieName;
}
else
{
var dsPath = tplParams.ds_path.substring(0, tplParams.ds_path.lastIndexOf("/") + 1);
altMovieName = "http://" + dsPath + altMovieName;
}
} 
return altMovieName + "?spd=" + altObj.Version;
}
}
if(!__AtlasRichMedia__.getModule('client_a1').isGenerallySupported())
{
for(var paid in __atlas_ad_info)
{
var arm_adparms = ARM_rtc.getByPaid(paid);
if(arm_adparms && !arm_adparms.altIsRunning)
{
arm_adparms.altIsRunning = true;
var rmAdAlt = new (__AtlasRichMedia__.getModule('RmAdAlt_a1'))(arm_adparms,__atlas_ad_info[paid]);
rmAdAlt.runAlternateAd();
}
}
} else {
__AtlasRichMedia__.getModule('client_a1').scrollbarWidth = 16;
__AtlasRichMedia__.getModule('client_a1').getViewportElement = function()
{
return document.compatMode == "CSS1Compat" ? document.documentElement : document.body;
}
__AtlasRichMedia__.getModule('client_a1').getHeight = function() {
if(window.innerHeight || window.innerHeight == 0) {
if(window.innerHeight >= this.scrollbarWidth) return window.innerHeight - this.scrollbarWidth;
return window.innerHeight;
}
if(this.getViewportElement().clientHeight || this.getViewportElement().clientHeight == 0) return this.getViewportElement().clientHeight;
return null;
}
__AtlasRichMedia__.getModule('client_a1').getWidth = function() {
if(window.innerWidth || window.innerWidth == 0) {
if(window.innerWidth >= this.scrollbarWidth) return window.innerWidth - this.scrollbarWidth;
return window.innerWidth;
}
if(this.getViewportElement().clientWidth || this.getViewportElement().clientWidth == 0) return this.getViewportElement().clientWidth;
return null;
}
__AtlasRichMedia__.getModule('client_a1').getScrollHeight = function() {
return this.getViewportElement().scrollHeight;
}
__AtlasRichMedia__.getModule('client_a1').getScrollWidth = function() {
return this.getViewportElement().scrollWidth;
}
__AtlasRichMedia__.getModule('client_a1').getScrollLeft = function() {
return this.getViewportElement().scrollLeft;
}
__AtlasRichMedia__.getModule('client_a1').getScrollTop = function() {
return this.getViewportElement().scrollTop;
}
ARMRedirLib.AD_PARAMS_DELIM = "adparamdelim";
ARMRedirLib.getTplParamsByPaid = function(paid)
{
return __atlas_ad_info[paid];
}
ARMRedirLib.paidIsBustedOut = function(paid)
{
return (ARMRedirLib.getTplParamsByPaid(paid) && ARMRedirLib.getTplParamsByPaid(paid).paid);
}
__AtlasRichMedia__.getModule('RmAdAlt_a1').prototype.getSerializedTplParams = function()
{
var serializedParams = '';
for (var paramName in this.tplParams)
{
serializedParams += (escape(paramName) + "=" + escape(this.tplParams[paramName]) + "&");
}
serializedParams += 'paid=' + escape(this.paid);
return escape(serializedParams);
}
__AtlasRichMedia__.getModule('RmAdAlt_a1').prototype.getImgNode = function() {
return document.getElementById('orange_alternate_' + this.paid);
}
__AtlasRichMedia__.getModule('RmAdAlt_a1').prototype.getAnchorNode = function() {
var imgNode = this.getImgNode();
if(imgNode) return imgNode.parentNode;
return null;
}
__AtlasRichMedia__.getModule('RmAdAlt_a1').prototype.inIframe = function()
{
return (window.self != window.top);
}
__AtlasRichMedia__.getModule('RmAdAlt_a1').prototype.handleDomainError = function()
{
window.onerror = null;
generalValidation(this);
return true;
}
__AtlasRichMedia__.getModule('RmAdAlt_a1').prototype.setUpDynamicIframe = function() {
var rmAdAlt = this;
window.onerror = function(){return rmAdAlt.handleDomainError();}
if (this.inIframe()) 
{
if (ARMRedirLib.Domain.GetDomain()) 
{
if (ARMRedirLib.Iframes.isSelfLocationSameAsTopLocation() || this.loadWindow.inDynamicIframe())
{
this.dynamicIframe = true;
if(this.loadWindow.inAjaxDynamicIframe())
{
ARMRedirLib.AdRootElement.setAdRootElement(this);
var elem = this.getAdRootElement();
ARMRedirLib.AdRootElement.setDivsOverflowToVisible(elem);
}
}
}
}
window.onerror = null;
}
__AtlasRichMedia__.getModule('RmAdAlt_a1').prototype.setBaseLinkTarget = function() {
if (this.alternateExists && !this.playWindow.document.layers)
{
var baseElements = this.playWindow.document.getElementsByTagName('BASE');
if (baseElements[0]) baseElements[0].target = "_self";
}
}
ARMRedirLib.Alternate = function () {}
ARMRedirLib.Alternate.Exists = function(destObj)
{
var sAlternateAdName = destObj.blContent[destObj.blTreeLocation][ALTERNATE_MOVIE_NAME];
if (sAlternateAdName == '' || sAlternateAdName == null || sAlternateAdName == 'null' ||
sAlternateAdName == -1 || sAlternateAdName == '-1')
{
return false;
}
else
{
return true;
}
}
ARMRedirLib.Alternate.SetStylePosition = function(paid)
{

var altImage = ARMRedirLib.Dom.GetObj("orange_alternate_" + paid);
var element = altImage;
if (element)
{
while(element.offsetParent)
{
element = element.offsetParent;
if (element.tagName.toLowerCase() == "table" && element.style.display == "inline")
{
altImage.style.position = 'relative';
break;
}
}
}
}
ARMRedirLib.Iframes = function () {}
ARMRedirLib.Iframes.isSelfLocationSameAsTopLocation = function()
{
return (top.location.href == self.location.href);
}
ARMRedirLib.Iframes.getDocumentReferrer = function()
{
return document.referrer;
}
ARMRedirLib.Iframes.getIframeBusterUrl = function(sIframeBusterUrl)
{
var sDocumentReferrer = "";
var DEFAULT_IFRAME_BUSTER_PATH = "atlas/atlas_rm.htm";
var sIframeBusterPath = DEFAULT_IFRAME_BUSTER_PATH;
try
{
sDocumentReferrer = ARMRedirLib.Iframes.getDocumentReferrer();
}
catch(e)
{
}
if (sDocumentReferrer == "")
{
return sIframeBusterUrl;
}
var regExpReferrerDomain = new RegExp("([http[s]*[\:\/\/]*]*[^\/]*\/).*","i");
var sReferrerDomain = sDocumentReferrer.match(regExpReferrerDomain)[1];
if (sIframeBusterUrl != "")
{
var regExpIframeBusterPath = new RegExp("(http[s]?\:\/\/[^\/]+[\/]|[^\.]+[\.]+[^\/]+[\/])*(.*)" ,"i");
sIframeBusterPath = sIframeBusterUrl.match(regExpIframeBusterPath)[2];
}
if (sReferrerDomain.length > 0 &&
sReferrerDomain.substr(sReferrerDomain.length - 1) == "/" &&
sIframeBusterPath.length > 0 &&
sIframeBusterPath.substr(0, 1) == "/")
{
sIframeBusterPath = sIframeBusterPath.substr(1);
}
return sReferrerDomain + sIframeBusterPath;
}
ARMRedirLib.Iframes.getCrossDomainBustedIframe = function(paid)
{
var loadWindow = __atlas_ad_info[paid].loadWindow || window;
var playWindow = __atlas_ad_info[paid].playWindow || window;
if(loadWindow == playWindow) return null;
var iframes = playWindow.document.getElementsByTagName('iframe');
for(var i=0; i<iframes.length; i++) {
if(iframes[i].contentWindow == loadWindow) return iframes[i];
}
return null;
}
ARMRedirLib.Iframes.getFriendlyBustedIframe = function(paid)
{
var bustedIframe = null;
var iframeCollection = document.getElementsByTagName('iframe');
for(var j=0; j < iframeCollection.length; j++)
{
if (iframeCollection[j].atlasUniqueId == paid)
{
bustedIframe = iframeCollection[j];
}
}
return bustedIframe;
}
ARMRedirLib.Iframes.getBustedIframe = function(paid)
{
var bustedIframe = ARMRedirLib.Iframes.getCrossDomainBustedIframe(paid);
if(!bustedIframe)
bustedIframe = ARMRedirLib.Iframes.getFriendlyBustedIframe(paid);
return bustedIframe;
}	
ARMRedirLib.DomPrivate = function() {}
ARMRedirLib.DomPrivate.bodyExists = function()
{
return (document.body != undefined && document.body != null);
}
ARMRedirLib.DomPrivate.createScriptElement = function()
{
var script = document.createElement("SCRIPT");
script.type = "text/javascript";
return script;
}
ARMRedirLib.DomPrivate.addScript = function(targetNode, data, isInline,scriptID)
{
var script = ARMRedirLib.DomPrivate.createScriptElement();
if(isInline)
{
script.text = data;
}
else
{
script.src = data;
}
script.id = scriptID ;
targetNode.appendChild(script);
}
ARMRedirLib.Dom = function () {}
ARMRedirLib.Dom.AddExternalScript = function(targetNode, scriptSrc, scriptID)
{
ARMRedirLib.DomPrivate.addScript(targetNode, scriptSrc, false, scriptID );
}
ARMRedirLib.Dom.AddInlineScript = function(targetNode, scriptText, scriptID)
{
ARMRedirLib.DomPrivate.addScript(targetNode, scriptText, true, scriptID);
}
ARMRedirLib.Dom.AddHtmlForAndEventInlineScript = function(targetNode, scriptText, htmlFor, eventAttribute, scriptID)
{
var script = ARMRedirLib.DomPrivate.createScriptElement();
script.text = scriptText;
script.id=scriptID;
script.htmlFor = htmlFor;
script.event = eventAttribute;
targetNode.appendChild(script);
}
ARMRedirLib.Dom.InsertHtmlAfterBegin = function(targetNode, htmlText)
{
if(targetNode.insertAdjacentHTML) {
targetNode.insertAdjacentHTML('afterBegin', htmlText);
} else {
var divContainer = document.createElement("DIV");
divContainer.innerHTML = htmlText;
this.InsertChildrenAfterBegin(targetNode,divContainer);
divContainer = undefined;
}
}
ARMRedirLib.Dom.setInnerHtml = function(targetNode, html) {
var temporaryParent = document.createElement('div');
temporaryParent.innerHTML = html;
ARMRedirLib.Dom.InsertChildrenAfterBegin(targetNode, temporaryParent);
}
ARMRedirLib.Dom.InsertChildrenAfterBegin = function(targetNode,oldParent)
{
if(targetNode.childNodes.length == 0)
{
while(oldParent.childNodes[0])
{
targetNode.appendChild(oldParent.childNodes[0]);
}
}
else
{
var previousFirst = targetNode.childNodes[0];
while(oldParent.childNodes[0])
{
targetNode.insertBefore( oldParent.childNodes[0], previousFirst );
}
}
}
ARMRedirLib.Dom.InsertScript = function(oTargetDocument, sTargetTag, sSrcOrText, sScriptType, sForAttribute, sEventAttribute)
{
var oTargetDocumentAndTag = oTargetDocument.getElementsByTagName(sTargetTag)[0];
var oScript = oTargetDocument.createElement("SCRIPT");
oScript.type = "text/javascript";
oScript.defer = "true";
if (typeof(sScriptType)=='undefined')
{
var sScriptType = "src";
}
if ((typeof(sForAttribute) != 'undefined') && (typeof(sEventAttribute) != 'undefined'))
{
oScript.htmlFor = sForAttribute;
oScript.event = sEventAttribute;
}
oScript[sScriptType] = sSrcOrText;
oTargetDocumentAndTag.appendChild(oScript);
}
ARMRedirLib.Dom.InsertAdjacentHtml = function(oTargetDocument, sTargetTag, sTagsAsString, doUnescape)
{
var oTargetDocumentAndTag = oTargetDocument.getElementsByTagName(sTargetTag)[0];
var oDvStringContainer = oTargetDocument.createElement("DIV");
oDvStringContainer.name = "dvStringContainer";
oDvStringContainer.id = "dvStringContainer";
oDvStringContainer.style.visibility = "hidden";
oTargetDocumentAndTag.appendChild(oDvStringContainer);
if (doUnescape)
{
oDvStringContainer.innerHTML = unescape(sTagsAsString);
}
else
{
oDvStringContainer.innerHTML = sTagsAsString;
}
for (var i=0 ; i < oDvStringContainer.childNodes.length ; i++)
{
oTargetDocumentAndTag.appendChild(oDvStringContainer.childNodes[i]);
}
oTargetDocumentAndTag.removeChild(oDvStringContainer);
}
ARMRedirLib.Dom.GetObj = function (name)
{
var obj;
if (document.getElementById)
{
obj = document.getElementById(name);
if (obj == null)
{
var aObjects = document.getElementsByName(name);
if (aObjects.length != 0)
{
obj = aObjects[0];
}
else
{
obj = null;
}
}
}
else if (document.all)
{
obj = document.all[name];
}
else if (document.layers)
{
if (document.layers[name])
{
obj = document.layers[name];
obj.style = document.layers[name];
}
else
{
obj = document.layers.testP.layers[name];
obj.style = document.layers.testP.layers[name];
}
}
return obj;
}
ARMRedirLib.Dom.GetObjsByTagName = function(TagName)
{
var objs;
if(document.getElementsByTagName)
{
objs = document.getElementsByTagName(TagName);
}
return objs;
}
ARMRedirLib.Dom.AddEvent = function (object, event, funct, capturing)
{
if(event == "load") {
this.addOnloadEvent(object, funct, capturing);
return;
}
if(!capturing)
{
capturing = false;
}
if(object.addEventListener)
{
object.addEventListener(event, funct, capturing);
}
else if(object.attachEvent)
{
object.attachEvent("on" + event, funct);
}
}
ARMRedirLib.Dom.addOnloadEvent = function(object, funct, capturing) {
if(!capturing) capturing = false;
var fired = false;
var handler = function() {
if(!fired) funct();
fired = true;
}
if(object.addEventListener) {
object.addEventListener('load', handler, capturing);
} else if(object.attachEvent) {
object.attachEvent('onload', handler);
}
}
ARMRedirLib.Dom.RemoveEvent = function(object, event, funct)
{
if (object.removeEventListener)
{
object.removeEventListener(event, funct, false);
}
else if (object.detachEvent)
{
object.detachEvent("on" + event, funct);
}
}
ARMRedirLib.Dom.insertAfter = function(nodeToInsert, nodeToInsertAfter)
{
if(nodeToInsertAfter.nextSibling)
{
nodeToInsertAfter.parentNode.insertBefore(nodeToInsert,nodeToInsertAfter.nextSibling);
}
else
{
nodeToInsertAfter.parentNode.appendChild(nodeToInsert);
}
}
ARMRedirLib.Dom.isInDocument = function(node)
{
if(__AtlasRichMedia__.getModule('client_a1').userAgent.isInternetExplorer()) {
return (node.parentNode != null && node.parentNode.parentNode != null);
} else {
return (node.parentNode != null);
}
}
var setUpDomBodyMethods = function() {
ARMRedirLib.Dom.body = {
executeWhenReady: function(callback) {
if(ARMRedirLib.DomPrivate.bodyExists()) {
callback();
} else {
window.setTimeout(
function() { ARMRedirLib.Dom.body.executeWhenReady(callback); },
100
);
}
},
insertNodeWhenReady: {
asFirstChild: function(node) 
{	
ARMRedirLib.Dom.body.executeWhenReady(
function()
{
if(document.body.childNodes[0])
{
document.body.insertBefore(node, document.body.childNodes[0]);
}
else
{
document.body.appendChild(node);
}
}
);
},
asLastChild: function(node) 
{
ARMRedirLib.Dom.body.executeWhenReady(
function()
{
document.body.appendChild(node);
}
);
}
}
}
}
setUpDomBodyMethods();
ARMRedirLib.GetElementPosition = function (element)
{
var coord = { x:0, y:0 };
while (element)
{
coord.x += element.offsetLeft;
coord.y += element.offsetTop;
var leftBorderWidth = "NaN";
var topBorderWidth = "NaN";
if(element.currentStyle)
{
if (element.currentStyle.borderLeftWidth)
{
leftBorderWidth = parseInt(element.currentStyle.borderLeftWidth);
}
if (element.currentStyle.borderTopWidth)
{
topBorderWidth = parseInt(element.currentStyle.borderTopWidth);
}
}
else if(element.style)
{
if(element.style.borderLeftWidth)
{
leftBorderWidth = parseInt(element.style.borderLeftWidth);
}
if(element.style.borderTopWidth)
{
topBorderWidth = parseInt(element.style.borderTopWidth);
}
}
if(!isNaN(leftBorderWidth))
{
coord.x += leftBorderWidth;
}
if(!isNaN(topBorderWidth))
{
coord.y += topBorderWidth;
}
try 
{
element = element.offsetParent;
}
catch (e)
{
element = null;
}
}
return coord;
}
ARMRedirLib.FlashPlayer = function () {}
ARMRedirLib.FlashPlayer.IsVersionSupported = function(RequiredVersion)
{
var InstalledVersion = 0;
if (navigator.plugins && navigator.plugins.length > 0)
{
var plugin = navigator.plugins["Shockwave Flash"];
if (plugin)
{
if (plugin.description)
{
var re = new RegExp("-?[0-9]+\.[0-9]+");
InstalledVersion = parseInt(plugin.description.match(re)[0]);
}
}
}
else
{
try
{
var obj = new ActiveXObject("ShockwaveFlash.ShockwaveFlash." + RequiredVersion);
if (typeof(obj) != 'undefined')
{
InstalledVersion = RequiredVersion;
}
}
catch(e)
{
}
}
return InstalledVersion >= RequiredVersion;
}
ARMRedirLib.ClientCapabilities = function () {}
ARMRedirLib.ClientCapabilities.checkScreenResolution = function(destObj)
{
var nScreenSize = ARMRedirLib.ClientCapabilities.ScreenSize();
nScreenWidth = nScreenSize.width;
nScreenHeight = nScreenSize.height;
if (destObj.showAnyResolution)
{
return true;
}
var bResolution = destObj["res_" + String(nScreenWidth) + "x" + String(nScreenHeight)];
if (typeof(bResolution) == "undefined")
{
return false;
}
else
{
return bResolution;
}
}
ARMRedirLib.ClientCapabilities.ScreenSize = function()
{
var screenSize = { width:screen.width, height:screen.height };
return screenSize;
}
ARMRedirLib.ClientCapabilities.getBrowserVesion = function()
{
return navigator.appVersion;
}
ARMRedirLib.ClientCapabilities.getBrowserUserAgent = function()
{
return navigator.userAgent;
}
ARMRedirLib.AdRootElement = function () {}
ARMRedirLib.AdRootElement.setAdRootElement = function(adObjAlt)
{
adObjAlt.adRootElement = null;
for (var iwin = window;
iwin != window.top && iwin.frameElement.tagName != "FRAME" && adObjAlt.adRootElement == null;
iwin = iwin.parent)
{
var frames = iwin.parent.document.getElementsByTagName("iframe");
for (var i = 0; i < frames.length; i++)
{
var element = frames[i];
if (element == iwin.frameElement)
{
var rootElement = element.parentNode;
if (rootElement.tagName != "BODY")
{
adObjAlt.adRootElement = rootElement;
}
break;
}
}
}
}
ARMRedirLib.AdRootElement.setDivsOverflowToVisible = function(adRootElement)
{
if(adRootElement)
{
adRootElement.style.overflow = "visible";
if(adRootElement.parentNode)
{
adRootElement.parentNode.style.overflow = "visible";
}
}
}
ARMRedirLib.Domain = function () {}
ARMRedirLib.Domain.GetDomain = function()
{
return window.top.document.domain;
}
ARMRedirLib.moduleId = "ARMRedirLib_c1";
ARMRedirLib.getElementOffsetSize = function (element)
{
var offsetSize = { offsetWidth:0, offsetHeight:0 };
if ( element)
{
offsetSize.offsetWidth = element.offsetWidth;
offsetSize.offsetHeight = element.offsetHeight;
}
return offsetSize;
}
ARMRedirLib.writeBasicTemplate = function (destObj, basicTemplateURL)
{
var scriptId = "arm_basictemplate_" + destObj.paid;
if (!destObj.oIframeTag)
{
document.write('<scr'+'ipt id=' + scriptId + ' src='+basicTemplateURL+'></scr'+'ipt>');
}
else
{
ARMRedirLib.Dom.AddExternalScript(destObj.getAdRootElement(), basicTemplateURL, scriptId);
} 
}
ARMRedirLib.CleanRMAdElements = function (destObj)
{
var elem = destObj.getAdRootElement();
for(var i=elem.childNodes.length-1; i>=0 ; i--)
{
var childNode = elem.childNodes[i];
if(childNode.tagName != "IFRAME")
{
if(childNode.id && childNode.id.indexOf(destObj.paid)!= -1)
{	
elem.removeChild(childNode);
} 
}
}
}
ARMRedirLib.onunloadIframe = function(paid)
{ 
if (window.ARM_rtc)
{
for (var i = 0; i < ARM_rtc.RmAdParms.length; i++)
{
if (ARM_rtc.RmAdParms[i].paid == paid)
{
ARM_rtc.RmAdParms.splice(i,1);
break;
}
}
}
if (window.a4eAdsArray)
{
for (var i = 0; i < a4eAdsArray.length; i++)
{
var adObj = a4eAdsArray[i];
if (adObj.paid == paid)
{
ARMLibrary.AtlasEvent.HandleEndOfMainPhase(adObj);
ARMLibrary.AtlasEvent.HandleEndOfAd(adObj);
a4eAdsArray.splice(i,1);
break;
}
}
}
}
ARMRedirLib.isSingleCodeLine = function()
{
return true;
}
ARMRedirLib = __AtlasRichMedia__.addModule(ARMRedirLib);
}
if (typeof(ARM_rtc) == "undefined")
{
var ARM_rtc = {};
}
if (!ARM_rtc.AdLoad)
{
ARM_rtc.AdLoad = function(AdModule)
{
AdModule.Run();
}
}
if (!ARM_rtc.AddModule)
{
ARM_rtc.AddModule = function(module)
{
var moduleId = module.moduleId;
for (var i = 0; i < ARM_rtc.RmAdParms.length; i++)
{
var parms = ARM_rtc.RmAdParms[i];
for (var j = 0; j < parms.mods.length; j++)
{
var mod = parms.mods[j];
if (mod.moduleId == moduleId)
{
if (!mod.moduleObject)
mod.moduleObject = module;
if (!mod.moduleInitialized)
{
mod.moduleInitialized = true;
var adObjAlt = new ARM_AdObjAltConstructor(parms, ARMRedirLib.getTplParamsByPaid(parms.paid));
ARM_rtc.AdLoad(adObjAlt);
}
}
}
}
}
}
(function() {
var WindowWrap = function(win) {
this.win = win;
try {
this.document = this.win.document;
this.frames = this.win.frames;
} catch(e) {
this.document = null;
this.frames = null;
}
}
WindowWrap.prototype.addUnloadHandler = function(handler) {
var handlerFired = false;
var win = this.win;
var frameElement = win.frameElement;
var fireHandler = function() {
if(!handlerFired) {
handlerFired = true;
handler();
}
}
ARMRedirLib.Dom.AddEvent(this.win, 'unload', 
function() {
fireHandler();
}
);
var parentWindow = this.win.parent; 
var interval = parentWindow.setInterval(
function() {
if(frameElement && (win.frameElement != frameElement || !ARMRedirLib.Dom.isInDocument(frameElement))) {
fireHandler();
parentWindow.clearInterval(interval);
}
},
100
);
}
WindowWrap.prototype.canTestItsParentSafely = function() {
try {
this.win.document.location && this.win.parent.document.location;
return true;
} catch(e) {
return false;
}
}
WindowWrap.prototype.inIframe = function() {
if(this.win.frameElement && this.win.frameElement.tagName == "IFRAME") return true;
return false;
}
WindowWrap.prototype.inFriendlyIframe = function() {
if(!this.canTestItsParentSafely()) return false;
return this.inIframe();
}
WindowWrap.prototype.inAjaxDynamicIframe = function() {
return (this.inMsnAjaxDynamicIframe() || this.inAOLAjaxDynamicIframe() || this.inYahooAjaxDynamicIframe());
}
WindowWrap.prototype.inDynamicIframe = function() {
return (this.inMsnDynamicIframe() || this.inAOLDynamicIframe() || this.inAjaxDynamicIframe());
}
WindowWrap.prototype.inMsnDynamicIframe = function() {
return ( typeof(this.win.inDapIF) != "undefined" && this.win.inDapIF );
}
WindowWrap.prototype.inMsnAjaxDynamicIframe = function() {
return ( typeof(this.win.inDapMgrIf) != "undefined" && this.win.inDapMgrIf );
}
WindowWrap.prototype.inAOLDynamicIframe = function() {
return ( typeof(this.win.inFIF) != "undefined" && this.win.inFIF );
}
WindowWrap.prototype.inAOLAjaxDynamicIframe = function()
{
var result = false;
if (typeof(this.win.inFIF) != "undefined" && this.win.inFIF)
{
if (this.win.parent.adsAJAX)
{
result = true;
}
}
return result;
}
WindowWrap.prototype.inYahooAjaxDynamicIframe = function()
{
try
{
if (typeof(isAjaxCertifiedDefined) == "undefined")
{
var mainwindow = this.win;
while(mainwindow != this.win.top) 
{
if(mainwindow.kPartner)
break;
else
mainwindow=mainwindow.parent;
}
if(mainwindow.kPartner && mainwindow.kPartner.emim && mainwindow.kPartner.emim.indexOf('ajax_cert_expandable') > -1)
isAjaxCertifiedDefined = true;
else
isAjaxCertifiedDefined = false;
}
}
catch(e)
{
isAjaxCertifiedDefined = false;
}
return isAjaxCertifiedDefined;
}
WindowWrap.prototype.inAOLAjaxWhiteList = function()
{
var result = false;
if (document.referrer)
{
var ref = document.referrer;
if (ref.indexOf("browsertest.web.aol.com") != -1)
{
result = true;
}
}
return result;
}
WindowWrap.prototype.isMsnHotmail = function() {
return (document.referrer && document.referrer.match(/mail\.live\.com/));
}
WindowWrap.prototype.inMsnHotmailOnNonWindowsOs = function() { 
return (this.isMsnHotmail() && !__AtlasRichMedia__.getModule('client_a1').platform.isWindows());
}
WindowWrap.prototype.findPlayWindow = function()
{
if ( this.inMsnAjaxDynamicIframe() && this.win.parent.frameElement && this.win.parent.frameElement.tagName == "IFRAME" )
return this.win.parent.parent;
else 
return this.win.parent;
}
WindowWrap.moduleId = 'WindowWrap_a1';
__AtlasRichMedia__.addModule(WindowWrap);
})();

(function() {
var CleanUpQueue = function() {
this.commands = [];
}
CleanUpQueue.moduleId = "CleanUpQueue_a1";
CleanUpQueue.prototype.queueCommand = function(commandFunc) {
this.commands.push(commandFunc);
}
CleanUpQueue.prototype.invoke = function() {
while(this.commands.length > 0) {
var command = this.commands[0];
this.commands.shift();
command();
}
}
CleanUpQueue.prototype.count = function() {
return this.commands.length;
}
__AtlasRichMedia__.addModule(CleanUpQueue);
})();
(function() {
var moduleController = __AtlasRichMedia__;
var CleanUpQueue = moduleController.getModule('CleanUpQueue_a1');
var RmAdAlt = moduleController.getModule('RmAdAlt_a1');
var WindowWrap = moduleController.getModule('WindowWrap_a1');
var Ad = function(adParms,tplParms) {
this.tplParms = tplParms;
this.adParms = adParms;
this.cleanUpQueue = new CleanUpQueue();
this.alt = new RmAdAlt(adParms,tplParms);
var loadWindowWrap = new WindowWrap(this.getLoadWindow());
if(this.inBustedOutWindow() && loadWindowWrap.inFriendlyIframe()) {
var ad = this;
loadWindowWrap.addUnloadHandler(
function() {
ad.destroy();
}
);
}
}
Ad.prototype.isBustedOut = function() {
return (this.getLoadWindow() != this.getPlayWindow());
}
Ad.prototype.inBustedOutWindow = function() {
return (this.isBustedOut() && this.getPlayWindow() == window);
}
Ad.prototype.getAlt = function() {
return this.alt;
}
Ad.prototype.getPaid = function() {
return this.adParms.paid;
}
Ad.prototype.destroy = function() {
this.cleanUpQueue.invoke();
}
Ad.prototype.getLoadWindow = function() {
if(this.tplParms.loadWindow) return this.tplParms.loadWindow;
return window;
}
Ad.prototype.getPlayWindow = function() {
if(this.tplParms.playWindow) return this.tplParms.playWindow;
return window;
}
Ad.moduleId = "Ad_a1";
moduleController.addModule(Ad);
})();
__AtlasRichMedia__.addModule(
{
moduleId: 'adCollection_a1',
ads: {},
add: function(ad) { this.ads[ad.getPaid()] = ad; },
count: function() {
var i = 0;
for(var paid in this.ads) { i++; }
return i;
},
getByPaid: function(paid) { return this.ads[paid]; }
}
);
;
__AtlasRichMedia__.addModule(
{
moduleId :'pageLoadDetector_a1',
AtlasPageLoaded : false,
isReadyStateSupported : function()
{
if(document.readyState)
return true;
return false;
},
getReadyState : function()
{
return document.readyState;
},
isReadyStateComplete : function()
{
return (this.isReadyStateSupported() && this.getReadyState() == "complete");
},
startMonitoringPageLoad : function()
{
if (this.isReadyStateComplete())
{
this.loadEventHandler();
}
else
{
this.attachLoadEvent();	
this.callFunctionByTimeInterval();
}
},
callFunctionByTimeInterval : function()
{
var pageLoadDetector = this;
window.setTimeout(function() { pageLoadDetector.loadEventHandler(); }, 3000);
},
attachLoadEvent: function()
{
var pageLoadDetector = this;
var fnHandlerFunction = function() {pageLoadDetector.loadEventHandler();};
ARMRedirLib.Dom.AddEvent(window,"load",fnHandlerFunction);
ARMRedirLib.Dom.AddEvent(document,"load",fnHandlerFunction);
},
loadEventHandler : function()
{
this.AtlasPageLoaded = true;
} 
});
if(__AtlasRichMedia__.getModule('client_a1').isGenerallySupported()) {
function handleError()
{
}
function runAlternateAd(destObj, isCompatibleClient)
{
destObj.runAlternateAd(isCompatibleClient);
destObj.setBaseLinkTarget();
return true;
}
function ARM_AdObjAltConstructor(parms,tplParams)
{
var ad = new (__AtlasRichMedia__.getModule('Ad_a1'))(parms,tplParams);
var obj = ad.getAlt();
__AtlasRichMedia__.getModule('adCollection_a1').add(ad);
var DocAdapter = __AtlasRichMedia__.getModule('Document_a1');
var doc = new DocAdapter(document);
doc.adCreated();
ad.cleanUpQueue.queueCommand( function() {doc.adDeleted(); } );

obj.adRootElement = null;
obj.Run = function()
{
if (__AtlasRichMedia__.getModule('client_a1').userAgent.isFirefox() && ( (this.loadWindow && this.loadWindow.inMsnHotmailOnNonWindowsOs()) || !this.bFirefoxEnabled) )
{
runAlternateAd(obj, false);
}
else
{
generalSetup(this, true);
if (!nonCompliantClient)
{
ad.cleanUpQueue.queueCommand( function() {ARMRedirLib.CleanRMAdElements(obj); } );
ad.cleanUpQueue.queueCommand( function() {ARMRedirLib.onunloadIframe(obj.paid); } );
this.setUpDynamicIframe();
generalValidation(this, true);
}
}
}
obj.altImagePositionReady = function()
{
this.writeBusterHtml();
}
obj.checkAltPositionAfterIframeLoad = function()
{
var altPosition = ARMRedirLib.GetElementPosition(document.getElementById("orange_alternate_" + this.paid)); 
if ( __atlas_ad_info[this.paid].altPositionX != altPosition.x)
__atlas_ad_info[this.paid].altPositionX = altPosition.x;
if ( __atlas_ad_info[this.paid].altPositionY != altPosition.y)
__atlas_ad_info[this.paid].altPositionY = altPosition.y; 
}
obj.writeBusterHtml = function()
{
ARMRedirLib.Alternate.SetStylePosition(this.paid);
if (this.bustingOut)
{
var altElement = ARMRedirLib.Dom.GetObj("orange_alternate_" + this.paid);
var altPosition = ARMRedirLib.GetElementPosition(altElement);
__atlas_ad_info[this.paid].altPositionX = altPosition.x;
__atlas_ad_info[this.paid].altPositionY = altPosition.y;
var altOffsetSize = ARMRedirLib.getElementOffsetSize(altElement);
__atlas_ad_info[this.paid].altHeight = altOffsetSize.offsetHeight;
__atlas_ad_info[this.paid].altWidth = altOffsetSize.offsetWidth;
var busterIframeHtml = getBusterIframeHtml(this, this.buster, this.uniqueA4EIdForTag2, this.innerTempTopLayerAdURL, this.imageServerURL);
if (!this.dynamicIframe)
{
if(document.body && (document.readyState == "complete" || document.readyState == "interactive" || 
__AtlasRichMedia__.getModule('client_a1').userAgent.isFirefox() ||__AtlasRichMedia__.getModule('client_a1').userAgent.isSafari()))
{
ARMRedirLib.Dom.InsertHtmlAfterBegin(this.getAdRootElement(), busterIframeHtml);
}
else
{
document.write(busterIframeHtml);
document.close();
}
}
else
{
this.playWindow.win.a4eIframe = true;
if ( this.getAdRootElement().tagName.toLowerCase() == "body")
this.containerElement = this.playWindow.win.document.body;
else
this.containerElement = this.getAdRootElement();
this.insertAdElementsInParentWindow(); 
}
}
}
obj.getAdRootElement = function()
{
if (!this.adRootElement)
this.adRootElement = document.getElementsByTagName("body")[0];
return this.adRootElement;
}
obj.runAlt = function()
{
var paid = obj.paid;
var tempSWFObjectName = new String("orange_alternate_" + paid);
var altObj = document.getElementById(tempSWFObjectName);
if (altObj)
altObj.style.visibility = 'visible';
}
return obj;
}
function generalSetup(destObj, VBEngineEnabled)
{
destObj.alternateExists = ARMRedirLib.Alternate.Exists(destObj);	
populateAtlasAdObject(destObj);
nonCompliantClient = false ;
if(!__AtlasRichMedia__.getModule('client_a1').userAgent.isSupported()) 
nonCompliantClient = true;
if (!ARMRedirLib.FlashPlayer.IsVersionSupported(destObj.flash_version))
nonCompliantClient = true;
if (nonCompliantClient)
{
runAlternateAd(destObj, !nonCompliantClient);
return true;
}
}
function generalValidation(destObj, VBEngineEnabled)
{
var newTopLayerAdURL;
var innerTempTopLayerAdURL = "";
var uniqueA4EIdForTag2 = new String (destObj.idCampaign + "\/" + destObj.paid + ".js");
var varStr = getRedirectScriptSource(uniqueA4EIdForTag2);
destObj.TopLayerAdURL = destObj.tempTopLayerAdURL + "?spd=" + destObj.Version + "&atdmt=";
newTopLayerAdURL = destObj.TopLayerAdURL;
window.onerror = null;
if ((varStr != null) && (varStr.length != 0))
{
varStr = varStr.split(".js?");
for (var i=1;i<varStr.length;i++)
{
innerTempTopLayerAdURL = innerTempTopLayerAdURL + varStr[i];
}
innerTempTopLayerAdURL = innerTempTopLayerAdURL.substr(innerTempTopLayerAdURL.indexOf("atdmt=")+6);
newTopLayerAdURL = destObj.TopLayerAdURL + innerTempTopLayerAdURL;
}
if (destObj.inIframe())
destObj.bustingOut = true;
if (!checkIfBusted(destObj, newTopLayerAdURL,innerTempTopLayerAdURL))
return false;
if (destObj.bustingOut)
{
if (destObj.alternateExists)
{
setOnloadHandlerForAltImageLoaded(destObj);
}
var buster = '';
if ( destObj.tplParms.buster_url != '')
buster = ARMRedirLib.Iframes.getIframeBusterUrl(destObj.tplParms.buster_url);
else
{
if (!destObj.dynamicIframe)
destObj.bustingOut = false;
}
}
if (destObj.bustingOut)
{	
if (destObj.alternateExists)
{
if (!document.layers)
{
var oBaseColl = document.getElementsByTagName("BASE");
if (oBaseColl.length > 0)
oBaseColl[0].target = "_self";
}
}
if (destObj.adRootElement)
{
destObj.tplParams.adRootElementId = destObj.adRootElement.id;
}
if (destObj.dynamicIframe)
{ 
addUniqueIdToParentIframe(destObj.paid);
}
destObj.innerTempTopLayerAdURL = innerTempTopLayerAdURL;
destObj.imageServerURL = imageServerURL;
destObj.uniqueA4EIdForTag2 = uniqueA4EIdForTag2;
destObj.buster = buster;
if (!destObj.alternateExists)
{
destObj.writeBusterHtml();
}
else
{
runAltAsync(destObj, 6000);
}
}
else
{
if (typeof(a4eIframe) != 'undefined')
destObj.oIframeTag = a4eIframe;
ARMRedirLib.writeBasicTemplate(destObj,ARMRedirLib.urlBuilder.getBasicTemplate(destObj));
}
return true;
}
if (typeof(ARM_TestMode) == 'undefined')
{
__AtlasRichMedia__.getModule("pageLoadDetector_a1").startMonitoringPageLoad();
}
function getRedirectScriptSource(directoryAndPaid)
{
var scripts=document.getElementsByTagName("script");
var src = "";
for (var i=0;i<scripts.length;i++)
{
if (scripts[i].src.indexOf(directoryAndPaid) >-1)
src = new String(scripts[i].src);
}
return src;
}
function checkIfBusted(destObj, newTopLayerAdURL,innerTempTopLayerAdURL )
{
if (newTopLayerAdURL.indexOf("a4eflag") != -1)
{
destObj.bustingOut = false; 
innerTempTopLayerAdURL = "?spd=" + destObj.Version + "&atdmt=" + innerTempTopLayerAdURL;	
}
else
{
if (!runAlternateAd(destObj, !nonCompliantClient))
return false;
}
return true;
}
function getBusterIframeHtml(destObj, a4eHTM, uniqueA4EIdForTag2, innerTempTopLayerAdURL, imageServerURL)
{
return "<iframe name='" + destObj.getSerializedTplParams() + 
"' id='" + destObj.getSerializedTplParams() + 
"' height=0 width=0 style='visibility:hidden; border:none;' src=\"" +
a4eHTM + "?" +
uniqueA4EIdForTag2 +
"?spd=" + destObj.Version + "&atdmt=" +
innerTempTopLayerAdURL + "a4eflag&fn=" +
(destObj.dynamicIframe ? "di" : "") + "a4edelim" +
(destObj.dynamicIframe && destObj.tplParams.adRootElementId ? "&adRootElemId=" + destObj.tplParams.adRootElementId + "a4edelim" : "") +
"&imgSrv=" + imageServerURL + "a4edelim" +
"&armver=ifb." + destObj.adParms.ifbVersion + 
"\"> <\/iframe>";
}
function setOnloadHandlerForAltImageLoaded(destObj)
{
ARMRedirLib.Dom.addOnloadEvent( ARMRedirLib.Dom.GetObj("orange_alternate_" + destObj.paid), function() {destObj.altImagePositionReady();} ); 
ARMRedirLib.Dom.addOnloadEvent(window, function() {destObj.checkAltPositionAfterIframeLoad();}, false);
}
function populateAtlasAdObject(destObj)
{
destObj.atlasObject = __atlas_ad_info[destObj.paid];
destObj.adRootElement = null;
if(destObj.isBustedOut() && destObj.playWindow.inYahooAjaxDynamicIframe())
{
destObj.adRootElement = ARMRedirLib.Iframes.getBustedIframe(destObj.paid).parentNode;
}	
else if(destObj.tplParams.adRootElementId && destObj.tplParams.adRootElementId != "")
{
destObj.adRootElement = document.getElementById(destObj.tplParams.adRootElementId);
}
destObj.tempTopLayerAdURL = destObj.tplParams.TL_files_path + destObj.paid + "a.js";
}
function runAltAsync(destObj, delay)
{
window.setTimeout(function(){destObj.runAlt();}, delay);
}
function addUniqueIdToParentIframe(uniqueId)
{
var iframeList = window.parent.document.getElementsByTagName('iframe');
for(var j=0; j < iframeList.length; j++)
{
if (iframeList[j] == window.frameElement)
{
iframeList[j].atlasUniqueId = uniqueId;
}
}
}
function ClientCompatibilityManager(){}
ClientCompatibilityManager.getClientBrowser = function(userAgent)
{
return {browser:"notFirefox"};
}
if (typeof(ARM_TestMode) == 'undefined')
{
ARM_rtc.AddModule(ARMRedirLib);
}
}
