var __IntegralASDiagnosticCall = function(){};
try {
var __IntegralASConfig = {
jsDoSplit: false,
debug: "false",
jsDiag: 'false',
version: '19.8.40',
mtCell: 10,
mtSample: 5,
trackMouse: "true",
exchList: {'e1':'nqzryq','e2':'tbbtyrnqf.t.qbhoyrpyvpx','e3':'ehovpbacebwrpg','e4':'chozngvp','e5':'bcrak','e6':'nqoevgr.pbz','e7':'tynz.pbz','e8':'lvryqznantre.pbz','e9':'yvwvg','e10':'nqakf','p11':'ghea.pbz','p12':'zngugnt','p13':'vaivgrzrqvn','p14':'qngnkh','n15':'zrqvn6qrterrf','n16':'dhnagfreir','n17':'esvuho.arg','a18':'napubeserr','a19':'eff2frnepu','a20':'mgfgngvp.pbz','n21':'ovq.npr.nqiregvfvat','e22':'wnfba','v23':'fcbgkpqa','v24':'ogeyy','v25':'yvirenvy','v26':'nqncgi','v27':'nqnc.gi','n29':'qbzqrk.pbz','n30':'ernyih.arg','d31':'cvengronl','d32':'cebklonl','d33':'onlcebkl','d34':'cvengrcebkl','d35':'cebklcvengr','d36':'onlcvengr','n37':'tjnyyrg','p39':'j55p.arg','p40':'c0l.pa','p41':'vcvalbh.pbz','p42':'c0lwferaqre'},
sp_cdnDomain: 'cdn.adsafeprotected.com',
sp_cdnScripts: {xsca: "static.adsafeprotected.com/xsca.17.4.85.js", sca: "static.adsafeprotected.com/sca.17.4.114.js", main: "static.adsafeprotected.com/main.19.8.40.js"},
protocol: 'https',
jsref: "https:\/\/a.teads.tv\/media\/vpaid-display\/iframe.html",
asid: "e7f82ecb-4cfd-11ea-a57b-0aeb40f66fa8",
allowViewability: "true",
jsFeatures: "viewabilityready,consecutive,cachebust:0,forcecocoa:0,rattie,exch,recordalternate:0,usedtdomain,nextcocoa:100,bapiDiag,postDts:0,videotwoseconds,getPl,decodePl,resolution,usetpl,tpiLookupURL,hundredpct,jloadDiag:0,blur:0,sendclogs,zeroPing,idMap,offscreen,everySecond:1,sdkdetection,moreAdTalkCalls,slid,fm2:1,largeAd,nextcocoaie:100,usevh,fxdet:0,mmsb:0,bigmon:0,chromeNativeIO:100,oddet:0,ios:100,ancestor:100,avmm:100,avgrn:100,useScreenLocationInfoAdaptor:100,swapids:100,pIntervals:10,firewall_cdn_domain,forceid:0,usesca:100,usexsca:1,bustediframe:100,impFailSafe:100,yieldmo:100,displayCustomView:0,sfdetect,pmdetect:100,novidnodeerr:5,diagnosticCM:0,viewabilityOptimization:100,usehaps:100,customMetric:100,sizmek,celtra,groupmCM,avidPropertiesInImpression,abcAudit,useMraidGeometricMeasurement,mrcAudit:1,bbs,bas",
adsafeDomain: "adsafeprotected.com:80",
minimizeCalls: "false",
adWidth: "300",
adHeight: "250",
forceAppend: "false",
sp_imp_maxLength: 8000,
sp_imp_jsInfo_minLength: 200,
_onInViewMRC15: __IntegralASConfig && __IntegralASConfig.onInViewMRC15,
_onInViewMRC: __IntegralASConfig && __IntegralASConfig.onInViewMRC,
_onMeasurable: __IntegralASConfig && __IntegralASConfig.onMeasurable,
_onAPIResult: __IntegralASConfig && __IntegralASConfig.onAPIResult,
_onInViewFull: __IntegralASConfig && __IntegralASConfig.onInViewFull,
_onSuspicious: __IntegralASConfig && __IntegralASConfig.onSuspicious,
_onInViewMRC5: __IntegralASConfig && __IntegralASConfig.onInViewMRC5,
reqquery: "",
mode: "rjss",
requrl: "",
dtBaseURL: "https:\/\/dt.adsafeprotected.com\/dt?advEntityId=383568",
adsafeSrc: "https:\/\/fw.adsafeprotected.com\/rfw\/www.googletagservices.com\/383568\/41941062\/dcm\/dcmads.js",
tpiLookupURL: "",
getTpl: "false",
use100v: false,
useBapiCallback: "",
useViewabilityNotification: "",
scriptUrl: "https:\/\/fw.adsafeprotected.com\/rjss\/www.googletagservices.com\/383568\/41941062\/dcm\/dcmads.js",
accountForSadImps: '',
sendCookie: 'true',
cookieBaseURL: 'sc.iasds01.com\/dtc?advEntityId=383568&pubEnt=41941062',
fwMonitoring: 'false',
doNothing: false,
mn: "app21ie",
mobOrTab: false,
app: false,
mobFwUrl: "https:\/\/mobile.adsafeprotected.com\/internal\/blocking\/app\/initial\/383568\/41941062?redirectUrl=https%3A%2F%2Fwww.googletagservices.com%2Fdcm%2Fdcmads.js",
anId: '',
advEntityId: '383568',
pubEntityId: '41941062',
videoId: '',
videoChannel: '',
rts: {},
customViewability: [],
serverSideAppDetection: [],
groupm_native_publisher: false,
integration: null,
staticServer: '\/\/static.adsafeprotected.com\/',
passback: ''
};
try {
__IASScope = typeof window !== "undefined" ? window : this;
__IntegralASConfig.isResolved = !!__IntegralASConfig.jsFeatures;
__IntegralASConfig.birthdate = new Date().getTime();
__IntegralASConfig.perfBirth = (typeof __IASScope.performance !== "undefined" && typeof __IASScope.performance.now === 'function') ? __IASScope.performance.now() : null;
;(function(omidGlobal, factory, exports) {
// CommonJS support
if (typeof exports === 'object' && typeof exports.nodeName !== 'string') {
factory(omidGlobal, exports);
// If neither AMD nor CommonJS are used, export to a versioned name in the
// global context.
} else {
var exports = {};
var versions = ['1.2.20-iab1793'];
var additionalVersionString = '';
if (!!additionalVersionString) {
versions.push(additionalVersionString);
}
factory(omidGlobal, exports);
function deepFreeze(object) {
for (var key in object) {
if (object.hasOwnProperty(key)) {
object[key] = deepFreeze(object[key]);
}
}
return Object.freeze(object);
}
// Inject and freeze the exported components of omid.
for (var key in exports) {
if (exports.hasOwnProperty(key)) {
if (Object.getOwnPropertyDescriptor(omidGlobal, key) == null) {
// Define the top level property in the global scope
Object.defineProperty(omidGlobal, key, {
// value: {}, Removed trailing comma for build
value: {}
});
}
versions.forEach(function(version) {
if (Object.getOwnPropertyDescriptor(omidGlobal[key], version) == null) {
var frozenObject = deepFreeze(exports[key]);
// Define the object exports keyed-off versions
Object.defineProperty(omidGlobal[key], version, {
get: function () {
return frozenObject;
},
// enumerable: true, Removed trailing comma for build
enumerable: true
});
}
});
}
}
}
}(typeof global === 'undefined' ? this : global, function(omidGlobal, omidExports) {
'use strict';
var $jscomp = $jscomp || {};
$jscomp.scope = {};
$jscomp.arrayIteratorImpl = function(a) {
var b = 0;
return function() {
return b < a.length ? {done:!1, value:a[b++]} : {done:!0};
};
};
$jscomp.arrayIterator = function(a) {
return {next:$jscomp.arrayIteratorImpl(a)};
};
$jscomp.makeIterator = function(a) {
var b = "undefined" != typeof Symbol && Symbol.iterator && a[Symbol.iterator];
return b ? b.call(a) : $jscomp.arrayIterator(a);
};
$jscomp.arrayFromIterator = function(a) {
for (var b, c = []; !(b = a.next()).done;) {
c.push(b.value);
}
return c;
};
$jscomp.arrayFromIterable = function(a) {
return a instanceof Array ? a : $jscomp.arrayFromIterator($jscomp.makeIterator(a));
};
$jscomp.ASSUME_ES5 = !1;
$jscomp.ASSUME_NO_NATIVE_MAP = !1;
$jscomp.ASSUME_NO_NATIVE_SET = !1;
$jscomp.SIMPLE_FROUND_POLYFILL = !1;
$jscomp.objectCreate = $jscomp.ASSUME_ES5 || "function" == typeof Object.create ? Object.create : function(a) {
var b = function() {
};
b.prototype = a;
return new b;
};
$jscomp.underscoreProtoCanBeSet = function() {
var a = {a:!0}, b = {};
try {
return b.__proto__ = a, b.a;
} catch (c) {
}
return !1;
};
$jscomp.setPrototypeOf = "function" == typeof Object.setPrototypeOf ? Object.setPrototypeOf : $jscomp.underscoreProtoCanBeSet() ? function(a, b) {
a.__proto__ = b;
if (a.__proto__ !== b) {
throw new TypeError(a + " is not extensible");
}
return a;
} : null;
$jscomp.inherits = function(a, b) {
a.prototype = $jscomp.objectCreate(b.prototype);
a.prototype.constructor = a;
if ($jscomp.setPrototypeOf) {
var c = $jscomp.setPrototypeOf;
c(a, b);
} else {
for (c in b) {
if ("prototype" != c) {
if (Object.defineProperties) {
var d = Object.getOwnPropertyDescriptor(b, c);
d && Object.defineProperty(a, c, d);
} else {
a[c] = b[c];
}
}
}
}
a.superClass_ = b.prototype;
};
var module$exports$omid$common$argsChecker = {assertTruthyString:function(a, b) {
if (!b) {
throw Error("Value for " + a + " is undefined, null or blank.");
}
if ("string" !== typeof b && !(b instanceof String)) {
throw Error("Value for " + a + " is not a string.");
}
if ("" === b.trim()) {
throw Error("Value for " + a + " is empty string.");
}
}, assertNotNullObject:function(a, b) {
if (null == b) {
throw Error("Value for " + a + " is undefined or null");
}
}, assertNumber:function(a, b) {
if (null == b) {
throw Error(a + " must not be null or undefined.");
}
if ("number" !== typeof b || isNaN(b)) {
throw Error("Value for " + a + " is not a number");
}
}, assertNumberBetween:function(a, b, c, d) {
(0,module$exports$omid$common$argsChecker.assertNumber)(a, b);
if (b < c || b > d) {
throw Error("Value for " + a + " is outside the range [" + c + "," + d + "]");
}
}, assertFunction:function(a, b) {
if (!b) {
throw Error(a + " must not be truthy.");
}
}, assertPositiveNumber:function(a, b) {
(0,module$exports$omid$common$argsChecker.assertNumber)(a, b);
if (0 > b) {
throw Error(a + " must be a positive number.");
}
}};
var module$exports$omid$common$VersionUtils = {}, module$contents$omid$common$VersionUtils_SEMVER_DIGITS_NUMBER = 3;
module$exports$omid$common$VersionUtils.isValidVersion = function(a) {
return /\d+\.\d+\.\d+(-.*)?/.test(a);
};
module$exports$omid$common$VersionUtils.versionGreaterOrEqual = function(a, b) {
a = a.split("-")[0].split(".");
b = b.split("-")[0].split(".");
for (var c = 0; c < module$contents$omid$common$VersionUtils_SEMVER_DIGITS_NUMBER; c++) {
var d = parseInt(a[c], 10), e = parseInt(b[c], 10);
if (d > e) {
break;
} else {
if (d < e) {
return !1;
}
}
}
return !0;
};
var module$exports$omid$common$ArgsSerDe = {}, module$contents$omid$common$ArgsSerDe_ARGS_NOT_SERIALIZED_VERSION = "1.0.3";
module$exports$omid$common$ArgsSerDe.serializeMessageArgs = function(a, b) {
return (0,module$exports$omid$common$VersionUtils.isValidVersion)(a) && (0,module$exports$omid$common$VersionUtils.versionGreaterOrEqual)(a, module$contents$omid$common$ArgsSerDe_ARGS_NOT_SERIALIZED_VERSION) ? b : JSON.stringify(b);
};
module$exports$omid$common$ArgsSerDe.deserializeMessageArgs = function(a, b) {
return (0,module$exports$omid$common$VersionUtils.isValidVersion)(a) && (0,module$exports$omid$common$VersionUtils.versionGreaterOrEqual)(a, module$contents$omid$common$ArgsSerDe_ARGS_NOT_SERIALIZED_VERSION) ? b ? b : [] : b && "string" === typeof b ? JSON.parse(b) : [];
};
var module$exports$omid$common$constants = {AdEventType:{IMPRESSION:"impression", STATE_CHANGE:"stateChange", GEOMETRY_CHANGE:"geometryChange", SESSION_START:"sessionStart", SESSION_ERROR:"sessionError", SESSION_FINISH:"sessionFinish", VIDEO:"video", LOADED:"loaded", START:"start", FIRST_QUARTILE:"firstQuartile", MIDPOINT:"midpoint", THIRD_QUARTILE:"thirdQuartile", COMPLETE:"complete", PAUSE:"pause", RESUME:"resume", BUFFER_START:"bufferStart", BUFFER_FINISH:"bufferFinish", SKIPPED:"skipped", VOLUME_CHANGE:"volumeChange",
PLAYER_STATE_CHANGE:"playerStateChange", AD_USER_INTERACTION:"adUserInteraction"}, VideoEventType:{LOADED:"loaded", START:"start", FIRST_QUARTILE:"firstQuartile", MIDPOINT:"midpoint", THIRD_QUARTILE:"thirdQuartile", COMPLETE:"complete", PAUSE:"pause", RESUME:"resume", BUFFER_START:"bufferStart", BUFFER_FINISH:"bufferFinish", SKIPPED:"skipped", VOLUME_CHANGE:"volumeChange", PLAYER_STATE_CHANGE:"playerStateChange", AD_USER_INTERACTION:"adUserInteraction"}, ErrorType:{GENERIC:"generic", VIDEO:"video"},
AdSessionType:{NATIVE:"native", HTML:"html"}, EventOwner:{NATIVE:"native", JAVASCRIPT:"javascript", NONE:"none"}, AccessMode:{FULL:"full", LIMITED:"limited"}, AppState:{BACKGROUNDED:"backgrounded", FOREGROUNDED:"foregrounded"}, Environment:{APP:"app", WEB:"web"}, InteractionType:{CLICK:"click", INVITATION_ACCEPT:"invitationAccept"}, MediaType:{DISPLAY:"display", VIDEO:"video"}, Reason:{NOT_FOUND:"notFound", HIDDEN:"hidden", BACKGROUNDED:"backgrounded", VIEWPORT:"viewport", OBSTRUCTED:"obstructed",
CLIPPED:"clipped"}, SupportedFeatures:{CONTAINER:"clid", VIDEO:"vlid"}, VideoPosition:{PREROLL:"preroll", MIDROLL:"midroll", POSTROLL:"postroll", STANDALONE:"standalone"}, VideoPlayerState:{MINIMIZED:"minimized", COLLAPSED:"collapsed", NORMAL:"normal", EXPANDED:"expanded", FULLSCREEN:"fullscreen"}, NativeViewKeys:{X:"x", LEFT:"left", Y:"y", TOP:"top", WIDTH:"width", HEIGHT:"height", AD_SESSION_ID:"adSessionId", IS_FRIENDLY_OBSTRUCTION_FOR:"isFriendlyObstructionFor", CLIPS_TO_BOUNDS:"clipsToBounds",
CHILD_VIEWS:"childViews", END_X:"endX", END_Y:"endY", OBSTRUCTIONS:"obstructions"}, MeasurementStateChangeSource:{CONTAINER:"container", CREATIVE:"creative"}, ElementMarkup:{OMID_ELEMENT_CLASS_NAME:"omid-element"}, CommunicationType:{NONE:"NONE", DIRECT:"DIRECT", POST_MESSAGE:"POST_MESSAGE"}, OmidImplementer:{OMSDK:"omsdk"}};
var module$contents$omid$common$InternalMessage_GUID_KEY = "omid_message_guid", module$contents$omid$common$InternalMessage_METHOD_KEY = "omid_message_method", module$contents$omid$common$InternalMessage_VERSION_KEY = "omid_message_version", module$contents$omid$common$InternalMessage_ARGS_KEY = "omid_message_args", module$exports$omid$common$InternalMessage = function(a, b, c, d) {
this.guid = a;
this.method = b;
this.version = c;
this.args = d;
};
module$exports$omid$common$InternalMessage.isValidSerializedMessage = function(a) {
return !!a && void 0 !== a[module$contents$omid$common$InternalMessage_GUID_KEY] && void 0 !== a[module$contents$omid$common$InternalMessage_METHOD_KEY] && void 0 !== a[module$contents$omid$common$InternalMessage_VERSION_KEY] && "string" === typeof a[module$contents$omid$common$InternalMessage_GUID_KEY] && "string" === typeof a[module$contents$omid$common$InternalMessage_METHOD_KEY] && "string" === typeof a[module$contents$omid$common$InternalMessage_VERSION_KEY] && (void 0 === a[module$contents$omid$common$InternalMessage_ARGS_KEY] ||
void 0 !== a[module$contents$omid$common$InternalMessage_ARGS_KEY]);
};
module$exports$omid$common$InternalMessage.deserialize = function(a) {
return new module$exports$omid$common$InternalMessage(a[module$contents$omid$common$InternalMessage_GUID_KEY], a[module$contents$omid$common$InternalMessage_METHOD_KEY], a[module$contents$omid$common$InternalMessage_VERSION_KEY], a[module$contents$omid$common$InternalMessage_ARGS_KEY]);
};
module$exports$omid$common$InternalMessage.prototype.serialize = function() {
var a = {};
a = (a[module$contents$omid$common$InternalMessage_GUID_KEY] = this.guid, a[module$contents$omid$common$InternalMessage_METHOD_KEY] = this.method, a[module$contents$omid$common$InternalMessage_VERSION_KEY] = this.version, a);
void 0 !== this.args && (a[module$contents$omid$common$InternalMessage_ARGS_KEY] = this.args);
return a;
};
var module$exports$omid$common$Communication = function(a) {
this.to = a;
this.communicationType_ = module$exports$omid$common$constants.CommunicationType.NONE;
};
module$exports$omid$common$Communication.prototype.sendMessage = function(a, b) {
};
module$exports$omid$common$Communication.prototype.handleMessage = function(a, b) {
if (this.onMessage) {
this.onMessage(a, b);
}
};
module$exports$omid$common$Communication.prototype.serialize = function(a) {
return JSON.stringify(a);
};
module$exports$omid$common$Communication.prototype.deserialize = function(a) {
return JSON.parse(a);
};
module$exports$omid$common$Communication.prototype.isCrossOrigin = function() {
};
var module$exports$omid$common$DetectOmid = {OMID_PRESENT_FRAME_NAME:"omid_v1_present", isOmidPresent:function(a) {
try {
return a.frames ? !!a.frames[module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME] : !1;
} catch (b) {
return !1;
}
}, declareOmidPresence:function(a) {
a.frames && a.document && (module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME in a.frames || (null == a.document.body && module$exports$omid$common$DetectOmid.isMutationObserverAvailable_(a) ? module$exports$omid$common$DetectOmid.registerMutationObserver_(a) : a.document.body ? module$exports$omid$common$DetectOmid.appendPresenceIframe_(a) : a.document.write(''))));
}, appendPresenceIframe_:function(a) {
var b = a.document.createElement("iframe");
b.id = module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME;
b.name = module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME;
b.style.display = "none";
a.document.body.appendChild(b);
}, isMutationObserverAvailable_:function(a) {
return "MutationObserver" in a;
}, registerMutationObserver_:function(a) {
var b = new MutationObserver(function(c) {
c.forEach(function(c) {
"BODY" === c.addedNodes[0].nodeName && (module$exports$omid$common$DetectOmid.appendPresenceIframe_(a), b.disconnect());
});
});
b.observe(a.document.documentElement, {childList:!0});
}};
var module$exports$omid$common$DirectCommunication = function(a) {
module$exports$omid$common$Communication.call(this, a);
this.communicationType_ = module$exports$omid$common$constants.CommunicationType.DIRECT;
this.handleExportedMessage = module$exports$omid$common$DirectCommunication.prototype.handleExportedMessage.bind(this);
};
$jscomp.inherits(module$exports$omid$common$DirectCommunication, module$exports$omid$common$Communication);
module$exports$omid$common$DirectCommunication.prototype.sendMessage = function(a, b) {
b = void 0 === b ? this.to : b;
if (!b) {
throw Error("Message destination must be defined at construction time or when sending the message.");
}
b.handleExportedMessage(a.serialize(), this);
};
module$exports$omid$common$DirectCommunication.prototype.handleExportedMessage = function(a, b) {
module$exports$omid$common$InternalMessage.isValidSerializedMessage(a) && this.handleMessage(module$exports$omid$common$InternalMessage.deserialize(a), b);
};
module$exports$omid$common$DirectCommunication.prototype.isCrossOrigin = function() {
return !1;
};
var module$exports$omid$common$eventTypedefs = {};
var module$exports$omid$common$exporter = {};
function module$contents$omid$common$exporter_getOmidExports() {
return "undefined" === typeof omidExports ? null : omidExports;
}
function module$contents$omid$common$exporter_getOrCreateName(a, b) {
return a && (a[b] || (a[b] = {}));
}
module$exports$omid$common$exporter.packageExport = function(a, b, c) {
if (c = void 0 === c ? module$contents$omid$common$exporter_getOmidExports() : c) {
a = a.split("."), a.slice(0, a.length - 1).reduce(module$contents$omid$common$exporter_getOrCreateName, c)[a[a.length - 1]] = b;
}
};
var module$exports$omid$common$guid = {generateGuid:function() {
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(a) {
var b = 16 * Math.random() | 0;
a = "y" === a ? (b & 3 | 8).toString(16) : b.toString(16);
return a;
});
}};
var module$exports$omid$common$logger = {error:function(a) {
for (var b = [], c = 0; c < arguments.length; ++c) {
b[c - 0] = arguments[c];
}
module$contents$omid$common$logger_executeLog(function() {
throw new (Function.prototype.bind.apply(Error, [null, "Could not complete the test successfully - "].concat($jscomp.arrayFromIterable(b))));
}, function() {
return console.error.apply(console, $jscomp.arrayFromIterable(b));
});
}, debug:function(a) {
for (var b = [], c = 0; c < arguments.length; ++c) {
b[c - 0] = arguments[c];
}
module$contents$omid$common$logger_executeLog(function() {
}, function() {
return console.error.apply(console, $jscomp.arrayFromIterable(b));
});
}};
function module$contents$omid$common$logger_executeLog(a, b) {
"undefined" !== typeof jasmine && jasmine ? a() : "undefined" !== typeof console && console && console.error && b();
}
;var module$exports$omid$common$OmidGlobalProvider = {}, module$contents$omid$common$OmidGlobalProvider_globalThis = eval("this");
function module$contents$omid$common$OmidGlobalProvider_getOmidGlobal() {
if ("undefined" !== typeof omidGlobal && omidGlobal) {
return omidGlobal;
}
if ("undefined" !== typeof global && global) {
return global;
}
if ("undefined" !== typeof window && window) {
return window;
}
if ("undefined" !== typeof module$contents$omid$common$OmidGlobalProvider_globalThis && module$contents$omid$common$OmidGlobalProvider_globalThis) {
return module$contents$omid$common$OmidGlobalProvider_globalThis;
}
throw Error("Could not determine global object context.");
}
module$exports$omid$common$OmidGlobalProvider.omidGlobal = module$contents$omid$common$OmidGlobalProvider_getOmidGlobal();
var module$exports$omid$common$windowUtils = {};
function module$contents$omid$common$windowUtils_isValidWindow(a) {
return null != a && "undefined" !== typeof a.top && null != a.top;
}
module$exports$omid$common$windowUtils.isCrossOrigin = function(a) {
if (a === module$exports$omid$common$OmidGlobalProvider.omidGlobal) {
return !1;
}
try {
if ("undefined" === typeof a.location.hostname) {
return !0;
}
module$contents$omid$common$windowUtils_isSameOriginForIE(a);
} catch (b) {
return !0;
}
return !1;
};
function module$contents$omid$common$windowUtils_isSameOriginForIE(a) {
return "" === a.x || "" !== a.x;
}
module$exports$omid$common$windowUtils.resolveGlobalContext = function(a) {
"undefined" === typeof a && "undefined" !== typeof window && window && (a = window);
return module$contents$omid$common$windowUtils_isValidWindow(a) ? a : module$exports$omid$common$OmidGlobalProvider.omidGlobal;
};
module$exports$omid$common$windowUtils.resolveTopWindowContext = function(a) {
return module$contents$omid$common$windowUtils_isValidWindow(a) ? a.top : module$exports$omid$common$OmidGlobalProvider.omidGlobal;
};
var module$exports$omid$common$PostMessageCommunication = function(a, b) {
b = void 0 === b ? module$exports$omid$common$OmidGlobalProvider.omidGlobal : b;
module$exports$omid$common$Communication.call(this, b);
var c = this;
this.communicationType_ = module$exports$omid$common$constants.CommunicationType.POST_MESSAGE;
a.addEventListener("message", function(a) {
if ("object" === typeof a.data) {
var b = a.data;
module$exports$omid$common$InternalMessage.isValidSerializedMessage(b) && (b = module$exports$omid$common$InternalMessage.deserialize(b), a.source && c.handleMessage(b, a.source));
}
});
};
$jscomp.inherits(module$exports$omid$common$PostMessageCommunication, module$exports$omid$common$Communication);
module$exports$omid$common$PostMessageCommunication.isCompatibleContext = function(a) {
return !!(a && a.addEventListener && a.postMessage);
};
module$exports$omid$common$PostMessageCommunication.prototype.sendMessage = function(a, b) {
b = void 0 === b ? this.to : b;
if (!b) {
throw Error("Message destination must be defined at construction time or when sending the message.");
}
b.postMessage(a.serialize(), "*");
};
module$exports$omid$common$PostMessageCommunication.prototype.isCrossOrigin = function() {
return this.to ? (0,module$exports$omid$common$windowUtils.isCrossOrigin)(this.to) : !0;
};
var module$exports$omid$common$Rectangle = function(a, b, c, d) {
this.x = a;
this.y = b;
this.width = c;
this.height = d;
};
var module$exports$omid$common$serviceCommunication = {}, module$contents$omid$common$serviceCommunication_EXPORTED_SESSION_COMMUNICATION_NAME = ["omid", "v1_SessionServiceCommunication"], module$contents$omid$common$serviceCommunication_EXPORTED_VERIFICATION_COMMUNICATION_NAME = ["omid", "v1_VerificationServiceCommunication"], module$contents$omid$common$serviceCommunication_EXPORTED_SERVICE_WINDOW_NAME = ["omid", "serviceWindow"];
function module$contents$omid$common$serviceCommunication_getValueForKeypath(a, b) {
return b.reduce(function(a, b) {
return a && a[b];
}, a);
}
function module$contents$omid$common$serviceCommunication_startServiceCommunication(a, b, c, d) {
if (!(0,module$exports$omid$common$windowUtils.isCrossOrigin)(b)) {
try {
var e = module$contents$omid$common$serviceCommunication_getValueForKeypath(b, c);
if (e) {
return new module$exports$omid$common$DirectCommunication(e);
}
} catch (f) {
}
}
return d(b) ? new module$exports$omid$common$PostMessageCommunication(a, b) : null;
}
function module$contents$omid$common$serviceCommunication_startServiceCommunicationFromCandidates(a, b, c, d) {
b = $jscomp.makeIterator(b);
for (var e = b.next(); !e.done; e = b.next()) {
if (e = module$contents$omid$common$serviceCommunication_startServiceCommunication(a, e.value, c, d)) {
return e;
}
}
return null;
}
module$exports$omid$common$serviceCommunication.startSessionServiceCommunication = function(a, b, c) {
c = void 0 === c ? module$exports$omid$common$DetectOmid.isOmidPresent : c;
var d = [a, (0,module$exports$omid$common$windowUtils.resolveTopWindowContext)(a)];
b && d.unshift(b);
return module$contents$omid$common$serviceCommunication_startServiceCommunicationFromCandidates(a, d, module$contents$omid$common$serviceCommunication_EXPORTED_SESSION_COMMUNICATION_NAME, c);
};
module$exports$omid$common$serviceCommunication.startVerificationServiceCommunication = function(a, b) {
b = void 0 === b ? module$exports$omid$common$DetectOmid.isOmidPresent : b;
var c = [], d = module$contents$omid$common$serviceCommunication_getValueForKeypath(a, module$contents$omid$common$serviceCommunication_EXPORTED_SERVICE_WINDOW_NAME);
d && c.push(d);
c.push((0,module$exports$omid$common$windowUtils.resolveTopWindowContext)(a));
return module$contents$omid$common$serviceCommunication_startServiceCommunicationFromCandidates(a, c, module$contents$omid$common$serviceCommunication_EXPORTED_VERIFICATION_COMMUNICATION_NAME, b);
};
var module$exports$omid$common$VastProperties = function(a, b, c, d) {
this.isSkippable = a;
this.skipOffset = b;
this.isAutoPlay = c;
this.position = d;
};
var module$exports$omid$common$version = {ApiVersion:"1.0", Version:"1.2.20-iab1793"};
var module$contents$omid$verificationClient$VerificationClient_VERIFICATION_CLIENT_VERSION = module$exports$omid$common$version.Version, module$contents$omid$verificationClient$VerificationClient_EventCallback;
function module$contents$omid$verificationClient$VerificationClient_getThirdPartyOmid() {
var a = module$exports$omid$common$OmidGlobalProvider.omidGlobal.omid3p;
return a && "function" === typeof a.registerSessionObserver && "function" === typeof a.addEventListener ? a : null;
}
var module$exports$omid$verificationClient$VerificationClient = function(a) {
if (this.communication = a || (0,module$exports$omid$common$serviceCommunication.startVerificationServiceCommunication)((0,module$exports$omid$common$windowUtils.resolveGlobalContext)())) {
this.communication.onMessage = this.handleMessage_.bind(this);
} else {
if (a = module$contents$omid$verificationClient$VerificationClient_getThirdPartyOmid()) {
this.omid3p = a;
}
}
//----------this.remoteIntervals_ = this.remoteTimeouts_ = 0;
this.callbackMap_ = {};
this.imgCache_ = [];
};
module$exports$omid$verificationClient$VerificationClient.prototype.isSupported = function() {
return !(!this.communication && !this.omid3p);
};
module$exports$omid$verificationClient$VerificationClient.prototype.registerSessionObserver = function(a, b) {
(0,module$exports$omid$common$argsChecker.assertFunction)("functionToExecute", a);
this.omid3p ? this.omid3p.registerSessionObserver(a, b) : this.sendMessage_("addSessionListener", a, b);
};
module$exports$omid$verificationClient$VerificationClient.prototype.addEventListener = function(a, b) {
(0,module$exports$omid$common$argsChecker.assertTruthyString)("eventType", a);
(0,module$exports$omid$common$argsChecker.assertFunction)("functionToExecute", b);
this.omid3p ? this.omid3p.addEventListener(a, b) : this.sendMessage_("addEventListener", b, a);
};
module$exports$omid$verificationClient$VerificationClient.prototype.sendUrl = function(a, b, c) {
(0,module$exports$omid$common$argsChecker.assertTruthyString)("url", a);
module$exports$omid$common$OmidGlobalProvider.omidGlobal.document && module$exports$omid$common$OmidGlobalProvider.omidGlobal.document.createElement ? this.sendUrlWithImg_(a, b, c) : this.sendMessage_("sendUrl", function(a) {
a && b ? b() : !a && c && c();
}, a);
};
module$exports$omid$verificationClient$VerificationClient.prototype.sendUrlWithImg_ = function(a, b, c) {
var d = this, e = module$exports$omid$common$OmidGlobalProvider.omidGlobal.document.createElement("img");
this.imgCache_.push(e);
var f = function(a) {
var b = d.imgCache_.indexOf(e);
0 <= b && d.imgCache_.splice(b, 1);
a && a();
};
e.addEventListener("load", f.bind(this, b));
e.addEventListener("error", f.bind(this, c));
e.src = a;
};
module$exports$omid$verificationClient$VerificationClient.prototype.injectJavaScriptResource = function(a, b, c) {
var d = this;
(0,module$exports$omid$common$argsChecker.assertTruthyString)("url", a);
module$exports$omid$common$OmidGlobalProvider.omidGlobal.document ? this.injectJavascriptResourceUrlInDom_(a, b, c) : this.sendMessage_("injectJavaScriptResource", function(e, f) {
e ? (d.evaluateJavaScript_(f, a), b()) : (module$exports$omid$common$logger.error("Service failed to load JavaScript resource."), c());
}, a);
};
module$exports$omid$verificationClient$VerificationClient.prototype.injectJavascriptResourceUrlInDom_ = function(a, b, c) {
var d = module$exports$omid$common$OmidGlobalProvider.omidGlobal.document, e = d.body;
d = d.createElement("script");
d.onload = b;
d.onerror = c;
d.src = a;
d.type = "application/javascript";
e.appendChild(d);
};
module$exports$omid$verificationClient$VerificationClient.prototype.evaluateJavaScript_ = function(a, b) {
try {
eval(a);
} catch (c) {
module$exports$omid$common$logger.error('Error evaluating the JavaScript resource from "' + b + '".');
}
};
module$exports$omid$verificationClient$VerificationClient.prototype.setTimeout = function(a, b) {
(0,module$exports$omid$common$argsChecker.assertFunction)("functionToExecute", a);
(0,module$exports$omid$common$argsChecker.assertPositiveNumber)("timeInMillis", b);
if (this.hasTimeoutMethods_()) {
return module$exports$omid$common$OmidGlobalProvider.omidGlobal.setTimeout(a, b);
}
//----------var c = this.remoteTimeouts_++;
var c = ((new Date()).getTime() * 1000000) + (Math.floor(Math.random() * 1000000));
this.sendMessage_("setTimeout", a, c, b);
return c;
};
module$exports$omid$verificationClient$VerificationClient.prototype.clearTimeout = function(a) {
(0,module$exports$omid$common$argsChecker.assertPositiveNumber)("timeoutId", a);
this.hasTimeoutMethods_() ? module$exports$omid$common$OmidGlobalProvider.omidGlobal.clearTimeout(a) : this.sendOneWayMessage_("clearTimeout", a);
};
module$exports$omid$verificationClient$VerificationClient.prototype.setInterval = function(a, b) {
(0,module$exports$omid$common$argsChecker.assertFunction)("functionToExecute", a);
(0,module$exports$omid$common$argsChecker.assertPositiveNumber)("timeInMillis", b);
if (this.hasIntervalMethods_()) {
return module$exports$omid$common$OmidGlobalProvider.omidGlobal.setInterval(a, b);
}
//----------var c = this.remoteIntervals_++;
var c = ((new Date()).getTime() * 1000000) + (Math.floor(Math.random() * 1000000));
this.sendMessage_("setInterval", a, c, b);
return c;
};
module$exports$omid$verificationClient$VerificationClient.prototype.clearInterval = function(a) {
(0,module$exports$omid$common$argsChecker.assertPositiveNumber)("intervalId", a);
this.hasIntervalMethods_() ? module$exports$omid$common$OmidGlobalProvider.omidGlobal.clearInterval(a) : this.sendOneWayMessage_("clearInterval", a);
};
module$exports$omid$verificationClient$VerificationClient.prototype.hasTimeoutMethods_ = function() {
return "function" === typeof module$exports$omid$common$OmidGlobalProvider.omidGlobal.setTimeout && "function" === typeof module$exports$omid$common$OmidGlobalProvider.omidGlobal.clearTimeout;
};
module$exports$omid$verificationClient$VerificationClient.prototype.hasIntervalMethods_ = function() {
return "function" === typeof module$exports$omid$common$OmidGlobalProvider.omidGlobal.setInterval && "function" === typeof module$exports$omid$common$OmidGlobalProvider.omidGlobal.clearInterval;
};
module$exports$omid$verificationClient$VerificationClient.prototype.handleMessage_ = function(a, b) {
b = a.method;
var c = a.guid;
a = a.args;
if ("response" === b && this.callbackMap_[c]) {
var d = (0,module$exports$omid$common$ArgsSerDe.deserializeMessageArgs)(module$contents$omid$verificationClient$VerificationClient_VERIFICATION_CLIENT_VERSION, a);
this.callbackMap_[c].apply(this, d);
}
"error" === b && window.console && module$exports$omid$common$logger.error(a);
};
module$exports$omid$verificationClient$VerificationClient.prototype.sendOneWayMessage_ = function(a, b) {
for (var c = [], d = 1; d < arguments.length; ++d) {
c[d - 1] = arguments[d];
}
this.sendMessage_.apply(this, [a, null].concat($jscomp.arrayFromIterable(c)));
};
module$exports$omid$verificationClient$VerificationClient.prototype.sendMessage_ = function(a, b, c) {
for (var d = [], e = 2; e < arguments.length; ++e) {
d[e - 2] = arguments[e];
}
this.communication && (e = (0,module$exports$omid$common$guid.generateGuid)(), b && (this.callbackMap_[e] = b), d = new module$exports$omid$common$InternalMessage(e, "VerificationService." + a, module$contents$omid$verificationClient$VerificationClient_VERIFICATION_CLIENT_VERSION, (0,module$exports$omid$common$ArgsSerDe.serializeMessageArgs)(module$contents$omid$verificationClient$VerificationClient_VERIFICATION_CLIENT_VERSION, d)), this.communication.sendMessage(d));
};
(0,module$exports$omid$common$exporter.packageExport)("OmidVerificationClient", module$exports$omid$verificationClient$VerificationClient);
}, typeof exports === 'undefined' ? undefined : exports));
} catch(e) {
__IntegralASDiagnosticCall('thirdparty', e);
}
__IASScope.isDomless = (typeof window === "undefined" ? true : false);
__IASOmidVerificationClient = { isSupported: function () { return false; } };
if (typeof __IASScope.OmidVerificationClient !== 'undefined') {
try {
__IASOmidVerificationClient = new __IASScope.OmidVerificationClient['1.2.20-iab1793'](); //try standard in-browser instantiation
}
catch(e) {
try {
__IASOmidVerificationClient = new __IASScope.OmidVerificationClient(); //try domless version which has no version
}
catch(e) {
}
}
}
__IntegralASConfig.useFIF = (__IASScope && !!__IASScope.__IntegralASUseFIF) && __IntegralASConfig.mode === 'jload';
__IntegralASConfig.adRefreshThreshold = __IASScope && __IASScope.__IntegralASAdRefreshThreshold;
__IntegralASConfig.getContextNode = function(win, topWin) {
'use strict';
if (__IASScope.isDomless) {
return;
}
if (__IntegralASConfig.useFIF) {
return __IASScope.frameElement; // Early exit if using FIF
}
var tempScript,
embedded = win != topWin,
scripts = document.getElementsByTagName('script'),
result = scripts[scripts.length - 1],
scriptIndex = scripts.length,
useDocWrite = 'jss,jsi,jspix'.indexOf(__IntegralASConfig.mode) !== -1,
scriptUrl = __IntegralASConfig.scriptUrl;
try {
while (--scriptIndex >= 0) {
tempScript = scripts[scriptIndex];
if (
tempScript.src &&
tempScript.src.indexOf(scriptUrl) === 0 &&
tempScript.getAttribute('data-ias-script-tag') === null
) {
result = tempScript;
tempScript.setAttribute('data-ias-script-tag', 'found');
break;
}
}
if (scriptIndex === 0 && useDocWrite && !embedded) {
document.write('');
result = document.getElementById('s' + __IntegralASConfig.asid).parentNode;
}
} catch (e) {} // TODO: maybe a jsDiagnostic?
return result;
};
__IntegralASConfig.contextNode = __IASScope.isDomless ? undefined : __IntegralASConfig.getContextNode(window, top);
__IntegralASConfig.perfFactory = function() {
'use strict';
var _marks = {};
var START_CODE = 'A';
var END_CODE = 'Z';
function _addMark(codeName, time) {
_marks[codeName] = time;
}
function mark(codeName) {
_addMark(codeName, Math.round(__IASScope.performance.now()));
}
function markStart(baseName) {
mark(baseName + START_CODE);
}
function markEnd(baseName) {
mark(baseName + END_CODE);
}
function markResource(baseName, url) {
var entry, entries;
entries = __IASScope.performance.getEntriesByName(url);
if (entries && entries.length) {
entry = entries[entries.length - 1];
if (entry.startTime > 0 && entry.responseEnd > 0) {
_addMark(baseName + START_CODE, Math.round(entry.startTime));
_addMark(baseName + END_CODE, Math.round(entry.responseEnd));
}
}
}
function getData() {
return _marks;
}
function noop() {}
function setNoops() {
_addMark = noop;
mark = noop;
markStart = noop;
markEnd = noop;
markResource = noop;
}
function isFunc(obj) {
return typeof obj === 'function';
}
function _init() {
var canUsePerformanceAPIs = false;
var PERF_MARK_BOOTSTRAPPER_EXECUTION = 'be';
var PERF_MARK_BOOTSTRAPPER_SCRIPT_DOWNLOAD = 'bd';
var PERF_MARK_MAIN_SCRIPT_DOWNLOAD = 'md'; // note: this code is intentionally the same as the one in globalConstants.js
var downloadMark;
try {
canUsePerformanceAPIs =
__IASScope.performance &&
isFunc(__IASScope.performance.getEntriesByName) &&
isFunc(__IASScope.performance.now) &&
__IntegralASConfig.perfBirth !== null; // initialized to null or a time in jsAddOns1-birthdate.js
if (canUsePerformanceAPIs) {
downloadMark = __IntegralASConfig.jsDoSplit
? PERF_MARK_BOOTSTRAPPER_SCRIPT_DOWNLOAD
: PERF_MARK_MAIN_SCRIPT_DOWNLOAD;
markResource(downloadMark, __IntegralASConfig.scriptUrl); // in split mode, this captures download time for the bootstrapper script, in bundled mode, the bundled/main script
_addMark(PERF_MARK_BOOTSTRAPPER_EXECUTION + START_CODE, Math.round(__IntegralASConfig.perfBirth)); // put the birthdate that we already captured into our list of marks
markEnd(PERF_MARK_BOOTSTRAPPER_EXECUTION); // roughly the end time of execution for the bootstrapper script in split mode, in bundled mode, end of the bootstrapper part of the script and start of the module definition part
} else {
setNoops();
}
} catch (err) {
// TODO: remove if we never get here?
setNoops();
if (isFunc(__IASScope.__IntegralASDiagnosticCall)) {
__IASScope.__IntegralASDiagnosticCall('perf', err, __IntegralASConfig);
}
}
}
_init();
return {
mark: mark,
markStart: markStart,
markEnd: markEnd,
markResource: markResource,
getData: getData
};
};
__IntegralASConfig.perf = __IntegralASConfig.perfFactory();
} catch(err) {
__IntegralASConfig = {};
__IntegralASDiagnosticCall('bootstrapper', err);
}
__IntegralASConfig.initialize=function(m,y,L){function Qa(){var g,a,b;m.perf.markStart(na);w.startSystem();l=w.getAggregator();l.provide({omidAdSessionContext:{}});l.provide({omidAdSessionVerificationParameters:{}});g=Ra();a=oa();b=(new Sa).createInstance(g,a);l.provide({mErrors:g,mJsonp:a,mComm:b});g=__IASOmidVerificationClient;l.provide({omidVerificationClient:g});l.once("callContinueMain",function(){var a,b;m.perf.markStart(pa);b=Z.instantiateModules();a=Z.preImpression(b.mDataTransfer,b.mViewability,
b.mAdTalk,b.iOutput,b.mErrors,b.mAncestorOrigins,b.mBrowser,b.mPageUrls,b.mFeatures,t,b.renderDetector);Z.sendImpression(b.mErrors,b.mFeatures,b.mIds,b.mMode,b.iOutput,b.mBrowser,b.mViewability,a,b.mVideo);Z.postImpression(b.mBrowser,b.mIds,b.mViewability,b.mFeatures,b.mComm,b.mDataTransfer,b.mErrors,b.iOutput,b.loopDelay,b.mAdTalk,b.viewabilityMeasurement,b.mAncestorOrigins,t);m.perf.markEnd(pa)});l.on("tryToCallContinueMain",function(a){m.isResolved?l.trigger("callContinueMain"):l.trigger("requestBootstrapper",
a)});l.once("requestBootstrapper",function(a){var b=m.forcedBootstrapperHost||"http://jsconfig.adsafeprotected.com";"string"===typeof a&&(a=JSON.parse(a));var e=a&&a.config,k=a&&a.sca,u=a&&a.xsca;e&&l.trigger("jsonp",b+"/jsconfig"+e+(m.adSessionId?"&adSessionId="+m.adSessionId:""),function(a){Object.assign(m,"string"===typeof a?JSON.parse(a):a);m.isResolved=!0;m.sp_cdnScripts={sca:k,xsca:u};l.trigger("callContinueMain")},!1,"cbName")});g=[{environment:new da(g),adSessionReadyStrategy:new Ta(g)},{environment:new Ua,
adSessionReadyStrategy:new Va}];(new Wa(g)).resolve().adSessionReadyStrategy.start();m.perf.markEnd(na)}var l,Z=function(){function g(a){var b=new Xa(a,t),c=new Ya,d=new Za(a,t),p=$a(a,t),q=(new ab(m,t,a)).resolve(),g=[b],A=[];p.applies()&&g.push(p);d.applies()&&g.push(d);c.applies(a,t)&&g.push(c);f(q).each(function(a,b){g.push(new bb(b,t));A.push(b.id)});0g,d="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),e=[];g=c?-g:g;do b=g%a,e.push(d[b]),g=(g-b)/a;while(0=h.RENDER.WIDTH_THRESHOLD&&C.height>=h.RENDER.HEIGHT_THRESHOLD&&
(d.status=h.RENDER.STATUS.DETECTED,c?r.clearInterval(c):n=!1);d.details=g.build(f)}else d.details=k.getClosestContainerName()||g.getAdNodeName(b)||d.details;u(d)};t.isMraid()?l():f()})};return{start:function(){l.trigger("perfCheckpoint",{type:h.PERF_TIMELINE_TRACKER_CONFIG.RENDER.TYPE,timestamp:r.now(),code:"initial"});g=new $b;l.on("impressionsent",d);t.isAvid()||t.isOmid()||t.isVideo()?u(c):(u(b),n())}}},$b=function(){var g=!1,a=[],b=function(a){var b;if(s.isWindow(a))b="WINDOW";else if(s.isNodeXDomainIframe(a))b=
"XIFRAME";else try{b=s.getNodeName(a)}catch(e){}return b};return{build:function(c,d){var e=c&&s.getRect(c),k=b(c),u=c&&"IMG"===k,n=s.hasBackgroundImage(c),p=c.innerText&&0=h.RENDER.WIDTH_THRESHOLD&&e.height>=h.RENDER.HEIGHT_THRESHOLD?h.RENDER.DIAGNOSTIC.QUALIFIED_SIZE:h.RENDER.DIAGNOSTIC.UNQUALIFIED_SIZE];!n&&!u||0!==c.naturalWidth&&0!==c.naturalHeight||q.push(h.RENDER.DIAGNOSTIC.BROKEN_IMAGE);n&&q.push(h.RENDER.DIAGNOSTIC.STYLED_NODE);
p&&q.push(h.RENDER.DIAGNOSTIC.TEXT_NODE);d&&d.eventType&&("readystatechange"===d.eventType?q.push(h.RENDER.DIAGNOSTIC.DOCUMENT_READY):"load"===d.eventType&&q.push(h.RENDER.DIAGNOSTIC.LOAD_FIRED));g&&f(a).each(function(a,b){q.push(b)});return q.join(".")},getAdNodeName:b,appendCode:function(b){a.push(b);g=!0}}},Zb=function(g){return{status:function(){var a=g.details||h.RENDER.DETAILS.OTHER,b=g.status||h.RENDER.STATUS.OTHER,c=a.split(".")[0],d="env"===a,e=c&&-1!==h.RENDER.CREATIVE_NODE_TYPES.indexOf(c.toUpperCase()),
c="XIFRAME"===c,k=-1!==a.indexOf("tn"),a=-1!==a.indexOf("sn");return d?b:e||c||k||a?"1":"0"}}},$=function(){return{applies:function(g,a){var b=w.getAggregator().request("mobileApp"),c=!a.bootstrapOn("mobOrTab")&&g.browserIs(h.BROWSERS.WEBKIT);return(g.browserIs(h.BROWSERS.CHROME)||g.isAndroidWebViewBrowser()||c||g.browserIs(h.BROWSERS.MSEDGE))&&!b.isMobileAppEnvironment()&&g.hasIntersectionObserver()&&a.on("chromeNativeIO")}}},Ob=function(){var g,a,b=!1,c=l.request("mPage"),d=function(){!b&&a&&g&&
!c.isHidden()&&(b=!0,l.trigger("sendDt",h.DT_CODES.LARGE_BILLABLE))};l.on("primaryadfound",function(a){g=a.getDims().area()>=h.MRC_LARGE_AD_SIZE;d()});l.on("impressionsent",function(){a=!0;d()});c.onHiddenChange(d)},ub=function(){var g=[],a={},b={percentInView:"piv",sl:"vs",reason:"r",width:"w",height:"h"};l.on("newScreenEvent",function(c){c=f(c).selectProperties(f(b).keys());c=f(c).asStrings();var d=f(c).compareTo(a);d&&(d.t=t.getTagTime(),g.push(d));f(a).mixin(c)});return{toString:function(){return f(g).toION(b)}}},
wa=function(){var g=new ac,a=new D;return f(g).mixin(a)},D=function(){var g={},a={},b=function(b,c,k){if((b=a[b])&&0!==b)return k&&(b=b.slice(0,1)),f(b).each(function(a,b){c.apply({},b)}),!0},c=function(a,b,c){g[a]=g[a]||new ga;g[a].push(b,c)};return{on:function(a,e){var k={};e?k[a]=e:k=a;f(k).each(c);f(k).each(b)},once:function(a,e){b(a,e,!0)||c(a,e,1)},trigger:function(a){var b=f(arguments).toArray();b.shift();var c;(c=g[a])&&c.run.apply({},b)},persistentTrigger:function(b){var c=f(arguments).toArray();
c.shift();var k=b;a[k]=a[k]||[];a[k].push(c);(k=g[b])&&k.run.apply({},c)}}},ha=function(){var g=function(a,c,d){var e,k=c.length,u=s.isWindow(a)?a.frames:s.getChildWindowsOf(a);d&&d(a,c);if(u&&u.length){for(a=0;a=e&&!a[e]&&(d.getTask().call(),a[e]=!0)})}}},bc=function(){var g,a=new xa,b=function(b,d,e,k){var u,n,p,q;if(JSON&&JSON.parse)try{u=JSON.parse(b.data),n=b.source,q=f.noop,d(u)&&
(k&&(p=k(n,u))&&(q=function(){a.send(function(){return p},n)}),e(b,u,q))}catch(g){u&&w.getAggregator().trigger("error",h.ERROR_CODES.MESSAGE_LISTENER)}};return{listen:function(a,d,e){g=function(k){b(k,a,d,e)};z.addEvent(y,"message",g)},stop:function(){g&&z.removeEvent(y,"message",g);g=null}}},xa=function(){var g=function(a){return f(a).isObj()?[a]:(new ha).getFrames(a)},a=function(a){return f(a).mapToObj(function(a,b){var e;f.isFunction(b)||(e={},e[a]=b);return e})};return{send:function(b,c){if(JSON&&
JSON.stringify){var d=g(c);f(d).each(function(c,d){var u;u=f.resolve(b,d)||{};u.sentTime=r.now();u=a(u);d.postMessage(f(u).JSONStringify(),"*")})}}}},cc=function(g,a){return{onAll:function(b){var c={};f(a).each(function(d,e){g.on(e,function(){c[e]=1;f(c).keys().length===a.length&&(c={},b())})})}}},qb=function(g){var a=0,b={},c=function(b,c,d){if(f.isUndef(b.output))throw Error("item with id "+c+' must have "output" method');this.item=b;this.id=c||++a;this.props=d||{};this.output=function(){var a=
f.resolve(b.output);this.props.asION&&(a=f(a).toION());return a}},d=function(a){var c,d,e=[];for(c in b)b.hasOwnProperty(c)&&(d=a(c,b[c]))&&e.push(d);return e},e=function(a,d,e){e=e||d;e="string"!==typeof e?e:{};var p=function(a,d,e){a=new c(a,d,e);b[a.id]=a};f(a.output).isObj()&&!e.asION?f(a.output).each(function(a,b){p({output:b},a,e)}):p(a,d,e)};g.on("addOutputItem",function(a,b,c){e(a,b,c)});return{addItem:e,filterOutput:function(a,b){return d(function(c,d){var e=d.props,g;a(e)&&(g=d.output(),
e.encode&&(c=encodeURIComponent(c),g=encodeURIComponent(g)),f.isFunction(b)?b(c,g):b[c]=g)})},iterate:d,cleanup:function(){d(function(a,c){c.props.flagForRemoval&&delete b[a]})},getItem:function(a){return b[a]}}},ac=function(){var g={},a=function(a,c){g[a]=c};return{request:function(a){var c,d=g[a],e=f(arguments).toArray();e.shift();f.isUndef(d)||(c=f.isFunction(d)?d.apply({},e):d);return c},provide:function(b,c){c?g[b]=c:f(b).each(a);return c}}},Fb=function(){return{createInstance:function(g,a,b,
c){return t.isDomless()?new dc:new ec(g,a,b,c)}}},ec=function(g,a,b,c){var d;return{collect:function(){var a=g.find(),k=a.getOutOfViewReasons(),u=b.isHidden(),n=c.isDeviceTypeGroupMobile()&&d?d:J(s.calcWinDims()),p=a.getDims();d=n;if(!a.hasAd()||!n.hasValidDims()||!p.hasValidDims())return{viewState:h.NA,posViewState:h.NA,embedded:t.embedded,winDimensions:n,adDimensions:p};!0===u&&k.push(h.OUT_OF_VIEW_REASONS.FOCUS);return{winDimensions:n,adDimensions:p,containerDimensions:a.getContainerDims(),method:a.getDetectionMethod(),
viewState:k.length?h.OUT_OF_VIEW:a.getViewState(),percentInView:a.getPercentInView(),reason:k.join("."),obstructed:f.stringifyTriState(a.isObstructed()),isHidden:f.stringifyTriState(a.isHidden()),tabHidden:f.stringifyTriState(u),posViewState:a.getViewState(),adCompCount:a.getComponentCount(),sliceStatus:a.getSliceStatus()}}}},dc=function(){return{collect:function(){return{}}}},fc=function(g){g=g||f.identity;var a=[],b=r.now(),c=function(){var c=r.now();a.length&&(a[a.length-1].duration+=c-b,b=c)};
return{clear:function(){c();a=[]},fastForward:c,get:function(){return a},hasAlwaysBeen:function(b){return 1===a.length&&a[0].state===b},addState:function(b){var e=a[a.length-1];b=g(b);c();0!==a.length&&b===e.state||a.push({state:b,duration:0})}}},ya=function(g,a){var b=g||1,c=0,d=0,e,k=0;return{start:function(){0===c%b&&(e=r.now())},stop:function(){var u=e||a;0===c%b&&(k+=r.now()-u,d++);c++},getTime:function(){return k},getCount:function(){return d}}},za=function(){var g,a=0,b=0,c=new D(!0),d=function(){g&&
(a++,c.trigger(a),b>a?r.execAtEndOfThread(d):e())},e=function(){g=!1;a=0};return{onTick:function(a,d){var e=f.collapseArgsIntoHash(a,d);f(e).each(function(a,c){a=parseInt(a);b=a>b?a:b});c.on(e)},start:function(){g||(g=!0,r.execAtEndOfThread(d))},kill:e,isActive:function(){return g}}},gc=function(g,a){var b,c=a,d=function(a){b||(a&&g(),b=r.setInterval(g,c))},e=function(a){a&&g();r.clearInterval(b);b=null};return{start:d,stop:e,updateFrequency:function(a,b){c=a;e();d(b)}}},ea=function(g){var a,b,c=
0,d=t.getTagTime(),e=0,k=!1;return{getTotalTime:function(){return e},stop:function(){c=0;d=t.getTagTime();k=!1},mark:function(){a=k?t.getTagTime()-d:0;c+=a;c>=g&&(b=c-a=c.concat(b).join("").length&&c.push(b)});return c},a=function(a,c){var d;c&&c.id&&(d=c.id.replace(/[^\w-_.>\/]/g,""));return d};return function(){var b,c;try{if(t.friendly&&!t.isMobileApp())if(b=l.request("adSlotIds"))c=b;else{var d,e;if(d=s.getOurNodeInTop()){var k=s.getAncestorNodes(d);e=f(k).map(a)}if(b=e=e&&g(e))l.trigger("addOutputItem",
{output:b},"slid",{type:h.DT_CODES.ADTALK,asION:!0}),l.provide("adSlotIds",b),c=b}return c}catch(u){l.trigger("error",h.ERROR_CODES.AD_SLOT_ID)}}()};w("AdRefreshDetection",[],function(){var g=[30,45,60,90],a={start:function(){var a=this,c=m.asid,d=this.getChanId();c&&d&&(this.recordAdSlotImpression(c,d,function(c,d){c?l.trigger("error",h.ERROR_CODES.AD_REFRESH):a.sendRefreshSession(d)}),a.registerInternalViewabilityListener(d))},adRefreshIntervalIsValid:function(a){return-1!==g.indexOf(a)},getChanId:function(){for(var a=
m.reqquery.split("&"),c,d=/(\S+)=(\S+)/g,e=0;e";e=""}return'