Online PHP and Javascript Decoder decode hidden script to uncover its real functionality


	{
	"lastModified":"Tue, 19 Mar 2024 07:34:00 GMT","content":";
		(function(omidGlobal, factory, exports) {
			\n  \/\/ CommonJS support\n  if (typeof exports === 'object' && typeof exports.nodeName !== 'string') {
			\n    factory(omidGlobal, exports);
			\n\n  \/\/ If neither AMD nor CommonJS are used, export to a versioned name in the\n  \/\/ global context.\n  
		}
			 else {
				\n    var exports = {
			};
			\n    var versions = ['1.4.8-iab4174'];
			\n    var additionalVersionString = 'default';
				\n    if (!!additionalVersionString) {
				\n       versions.push(additionalVersionString);
				\n    
			}
			\n\n    factory(omidGlobal, exports);
				\n\n    function deepFreeze(object) {
					\n      for (var key in object) {
						\n        if (object.hasOwnProperty(key)) {
						\n          object[key] = deepFreeze(object[key]);
						\n        
					}
					\n      
				}
				\n      return Object.freeze(object);
				\n    
			}
				\n\n    \/\/ Inject and freeze the exported components of omid.\n    for (var key in exports) {
					\n      if (exports.hasOwnProperty(key)) {
						\n        if (Object.getOwnPropertyDescriptor(omidGlobal, key) == null) {
							\n          \/\/ Define the top level property in the global scope\n          Object.defineProperty(omidGlobal, key, {
								\n            value: {
							}
							,\n          
						}
						);
						\n        
					}
						\n        versions.forEach(function(version) {
							\n          if (Object.getOwnPropertyDescriptor(omidGlobal[key], version) == null) {
							\n            var frozenObject = deepFreeze(exports[key]);
								\n            \/\/ Define the object exports keyed-off versions\n            Object.defineProperty(omidGlobal[key], version, {
									\n              get: function () {
									\n                return frozenObject;
									\n              
								}
								,\n              enumerable: true,\n            
							}
							);
							\n          
						}
						\n        
					}
					);
					\n      
				}
				\n    
			}
			\n  
		}
		\n
	}
		(typeof global === 'undefined' ? this : global, function(omidGlobal, omidExports) {
			\n  var $jscomp = $jscomp || {
		};
			\n$jscomp.scope = {
		};
			\n$jscomp.createTemplateTagFirstArg = function(a) {
			\n  return a.raw = a;
			\n
		};
			\n$jscomp.createTemplateTagFirstArgWithRaw = function(a, b) {
			\n  a.raw = b;
			\n  return a;
			\n
		};
			\n$jscomp.arrayIteratorImpl = function(a) {
			\n  var b = 0;
				\n  return function() {
					\n    return b < a.length ? {
					done:!1, value:a[b++],
				}
					 : {
					done:!0
				};
				\n  
			};
			\n
		};
			\n$jscomp.arrayIterator = function(a) {
				\n  return {
				next:$jscomp.arrayIteratorImpl(a)
			};
			\n
		};
			\n$jscomp.makeIterator = function(a) {
			\n  var b = \"undefined\" != typeof Symbol && Symbol.iterator && a[Symbol.iterator];
				\n  if (b) {
				\n    return b.call(a);
				\n  
			}
				\n  if (\"number\" == typeof a.length) {
				\n    return $jscomp.arrayIterator(a);
				\n  
			}
			\n  throw Error(String(a) + \" is not an iterable or ArrayLike\");
			\n
		};
			\n$jscomp.arrayFromIterator = function(a) {
			\n  for (var b, c = [];
			 !(b = a.next()).done;
				) {
				\n    c.push(b.value);
				\n  
			}
			\n  return c;
			\n
		};
			\n$jscomp.arrayFromIterable = function(a) {
			\n  return a instanceof Array ? a : $jscomp.arrayFromIterator($jscomp.makeIterator(a));
			\n
		};
		\n$jscomp.ASSUME_ES5 = !1;
		\n$jscomp.ASSUME_NO_NATIVE_MAP = !1;
		\n$jscomp.ASSUME_NO_NATIVE_SET = !1;
		\n$jscomp.SIMPLE_FROUND_POLYFILL = !1;
		\n$jscomp.ISOLATE_POLYFILLS = !1;
		\n$jscomp.FORCE_POLYFILL_PROMISE = !1;
		\n$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION = !1;
			\n$jscomp.objectCreate = $jscomp.ASSUME_ES5 || \"function\" == typeof Object.create ? Object.create : function(a) {
				\n  var b = function() {
				\n  
			};
			\n  b.prototype = a;
			\n  return new b();
			\n
		};
			\n$jscomp.defineProperty = $jscomp.ASSUME_ES5 || \"function\" == typeof Object.defineProperties ? Object.defineProperty : function(a, b, c) {
				\n  if (a == Array.prototype || a == Object.prototype) {
				\n    return a;
				\n  
			}
			\n  a[b] = c.value;
			\n  return a;
			\n
		};
			\n$jscomp.getGlobal = function(a) {
			\n  a = [\"object\" == typeof globalThis && globalThis, a, \"object\" == typeof window && window, \"object\" == typeof self && self, \"object\" == typeof global && global,];
			\n  for (var b = 0;
			 b < a.length;
				 ++b) {
				\n    var c = a[b];
					\n    if (c && c.Math == Math) {
					\n      return c;
					\n    
				}
				\n  
			}
			\n  throw Error(\"Cannot find global object\");
			\n
		};
		\n$jscomp.global = $jscomp.getGlobal(this);
		\n$jscomp.IS_SYMBOL_NATIVE = \"function\" === typeof Symbol && \"symbol\" === typeof Symbol(\"x\");
		\n$jscomp.TRUST_ES6_POLYFILLS = !$jscomp.ISOLATE_POLYFILLS || $jscomp.IS_SYMBOL_NATIVE;
			\n$jscomp.polyfills = {
		};
			\n$jscomp.propertyToPolyfillSymbol = {
		};
		\n$jscomp.POLYFILL_PREFIX = \"$jscp$\";
			\nvar $jscomp$lookupPolyfilledValue = function(a, b, c) {
				\n  if (!c || null != a) {
				\n    c = $jscomp.propertyToPolyfillSymbol[b];
					\n    if (null == c) {
					\n      return a[b];
					\n    
				}
				\n    c = a[c];
				\n    return void 0 !== c ? c : a[b];
				\n  
			}
			\n
		};
			\n$jscomp.polyfill = function(a, b, c, d) {
			\n  b && ($jscomp.ISOLATE_POLYFILLS ? $jscomp.polyfillIsolated(a, b, c, d) : $jscomp.polyfillUnisolated(a, b, c, d));
			\n
		};
			\n$jscomp.polyfillUnisolated = function(a, b, c, d) {
			\n  c = $jscomp.global;
			\n  a = a.split(\".\");
			\n  for (d = 0;
			 d < a.length - 1;
				 d++) {
				\n    var e = a[d];
					\n    if (!(e in c)) {
					\n      return;
					\n    
				}
				\n    c = c[e];
				\n  
			}
			\n  a = a[a.length - 1];
			\n  d = c[a];
			\n  b = b(d);
				\n  b != d && null != b && $jscomp.defineProperty(c, a, {
				configurable:!0, writable:!0, value:b
			}
			);
			\n
		};
			\n$jscomp.polyfillIsolated = function(a, b, c, d) {
			\n  var e = a.split(\".\");
			\n  a = 1 === e.length;
			\n  d = e[0];
			\n  d = !a && d in $jscomp.polyfills ? $jscomp.polyfills : $jscomp.global;
			\n  for (var l = 0;
			 l < e.length - 1;
				 l++) {
				\n    var m = e[l];
					\n    if (!(m in d)) {
					\n      return;
					\n    
				}
				\n    d = d[m];
				\n  
			}
			\n  e = e[e.length - 1];
			\n  c = $jscomp.IS_SYMBOL_NATIVE && \"es6\" === c ? d[e] : null;
			\n  b = b(c);
				\n  null != b && (a ? $jscomp.defineProperty($jscomp.polyfills, e, {
				configurable:!0, writable:!0, value:b
			}
				) : b !== c && (void 0 === $jscomp.propertyToPolyfillSymbol[e] && (c = 1E9 * Math.random() >>> 0, $jscomp.propertyToPolyfillSymbol[e] = $jscomp.IS_SYMBOL_NATIVE ? $jscomp.global.Symbol(e) : $jscomp.POLYFILL_PREFIX + c + \"$\" + e), $jscomp.defineProperty(d, $jscomp.propertyToPolyfillSymbol[e], {
				configurable:!0, writable:!0, value:b
			}
			)));
			\n
		};
			\n$jscomp.getConstructImplementation = function() {
				\n  function a() {
					\n    function c() {
					\n    
				}
				\n    new c();
					\n    Reflect.construct(c, [], function() {
					\n    
				}
				);
				\n    return new c() instanceof c;
				\n  
			}
				\n  if ($jscomp.TRUST_ES6_POLYFILLS && \"undefined\" != typeof Reflect && Reflect.construct) {
					\n    if (a()) {
					\n      return Reflect.construct;
					\n    
				}
				\n    var b = Reflect.construct;
					\n    return function(c, d, e) {
					\n      c = b(c, d);
					\n      e && Reflect.setPrototypeOf(c, e.prototype);
					\n      return c;
					\n    
				};
				\n  
			}
				\n  return function(c, d, e) {
				\n    void 0 === e && (e = c);
				\n    e = $jscomp.objectCreate(e.prototype || Object.prototype);
				\n    return Function.prototype.apply.call(c, e, d) || e;
				\n  
			};
			\n
		};
			\n$jscomp.construct = {
			valueOf:$jscomp.getConstructImplementation
		}
		.valueOf();
			\n$jscomp.underscoreProtoCanBeSet = function() {
				\n  var a = {
				a:!0
			}
				, b = {
			};
				\n  try {
				\n    return b.__proto__ = a, b.a;
				\n  
			}
				 catch (c) {
				\n  
			}
			\n  return !1;
			\n
		};
			\n$jscomp.setPrototypeOf = $jscomp.TRUST_ES6_POLYFILLS && \"function\" == typeof Object.setPrototypeOf ? Object.setPrototypeOf : $jscomp.underscoreProtoCanBeSet() ? function(a, b) {
			\n  a.__proto__ = b;
				\n  if (a.__proto__ !== b) {
				\n    throw new TypeError(a + \" is not extensible\");
				\n  
			}
			\n  return a;
			\n
		}
		 : null;
			\n$jscomp.inherits = function(a, b) {
			\n  a.prototype = $jscomp.objectCreate(b.prototype);
			\n  a.prototype.constructor = a;
				\n  if ($jscomp.setPrototypeOf) {
				\n    var c = $jscomp.setPrototypeOf;
				\n    c(a, b);
				\n  
			}
				 else {
					\n    for (c in b) {
						\n      if (\"prototype\" != c) {
							\n        if (Object.defineProperties) {
							\n          var d = Object.getOwnPropertyDescriptor(b, c);
							\n          d && Object.defineProperty(a, c, d);
							\n        
						}
							 else {
							\n          a[c] = b[c];
							\n        
						}
						\n      
					}
					\n    
				}
				\n  
			}
			\n  a.superClass_ = b.prototype;
			\n
		};
			\n$jscomp.getRestArguments = function() {
			\n  for (var a = Number(this), b = [], c = a;
			 c < arguments.length;
				 c++) {
				\n    b[c - a] = arguments[c];
				\n  
			}
			\n  return b;
			\n
		};
			\n$jscomp.polyfill(\"Reflect\", function(a) {
				\n  return a ? a : {
			};
			\n
		}
		, \"es6\", \"es3\");
			\n$jscomp.polyfill(\"Reflect.construct\", function(a) {
			\n  return $jscomp.construct;
			\n
		}
		, \"es6\", \"es3\");
			\n$jscomp.polyfill(\"Reflect.setPrototypeOf\", function(a) {
				\n  if (a) {
				\n    return a;
				\n  
			}
				\n  if ($jscomp.setPrototypeOf) {
				\n    var b = $jscomp.setPrototypeOf;
					\n    return function(c, d) {
						\n      try {
						\n        return b(c, d), !0;
						\n      
					}
						 catch (e) {
						\n        return !1;
						\n      
					}
					\n    
				};
				\n  
			}
			\n  return null;
			\n
		}
		, \"es6\", \"es5\");
			\n$jscomp.initSymbol = function() {
			\n
		};
			\n$jscomp.polyfill(\"Symbol\", function(a) {
				\n  if (a) {
				\n    return a;
				\n  
			}
				\n  var b = function(l, m) {
				\n    this.$jscomp$symbol$id_ = l;
					\n    $jscomp.defineProperty(this, \"description\", {
					configurable:!0, writable:!0, value:m
				}
				);
				\n  
			};
				\n  b.prototype.toString = function() {
				\n    return this.$jscomp$symbol$id_;
				\n  
			};
				\n  var c = \"jscomp_symbol_\" + (1E9 * Math.random() >>> 0) + \"_\", d = 0, e = function(l) {
					\n    if (this instanceof e) {
					\n      throw new TypeError(\"Symbol is not a constructor\");
					\n    
				}
				\n    return new b(c + (l || \"\") + \"_\" + d++, l);
				\n  
			};
			\n  return e;
			\n
		}
		, \"es6\", \"es3\");
			\n$jscomp.polyfill(\"Symbol.iterator\", function(a) {
				\n  if (a) {
				\n    return a;
				\n  
			}
			\n  a = Symbol(\"Symbol.iterator\");
			\n  for (var b = \"Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array\".split(\" \"), c = 0;
			 c < b.length;
				 c++) {
				\n    var d = $jscomp.global[b[c]];
					\n    \"function\" === typeof d && \"function\" != typeof d.prototype[a] && $jscomp.defineProperty(d.prototype, a, {
						configurable:!0, writable:!0, value:function() {
						\n      return $jscomp.iteratorPrototype($jscomp.arrayIteratorImpl(this));
						\n    
					}
				}
				);
				\n  
			}
			\n  return a;
			\n
		}
		, \"es6\", \"es3\");
			\n$jscomp.iteratorPrototype = function(a) {
				\n  a = {
				next:a
			};
				\n  a[Symbol.iterator] = function() {
				\n    return this;
				\n  
			};
			\n  return a;
			\n
		};
			\n$jscomp.iteratorFromArray = function(a, b) {
			\n  a instanceof String && (a += \"\");
				\n  var c = 0, d = !1, e = {
					next:function() {
						\n    if (!d && c < a.length) {
						\n      var l = c++;
							\n      return {
							value:b(l, a[l]), done:!1
						};
						\n    
					}
					\n    d = !0;
						\n    return {
						done:!0, value:void 0
					};
					\n  
				}
			};
				\n  e[Symbol.iterator] = function() {
				\n    return e;
				\n  
			};
			\n  return e;
			\n
		};
			\n$jscomp.polyfill(\"Array.prototype.keys\", function(a) {
				\n  return a ? a : function() {
					\n    return $jscomp.iteratorFromArray(this, function(b) {
					\n      return b;
					\n    
				}
				);
				\n  
			};
			\n
		}
		, \"es6\", \"es3\");
			\n$jscomp.owns = function(a, b) {
			\n  return Object.prototype.hasOwnProperty.call(a, b);
			\n
		};
			\n$jscomp.polyfill(\"Object.values\", function(a) {
				\n  return a ? a : function(b) {
				\n    var c = [], d;
					\n    for (d in b) {
					\n      $jscomp.owns(b, d) && c.push(b[d]);
					\n    
				}
				\n    return c;
				\n  
			};
			\n
		}
		, \"es8\", \"es3\");
			\n$jscomp.checkEs6ConformanceViaProxy = function() {
				\n  try {
					\n    var a = {
				}
					, b = Object.create(new $jscomp.global.Proxy(a, {
						get:function(c, d, e) {
						\n      return c == a && \"q\" == d && e == b;
						\n    
					}
				}
				));
				\n    return !0 === b.q;
				\n  
			}
				 catch (c) {
				\n    return !1;
				\n  
			}
			\n
		};
		\n$jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS = !1;
		\n$jscomp.ES6_CONFORMANCE = $jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS && $jscomp.checkEs6ConformanceViaProxy();
			\n$jscomp.polyfill(\"WeakMap\", function(a) {
				\n  function b() {
					\n    if (!a || !Object.seal) {
					\n      return !1;
					\n    
				}
					\n    try {
						\n      var f = Object.seal({
					}
						), h = Object.seal({
					}
					), k = new a([[f, 2], [h, 3]]);
						\n      if (2 != k.get(f) || 3 != k.get(h)) {
						\n        return !1;
						\n      
					}
					\n      k.delete(f);
					\n      k.set(h, 4);
					\n      return !k.has(f) && 4 == k.get(h);
					\n    
				}
					 catch (n) {
					\n      return !1;
					\n    
				}
				\n  
			}
				\n  function c() {
				\n  
			}
				\n  function d(f) {
				\n    var h = typeof f;
				\n    return \"object\" === h && null !== f || \"function\" === h;
				\n  
			}
				\n  function e(f) {
					\n    if (!$jscomp.owns(f, m)) {
					\n      var h = new c();
						\n      $jscomp.defineProperty(f, m, {
						value:h
					}
					);
					\n    
				}
				\n  
			}
				\n  function l(f) {
					\n    if (!$jscomp.ISOLATE_POLYFILLS) {
					\n      var h = Object[f];
						\n      h && (Object[f] = function(k) {
							\n        if (k instanceof c) {
							\n          return k;
							\n        
						}
						\n        Object.isExtensible(k) && e(k);
						\n        return h(k);
						\n      
					}
					);
					\n    
				}
				\n  
			}
				\n  if ($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS) {
					\n    if (a && $jscomp.ES6_CONFORMANCE) {
					\n      return a;
					\n    
				}
				\n  
			}
				 else {
					\n    if (b()) {
					\n      return a;
					\n    
				}
				\n  
			}
			\n  var m = \"$jscomp_hidden_\" + Math.random();
			\n  l(\"freeze\");
			\n  l(\"preventExtensions\");
			\n  l(\"seal\");
				\n  var p = 0, g = function(f) {
				\n    this.id_ = (p += Math.random() + 1).toString();
					\n    if (f) {
					\n      f = $jscomp.makeIterator(f);
					\n      for (var h;
					 !(h = f.next()).done;
						) {
						\n        h = h.value, this.set(h[0], h[1]);
						\n      
					}
					\n    
				}
				\n  
			};
				\n  g.prototype.set = function(f, h) {
					\n    if (!d(f)) {
					\n      throw Error(\"Invalid WeakMap key\");
					\n    
				}
				\n    e(f);
					\n    if (!$jscomp.owns(f, m)) {
					\n      throw Error(\"WeakMap key fail: \" + f);
					\n    
				}
				\n    f[m][this.id_] = h;
				\n    return this;
				\n  
			};
				\n  g.prototype.get = function(f) {
				\n    return d(f) && $jscomp.owns(f, m) ? f[m][this.id_] : void 0;
				\n  
			};
				\n  g.prototype.has = function(f) {
				\n    return d(f) && $jscomp.owns(f, m) && $jscomp.owns(f[m], this.id_);
				\n  
			};
				\n  g.prototype.delete = function(f) {
				\n    return d(f) && $jscomp.owns(f, m) && $jscomp.owns(f[m], this.id_) ? delete f[m][this.id_] : !1;
				\n  
			};
			\n  return g;
			\n
		}
		, \"es6\", \"es3\");
			\n$jscomp.MapEntry = function() {
			\n
		};
			\n$jscomp.polyfill(\"Map\", function(a) {
				\n  function b() {
					\n    if ($jscomp.ASSUME_NO_NATIVE_MAP || !a || \"function\" != typeof a || !a.prototype.entries || \"function\" != typeof Object.seal) {
					\n      return !1;
					\n    
				}
					\n    try {
						\n      var g = Object.seal({
						x:4
					}
					), f = new a($jscomp.makeIterator([[g, \"s\"]]));
						\n      if (\"s\" != f.get(g) || 1 != f.size || f.get({
						x:4
					}
						) || f.set({
						x:4
					}
						, \"t\") != f || 2 != f.size) {
						\n        return !1;
						\n      
					}
					\n      var h = f.entries(), k = h.next();
						\n      if (k.done || k.value[0] != g || \"s\" != k.value[1]) {
						\n        return !1;
						\n      
					}
					\n      k = h.next();
					\n      return k.done || 4 != k.value[0].x || \"t\" != k.value[1] || !h.next().done ? !1 : !0;
					\n    
				}
					 catch (n) {
					\n      return !1;
					\n    
				}
				\n  
			}
				\n  if ($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS) {
					\n    if (a && $jscomp.ES6_CONFORMANCE) {
					\n      return a;
					\n    
				}
				\n  
			}
				 else {
					\n    if (b()) {
					\n      return a;
					\n    
				}
				\n  
			}
				\n  var c = new WeakMap(), d = function(g) {
					\n    this.data_ = {
				};
				\n    this.head_ = m();
				\n    this.size = 0;
					\n    if (g) {
					\n      g = $jscomp.makeIterator(g);
					\n      for (var f;
					 !(f = g.next()).done;
						) {
						\n        f = f.value, this.set(f[0], f[1]);
						\n      
					}
					\n    
				}
				\n  
			};
				\n  d.prototype.set = function(g, f) {
				\n    g = 0 === g ? 0 : g;
				\n    var h = e(this, g);
				\n    h.list || (h.list = this.data_[h.id] = []);
					\n    h.entry ? h.entry.value = f : (h.entry = {
					next:this.head_, previous:this.head_.previous, head:this.head_, key:g, value:f,
				}
				, h.list.push(h.entry), this.head_.previous.next = h.entry, this.head_.previous = h.entry, this.size++);
				\n    return this;
				\n  
			};
				\n  d.prototype.delete = function(g) {
				\n    g = e(this, g);
				\n    return g.entry && g.list ? (g.list.splice(g.index, 1), g.list.length || delete this.data_[g.id], g.entry.previous.next = g.entry.next, g.entry.next.previous = g.entry.previous, g.entry.head = null, this.size--, !0) : !1;
				\n  
			};
				\n  d.prototype.clear = function() {
					\n    this.data_ = {
				};
				\n    this.head_ = this.head_.previous = m();
				\n    this.size = 0;
				\n  
			};
				\n  d.prototype.has = function(g) {
				\n    return !!e(this, g).entry;
				\n  
			};
				\n  d.prototype.get = function(g) {
				\n    return (g = e(this, g).entry) && g.value;
				\n  
			};
				\n  d.prototype.entries = function() {
					\n    return l(this, function(g) {
					\n      return [g.key, g.value];
					\n    
				}
				);
				\n  
			};
				\n  d.prototype.keys = function() {
					\n    return l(this, function(g) {
					\n      return g.key;
					\n    
				}
				);
				\n  
			};
				\n  d.prototype.values = function() {
					\n    return l(this, function(g) {
					\n      return g.value;
					\n    
				}
				);
				\n  
			};
				\n  d.prototype.forEach = function(g, f) {
				\n    for (var h = this.entries(), k;
				 !(k = h.next()).done;
					) {
					\n      k = k.value, g.call(f, k[1], k[0], this);
					\n    
				}
				\n  
			};
			\n  d.prototype[Symbol.iterator] = d.prototype.entries;
				\n  var e = function(g, f) {
				\n    var h = f && typeof f;
				\n    \"object\" == h || \"function\" == h ? c.has(f) ? h = c.get(f) : (h = \"\" + ++p, c.set(f, h)) : h = \"p_\" + f;
				\n    var k = g.data_[h];
					\n    if (k && $jscomp.owns(g.data_, h)) {
					\n      for (g = 0;
					 g < k.length;
						 g++) {
						\n        var n = k[g];
							\n        if (f !== f && n.key !== n.key || f === n.key) {
								\n          return {
								id:h, list:k, index:g, entry:n
							};
							\n        
						}
						\n      
					}
					\n    
				}
					\n    return {
					id:h, list:k, index:-1, entry:void 0
				};
				\n  
			}
				, l = function(g, f) {
				\n    var h = g.head_;
					\n    return $jscomp.iteratorPrototype(function() {
						\n      if (h) {
						\n        for (;
						 h.head != g.head_;
							) {
							\n          h = h.previous;
							\n        
						}
						\n        for (;
						 h.next != h.head;
							) {
								\n          return h = h.next, {
								done:!1, value:f(h)
							};
							\n        
						}
						\n        h = null;
						\n      
					}
						\n      return {
						done:!0, value:void 0
					};
					\n    
				}
				);
				\n  
			}
				, m = function() {
					\n    var g = {
				};
				\n    return g.previous = g.next = g.head = g;
				\n  
			}
			, p = 0;
			\n  return d;
			\n
		}
		, \"es6\", \"es3\");
			\nvar module$exports$omid$common$constants = {
				AdEventType:{
				IMPRESSION:\"impression\", LOADED:\"loaded\", GEOMETRY_CHANGE:\"geometryChange\", SESSION_START:\"sessionStart\", SESSION_ERROR:\"sessionError\", SESSION_FINISH:\"sessionFinish\", MEDIA:\"media\", VIDEO:\"video\", 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\", \nPLAYER_STATE_CHANGE:\"playerStateChange\", AD_USER_INTERACTION:\"adUserInteraction\", STATE_CHANGE:\"stateChange\",
			}
				, MediaEventType:{
				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\",
			}
				, ImpressionType:{
				DEFINED_BY_JAVASCRIPT:\"definedByJavaScript\", \nUNSPECIFIED:\"unspecified\", LOADED:\"loaded\", BEGIN_TO_RENDER:\"beginToRender\", ONE_PIXEL:\"onePixel\", VIEWABLE:\"viewable\", AUDIBLE:\"audible\", OTHER:\"other\",
			}
				, ErrorType:{
				GENERIC:\"generic\", VIDEO:\"video\", MEDIA:\"media\",
			}
				, AdSessionType:{
				NATIVE:\"native\", HTML:\"html\", JAVASCRIPT:\"javascript\",
			}
				, EventOwner:{
				NATIVE:\"native\", JAVASCRIPT:\"javascript\", NONE:\"none\",
			}
				, AccessMode:{
				FULL:\"full\", DOMAIN:\"domain\", LIMITED:\"limited\",
			}
				, AppState:{
				BACKGROUNDED:\"backgrounded\", FOREGROUNDED:\"foregrounded\",
			}
				, Environment:{
				APP:\"app\", \nWEB:\"web\",
			}
				, DeviceCategory:{
				CTV:\"ctv\", DESKTOP:\"desktop\", MOBILE:\"mobile\", OTHER:\"other\",
			}
				, InteractionType:{
				CLICK:\"click\", INVITATION_ACCEPT:\"invitationAccept\",
			}
				, CreativeType:{
				DEFINED_BY_JAVASCRIPT:\"definedByJavaScript\", HTML_DISPLAY:\"htmlDisplay\", NATIVE_DISPLAY:\"nativeDisplay\", VIDEO:\"video\", AUDIO:\"audio\",
			}
				, MediaType:{
				DISPLAY:\"display\", VIDEO:\"video\",
			}
				, Reason:{
				NOT_FOUND:\"notFound\", HIDDEN:\"hidden\", BACKGROUNDED:\"backgrounded\", VIEWPORT:\"viewport\", OBSTRUCTED:\"obstructed\", CLIPPED:\"clipped\", \nUNMEASURABLE:\"unmeasurable\", NO_WINDOW_FOCUS:\"noWindowFocus\", NO_OUTPUT_DEVICE:\"noOutputDevice\",
			}
				, 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\", \nCLIPS_TO_BOUNDS:\"clipsToBounds\", CHILD_VIEWS:\"childViews\", END_X:\"endX\", END_Y:\"endY\", OBSTRUCTIONS:\"obstructions\", OBSTRUCTION_CLASS:\"obstructionClass\", OBSTRUCTION_PURPOSE:\"obstructionPurpose\", OBSTRUCTION_REASON:\"obstructionReason\", PIXELS:\"pixels\", HAS_WINDOW_FOCUS:\"hasWindowFocus\",
			}
				, MeasurementStateChangeSource:{
				CONTAINER:\"container\", CREATIVE:\"creative\",
			}
				, ElementMarkup:{
				OMID_ELEMENT_CLASS_NAME:\"omid-element\",
			}
				, CommunicationType:{
				NONE:\"NONE\", DIRECT:\"DIRECT\", POST_MESSAGE:\"POST_MESSAGE\",
			}
				, \nOmidImplementer:{
				OMSDK:\"omsdk\",
			}
				, MessageMethod:{
				IDENTIFY_SERVICE_WINDOW:\"identifyServiceWindow\",
			}
		};
			\nvar 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) {
			\n  this.guid = a;
			\n  this.method = b;
			\n  this.version = c;
			\n  this.args = d;
			\n
		};
			\nmodule$exports$omid$common$InternalMessage.isValidSerializedMessage = function(a) {
			\n  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] || \n  void 0 !== a[module$contents$omid$common$InternalMessage_ARGS_KEY]);
			\n
		};
			\nmodule$exports$omid$common$InternalMessage.deserialize = function(a) {
			\n  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]);
			\n
		};
			\nmodule$exports$omid$common$InternalMessage.prototype.serialize = function() {
				\n  var a = {
			};
			\n  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);
			\n  void 0 !== this.args && (a[module$contents$omid$common$InternalMessage_ARGS_KEY] = this.args);
			\n  return a;
			\n
		};
			\nvar module$exports$omid$common$Communication = function(a) {
			\n  this.to = a;
			\n  this.communicationType_ = module$exports$omid$common$constants.CommunicationType.NONE;
			\n
		};
			\nmodule$exports$omid$common$Communication.prototype.sendMessage = function(a, b) {
			\n
		};
			\nmodule$exports$omid$common$Communication.prototype.handleMessage = function(a, b) {
				\n  if (this.onMessage) {
				\n    this.onMessage(a, b);
				\n  
			}
			\n
		};
			\nmodule$exports$omid$common$Communication.prototype.serialize = function(a) {
			\n  return JSON.stringify(a);
			\n
		};
			\nmodule$exports$omid$common$Communication.prototype.deserialize = function(a) {
			\n  return JSON.parse(a);
			\n
		};
			\nmodule$exports$omid$common$Communication.prototype.isDirectCommunication = function() {
			\n  return this.communicationType_ === module$exports$omid$common$constants.CommunicationType.DIRECT;
			\n
		};
			\nmodule$exports$omid$common$Communication.prototype.isCrossOrigin = function() {
			\n
		};
			\nvar module$exports$omid$common$argsChecker = {
		};
			\nfunction module$contents$omid$common$argsChecker_assertTruthyString(a, b) {
				\n  if (!b) {
				\n    throw Error(\"Value for \" + a + \" is undefined, null or blank.\");
				\n  
			}
				\n  if (\"string\" !== typeof b && !(b instanceof String)) {
				\n    throw Error(\"Value for \" + a + \" is not a string.\");
				\n  
			}
				\n  if (\"\" === b.trim()) {
				\n    throw Error(\"Value for \" + a + \" is empty string.\");
				\n  
			}
			\n
		}
			\nfunction module$contents$omid$common$argsChecker_assertNotNullObject(a, b) {
				\n  if (null == b) {
				\n    throw Error(\"Value for \" + a + \" is undefined or null\");
				\n  
			}
			\n
		}
			\nfunction module$contents$omid$common$argsChecker_assertNumber(a, b) {
				\n  if (null == b) {
				\n    throw Error(a + \" must not be null or undefined.\");
				\n  
			}
				\n  if (\"number\" !== typeof b || isNaN(b)) {
				\n    throw Error(\"Value for \" + a + \" is not a number\");
				\n  
			}
			\n
		}
			\nfunction module$contents$omid$common$argsChecker_assertNumberBetween(a, b, c, d) {
			\n  module$contents$omid$common$argsChecker_assertNumber(a, b);
				\n  if (b < c || b > d) {
				\n    throw Error(\"Value for \" + a + \" is outside the range [\" + c + \",\" + d + \"]\");
				\n  
			}
			\n
		}
			\nfunction module$contents$omid$common$argsChecker_assertFunction(a, b) {
				\n  if (!b) {
				\n    throw Error(a + \" must not be truthy.\");
				\n  
			}
			\n
		}
			\nfunction module$contents$omid$common$argsChecker_assertPositiveNumber(a, b) {
			\n  module$contents$omid$common$argsChecker_assertNumber(a, b);
				\n  if (0 > b) {
				\n    throw Error(a + \" must be a positive number.\");
				\n  
			}
			\n
		}
		\nmodule$exports$omid$common$argsChecker.assertTruthyString = module$contents$omid$common$argsChecker_assertTruthyString;
		\nmodule$exports$omid$common$argsChecker.assertNotNullObject = module$contents$omid$common$argsChecker_assertNotNullObject;
		\nmodule$exports$omid$common$argsChecker.assertNumber = module$contents$omid$common$argsChecker_assertNumber;
		\nmodule$exports$omid$common$argsChecker.assertNumberBetween = module$contents$omid$common$argsChecker_assertNumberBetween;
		\nmodule$exports$omid$common$argsChecker.assertFunction = module$contents$omid$common$argsChecker_assertFunction;
		\nmodule$exports$omid$common$argsChecker.assertPositiveNumber = module$contents$omid$common$argsChecker_assertPositiveNumber;
			\nvar module$exports$omid$common$exporter = {
		};
			\nfunction module$contents$omid$common$exporter_getOmidExports() {
			\n  return \"undefined\" === typeof omidExports ? null : omidExports;
			\n
		}
			\nfunction module$contents$omid$common$exporter_getOrCreateName(a, b) {
				\n  return a && (a[b] || (a[b] = {
			}
			));
			\n
		}
			\nfunction module$contents$omid$common$exporter_packageExport(a, b, c) {
				\n  if (c = void 0 === c ? module$contents$omid$common$exporter_getOmidExports() : c) {
				\n    a = a.split(\".\"), a.slice(0, a.length - 1).reduce(module$contents$omid$common$exporter_getOrCreateName, c)[a[a.length - 1]] = b;
				\n  
			}
			\n
		}
		\nmodule$exports$omid$common$exporter.packageExport = module$contents$omid$common$exporter_packageExport;
			\nvar module$exports$omid$sessionClient$Partner = function(a, b) {
			\n  module$contents$omid$common$argsChecker_assertTruthyString(\"Partner.name\", a);
			\n  module$contents$omid$common$argsChecker_assertTruthyString(\"Partner.version\", b);
			\n  this.name = a;
			\n  this.version = b;
			\n
		};
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.Partner\", module$exports$omid$sessionClient$Partner);
			\nvar module$exports$omid$sessionClient$VerificationScriptResource = function(a, b, c, d) {
			\n  d = void 0 === d ? module$exports$omid$common$constants.AccessMode.FULL : d;
			\n  module$contents$omid$common$argsChecker_assertTruthyString(\"VerificationScriptResource.resourceUrl\", a);
			\n  this.resourceUrl = a;
			\n  this.vendorKey = b;
			\n  this.verificationParameters = c;
			\n  this.accessMode = d;
			\n
		};
			\nmodule$exports$omid$sessionClient$VerificationScriptResource.prototype.toJSON = function() {
				\n  return {
				accessMode:this.accessMode, resourceUrl:this.resourceUrl, vendorKey:this.vendorKey, verificationParameters:this.verificationParameters,
			};
			\n
		};
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.VerificationScriptResource\", module$exports$omid$sessionClient$VerificationScriptResource);
			\nvar module$exports$omid$sessionClient$Context = function(a, b, c, d) {
			\n  c = void 0 === c ? null : c;
			\n  d = void 0 === d ? null : d;
			\n  module$contents$omid$common$argsChecker_assertNotNullObject(\"Context.partner\", a);
			\n  this.partner = a;
			\n  this.verificationScriptResources = b;
			\n  this.videoElement = this.slotElement = null;
			\n  this.contentUrl = c;
			\n  this.customReferenceData = d;
			\n  this.underEvaluation = !1;
			\n  this.serviceWindow = null;
			\n
		};
			\nmodule$exports$omid$sessionClient$Context.prototype.setVideoElement = function(a) {
			\n  module$contents$omid$common$argsChecker_assertNotNullObject(\"Context.videoElement\", a);
			\n  this.videoElement = a;
			\n
		};
			\nmodule$exports$omid$sessionClient$Context.prototype.setSlotElement = function(a) {
			\n  module$contents$omid$common$argsChecker_assertNotNullObject(\"Context.slotElement\", a);
			\n  this.slotElement = a;
			\n
		};
			\nmodule$exports$omid$sessionClient$Context.prototype.setServiceWindow = function(a) {
			\n  module$contents$omid$common$argsChecker_assertNotNullObject(\"Context.serviceWindow\", a);
			\n  this.serviceWindow = a;
			\n
		};
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.Context\", module$exports$omid$sessionClient$Context);
			\nvar module$exports$omid$common$OmidGlobalProvider = {
		};
			\nfunction module$contents$omid$common$OmidGlobalProvider_getOmidGlobal() {
				\n  if (\"undefined\" !== typeof omidGlobal && omidGlobal) {
				\n    return omidGlobal;
				\n  
			}
				\n  if (\"undefined\" !== typeof global && global) {
				\n    return global;
				\n  
			}
				\n  if (\"undefined\" !== typeof window && window) {
				\n    return window;
				\n  
			}
				\n  if (\"undefined\" !== typeof globalThis && globalThis) {
				\n    return globalThis;
				\n  
			}
			\n  var a = Function(\"return this\")();
				\n  if (a) {
				\n    return a;
				\n  
			}
			\n  throw Error(\"Could not determine global object context.\");
			\n
		}
		\nmodule$exports$omid$common$OmidGlobalProvider.omidGlobal = module$contents$omid$common$OmidGlobalProvider_getOmidGlobal();
			\nvar module$contents$omid$sessionClient$OmidJsSessionInterface_ExportedNodeKeys = {
			ROOT:\"omidSessionInterface\", AD_EVENTS:\"adEvents\", MEDIA_EVENTS:\"mediaEvents\",
		}
			, module$contents$omid$sessionClient$OmidJsSessionInterface_MethodNameMap = {
			sessionError:\"reportError\",
		}
			, module$contents$omid$sessionClient$OmidJsSessionInterface_MediaEventMethodNames = Object.keys(module$exports$omid$common$constants.MediaEventType).map(function(a) {
			\n  return module$exports$omid$common$constants.MediaEventType[a];
			\n
		}
			), module$contents$omid$sessionClient$OmidJsSessionInterface_AdEventMethodNames = [\"impressionOccurred\",], module$exports$omid$sessionClient$OmidJsSessionInterface = function(a) {
			\n  a = void 0 === a ? module$exports$omid$common$OmidGlobalProvider.omidGlobal : a;
			\n  this.interfaceRoot_ = a[module$contents$omid$sessionClient$OmidJsSessionInterface_ExportedNodeKeys.ROOT];
			\n
		};
			\nmodule$exports$omid$sessionClient$OmidJsSessionInterface.prototype.isSupported = function() {
			\n  return null != this.interfaceRoot_;
			\n
		};
			\nmodule$exports$omid$sessionClient$OmidJsSessionInterface.prototype.sendMessage = function(a, b, c) {
			\n  \"registerSessionObserver\" == a && (c = [b]);
			\n  module$contents$omid$sessionClient$OmidJsSessionInterface_MethodNameMap[a] && (a = module$contents$omid$sessionClient$OmidJsSessionInterface_MethodNameMap[a]);
			\n  b = this.interfaceRoot_;
			\n  0 <= module$contents$omid$sessionClient$OmidJsSessionInterface_AdEventMethodNames.indexOf(a) && (b = b[module$contents$omid$sessionClient$OmidJsSessionInterface_ExportedNodeKeys.AD_EVENTS]);
			\n  0 <= module$contents$omid$sessionClient$OmidJsSessionInterface_MediaEventMethodNames.indexOf(a) && (b = b[module$contents$omid$sessionClient$OmidJsSessionInterface_ExportedNodeKeys.MEDIA_EVENTS]);
			\n  b = b[a];
				\n  if (!b) {
				\n    throw Error(\"Unrecognized method name: \" + a + \".\");
				\n  
			}
			\n  b.apply(null, $jscomp.arrayFromIterable(c));
			\n
		};
			\nvar module$exports$omid$common$Rectangle = function(a, b, c, d) {
			\n  this.x = a;
			\n  this.y = b;
			\n  this.width = c;
			\n  this.height = d;
			\n
		};
			\nvar module$exports$omid$common$guid = {
		};
			\nfunction module$contents$omid$common$guid_generateGuid() {
				\n  return \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(\/[xy]\/g, function(a) {
				\n    var b = 16 * Math.random() | 0;
				\n    a = \"y\" === a ? (b & 3 | 8).toString(16) : b.toString(16);
				\n    return a;
				\n  
			}
			);
			\n
		}
		\nmodule$exports$omid$common$guid.generateGuid = module$contents$omid$common$guid_generateGuid;
			\nvar module$exports$omid$common$logger = {
		};
			\nfunction module$contents$omid$common$logger_error() {
			\n  var a = $jscomp.getRestArguments.apply(0, arguments);
				\n  module$contents$omid$common$logger_executeLog(function() {
				\n    throw new (Function.prototype.bind.apply(Error, [null, \"Could not complete the test successfully - \"].concat($jscomp.arrayFromIterable(a))))();
				\n  
			}
				, function() {
				\n    return console.error.apply(console, $jscomp.arrayFromIterable(a));
				\n  
			}
			);
			\n
		}
			\nfunction module$contents$omid$common$logger_debug() {
			\n  var a = $jscomp.getRestArguments.apply(0, arguments);
				\n  module$contents$omid$common$logger_executeLog(function() {
				\n  
			}
				, function() {
				\n    return console.error.apply(console, $jscomp.arrayFromIterable(a));
				\n  
			}
			);
			\n
		}
			\nfunction module$contents$omid$common$logger_executeLog(a, b) {
			\n  \"undefined\" !== typeof jasmine && jasmine ? a() : \"undefined\" !== typeof console && console && console.error && b();
			\n
		}
		\nmodule$exports$omid$common$logger.error = module$contents$omid$common$logger_error;
		\nmodule$exports$omid$common$logger.debug = module$contents$omid$common$logger_debug;
			\nvar module$exports$omid$common$eventTypedefs = {
		};
			\nvar module$exports$omid$common$version = {
			ApiVersion:\"1.0\", Version:\"1.4.8-iab4174\"
		};
			\nvar module$exports$omid$common$VersionUtils = {
		}
		, module$contents$omid$common$VersionUtils_SEMVER_DIGITS_NUMBER = 3;
			\nfunction module$contents$omid$common$VersionUtils_isValidVersion(a) {
			\n  return \/\\d+\\.\\d+\\.\\d+(-.*)?\/.test(a);
			\n
		}
			\nfunction module$contents$omid$common$VersionUtils_versionGreaterOrEqual(a, b) {
			\n  a = a.split(\"-\")[0].split(\".\");
			\n  b = b.split(\"-\")[0].split(\".\");
			\n  for (var c = 0;
			 c < module$contents$omid$common$VersionUtils_SEMVER_DIGITS_NUMBER;
				 c++) {
				\n    var d = parseInt(a[c], 10), e = parseInt(b[c], 10);
					\n    if (d > e) {
					\n      break;
					\n    
				}
					 else if (d < e) {
					\n      return !1;
					\n    
				}
				\n  
			}
			\n  return !0;
			\n
		}
		\nmodule$exports$omid$common$VersionUtils.isValidVersion = module$contents$omid$common$VersionUtils_isValidVersion;
		\nmodule$exports$omid$common$VersionUtils.versionGreaterOrEqual = module$contents$omid$common$VersionUtils_versionGreaterOrEqual;
			\nvar module$exports$omid$common$ArgsSerDe = {
		}
		, module$contents$omid$common$ArgsSerDe_ARGS_NOT_SERIALIZED_VERSION = \"1.0.3\";
			\nfunction module$contents$omid$common$ArgsSerDe_serializeMessageArgs(a, b) {
			\n  return module$contents$omid$common$VersionUtils_isValidVersion(a) && module$contents$omid$common$VersionUtils_versionGreaterOrEqual(a, module$contents$omid$common$ArgsSerDe_ARGS_NOT_SERIALIZED_VERSION) ? b : JSON.stringify(b);
			\n
		}
			\nfunction module$contents$omid$common$ArgsSerDe_deserializeMessageArgs(a, b) {
			\n  return module$contents$omid$common$VersionUtils_isValidVersion(a) && module$contents$omid$common$VersionUtils_versionGreaterOrEqual(a, module$contents$omid$common$ArgsSerDe_ARGS_NOT_SERIALIZED_VERSION) ? b ? b : [] : b && \"string\" === typeof b ? JSON.parse(b) : [];
			\n
		}
		\nmodule$exports$omid$common$ArgsSerDe.serializeMessageArgs = module$contents$omid$common$ArgsSerDe_serializeMessageArgs;
		\nmodule$exports$omid$common$ArgsSerDe.deserializeMessageArgs = module$contents$omid$common$ArgsSerDe_deserializeMessageArgs;
			\nvar module$exports$omid$common$serviceMethodUtils = {
		}
			, module$contents$omid$common$serviceMethodUtils_ServiceMethodPrefix = {
			SESSION_SERVICE:\"SessionService.\", VERIFICATION_SERVICE:\"VerificationService.\",
		};
			\nfunction module$contents$omid$common$serviceMethodUtils_getPrefixedSessionServiceMethod(a) {
			\n  return module$contents$omid$common$serviceMethodUtils_getPrefixedMethod(a, module$contents$omid$common$serviceMethodUtils_ServiceMethodPrefix.SESSION_SERVICE);
			\n
		}
			\nfunction module$contents$omid$common$serviceMethodUtils_getUnprefixedSessionServiceMethod(a) {
			\n  return module$contents$omid$common$serviceMethodUtils_getUnprefixedMethod(a, module$contents$omid$common$serviceMethodUtils_ServiceMethodPrefix.SESSION_SERVICE);
			\n
		}
			\nfunction module$contents$omid$common$serviceMethodUtils_isPrefixedSessionServiceMethod(a) {
			\n  return null != module$contents$omid$common$serviceMethodUtils_getUnprefixedSessionServiceMethod(a);
			\n
		}
			\nfunction module$contents$omid$common$serviceMethodUtils_getPrefixedVerificationServiceMethod(a) {
			\n  return module$contents$omid$common$serviceMethodUtils_getPrefixedMethod(a, module$contents$omid$common$serviceMethodUtils_ServiceMethodPrefix.VERIFICATION_SERVICE);
			\n
		}
			\nfunction module$contents$omid$common$serviceMethodUtils_getUnprefixedVerificationServiceMethod(a) {
			\n  return module$contents$omid$common$serviceMethodUtils_getUnprefixedMethod(a, module$contents$omid$common$serviceMethodUtils_ServiceMethodPrefix.VERIFICATION_SERVICE);
			\n
		}
			\nfunction module$contents$omid$common$serviceMethodUtils_isPrefixedVerificationServiceMethod(a) {
			\n  return null != module$contents$omid$common$serviceMethodUtils_getUnprefixedVerificationServiceMethod(a);
			\n
		}
			\nfunction module$contents$omid$common$serviceMethodUtils_getPrefixedMethod(a, b) {
			\n  return b + a;
			\n
		}
			\nfunction module$contents$omid$common$serviceMethodUtils_getUnprefixedMethod(a, b) {
			\n  return (a = a.match(new RegExp(\"^\" + b + \"(.*)\"))) && a[1];
			\n
		}
		\nmodule$exports$omid$common$serviceMethodUtils.getPrefixedSessionServiceMethod = module$contents$omid$common$serviceMethodUtils_getPrefixedSessionServiceMethod;
		\nmodule$exports$omid$common$serviceMethodUtils.getPrefixedVerificationServiceMethod = module$contents$omid$common$serviceMethodUtils_getPrefixedVerificationServiceMethod;
		\nmodule$exports$omid$common$serviceMethodUtils.getUnprefixedSessionServiceMethod = module$contents$omid$common$serviceMethodUtils_getUnprefixedSessionServiceMethod;
		\nmodule$exports$omid$common$serviceMethodUtils.getUnprefixedVerificationServiceMethod = module$contents$omid$common$serviceMethodUtils_getUnprefixedVerificationServiceMethod;
		\nmodule$exports$omid$common$serviceMethodUtils.isPrefixedSessionServiceMethod = module$contents$omid$common$serviceMethodUtils_isPrefixedSessionServiceMethod;
		\nmodule$exports$omid$common$serviceMethodUtils.isPrefixedVerificationServiceMethod = module$contents$omid$common$serviceMethodUtils_isPrefixedVerificationServiceMethod;
			\nvar module$exports$omid$common$windowUtils = {
		};
			\nfunction module$contents$omid$common$windowUtils_isValidWindow(a) {
			\n  return null != a && \"undefined\" !== typeof a.top && null != a.top;
			\n
		}
			\nfunction module$contents$omid$common$windowUtils_isCrossOrigin(a) {
				\n  if (a === module$exports$omid$common$OmidGlobalProvider.omidGlobal) {
				\n    return !1;
				\n  
			}
				\n  try {
					\n    if (\"undefined\" === typeof a.location.hostname) {
					\n      return !0;
					\n    
				}
				\n    module$contents$omid$common$windowUtils_isSameOriginForIE(a);
				\n  
			}
				 catch (b) {
				\n    return !0;
				\n  
			}
			\n  return !1;
			\n
		}
			\nfunction module$contents$omid$common$windowUtils_isSameOriginForIE(a) {
			\n  return \"\" === a.x || \"\" !== a.x;
			\n
		}
			\nfunction module$contents$omid$common$windowUtils_resolveGlobalContext(a) {
			\n  \"undefined\" === typeof a && \"undefined\" !== typeof window && window && (a = window);
			\n  return module$contents$omid$common$windowUtils_isValidWindow(a) ? a : module$exports$omid$common$OmidGlobalProvider.omidGlobal;
			\n
		}
			\nfunction module$contents$omid$common$windowUtils_resolveTopWindowContext(a) {
			\n  return module$contents$omid$common$windowUtils_isValidWindow(a) ? a.top : module$exports$omid$common$OmidGlobalProvider.omidGlobal;
			\n
		}
			\nfunction module$contents$omid$common$windowUtils_isTopWindowAccessible(a) {
				\n  try {
				\n    return a.top.location.href ? !0 : !1;
				\n  
			}
				 catch (b) {
				\n    return !1;
				\n  
			}
			\n
		}
			\nfunction module$contents$omid$common$windowUtils_removeDomElements(a) {
			\n  a.type === module$exports$omid$common$constants.AdEventType.SESSION_START && (\"undefined\" !== typeof a.data.context.videoElement && (a.data.context.videoElement = \"DOM Video Element - Present but not parsed to avoid parse error\"), \"undefined\" !== typeof a.data.context.slotElement && (a.data.context.slotElement = \"DOM Slot Element - Present but not parsed to avoid parse error\"));
			\n  return a;
			\n
		}
			\nfunction module$contents$omid$common$windowUtils_evaluatePageUrl(a) {
				\n  if (!module$contents$omid$common$windowUtils_isValidWindow(a)) {
				\n    return null;
				\n  
			}
				\n  try {
				\n    var b = a.top;
				\n    return module$contents$omid$common$windowUtils_isCrossOrigin(b) ? null : b.location.href;
				\n  
			}
				 catch (c) {
				\n    return null;
				\n  
			}
			\n
		}
		\nmodule$exports$omid$common$windowUtils.evaluatePageUrl = module$contents$omid$common$windowUtils_evaluatePageUrl;
		\nmodule$exports$omid$common$windowUtils.isCrossOrigin = module$contents$omid$common$windowUtils_isCrossOrigin;
		\nmodule$exports$omid$common$windowUtils.removeDomElements = module$contents$omid$common$windowUtils_removeDomElements;
		\nmodule$exports$omid$common$windowUtils.resolveGlobalContext = module$contents$omid$common$windowUtils_resolveGlobalContext;
		\nmodule$exports$omid$common$windowUtils.resolveTopWindowContext = module$contents$omid$common$windowUtils_resolveTopWindowContext;
		\nmodule$exports$omid$common$windowUtils.isTopWindowAccessible = module$contents$omid$common$windowUtils_isTopWindowAccessible;
			\nvar module$exports$omid$common$DirectCommunication = function(a) {
			\n  module$exports$omid$common$Communication.call(this, a);
			\n  this.communicationType_ = module$exports$omid$common$constants.CommunicationType.DIRECT;
			\n  this.handleExportedMessage = module$exports$omid$common$DirectCommunication.prototype.handleExportedMessage.bind(this);
			\n
		};
		\n$jscomp.inherits(module$exports$omid$common$DirectCommunication, module$exports$omid$common$Communication);
			\nmodule$exports$omid$common$DirectCommunication.prototype.sendMessage = function(a, b) {
			\n  b = void 0 === b ? this.to : b;
				\n  if (!b) {
				\n    throw Error(\"Message destination must be defined at construction time or when sending the message.\");
				\n  
			}
			\n  b.handleExportedMessage(a.serialize(), this);
			\n
		};
			\nmodule$exports$omid$common$DirectCommunication.prototype.handleExportedMessage = function(a, b) {
			\n  module$exports$omid$common$InternalMessage.isValidSerializedMessage(a) && this.handleMessage(module$exports$omid$common$InternalMessage.deserialize(a), b);
			\n
		};
			\nmodule$exports$omid$common$DirectCommunication.prototype.isCrossOrigin = function() {
			\n  return !1;
			\n
		};
			\nvar module$exports$omid$common$PostMessageCommunication = function(a, b) {
			\n  b = void 0 === b ? module$exports$omid$common$OmidGlobalProvider.omidGlobal : b;
			\n  module$exports$omid$common$Communication.call(this, b);
			\n  var c = this;
			\n  this.communicationType_ = module$exports$omid$common$constants.CommunicationType.POST_MESSAGE;
				\n  a.addEventListener(\"message\", function(d) {
					\n    if (\"object\" === typeof d.data) {
					\n      var e = d.data;
					\n      module$exports$omid$common$InternalMessage.isValidSerializedMessage(e) && (e = module$exports$omid$common$InternalMessage.deserialize(e), d.source && c.handleMessage(e, d.source));
					\n    
				}
				\n  
			}
			);
			\n
		};
		\n$jscomp.inherits(module$exports$omid$common$PostMessageCommunication, module$exports$omid$common$Communication);
			\nmodule$exports$omid$common$PostMessageCommunication.isCompatibleContext = function(a) {
			\n  return !!(a && a.addEventListener && a.postMessage);
			\n
		};
			\nmodule$exports$omid$common$PostMessageCommunication.prototype.sendMessage = function(a, b) {
			\n  b = void 0 === b ? this.to : b;
				\n  if (!b) {
				\n    throw Error(\"Message destination must be defined at construction time or when sending the message.\");
				\n  
			}
			\n  b.postMessage(a.serialize(), \"*\");
			\n
		};
			\nmodule$exports$omid$common$PostMessageCommunication.prototype.isCrossOrigin = function() {
			\n  return this.to ? module$contents$omid$common$windowUtils_isCrossOrigin(this.to) : !0;
			\n
		};
			\nvar module$exports$omid$common$DetectOmid = {
				OMID_PRESENT_FRAME_NAME:\"omid_v1_present\", OMID_PRESENT_FRAME_NAME_WEB:\"omid_v1_present_web\", OMID_PRESENT_FRAME_NAME_APP:\"omid_v1_present_app\", getEnvironmentIframeName:function(a) {
					\n  var b = {
				};
				\n  return (b[module$exports$omid$common$constants.Environment.APP] = module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME_APP, b[module$exports$omid$common$constants.Environment.WEB] = module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME_WEB, b)[a];
				\n
			}
		};
			\nfunction module$contents$omid$common$DetectOmid_isIframePresent(a, b) {
				\n  try {
				\n    return a.frames && !!a.frames[b];
				\n  
			}
				 catch (c) {
				\n    return !1;
				\n  
			}
			\n
		}
			\nmodule$exports$omid$common$DetectOmid.isOmidPresent = function(a) {
				\n  return [module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME, module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME_WEB, module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME_APP,].some(function(b) {
				\n    return module$contents$omid$common$DetectOmid_isIframePresent(a, b);
				\n  
			}
			);
			\n
		};
			\nmodule$exports$omid$common$DetectOmid.getOmidEnvironment = function(a) {
			\n  for (var b = $jscomp.makeIterator(Object.values(module$exports$omid$common$constants.Environment)), c = b.next();
			 !c.done;
				 c = b.next()) {
				\n    c = c.value;
				\n    var d = module$exports$omid$common$DetectOmid.getEnvironmentIframeName(c);
					\n    if (module$contents$omid$common$DetectOmid_isIframePresent(a, d)) {
					\n      return c;
					\n    
				}
				\n  
			}
			\n  return null;
			\n
		};
			\nfunction module$contents$omid$common$DetectOmid_writePresenceIframe_(a, b) {
			\n  a.'<iframe style=\"display:none\" id=\"' + (b + '\" name=\"' + b + '\" sandbox><\/iframe>'));
			\n
		}
			\nmodule$exports$omid$common$DetectOmid.declareOmidPresence = function(a, b) {
				\n  a.frames && a.document && ![module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME, module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME_WEB, module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME_APP,].some(function(c) {
				\n    return !!a.frames[c];
				\n  
			}
			) && (null == a.document.body && module$exports$omid$common$DetectOmid.isMutationObserverAvailable_(a) ? module$exports$omid$common$DetectOmid.registerMutationObserver_(a, b) : (b = module$exports$omid$common$DetectOmid.getEnvironmentIframeName(b), a.document.body ? (module$exports$omid$common$DetectOmid.appendPresenceIframe_(a, module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME), module$exports$omid$common$DetectOmid.appendPresenceIframe_(a, b)) : (module$contents$omid$common$DetectOmid_writePresenceIframe_(a, \n  module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME), module$contents$omid$common$DetectOmid_writePresenceIframe_(a, b))));
			\n
		};
			\nmodule$exports$omid$common$DetectOmid.appendPresenceIframe_ = function(a, b) {
			\n  var c = a.document.createElement(\"iframe\");
			\n  c.id = b;
			\n  c.name = b;
			\n  c.style.display = \"none\";
			\n  c.sandbox = \"\";
			\n  a.document.body.appendChild(c);
			\n
		};
			\nmodule$exports$omid$common$DetectOmid.isMutationObserverAvailable_ = function(a) {
			\n  return \"MutationObserver\" in a;
			\n
		};
			\nmodule$exports$omid$common$DetectOmid.registerMutationObserver_ = function(a, b) {
				\n  var c = new MutationObserver(function(d) {
					\n    d.forEach(function(e) {
					\n      \"BODY\" === e.addedNodes[0].nodeName && (e = module$exports$omid$common$DetectOmid.getEnvironmentIframeName(b), module$exports$omid$common$DetectOmid.appendPresenceIframe_(a, module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME), module$exports$omid$common$DetectOmid.appendPresenceIframe_(a, e), c.disconnect());
					\n    
				}
				);
				\n  
			}
			);
				\n  c.observe(a.document.documentElement, {
				childList:!0
			}
			);
			\n
		};
			\nvar 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 = [\"omidVerificationProperties\", \"serviceWindow\"];
			\nfunction module$contents$omid$common$serviceCommunication_getValueForKeypath(a, b) {
				\n  return b.reduce(function(c, d) {
				\n    return c && c[d];
				\n  
			}
			, a);
			\n
		}
			\nfunction module$contents$omid$common$serviceCommunication_startServiceCommunication(a, b, c, d) {
				\n  if (!module$contents$omid$common$windowUtils_isCrossOrigin(b)) {
					\n    try {
					\n      var e = module$contents$omid$common$serviceCommunication_getValueForKeypath(b, c);
						\n      if (e) {
						\n        return new module$exports$omid$common$DirectCommunication(e);
						\n      
					}
					\n    
				}
					 catch (l) {
					\n    
				}
				\n  
			}
			\n  return d(b) ? new module$exports$omid$common$PostMessageCommunication(a, b) : null;
			\n
		}
			\nfunction module$contents$omid$common$serviceCommunication_startServiceCommunicationFromCandidates(a, b, c, d) {
			\n  b = $jscomp.makeIterator(b);
			\n  for (var e = b.next();
			 !e.done;
				 e = b.next()) {
					\n    if (e = module$contents$omid$common$serviceCommunication_startServiceCommunication(a, e.value, c, d)) {
					\n      return e;
					\n    
				}
				\n  
			}
			\n  return null;
			\n
		}
			\nfunction module$contents$omid$common$serviceCommunication_startSessionServiceCommunication(a, b, c) {
			\n  c = void 0 === c ? module$exports$omid$common$DetectOmid.isOmidPresent : c;
			\n  var d = [a, module$contents$omid$common$windowUtils_resolveTopWindowContext(a)];
			\n  b && d.unshift(b);
			\n  return module$contents$omid$common$serviceCommunication_startServiceCommunicationFromCandidates(a, d, module$contents$omid$common$serviceCommunication_EXPORTED_SESSION_COMMUNICATION_NAME, c);
			\n
		}
			\nfunction module$contents$omid$common$serviceCommunication_startVerificationServiceCommunication(a, b) {
			\n  b = void 0 === b ? module$exports$omid$common$DetectOmid.isOmidPresent : b;
			\n  var c = [], d = module$contents$omid$common$serviceCommunication_getValueForKeypath(a, module$contents$omid$common$serviceCommunication_EXPORTED_SERVICE_WINDOW_NAME);
			\n  d && c.push(d);
			\n  c.push(module$contents$omid$common$windowUtils_resolveTopWindowContext(a));
			\n  return module$contents$omid$common$serviceCommunication_startServiceCommunicationFromCandidates(a, c, module$contents$omid$common$serviceCommunication_EXPORTED_VERIFICATION_COMMUNICATION_NAME, b);
			\n
		}
		\nmodule$exports$omid$common$serviceCommunication.startSessionServiceCommunication = module$contents$omid$common$serviceCommunication_startSessionServiceCommunication;
		\nmodule$exports$omid$common$serviceCommunication.startVerificationServiceCommunication = module$contents$omid$common$serviceCommunication_startVerificationServiceCommunication;
			\nvar module$contents$omid$sessionClient$AdSession_SESSION_CLIENT_VERSION = module$exports$omid$common$version.Version, module$exports$omid$sessionClient$AdSession = function(a, b, c) {
			\n  module$contents$omid$common$argsChecker_assertNotNullObject(\"AdSession.context\", a);
			\n  this.adSessionId_ = module$contents$omid$common$guid_generateGuid();
			\n  this.context_ = a;
			\n  this.impressionOccurred_ = !1;
			\n  var d = this.context_.serviceWindow || void 0;
			\n  this.communication_ = b || module$contents$omid$common$serviceCommunication_startSessionServiceCommunication(module$contents$omid$common$windowUtils_resolveGlobalContext(), d);
			\n  this.sessionInterface_ = c || new module$exports$omid$sessionClient$OmidJsSessionInterface();
			\n  this.isSessionRunning_ = this.hasMediaEvents_ = this.hasAdEvents_ = !1;
			\n  this.impressionType_ = this.creativeType_ = null;
			\n  this.creativeLoaded_ = !1;
				\n  this.callbackMap_ = {
			};
			\n  this.communication_ && (this.communication_.onMessage = this.handleInternalMessage_.bind(this));
			\n  this.setClientInfo_();
			\n  this.injectVerificationScripts_(a.verificationScriptResources);
			\n  this.sendSlotElement_(a.slotElement);
			\n  this.sendVideoElement_(a.videoElement);
			\n  this.sendContentUrl_(a.contentUrl);
			\n  this.watchSessionEvents_();
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.getAdSessionId = function() {
			\n  return this.adSessionId_;
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.setCreativeType = function(a) {
				\n  if (a === module$exports$omid$common$constants.CreativeType.DEFINED_BY_JAVASCRIPT) {
				\n    throw Error(\"Creative type cannot be redefined with value \" + module$exports$omid$common$constants.CreativeType.DEFINED_BY_JAVASCRIPT);
				\n  
			}
				\n  if (this.impressionOccurred_) {
				\n    throw Error(\"Impression has already occurred\");
				\n  
			}
				\n  if (this.creativeLoaded_) {
				\n    throw Error(\"Creative has already loaded\");
				\n  
			}
				\n  if (this.creativeType_ && this.creativeType_ !== module$exports$omid$common$constants.CreativeType.DEFINED_BY_JAVASCRIPT) {
				\n    throw Error(\"Creative type cannot be redefined\");
				\n  
			}
				\n  if (void 0 === this.creativeType_) {
				\n    throw Error(\"Native integration is using OMID 1.2 or earlier\");
				\n  
			}
			\n  this.sendOneWayMessage(\"setCreativeType\", a, this.adSessionId_);
			\n  this.creativeType_ = a;
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.setImpressionType = function(a) {
				\n  if (a === module$exports$omid$common$constants.ImpressionType.DEFINED_BY_JAVASCRIPT) {
				\n    throw Error(\"Impression type cannot be redefined with value \" + module$exports$omid$common$constants.ImpressionType.DEFINED_BY_JAVASCRIPT);
				\n  
			}
				\n  if (this.impressionOccurred_) {
				\n    throw Error(\"Impression has already occurred\");
				\n  
			}
				\n  if (this.creativeLoaded_) {
				\n    throw Error(\"Creative has already loaded\");
				\n  
			}
				\n  if (this.impressionType_ && this.impressionType_ !== module$exports$omid$common$constants.ImpressionType.DEFINED_BY_JAVASCRIPT) {
				\n    throw Error(\"Impression type cannot be redefined\");
				\n  
			}
				\n  if (void 0 === this.impressionType_) {
				\n    throw Error(\"Native integration is using OMID 1.2 or earlier\");
				\n  
			}
			\n  this.sendOneWayMessage(\"setImpressionType\", a, this.adSessionId_);
			\n  this.impressionType_ = a;
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.isSupported = function() {
			\n  return !!this.communication_ || this.sessionInterface_.isSupported();
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.isSendingElementsSupported_ = function() {
			\n  return this.communication_ ? this.communication_.isDirectCommunication() : this.sessionInterface_.isSupported();
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.registerSessionObserver = function(a) {
			\n  this.sendMessage(\"registerSessionObserver\", a, this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.start = function() {
				\n  this.sendOneWayMessage(\"startSession\", {
				customReferenceData:this.context_.customReferenceData, underEvaluation:this.context_.underEvaluation,
			}
			, this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.finish = function() {
			\n  this.sendOneWayMessage(\"finishSession\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.error = function(a, b) {
			\n  this.sendOneWayMessage(\"sessionError\", a, b, this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.registerAdEvents = function() {
				\n  if (this.hasAdEvents_) {
				\n    throw Error(\"AdEvents already registered.\");
				\n  
			}
			\n  this.hasAdEvents_ = !0;
			\n  this.sendOneWayMessage(\"registerAdEvents\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.registerMediaEvents = function() {
				\n  if (this.hasMediaEvents_) {
				\n    throw Error(\"MediaEvents already registered.\");
				\n  
			}
			\n  this.hasMediaEvents_ = !0;
			\n  this.sendOneWayMessage(\"registerMediaEvents\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.sendOneWayMessage = function(a) {
			\n  var b = $jscomp.getRestArguments.apply(1, arguments);
			\n  this.sendMessage.apply(this, [a, null].concat($jscomp.arrayFromIterable(b)));
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.sendMessage = function(a, b) {
			\n  var c = $jscomp.getRestArguments.apply(2, arguments);
			\n  this.communication_ ? this.sendInternalMessage_(a, b, c) : this.sessionInterface_.isSupported() && this.sendInterfaceMessage_(a, b, c);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.sendInternalMessage_ = function(a, b, c) {
			\n  var d = module$contents$omid$common$guid_generateGuid();
			\n  b && (this.callbackMap_[d] = b);
			\n  a = new module$exports$omid$common$InternalMessage(d, module$contents$omid$common$serviceMethodUtils_getPrefixedSessionServiceMethod(a), module$exports$omid$common$version.Version, module$contents$omid$common$ArgsSerDe_serializeMessageArgs(module$exports$omid$common$version.Version, c));
			\n  this.communication_.sendMessage(a);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.handleInternalMessage_ = function(a, b) {
			\n  b = a.method;
			\n  var c = a.guid;
			\n  a = a.args;
				\n  if (\"response\" === b && this.callbackMap_[c]) {
				\n    var d = module$contents$omid$common$ArgsSerDe_deserializeMessageArgs(module$exports$omid$common$version.Version, a);
				\n    this.callbackMap_[c].apply(this, d);
				\n  
			}
			\n  \"error\" === b && window.console && module$contents$omid$common$logger_error(a);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.sendInterfaceMessage_ = function(a, b, c) {
				\n  try {
				\n    this.sessionInterface_.sendMessage(a, b, c);
				\n  
			}
				 catch (d) {
				\n    module$contents$omid$common$logger_error(\"Failed to communicate with SessionInterface with error:\"), module$contents$omid$common$logger_error(d);
				\n  
			}
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.assertSessionRunning = function() {
				\n  if (!this.isSessionRunning_) {
				\n    throw Error(\"Session not started.\");
				\n  
			}
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.impressionOccurred = function() {
				\n  if (this.creativeType_ === module$exports$omid$common$constants.CreativeType.DEFINED_BY_JAVASCRIPT) {
				\n    throw Error(\"Creative type has not been redefined\");
				\n  
			}
				\n  if (this.impressionType_ === module$exports$omid$common$constants.ImpressionType.DEFINED_BY_JAVASCRIPT) {
				\n    throw Error(\"Impression type has not been redefined\");
				\n  
			}
			\n  this.impressionOccurred_ = !0;
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.creativeLoaded = function() {
				\n  if (this.creativeType_ === module$exports$omid$common$constants.CreativeType.DEFINED_BY_JAVASCRIPT) {
				\n    throw Error(\"Creative type has not been redefined\");
				\n  
			}
				\n  if (this.impressionType_ === module$exports$omid$common$constants.ImpressionType.DEFINED_BY_JAVASCRIPT) {
				\n    throw Error(\"Impression type has not been redefined\");
				\n  
			}
			\n  this.creativeLoaded_ = !0;
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.setClientInfo_ = function() {
			\n  this.sendOneWayMessage(\"setClientInfo\", module$exports$omid$common$version.Version, this.context_.partner.name, this.context_.partner.version, this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.injectVerificationScripts_ = function(a) {
				\n  a && (a = a.map(function(b) {
				\n    return b.toJSON();
				\n  
			}
			), this.sendOneWayMessage(\"injectVerificationScriptResources\", a, this.adSessionId_));
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.sendSlotElement_ = function(a) {
			\n  this.sendElement_(a, \"setSlotElement\");
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.sendVideoElement_ = function(a) {
			\n  this.sendElement_(a, \"setVideoElement\");
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.sendElement_ = function(a, b) {
			\n  a && (this.isSendingElementsSupported_() ? this.sendOneWayMessage(b, a, this.adSessionId_) : this.error(module$exports$omid$common$constants.ErrorType.GENERIC, \"Session Client \" + b + \" called when communication is cross-origin\"));
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.sendContentUrl_ = function(a) {
			\n  a && this.sendOneWayMessage(\"setContentUrl\", a, this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.setElementBounds = function(a) {
			\n  module$contents$omid$common$argsChecker_assertNotNullObject(\"AdSession.elementBounds\", a);
			\n  this.sendOneWayMessage(\"setElementBounds\", a, this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdSession.prototype.watchSessionEvents_ = function() {
			\n  var a = this;
				\n  this.registerSessionObserver(function(b) {
				\n    b.type === module$exports$omid$common$constants.AdEventType.SESSION_START && (a.isSessionRunning_ = !0, a.creativeType_ = b.data.creativeType, a.impressionType_ = b.data.impressionType);
				\n    b.type === module$exports$omid$common$constants.AdEventType.SESSION_FINISH && (a.isSessionRunning_ = !1);
				\n  
			}
			);
			\n
		};
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.AdSession\", module$exports$omid$sessionClient$AdSession);
			\nvar module$exports$omid$common$VastProperties = function(a, b, c, d) {
			\n  this.isSkippable = a;
			\n  this.skipOffset = b;
			\n  this.isAutoPlay = c;
			\n  this.position = d;
			\n
		};
			\nmodule$exports$omid$common$VastProperties.prototype.toJSON = function() {
				\n  return {
				isSkippable:this.isSkippable, skipOffset:this.skipOffset, isAutoPlay:this.isAutoPlay, position:this.position,
			};
			\n
		};
			\nvar module$exports$omid$sessionClient$AdEvents = function(a) {
			\n  module$contents$omid$common$argsChecker_assertNotNullObject(\"AdEvents.adSession\", a);
			\n  this.adSessionId_ = a.getAdSessionId();
				\n  try {
				\n    a.registerAdEvents(), this.adSession = a;
				\n  
			}
				 catch (b) {
				\n    throw Error(\"AdSession already has an ad events instance registered\");
				\n  
			}
			\n
		};
			\nmodule$exports$omid$sessionClient$AdEvents.prototype.impressionOccurred = function() {
			\n  this.adSession.assertSessionRunning();
			\n  this.adSession.impressionOccurred();
			\n  this.adSession.sendOneWayMessage(\"impressionOccurred\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$AdEvents.prototype.loaded = function(a) {
			\n  a = void 0 === a ? null : a;
			\n  this.adSession.creativeLoaded();
			\n  a = a ? a.toJSON() : null;
			\n  this.adSession.sendOneWayMessage(\"loaded\", a, this.adSessionId_);
			\n
		};
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.AdEvents\", module$exports$omid$sessionClient$AdEvents);
			\nvar module$exports$omid$sessionClient$MediaEvents = function(a) {
			\n  module$contents$omid$common$argsChecker_assertNotNullObject(\"MediaEvents.adSession\", a);
			\n  this.adSessionId_ = a.getAdSessionId();
				\n  try {
				\n    a.registerMediaEvents(), this.adSession = a;
				\n  
			}
				 catch (b) {
				\n    throw Error(\"AdSession already has a media events instance registered\");
				\n  
			}
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.start = function(a, b) {
			\n  module$contents$omid$common$argsChecker_assertNumber(\"MediaEvents.start.duration\", a);
			\n  module$contents$omid$common$argsChecker_assertNumberBetween(\"MediaEvents.start.mediaPlayerVolume\", b, 0, 1);
			\n  this.adSession.sendOneWayMessage(\"start\", a, b, this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.firstQuartile = function() {
			\n  this.adSession.sendOneWayMessage(\"firstQuartile\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.midpoint = function() {
			\n  this.adSession.sendOneWayMessage(\"midpoint\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.thirdQuartile = function() {
			\n  this.adSession.sendOneWayMessage(\"thirdQuartile\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.complete = function() {
			\n  this.adSession.sendOneWayMessage(\"complete\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.pause = function() {
			\n  this.adSession.sendOneWayMessage(\"pause\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.resume = function() {
			\n  this.adSession.sendOneWayMessage(\"resume\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.bufferStart = function() {
			\n  this.adSession.sendOneWayMessage(\"bufferStart\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.bufferFinish = function() {
			\n  this.adSession.sendOneWayMessage(\"bufferFinish\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.skipped = function() {
			\n  this.adSession.sendOneWayMessage(\"skipped\", this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.volumeChange = function(a) {
			\n  module$contents$omid$common$argsChecker_assertNumberBetween(\"MediaEvents.volumeChange.mediaPlayerVolume\", a, 0, 1);
			\n  this.adSession.sendOneWayMessage(\"volumeChange\", a, this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.playerStateChange = function(a) {
			\n  module$contents$omid$common$argsChecker_assertNotNullObject(\"MediaEvents.playerStateChange.playerState\", a);
			\n  this.adSession.sendOneWayMessage(\"playerStateChange\", a, this.adSessionId_);
			\n
		};
			\nmodule$exports$omid$sessionClient$MediaEvents.prototype.adUserInteraction = function(a) {
			\n  module$contents$omid$common$argsChecker_assertNotNullObject(\"MediaEvents.adUserInteraction.interactionType\", a);
			\n  this.adSession.sendOneWayMessage(\"adUserInteraction\", a, this.adSessionId_);
			\n
		};
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.MediaEvents\", module$exports$omid$sessionClient$MediaEvents);
			\nvar module$exports$omid$sessionClient$OmidVersion = function(a, b) {
			\n  module$contents$omid$common$argsChecker_assertTruthyString(\"OmidVersion.semanticVersion\", a);
			\n  module$contents$omid$common$argsChecker_assertTruthyString(\"OmidVersion.apiLevel\", b);
			\n
		};
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.OmidVersion\", module$exports$omid$sessionClient$OmidVersion);
			\nvar module$exports$omid$sessionClient$ServiceCommunication = {
		};
			\nfunction module$contents$omid$sessionClient$ServiceCommunication_listenForServiceWindow(a) {
			\n  var b = module$contents$omid$common$windowUtils_resolveGlobalContext();
				\n  (new module$exports$omid$common$PostMessageCommunication(b)).onMessage = function(c, d) {
				\n    c.method === module$exports$omid$common$constants.MessageMethod.IDENTIFY_SERVICE_WINDOW && a(d);
				\n  
			};
			\n
		}
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.listenForServiceWindow\", module$contents$omid$sessionClient$ServiceCommunication_listenForServiceWindow);
		\nmodule$exports$omid$sessionClient$ServiceCommunication.listenForServiceWindow = module$contents$omid$sessionClient$ServiceCommunication_listenForServiceWindow;
			\nvar module$exports$omid$sessionClient$VastPropertiesExports = {
		};
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.VastProperties\", module$exports$omid$common$VastProperties);
			\nvar module$exports$omid$sessionClient$VerificationVendor = {
				VerificationVendorId:{
				OTHER:1, MOAT:2, DOUBLEVERIFY:3, INTEGRAL_AD_SCIENCE:4, PIXELATE:5, NIELSEN:6, COMSCORE:7, MEETRICS:8, GOOGLE:9,
			}
		};
			\nfunction module$contents$omid$sessionClient$VerificationVendor_verificationVendorIdForScriptUrl(a) {
			\n  for (var b = $jscomp.makeIterator(module$contents$omid$sessionClient$VerificationVendor_VERIFICATION_VENDORS.keys()), c = b.next();
			 !c.done;
				 c = b.next()) {
				\n    c = c.value;
				\n    for (var d = $jscomp.makeIterator(module$contents$omid$sessionClient$VerificationVendor_VERIFICATION_VENDORS.get(c)), e = d.next();
				 !e.done;
					 e = d.next()) {
						\n      if (e.value.test(a)) {
						\n        return c;
						\n      
					}
					\n    
				}
				\n  
			}
			\n  return module$exports$omid$sessionClient$VerificationVendor.VerificationVendorId.OTHER;
			\n
		}
		\nvar module$contents$omid$sessionClient$VerificationVendor_VERIFICATION_VENDORS = new Map([[module$exports$omid$sessionClient$VerificationVendor.VerificationVendorId.MOAT, [\/^(https?:\\\/\\\/|\\\/\\\/)?[-a-zA-Z0-9.]+\\.moatads\\.com\\\/.*$\/,],], [module$exports$omid$sessionClient$VerificationVendor.VerificationVendorId.DOUBLEVERIFY, [\/^(https?:\\\/\\\/|\\\/\\\/)?[-a-zA-Z0-9.]+\\.doubleverify\\.com\\\/.*$\/, \/^(https?:\\\/\\\/|\\\/\\\/)?c\\.[\\w\\-]+\\.com\\\/vfw\\\/dv\\\/.*$\/, \/^(https?:\\\/\\\/|\\\/\\\/)?(www\\.)?[\\w]+\\.tv\\\/r\\\/s\\\/d\\\/.*$\/,],], [module$exports$omid$sessionClient$VerificationVendor.VerificationVendorId.INTEGRAL_AD_SCIENCE, \n[\/^(https?:\\\/\\\/|\\\/\\\/)?[-a-zA-Z0-9.]+\\.adsafeprotected\\.com\\\/.*$\/,],], [module$exports$omid$sessionClient$VerificationVendor.VerificationVendorId.PIXELATE, [\/^https?:\\\/\\\/(q|cdn)\\.adrta\\.com\\\/s\\\/.*\\\/(aa|aanf)\\.js.*$\/, \/^https:\\\/\\\/cdn\\.rta247\\.com\\\/s\\\/.*\\\/(aa|aanf)\\.js.*$\/,],], [module$exports$omid$sessionClient$VerificationVendor.VerificationVendorId.NIELSEN, [],], [module$exports$omid$sessionClient$VerificationVendor.VerificationVendorId.COMSCORE, [\/^(https?:\\\/\\\/|\\\/\\\/)?[-a-zA-Z0-9.]+\\.voicefive\\.com\\\/.*$\/, \n\/^(https?:\\\/\\\/|\\\/\\\/)?[-a-zA-Z0-9.]+\\.measuread\\.com\\\/.*$\/, \/^(https?:\\\/\\\/|\\\/\\\/)?[-a-zA-Z0-9.]+\\.scorecardresearch\\.com\\\/.*$\/,],], [module$exports$omid$sessionClient$VerificationVendor.VerificationVendorId.MEETRICS, [\/^(https?:\\\/\\\/|\\\/\\\/)?s418\\.mxcdn\\.net\\\/bb-serve\\\/omid-meetrics.*\\.js$\/,],], [module$exports$omid$sessionClient$VerificationVendor.VerificationVendorId.GOOGLE, [\/^(https?:\\\/\\\/|\\\/\\\/)?pagead2\\.googlesyndication\\.com\\\/.*$\/, \/^(https?:\\\/\\\/|\\\/\\\/)?www\\.googletagservices\\.com\\\/.*$\/,],],]);
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.verificationVendorIdForScriptUrl\", module$contents$omid$sessionClient$VerificationVendor_verificationVendorIdForScriptUrl);
		\nmodule$contents$omid$common$exporter_packageExport(\"OmidSessionClient.VerificationVendorId\", module$exports$omid$sessionClient$VerificationVendor.VerificationVendorId);
		\nmodule$exports$omid$sessionClient$VerificationVendor.verificationVendorIdForScriptUrl = module$contents$omid$sessionClient$VerificationVendor_verificationVendorIdForScriptUrl;
			\nvar module$exports$omid$common$FloatComparer = {
		}
		, module$contents$omid$common$FloatComparer_FLOAT_ROUGH_DIFF_TOLERANCE = 0.01;
			\nfunction module$contents$omid$common$FloatComparer_roughlyEqual(a, b) {
			\n  return Math.abs(a - b) < module$contents$omid$common$FloatComparer_FLOAT_ROUGH_DIFF_TOLERANCE;
			\n
		}
			\nfunction module$contents$omid$common$FloatComparer_roughlyLessThan(a, b) {
			\n  return b - a > module$contents$omid$common$FloatComparer_FLOAT_ROUGH_DIFF_TOLERANCE;
			\n
		}
			\nfunction module$contents$omid$common$FloatComparer_lessThanOrRoughlyEqual(a, b) {
			\n  return a < b || module$contents$omid$common$FloatComparer_roughlyEqual(a, b);
			\n
		}
			\nfunction module$contents$omid$common$FloatComparer_greaterThanOrRoughlyEqual(a, b) {
			\n  return a > b || module$contents$omid$common$FloatComparer_roughlyEqual(a, b);
			\n
		}
		\nmodule$exports$omid$common$FloatComparer.roughlyLessThan = module$contents$omid$common$FloatComparer_roughlyLessThan;
		\nmodule$exports$omid$common$FloatComparer.lessThanOrRoughlyEqual = module$contents$omid$common$FloatComparer_lessThanOrRoughlyEqual;
		\nmodule$exports$omid$common$FloatComparer.greaterThanOrRoughlyEqual = module$contents$omid$common$FloatComparer_greaterThanOrRoughlyEqual;
		\n\n
	}
	, typeof exports === 'undefined' ? undefined : exports)\n\n"
}



© 2023 Quttera Ltd. All rights reserved.