OMInjector.smali

.class public Lcom/vungle/warren/omsdk/OMInjector;
.super Ljava/lang/Object;
.source "OMInjector.java"


# static fields
.field private static final OM_SDK_JS:Ljava/lang/String; = "omsdk.js"

.field private static final OM_SESSION_JS:Ljava/lang/String; = "omsdk-session.js"


# instance fields
.field private contextRef:Ljava/util/concurrent/atomic/AtomicReference;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/concurrent/atomic/AtomicReference<",
            "Landroid/content/Context;",
            ">;"
        }
    .end annotation
.end field

.field private uiHandler:Landroid/os/Handler;


# direct methods
.method public constructor <init>(Landroid/content/Context;)V
    .registers 4

    .line 1
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 2
    new-instance v0, Landroid/os/Handler;

    invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;

    move-result-object v1

    invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V

    iput-object v0, p0, Lcom/vungle/warren/omsdk/OMInjector;->uiHandler:Landroid/os/Handler;

    .line 3
    new-instance v0, Ljava/util/concurrent/atomic/AtomicReference;

    invoke-virtual {p1}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;

    move-result-object p1

    invoke-direct {v0, p1}, Ljava/util/concurrent/atomic/AtomicReference;-><init>(Ljava/lang/Object;)V

    iput-object v0, p0, Lcom/vungle/warren/omsdk/OMInjector;->contextRef:Ljava/util/concurrent/atomic/AtomicReference;

    return-void
.end method

.method static synthetic access$000(Lcom/vungle/warren/omsdk/OMInjector;)Ljava/util/concurrent/atomic/AtomicReference;
    .registers 1

    .line 1
    iget-object p0, p0, Lcom/vungle/warren/omsdk/OMInjector;->contextRef:Ljava/util/concurrent/atomic/AtomicReference;

    return-object p0
.end method

.method private closeQuietly(Ljava/io/Closeable;)V
    .registers 2

    if-eqz p1, :cond_5

    .line 1
    :try_start_2
    invoke-interface {p1}, Ljava/io/Closeable;->close()V
    :try_end_5
    .catch Ljava/io/IOException; {:try_start_2 .. :try_end_5} :catch_5

    :catch_5
    :cond_5
    return-void
.end method

.method private writeToFile(Ljava/lang/String;Ljava/io/File;)Ljava/io/File;
    .registers 5
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    const/4 v0, 0x0

    .line 1
    :try_start_1
    new-instance v1, Ljava/io/FileWriter;

    invoke-direct {v1, p2}, Ljava/io/FileWriter;-><init>(Ljava/io/File;)V
    :try_end_6
    .catchall {:try_start_1 .. :try_end_6} :catchall_13

    .line 2
    :try_start_6
    invoke-virtual {v1, p1}, Ljava/io/FileWriter;->write(Ljava/lang/String;)V

    .line 3
    invoke-virtual {v1}, Ljava/io/FileWriter;->flush()V
    :try_end_c
    .catchall {:try_start_6 .. :try_end_c} :catchall_10

    .line 4
    invoke-direct {p0, v1}, Lcom/vungle/warren/omsdk/OMInjector;->closeQuietly(Ljava/io/Closeable;)V

    return-object p2

    :catchall_10
    move-exception p1

    move-object v0, v1

    goto :goto_14

    :catchall_13
    move-exception p1

    :goto_14
    invoke-direct {p0, v0}, Lcom/vungle/warren/omsdk/OMInjector;->closeQuietly(Ljava/io/Closeable;)V

    .line 5
    throw p1
.end method


# virtual methods
.method public init()V
    .registers 3

    .line 1
    iget-object v0, p0, Lcom/vungle/warren/omsdk/OMInjector;->uiHandler:Landroid/os/Handler;

    new-instance v1, Lcom/vungle/warren/omsdk/OMInjector$1;

    invoke-direct {v1, p0}, Lcom/vungle/warren/omsdk/OMInjector$1;-><init>(Lcom/vungle/warren/omsdk/OMInjector;)V

    invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z

    return-void
.end method

.method public injectJsFiles(Ljava/io/File;)Ljava/util/List;
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/io/File;",
            ")",
            "Ljava/util/List<",
            "Ljava/io/File;",
            ">;"
        }
    .end annotation

    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    .line 1
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    .line 2
    new-instance v1, Ljava/io/File;

    const-string v2, "omsdk.js"

    invoke-direct {v1, p1, v2}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V

    const-string v2, ";(function(omidGlobal) {\n  \'use strict\';var n;function aa(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}}function p(a){var b=\'undefined\'!=typeof Symbol&&Symbol.iterator&&a[Symbol.iterator];return b?b.call(a):{next:aa(a)}}function q(a){if(!(a instanceof Array)){a=p(a);for(var b,c=[];!(b=a.next()).done;)c.push(b.value);a=c}return a}var ba=\'function\'==typeof Object.create?Object.create:function(a){function b(){}b.prototype=a;return new b},ca;\nif(\'function\'==typeof Object.setPrototypeOf)ca=Object.setPrototypeOf;else{var da;a:{var ea={R:!0},fa={};try{fa.__proto__=ea;da=fa.R;break a}catch(a){}da=!1}ca=da?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+\' is not extensible\');return a}:null}var ha=ca;\nfunction r(a,b){a.prototype=ba(b.prototype);a.prototype.constructor=a;if(ha)ha(a,b);else for(var 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.Ba=b.prototype}var t=\'undefined\'!=typeof window&&window===this?this:\'undefined\'!=typeof global&&null!=global?global:this;function u(a,b){return Object.prototype.hasOwnProperty.call(a,b)}\nvar ia=\'function\'==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(d)for(var e in d)u(d,e)&&(a[e]=d[e])}return a},v=\'function\'==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){a!=Array.prototype&&a!=Object.prototype&&(a[b]=c.value)};\nfunction w(a,b){if(b){var c=t;a=a.split(\'.\');for(var d=0;d<a.length-1;d++){var e=a[d];e in c||(c[e]={});c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&v(c,a,{configurable:!0,writable:!0,value:b})}}w(\'Object.assign\',function(a){return a||ia});function ja(){ja=function(){};t.Symbol||(t.Symbol=ka)}function la(a,b){this.a=a;v(this,\'description\',{configurable:!0,writable:!0,value:b})}la.prototype.toString=function(){return this.a};\nvar ka=function(){function a(c){if(this instanceof a)throw new TypeError(\'Symbol is not a constructor\');return new la(\'jscomp_symbol_\'+(c||\'\')+\'_\'+b++,c)}var b=0;return a}();function x(){ja();var a=t.Symbol.iterator;a||(a=t.Symbol.iterator=t.Symbol(\'Symbol.iterator\'));\'function\'!=typeof Array.prototype[a]&&v(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return ma(aa(this))}});x=function(){}}function ma(a){x();a={next:a};a[t.Symbol.iterator]=function(){return this};return a}\nw(\'WeakMap\',function(a){function b(f){this.a=(l+=Math.random()+1).toString();if(f){f=p(f);for(var h;!(h=f.next()).done;)h=h.value,this.set(h[0],h[1])}}function c(){}function d(f){if(!u(f,g)){var h=new c;v(f,g,{value:h})}}function e(f){var h=Object[f];h&&(Object[f]=function(k){if(k instanceof c)return k;d(k);return h(k)})}if(function(){if(!a||!Object.seal)return!1;try{var f=Object.seal({}),h=Object.seal({}),k=new a([[f,2],[h,3]]);if(2!=k.get(f)||3!=k.get(h))return!1;k.delete(f);k.set(h,4);return!k.has(f)&&\n4==k.get(h)}catch(m){return!1}}())return a;var g=\'$jscomp_hidden_\'+Math.random();e(\'freeze\');e(\'preventExtensions\');e(\'seal\');var l=0;b.prototype.set=function(f,h){d(f);if(!u(f,g))throw Error(\'WeakMap key fail: \'+f);f[g][this.a]=h;return this};b.prototype.get=function(f){return u(f,g)?f[g][this.a]:void 0};b.prototype.has=function(f){return u(f,g)&&u(f[g],this.a)};b.prototype.delete=function(f){return u(f,g)&&u(f[g],this.a)?delete f[g][this.a]:!1};return b});\nw(\'Map\',function(a){function b(){var f={};return f.A=f.next=f.head=f}function c(f,h){var k=f.a;return ma(function(){if(k){for(;k.head!=f.a;)k=k.A;for(;k.next!=k.head;)return k=k.next,{done:!1,value:h(k)};k=null}return{done:!0,value:void 0}})}function d(f,h){var k=h&&typeof h;\'object\'==k||\'function\'==k?g.has(h)?k=g.get(h):(k=\'\'+ ++l,g.set(h,k)):k=\'p_\'+h;var m=f.b[k];if(m&&u(f.b,k))for(f=0;f<m.length;f++){var z=m[f];if(h!==h&&z.key!==z.key||h===z.key)return{id:k,list:m,index:f,o:z}}return{id:k,list:m,\nindex:-1,o:void 0}}function e(f){this.b={};this.a=b();this.size=0;if(f){f=p(f);for(var h;!(h=f.next()).done;)h=h.value,this.set(h[0],h[1])}}if(function(){if(!a||\'function\'!=typeof a||!a.prototype.entries||\'function\'!=typeof Object.seal)return!1;try{var f=Object.seal({x:4}),h=new a(p([[f,\'s\']]));if(\'s\'!=h.get(f)||1!=h.size||h.get({x:4})||h.set({x:4},\'t\')!=h||2!=h.size)return!1;var k=h.entries(),m=k.next();if(m.done||m.value[0]!=f||\'s\'!=m.value[1])return!1;m=k.next();return m.done||4!=m.value[0].x||\n\'t\'!=m.value[1]||!k.next().done?!1:!0}catch(z){return!1}}())return a;x();var g=new WeakMap;e.prototype.set=function(f,h){f=0===f?0:f;var k=d(this,f);k.list||(k.list=this.b[k.id]=[]);k.o?k.o.value=h:(k.o={next:this.a,A:this.a.A,head:this.a,key:f,value:h},k.list.push(k.o),this.a.A.next=k.o,this.a.A=k.o,this.size++);return this};e.prototype.delete=function(f){f=d(this,f);return f.o&&f.list?(f.list.splice(f.index,1),f.list.length||delete this.b[f.id],f.o.A.next=f.o.next,f.o.next.A=f.o.A,f.o.head=null,\nthis.size--,!0):!1};e.prototype.clear=function(){this.b={};this.a=this.a.A=b();this.size=0};e.prototype.has=function(f){return!!d(this,f).o};e.prototype.get=function(f){return(f=d(this,f).o)&&f.value};e.prototype.entries=function(){return c(this,function(f){return[f.key,f.value]})};e.prototype.keys=function(){return c(this,function(f){return f.key})};e.prototype.values=function(){return c(this,function(f){return f.value})};e.prototype.forEach=function(f,h){for(var k=this.entries(),m;!(m=k.next()).done;)m=\nm.value,f.call(h,m[1],m[0],this)};e.prototype[Symbol.iterator]=e.prototype.entries;var l=0;return e});w(\'Object.values\',function(a){return a?a:function(b){var c=[],d;for(d in b)u(b,d)&&c.push(b[d]);return c}});\nw(\'Set\',function(a){function b(c){this.a=new Map;if(c){c=p(c);for(var d;!(d=c.next()).done;)this.add(d.value)}this.size=this.a.size}if(function(){if(!a||\'function\'!=typeof a||!a.prototype.entries||\'function\'!=typeof Object.seal)return!1;try{var c=Object.seal({x:4}),d=new a(p([c]));if(!d.has(c)||1!=d.size||d.add(c)!=d||1!=d.size||d.add({x:4})!=d||2!=d.size)return!1;var e=d.entries(),g=e.next();if(g.done||g.value[0]!=c||g.value[1]!=c)return!1;g=e.next();return g.done||g.value[0]==c||4!=g.value[0].x||\ng.value[1]!=g.value[0]?!1:e.next().done}catch(l){return!1}}())return a;x();b.prototype.add=function(c){c=0===c?0:c;this.a.set(c,c);this.size=this.a.size;return this};b.prototype.delete=function(c){c=this.a.delete(c);this.size=this.a.size;return c};b.prototype.clear=function(){this.a.clear();this.size=0};b.prototype.has=function(c){return this.a.has(c)};b.prototype.entries=function(){return this.a.entries()};b.prototype.values=function(){return this.a.values()};b.prototype.keys=b.prototype.values;\nb.prototype[Symbol.iterator]=b.prototype.values;b.prototype.forEach=function(c,d){var e=this;this.a.forEach(function(g){return c.call(d,g,g,e)})};return b});w(\'Object.is\',function(a){return a?a:function(b,c){return b===c?0!==b||1/b===1/c:b!==b&&c!==c}});w(\'Array.prototype.includes\',function(a){return a?a:function(b,c){var d=this;d instanceof String&&(d=String(d));var e=d.length;c=c||0;for(0>c&&(c=Math.max(c+e,0));c<e;c++){var g=d[c];if(g===b||Object.is(g,b))return!0}return!1}});\nw(\'Object.entries\',function(a){return a?a:function(b){var c=[],d;for(d in b)u(b,d)&&c.push([d,b[d]]);return c}});\nvar y={pa:\'loaded\',wa:\'start\',ia:\'firstQuartile\',ra:\'midpoint\',xa:\'thirdQuartile\',ha:\'complete\',sa:\'pause\',ua:\'resume\',ga:\'bufferStart\',fa:\'bufferFinish\',va:\'skipped\',za:\'volumeChange\',ta:\'playerStateChange\',ca:\'adUserInteraction\'},na={ma:\'generic\',ya:\'video\',qa:\'media\'},pa={P:\'native\',na:\'html\',O:\'javascript\'},qa={P:\'native\',O:\'javascript\',NONE:\'none\'},ra={ka:\'full\',oa:\'limited\'},sa={ea:\'backgrounded\',ja:\'foregrounded\'},ta={da:\'app\',Aa:\'web\'};function A(a,b){this.x=null!=a.x?a.x:a.left;this.y=null!=a.y?a.y:a.top;this.width=a.width;this.height=a.height;this.endX=this.x+this.width;this.endY=this.y+this.height;this.adSessionId=a.adSessionId||void 0;this.isFriendlyObstructionFor=a.isFriendlyObstructionFor||[];this.b=a.friendlyObstructionClass||void 0;this.c=a.friendlyObstructionPurpose||void 0;this.f=a.friendlyObstructionReason||void 0;this.clipsToBounds=void 0!==a.clipsToBounds?!0===a.clipsToBounds:!0;this.notVisibleReason=a.notVisibleReason||\nvoid 0;this.childViews=a.childViews||[];this.isCreative=a.isCreative||!1;this.a=b}function ua(a){var b={};return b.width=a.width,b.height=a.height,b}function B(a){var b={};return Object.assign({},ua(a),(b.x=a.x,b.y=a.y,b))}function va(a){var b=B(a),c={};return Object.assign({},b,(c.endX=a.endX,c.endY=a.endY,c))}function wa(a,b,c){a.x+=b;a.y+=c;a.endX+=b;a.endY+=c}\nA.prototype.H=function(a){if(null==a)return!1;a=B(a);var b=a.y,c=a.width,d=a.height;return this.x===a.x&&this.y===b&&this.width===c&&this.height===d};function ya(a){return a.width*a.height};function za(a,b){a=B(a);for(var c=[],d=[],e=0;e<b.length;e++){var g=B(b[e]);g=Aa(a,g);Ba(c,g.x);Ba(c,g.endX);Ba(d,g.y);Ba(d,g.endY)}c=c.sort(function(l,f){return l-f});d=d.sort(function(l,f){return l-f});return{aa:c,ba:d}}function Aa(a,b){return{x:Math.max(a.x,b.x),y:Math.max(a.y,b.y),endX:Math.min(a.x+a.width,b.x+b.width),endY:Math.min(a.y+a.height,b.y+b.height)}}function Ba(a,b){-1===a.indexOf(b)&&a.push(b)};function Ca(){this.b=this.a=this.s=this.l=this.c=this.j=void 0;this.u=0;this.g=[];this.m=[];this.v=0;this.h=[];this.f=[];this.i=[]}Ca.prototype.H=function(a){return null==a?!1:JSON.stringify(Da(this))===JSON.stringify(Da(a))};\nfunction Da(a){var b=[],c=[],d={viewport:a.j,adView:{percentageInView:a.u,reasons:a.i},declaredFriendlyObstructions:a.g.length};if(void 0!==a.a){d.adView.geometry=B(a.a);d.adView.geometry.pixels=ya(a.a);d.adView.onScreenGeometry=B(a.b);d.adView.onScreenGeometry.pixels=a.v;for(var e=0;e<a.f.length;e++)b.push(B(a.f[e]));for(e=0;e<a.m.length;e++){var g=a.m[e],l=g,f={};l.b&&(f.obstructionClass=l.b);l.c&&(f.obstructionPurpose=l.c);l.f&&(f.obstructionReason=l.f);g=Aa(a.a,g);c.push(Object.assign({},{x:g.x,\ny:g.y,width:g.endX-g.x,height:g.endY-g.y},f))}d.adView.onScreenGeometry.obstructions=b;d.adView.onScreenGeometry.friendlyObstructions=c;void 0!==a.l&&void 0!==a.s&&(d.adView.containerGeometry=B(a.l),d.adView.onScreenContainerGeometry=B(a.s),d.adView.measuringElement=!0)}return d}function Ea(a,b){b=ua(b);a.j={};a.j.width=b.width;a.j.height=b.height;a.c={};a.c.x=0;a.c.y=0;a.c.width=b.width;a.c.height=b.height;a.c.endX=b.width;a.c.endY=b.height}\nfunction Fa(){return{x:0,y:0,endX:0,endY:0,width:0,height:0}}function Ga(a,b){var c={};c.x=Math.max(a.x,b.x);c.y=Math.max(a.y,b.y);c.endX=Math.min(a.endX,b.endX);c.endY=Math.min(a.endY,b.endY);c.width=Math.max(0,c.endX-c.x);c.height=Math.max(0,c.endY-c.y);return c}function Ha(a,b){return a.width<b.width||a.height<b.height}\nfunction Ia(a){var b=ya(a.a);if(0!==b){var c=ya(a.b);var d=a.f,e=0;if(0<d.length){var g=za(a.b,d),l=g.aa;g=g.ba;for(var f=0;f<l.length-1;f++)for(var h=(l[f]+(l[f]+1))/2,k=l[f+1]-l[f],m=0;m<g.length-1;m++){for(var z=(g[m]+(g[m]+1))/2,xa=g[m+1]-g[m],P=!1,Q=0;Q<d.length;Q++){var G=B(d[Q]);if(G.x<h&&G.x+G.width>h&&G.y<z&&G.y+G.height>z){P=!0;break}}P&&(e+=Math.round(k)*Math.round(xa))}}c-=e;b=Math.round(c/b*100);a.u=Math.max(b,0);a.v=Math.max(c,0)}}\nfunction Ja(a,b){if(0!==b.width&&0!==b.height&&a.b){a=va(a.b);var c=a.y,d=a.endX,e=a.endY;b=!(b.endX<=a.x||b.x>=d||b.endY<=c||b.y>=e)}else b=!1;return b}function D(a,b){for(var c=!1,d=0;d<a.i.length;d++)a.i[d]===b&&(c=!0);c||a.i.push(b)};function Ka(a,b,c,d){var e=new Ca;b=new A(b,!1);Ea(e,b);La(a,b,e,d);if(\'backgrounded\'===c)D(e,\'backgrounded\');else if(void 0!==e.a){for(a=0;a<e.g.length;a++)Ja(e,e.g[a])&&e.m.push(e.g[a]);for(a=0;a<e.h.length;a++){if(c=Ja(e,e.h[a])){a:{c=e.h[a];for(d=0;d<e.f.length;d++)if(e.f[d].H(c)){c=!0;break a}c=!1}c=!c}c&&(D(e,\'obstructed\'),e.f.push(e.h[a]))}Ia(e)}else D(e,\'notFound\');return e}\nfunction La(a,b,c,d){var e=b.isCreative?!0:b.adSessionId===d;if(e){c.a=b;var g=va(c.a);a=Ga(c.c,g);var l=c.a;\'notAttached\'===l.notVisibleReason||\'noWindowFocus\'===l.notVisibleReason||\'noAdView\'===l.notVisibleReason?(D(c,\'notFound\'),c.b=new A(Fa(),!1)):(l=c.a,\'viewInvisible\'===l.notVisibleReason||\'viewGone\'===l.notVisibleReason||\'viewNotVisible\'===l.notVisibleReason||\'viewAlphaZero\'===l.notVisibleReason||\'viewHidden\'===l.notVisibleReason||void 0!==c.a.notVisibleReason?(D(c,\'hidden\'),c.b=new A(Fa(),\n!1)):(Ha(a,g)&&D(c,\'clipped\'),c.b=new A(a,!1)))}else if(g=!0,b.a&&(g=-1!==b.isFriendlyObstructionFor.indexOf(d)?!1:!1===b.clipsToBounds),g){l=b.childViews;for(var f=0;f<l.length;f++)g=void 0!==c.a,La(a,new A(l[f],g),c,d)}e||void 0===c.a||(b.a?-1!==b.isFriendlyObstructionFor.indexOf(d)?c.g.push(b):c.h.push(b):(e=va(b),d=va(c.b),B(c.b),a=c.b,0!==a.width&&0!==a.height&&b.clipsToBounds&&(b=Ga(d,e),Ha(b,d)&&(D(c,\'clipped\'),c.b=new A(b,!1)))))};function Ma(a,b){this.y=this.x=0;this.width=a;this.height=b};function Na(){return{apiVersion:\'1.0\',accessMode:\'limited\',environment:\'app\',omidJsInfo:{omidImplementer:\'omsdk\',serviceVersion:\'1.3.11-iab2310\'}}}function Oa(){this.adSessionId=null;this.c=Na();this.s=null;this.m=\'foregrounded\';this.l=this.g=\'none\';this.j=this.i=this.h=this.f=this.a=this.b=this.B=this.u=null;this.C=!0;this.v=new Map}var E;function F(){E||(E=new Oa);return E};var Pa=eval(\'this\'),H=function(){if(\'undefined\'!==typeof omidGlobal&&omidGlobal)return omidGlobal;if(\'undefined\'!==typeof global&&global)return global;if(\'undefined\'!==typeof window&&window)return window;if(\'undefined\'!==typeof Pa&&Pa)return Pa;throw Error(\'Could not determine global object context.\');}();function Qa(a,b){this.a=a;this.b=b}t.Object.defineProperties(Qa.prototype,{event:{configurable:!0,enumerable:!0,get:function(){return this.a}},origin:{configurable:!0,enumerable:!0,get:function(){return this.b}}});function I(a){for(var b=[],c=0;c<arguments.length;++c)b[c]=arguments[c];Ra(function(){throw new (Function.prototype.bind.apply(Error,[null,\'Could not complete the test successfully - \'].concat(q(b))));},function(){return console.error.apply(console,q(b))})}function Sa(a){for(var b=[],c=0;c<arguments.length;++c)b[c]=arguments[c];Ra(function(){},function(){return console.error.apply(console,q(b))})}\nfunction Ra(a,b){\'undefined\'!==typeof jasmine&&jasmine?a():\'undefined\'!==typeof console&&console&&console.error&&b()};function Ta(){this.f=[];this.b=[];this.c=[];this.g=[];this.i={};this.a=F()}function Ua(a){a.f=[];a.b=[];a.c=[];a.g=[];a.i={};E.adSessionId=null;E.c=Na();E.s=null;E.G=void 0;E.la=void 0;E.I=null;E.J=null;E.F=null;E.m=\'foregrounded\';E.g=\'none\';E.l=\'none\';E.u=null;E.B=null;E.b=null;E.a=null;E.f=null;E.h=null;E.i=null;E.j=null;E.C=!0;E.v=new Map}\nfunction Va(a,b){void 0!==a.a&&a.a.adSessionId&&!1!==Wa(a,b)&&a.c.filter(function(c){return c.type===b.event.type}).forEach(function(c){return a.h(c.D,b.event)})}function Xa(a,b){a.f.push(b);Va(a,b)}function Ya(a,b,c){void 0!==a.a&&a.a.adSessionId&&a.f.filter(function(d){return d.event.type===b&&Wa(a,d)}).map(function(d){return d.event}).forEach(c)}\nfunction Wa(a,b){var c=b.event.type,d=-1!==Object.values(y).indexOf(c)&&\'volumeChange\'!==c;return\'impression\'===c||\'loaded\'===c&&a.a.a?b.origin===F().l:d?b.origin===F().g:!0}function Za(a,b,c){\'media\'===b||\'video\'===b?$a(a,c):(a.c.push({type:b,D:c}),Ya(a,b,c))}function $a(a,b){Object.keys(y).forEach(function(c){c=y[c];a.c.push({type:c,D:b});Ya(a,c,b)})}function ab(a,b,c,d){var e={N:c,K:d,D:b};a.g.push(e);a.b.forEach(function(g){var l=bb(g);\'sessionStart\'===g.event.type&&cb(a,l,e);a.h(b,l)})}\nfunction db(a,b,c){var d=J(a,\'sessionError\',\'native\',{errorType:b,message:c});a.b.push(d);a.g.forEach(function(e){a.h(e.D,d.event)})}function eb(a,b){a.i=Object.assign(a.i,b);b=a.a.c;if(void 0!==b){b=Object.assign({},fb(a,gb(a,{context:b}),!0),{supportsLoadedEvent:!!a.a.a||\'video\'==a.a.b});Object.assign(b,{pageUrl:null,contentUrl:a.a.s});var c=J(a,\'sessionStart\',\'native\',b);a.b.push(c);a.g.forEach(function(d){var e=d.D,g=bb(c);cb(a,g,d);a.h(e,g)},a);hb(a)}}\nfunction cb(a,b,c){c.N&&(b.data.verificationParameters=a.i[c.N]);c.K&&(a=a.a.v.get(c.K))&&(b.data.verificationParameters=a.verificationParameters,b.data.context.accessMode=a.accessMode)}function ib(a){var b=a.g,c=J(a,\'sessionFinish\',\'native\');a.b.push(c);var d=a.a.c;d&&\'native\'==d.adSessionType||Ua(a);b.forEach(function(e){return a.h(e.D,c.event)})}Ta.prototype.h=function(a,b){for(var c=[],d=1;d<arguments.length;++d)c[d-1]=arguments[d];try{a.apply(null,q(c))}catch(e){Sa(e)}};\nfunction jb(a,b){var c=(c=F().F)?Da(c):void 0;c=fb(a,gb(a,c));Xa(a,J(a,\'impression\',b,c))}function kb(a,b,c){if(a.a.a||\'display\'!=a.a.b)b=J(a,\'loaded\',b,fb(a,gb(a,void 0===c?null:c))),Xa(a,b)}\nfunction lb(a,b,c,d){\'start\'!==b&&\'volumeChange\'!==b||null!=(d&&d.deviceVolume)||(d.deviceVolume=a.a.u);if(d&&(\'start\'===b||\'volumeChange\'===b)){var e=d.videoPlayerVolume,g=d.mediaPlayerVolume;null!=e?(Object.assign(d,{mediaPlayerVolume:e}),a.a.B=e):null!=g&&(Object.assign(d,{videoPlayerVolume:g}),a.a.B=g)}Xa(a,J(a,b,c,d))}\nfunction hb(a){var b=a.a.g,c=a.f.filter(function(l){return Object.values(y).includes(l.event.type)&&l.origin===b}).map(function(l){return l.event}),d=a.a.adSessionId||\'\',e={};c=p(c);for(var g=c.next();!g.done;e={w:e.w},g=c.next()){e.w=g.value;e.w.adSessionId||(e.w.adSessionId=d);if(\'loaded\'==e.w.type){if(!a.a.a&&\'display\'==a.a.b)continue;e.w.data=fb(a,gb(a,e.w.data))}a.c.filter(function(l){return function(f){return f.type===l.w.type}}(e)).forEach(function(l){return function(f){return f.D(l.w)}}(e))}}\nfunction mb(a,b,c){a:{c=new Set(c);a=p(a.f.concat(a.b));for(var d=a.next();!d.done;d=a.next())if(d=d.value,c.has(d.event.type)&&d.origin!=b){b=!0;break a}b=!1}return b?(I(\'Event owner cannot be registered after its events have already been published.\'),!1):!0}function nb(a,b){mb(a,b,Object.values(y))&&K(a,b)&&(a.a.g=b)}function ob(a,b){mb(a,b,[\'impression\'])&&pb(a,b)&&(a.a.l=b)}function pb(a,b){var c=a.a.l;return\'none\'!=c&&c!=b?(I(\'Impression event is owned by \'+(a.a.l+\', not \')+(b+\'.\')),!1):!0}\nfunction K(a,b){var c=a.a.g;return\'none\'!=c&&c!=b?(I(\'Media events are owned by \'+(a.a.g+\', not \'+b+\'.\')),!1):!0}function fb(a,b,c){c=void 0===c?!1:c;b=Object.assign({},b);a.a.b&&Object.assign(b,{mediaType:a.a.b});a.a.a&&(c||\'definedByJavaScript\'!==a.a.a)&&Object.assign(b,{creativeType:a.a.a});return b}function gb(a,b){return a.a.f?Object.assign({},b,{impressionType:a.a.f}):b}function J(a,b,c,d){return new Qa({adSessionId:a.a.adSessionId||\'\',timestamp:(new Date).getTime(),type:b,data:d},c)}\nfunction bb(a){a=a.event;return{adSessionId:a.adSessionId,timestamp:a.timestamp,type:a.type,data:a.data}};function qb(a,b,c){\'container\'===b&&void 0!==a.a.G&&void 0!==a.a&&null!=a.a.adSessionId&&(a.a.I=Ka(a.c,a.a.G,a.a.m,a.a.adSessionId));b=a.a;var d=b.I,e=b.J;if(d)if(e){b=new Ca;var g=d.j,l=d.a,f=d.b,h=e.a;e=e.b;g&&l&&f&&h&&e&&(Ea(b,g),b.l=new A(l,!1),b.s=new A(f,!1),b.h=Object.assign([],d.h),b.f=Object.assign([],d.f),b.g=Object.assign([],d.g),b.m=Object.assign([],d.m),b.i=Object.assign([],d.i),d=b.l.x,g=b.l.y,h=new A(h,!1),e=new A(e,!1),wa(h,d,g),wa(e,d,g),b.a=h,b.b=Ga(e,f),-1===b.i.indexOf(\'backgrounded\')&&\nIa(b))}else b=d;else b=null;f=a.a.F;if(b&&!b.H(f)||c)f=Da(b),c&&(f.adView.reasons=f.adView.reasons||[c]),c=a.b,\'audio\'!=c.a.a&&Xa(c,J(c,\'geometryChange\',\'native\',f)),a.a.F=b};function L(a){return\'object\'===typeof a}function rb(a){return\'number\'===typeof a&&!isNaN(a)&&0<=a}function M(a){return\'string\'===typeof a}function N(a,b){return M(a)&&-1!==Object.values(b).indexOf(a)}function sb(a){var b=a&&a.tagName&&\'iframe\'===a.tagName.toLowerCase();try{b=b&&a instanceof HTMLIFrameElement}catch(c){}return b}function tb(a){var b=a&&a.tagName;try{b=b&&a instanceof HTMLElement}catch(c){}return b}\nfunction ub(a){var b=a&&a.tagName&&\'video\'===a.tagName.toLowerCase();try{b=b&&a instanceof HTMLVideoElement}catch(c){}return b};function O(a,b,c){this.f=a;this.I=b;this.F=c;this.c=F();this.b=null;this.a=this.g=this.u=void 0;this.G=!0;this.C=void 0;R(this)}function R(a){if(!a.b){var b;a:{if((b=a.f.document)&&b.getElementsByClassName&&(b=b.getElementsByClassName(\'omid-element\'))){if(1==b.length){b=b[0];break a}1<b.length&&a.G&&(db(a.F,\'generic\',\"More than one element with \'omid-element\' class name.\"),a.G=!1)}b=null}if(ub(b))a.c.i=b;else if(tb(b))a.c.h=b;else return;vb(a)}}\nfunction vb(a){a.c.i?(a.b=a.c.i,a.i()):a.c.h&&(a.b=a.c.h,sb(a.b)?a.c.j&&a.i():a.i())}function wb(a){a.a&&(sb(a.b)?a.c.j&&(a.B(),xb(a)):(a.B(),xb(a)))}O.prototype.m=function(){this.C&&(this.f.document.removeEventListener(\'visibilitychange\',this.C),this.C=void 0)};O.prototype.i=function(){};function xb(a){a.u&&(a.c.J=a.u,qb(a.I,\'creative\'))}function yb(a){if(a.a&&a.c.j){var b=new A(a.c.j,!1);wa(b,a.a.x,a.a.y);b.clipsToBounds=!0;return b}};function zb(a,b,c){return Ab(a,\'setInterval\')(b,c)}function Bb(a,b){Ab(a,\'clearInterval\')(b)}function Cb(a,b){Ab(a,\'clearTimeout\')(b)}function Ab(a,b){return a.a&&a.a[b]?a.a[b]:Db(a,b)}\nfunction Eb(a,b,c,d){if(a.a.document&&a.a.document.body){var e=a.a.document.createElement(\'img\');e.width=1;e.height=1;e.style.display=\'none\';e.src=b;c&&e.addEventListener(\'load\',function(){return c()});d&&e.addEventListener(\'error\',function(){return d()});a.a.document.body.appendChild(e)}else Db(a,\'sendUrl\')(b,c,d)}function Db(a,b){if(a.a&&a.a.omidNative&&a.a.omidNative[b])return a.a.omidNative[b].bind(a.a.omidNative);throw Error(\'Native interface method \"\'+b+\'\" not found.\');};function S(a,b,c,d,e){O.call(this,a,c,e);this.l=b;this.h=void 0;this.j=d}r(S,O);S.prototype.m=function(){void 0!==this.h&&(Bb(this.j,this.h),this.h=void 0);O.prototype.m.call(this)};S.prototype.i=function(){var a=this;O.prototype.i.call(this);null==this.b?this.h=void 0:void 0===this.h&&(this.h=zb(this.j,function(){return Fb(a)},200),Fb(this))};\nS.prototype.B=function(){if(this.g){var a=yb(this);if(a){this.a.isCreative=!1;a.isCreative=!0;for(var b=!1,c=0;c<this.a.childViews.length;c++)if(this.a.childViews[c].isCreative){this.a.childViews[c]=a;b=!0;break}b||this.a.childViews.push(a)}else this.a.isCreative=!0;this.u=Ka(this.l,this.g,this.c.m,this.c.adSessionId)}};\nfunction Fb(a){if(void 0!==a.h){b:{try{var b=a.f.top;var c=0<=b.innerHeight&&0<=b.innerWidth;break b}catch(d){}c=!1}c?(c=a.f.top,c=new A(new Ma(c.innerWidth,c.innerHeight),!1)):c=new A(new Ma(0,0),!1);b=a.b.getBoundingClientRect();if(null==b.x||isNaN(b.x))b.x=b.left;if(null==b.y||isNaN(b.y))b.y=b.top;b=new A(b,!1);c.H(a.g)&&b.H(a.a)||(a.a=b,a.a.clipsToBounds=!0,a.g=c,a.g.childViews.push(a.a),wb(a))}};function T(a,b,c,d){O.call(this,a,c,d);this.v=this.s=this.j=this.l=this.h=void 0}r(T,O);T.prototype.m=function(){this.h&&this.h.disconnect();Gb(this);O.prototype.m.call(this)};T.prototype.i=function(){O.prototype.i.call(this);this.b&&(this.h||(this.h=Hb(this)),Ib(this),Jb(this.b)&&Kb(this))};\nT.prototype.B=function(){if(this.a&&this.v){var a=yb(this);if(a){var b=a;var c=this.v;var d=Math.max(a.x,c.x);var e=Math.max(a.y,c.y),g=Math.min(a.endX,c.endX);a=Math.min(a.endY,c.endY);g<=d||a<=e?d=null:(c={},d=new A((c.x=d,c.y=e,c.width=Math.abs(g-d),c.height=Math.abs(a-e),c),!1));d||(d=new A({x:0,y:0,width:0,height:0},!1))}else b=this.a,d=this.v;e=new Ca;this.g&&Ea(e,this.g);e.a=b;e.b=d;Ia(e);this.u=e}};\nfunction Gb(a){a.l&&(a.l.disconnect(),a.l=void 0);a.j&&(a.j.disconnect(),a.j=void 0);a.s&&((0,a.f.removeEventListener)(\'resize\',a.s),a.s=void 0)}function Ib(a){a.h&&a.b&&(a.h.unobserve(a.b),a.h.observe(a.b))}function Jb(a){a=a.getBoundingClientRect();return 0==a.width||0==a.height}\nfunction Hb(a){return new a.f.IntersectionObserver(function(b){try{if(b.length){for(var c,d=b[0],e=1;e<b.length;e++)b[e].time>d.time&&(d=b[e]);c=d;a.g=Lb(c.rootBounds);a.a=Lb(c.boundingClientRect);a.v=Lb(c.intersectionRect);wb(a)}}catch(g){a.m(),db(a.F,\'generic\',\'Problem handling IntersectionObserver callback: \'+g.message)}},{root:null,rootMargin:\'0px\',threshold:[0,.1,.2,.3,.4,.5,.6,.7,.8,.9,1]})}\nfunction Kb(a){a.f.ResizeObserver?a.l||(a.l=Nb(a,function(){return Ob(a)}),a.l.observe(a.b)):(a.s||(a.s=function(){return Ob(a)},(0,a.f.addEventListener)(\'resize\',a.s)),a.j||(a.j=new MutationObserver(function(){return Ob(a)}),a.j.observe(a.b,{childList:!1,attributes:!0,subtree:!1})))}function Ob(a){a.b&&!Jb(a.b)&&(Ib(a),Gb(a))}function Nb(a,b){return new a.f.ResizeObserver(b)}function Lb(a){if(a&&null!==a.x&&null!==a.y&&null!==a.width&&null!==a.height)return new A(a,!1)};function Pb(a){return a&&L(a)?Object.entries(a).reduce(function(b,c){var d=p(c);c=d.next().value;d=d.next().value;return b&&M(c)&&null!=d&&L(d)&&M(d.resourceUrl)},!0):!1};function U(a,b,c,d){this.b=a;this.method=b;this.version=c;this.a=d}function Qb(a){return!!a&&void 0!==a.omid_message_guid&&void 0!==a.omid_message_method&&void 0!==a.omid_message_version&&\'string\'===typeof a.omid_message_guid&&\'string\'===typeof a.omid_message_method&&\'string\'===typeof a.omid_message_version&&(void 0===a.omid_message_args||void 0!==a.omid_message_args)}function Rb(a){return new U(a.omid_message_guid,a.omid_message_method,a.omid_message_version,a.omid_message_args)}\nfunction Sb(a){var b={};b=(b.omid_message_guid=a.b,b.omid_message_method=a.method,b.omid_message_version=a.version,b);void 0!==a.a&&(b.omid_message_args=a.a);return b};function Tb(a){this.c=a};function V(a){this.c=a;this.handleExportedMessage=V.prototype.f.bind(this)}r(V,Tb);V.prototype.b=function(a,b){b=void 0===b?this.c:b;if(!b)throw Error(\'Message destination must be defined at construction time or when sending the message.\');b.handleExportedMessage(Sb(a),this)};V.prototype.f=function(a,b){Qb(a)&&this.a&&this.a(Rb(a),b)};function Ub(a,b){this.c=b=void 0===b?H:b;var c=this;a.addEventListener(\'message\',function(d){if(\'object\'===typeof d.data){var e=d.data;Qb(e)&&d.source&&c.a&&c.a(Rb(e),d.source)}})}r(Ub,Tb);Ub.prototype.b=function(a,b){b=void 0===b?this.c:b;if(!b)throw Error(\'Message destination must be defined at construction time or when sending the message.\');b.postMessage(Sb(a),\'*\')};function Vb(){return\'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\'.replace(/[xy]/g,function(a){var b=16*Math.random()|0;return\'y\'===a?(b&3|8).toString(16):b.toString(16)})};function Wb(a){if(!a.b||!a.b.document)throw Error(\'OMID Service Script is not running within a window.\');var b=a.a;a.a=[];b.forEach(function(c){var d=a.c.C?\'limited\':\'full\';var e=N(c.accessMode,ra)?c.accessMode:null;d=e?\'full\'==e&&\'limited\'==d?d:e:d;c.accessMode=d;e=\'full\'!=d;d=Vb();var g=c.resourceUrl,l=a.b.document,f=l.createElement(\'iframe\');e&&(f.sandbox=\'allow-scripts\');f.id=\'omid-verification-script-frame-\'+d;f.style.display=\'none\';f.srcdoc=\"<html><head>\\n<script type=\\\"text/javascript\\\">window[\'omidVerificationProperties\'] = {\\n\'serviceWindow\': window.parent,\\n\'injectionId\': \'\"+\n(d+\'\\\',\\n};\\x3c/script>\\n<script type=\"text/javascript\" src=\"\')+g.replace(/\"/g,\'&quot;\')+\'\">\\x3c/script>\\n</head><body></body></html>\';l.body.appendChild(f);e=c.vendorKey;g=c.verificationParameters;e=void 0===e?\'\':e;g=void 0===g?\'\':g;e&&\'string\'===typeof e&&\'\'!==e&&g&&\'string\'===typeof g&&\'\'!==g&&(a.f.i[e]=g);a.c.v.set(d,c)})};function Xb(){var a=Yb,b=Zb,c=this;this.c=X;this.b=a;this.a=F();this.g=b;this.f=!1;this.registerSessionObserver(function(d){return $b(c,d)})}n=Xb.prototype;n.registerSessionObserver=function(a){ab(this.c,a)};n.setSlotElement=function(a){tb(a)?(this.a.h=a,this.b&&vb(this.b)):I(\'setSlotElement called with a non-HTMLElement.  It will be ignored.\')};n.setElementBounds=function(a){this.a.j=a;this.b&&vb(this.b);this.b&&wb(this.b)};n.error=function(a,b){db(this.c,a,b)};\nn.registerAdEvents=function(){ob(this.c,\'javascript\')};n.registerMediaEvents=function(){nb(this.c,\'javascript\')};function Y(a,b,c){\'impression\'==b?pb(a.c,\'javascript\')&&(jb(a.c,\'javascript\'),a.b&&R(a.b)):(\'loaded\'==b?(c=void 0===c?null:c,K(a.c,\'javascript\')&&kb(a.c,\'javascript\',c)):K(a.c,\'javascript\')&&lb(a.c,b,\'javascript\',c),[\'loaded\',\'start\'].includes(b)&&a.b&&R(a.b))}n.injectVerificationScriptResources=function(a){var b=this.g;b.a.push.apply(b.a,q(a));if(this.f)try{Wb(this.g)}catch(c){I(c.message)}};\nn.setCreativeType=function(a,b){b=void 0===b?null:b;if(!this.a.b||this.a.a)this.a.a=a,\'video\'==a||\'audio\'==a?this.a.b=\'video\':\'htmlDisplay\'==a||\'nativeDisplay\'==a?this.a.b=\'display\':\'definedByJavaScript\'==a&&b&&(this.a.b=\'none\'==b?\'display\':\'video\')};n.setImpressionType=function(a){if(!this.a.b||this.a.a)this.a.f=a};\nfunction $b(a,b){if(\'sessionStart\'===b.type){a.f=!0;try{Wb(a.g)}catch(c){I(c.message)}}\'sessionFinish\'===b.type&&(a.f=!1,(b=F().c)&&\'native\'==b.adSessionType||a.registerSessionObserver(function(c){return $b(a,c)}))}n.setClientInfo=function(a,b,c){var d=this.a.c||{};d.omidJsInfo=Object.assign({},d.omidJsInfo,{sessionClientVersion:a,partnerName:b,partnerVersion:c});this.a.c=d;return this.a.c.omidJsInfo.serviceVersion};function ac(a){return/\\d+\\.\\d+\\.\\d+(-.*)?/.test(a)}function bc(a){a=a.split(\'-\')[0].split(\'.\');for(var b=[\'1\',\'0\',\'3\'],c=0;3>c;c++){var d=parseInt(a[c],10),e=parseInt(b[c],10);if(d>e)break;else if(d<e)return!1}return!0};function cc(a,b){return ac(a)&&bc(a)?b?b:[]:b&&\'string\'===typeof b?JSON.parse(b):[]};function dc(){var a=ec;var b=void 0===b?omidGlobal:b;this.a=a;this.f=b;this.b=new V;this.f.omid=this.f.omid||{};this.f.omid.v1_SessionServiceCommunication=this.b;this.c=b&&b.addEventListener&&b.postMessage?new Ub(b):null;this.g=null;this.b.a=this.h.bind(this);this.c&&(this.c.a=this.i.bind(this))}dc.prototype.h=function(a,b){fc(this,a,b,this.b)};\ndc.prototype.i=function(a,b){this.g||(this.g=b);this.g!=b?I(\'The source window of session client post messages cannot be changed from the source of the first message.\'):fc(this,a,b,this.c)};\nfunction fc(a,b,c,d){function e(h){for(var k=[],m=0;m<arguments.length;++m)k[m]=arguments[m];k=new U(g,\'response\',f,ac(f)&&bc(f)?k:JSON.stringify(k));d.b(k,c)}var g=b.b,l=b.method,f=b.version;b=cc(f,b.a);try{gc(a,l,e,b)}catch(h){d.b(new U(g,\'error\',f,\'\\n        name: \'+h.name+\'\\n        message: \'+h.message+\'\\n        filename: \'+h.filename+\'\\n        lineNumber: \'+h.lineNumber+\'\\n        columnNumber: \'+h.columnNumber+\'\\n        stack: \'+h.stack+\'\\n        toString(): \'+h.toString()),c)}}\nfunction gc(a,b,c,d){switch(b){case \'SessionService.registerAdEvents\':a.a.registerAdEvents();break;case \'SessionService.registerMediaEvents\':a.a.registerMediaEvents();break;case \'SessionService.registerSessionObserver\':a.a.registerSessionObserver(c);break;case \'SessionService.setSlotElement\':c=p(d).next().value;a.a.setSlotElement(c);break;case \'SessionService.setVideoElement\':c=p(d).next().value;a=a.a;ub(c)?(a.a.i=c,a.b&&vb(a.b)):I(\'setVideoElement called with a non-HTMLVideoElement. It will be ignored.\');\nbreak;case \'SessionService.setElementBounds\':c=p(d).next().value;a.a.setElementBounds(c);break;case \'SessionService.startSession\':I(\'Session start from JS is not supported in mobile app.\');break;case \'SessionService.finishSession\':I(\'Session finish from JS is not supported in mobile app.\');break;case \'SessionService.impressionOccurred\':Y(a.a,\'impression\');break;case \'SessionService.loaded\':(c=p(d).next().value)?(b={skippable:c.isSkippable,autoPlay:c.isAutoPlay,position:c.position},c.isSkippable&&\n(b.skipOffset=c.skipOffset),Y(a.a,\'loaded\',b)):Y(a.a,\'loaded\');break;case \'SessionService.start\':b=p(d);c=b.next().value;b=b.next().value;Y(a.a,\'start\',{duration:c,mediaPlayerVolume:b});break;case \'SessionService.firstQuartile\':Y(a.a,\'firstQuartile\');break;case \'SessionService.midpoint\':Y(a.a,\'midpoint\');break;case \'SessionService.thirdQuartile\':Y(a.a,\'thirdQuartile\');break;case \'SessionService.complete\':Y(a.a,\'complete\');break;case \'SessionService.pause\':Y(a.a,\'pause\');break;case \'SessionService.resume\':Y(a.a,\n\'resume\');break;case \'SessionService.bufferStart\':Y(a.a,\'bufferStart\');break;case \'SessionService.bufferFinish\':Y(a.a,\'bufferFinish\');break;case \'SessionService.skipped\':Y(a.a,\'skipped\');break;case \'SessionService.volumeChange\':c={mediaPlayerVolume:p(d).next().value};Y(a.a,\'volumeChange\',c);break;case \'SessionService.playerStateChange\':c={state:p(d).next().value};Y(a.a,\'playerStateChange\',c);break;case \'SessionService.adUserInteraction\':c={interactionType:p(d).next().value};Y(a.a,\'adUserInteraction\',\nc);break;case \'SessionService.setClientInfo\':var e=p(d);b=e.next().value;d=e.next().value;e=e.next().value;a=a.a.setClientInfo(b,d,e);c(a);break;case \'SessionService.injectVerificationScriptResources\':c=p(d).next().value;a.a.injectVerificationScriptResources(c);break;case \'SessionService.setCreativeType\':c=p(d).next().value;a.a.setCreativeType(c);break;case \'SessionService.setImpressionType\':c=p(d).next().value;a.a.setImpressionType(c);break;case \'SessionService.setContentUrl\':c=p(d).next().value;\na.a.a.s=c;break;case \'SessionService.sessionError\':b=p(d),c=b.next().value,b=b.next().value,a.a.error(c,b)}};function Z(){var a=X,b=hc,c=ic,d=Yb;this.f=ec;this.a=a;this.c=b;this.h=c;this.g=d;this.b=F()}n=Z.prototype;\nn.S=function(a){if(!(!(a&&L(a)&&N(a.impressionOwner,qa))||\'videoEventsOwner\'in a&&null!=a.videoEventsOwner&&!N(a.videoEventsOwner,qa)||\'mediaEventsOwner\'in a&&null!=a.mediaEventsOwner&&!N(a.mediaEventsOwner,qa))){if(a.creativeType&&a.impressionType){var b=a.mediaEventsOwner;null==this.b.a&&this.f.setCreativeType(a.creativeType,b);null==this.b.f&&(this.b.f=a.impressionType);nb(this.a,b)}else b=a.videoEventsOwner,this.b.b=null==b||\'none\'===b?\'display\':\'video\',this.b.a=null,this.b.f=null,nb(this.a,b);\nob(this.a,a.impressionOwner);a&&null!=a.isolateVerificationScripts&&\'boolean\'===typeof a.isolateVerificationScripts&&(this.b.C=a.isolateVerificationScripts)}};\nn.V=function(a,b,c,d){var e;if(L(b)){if(e=N(b.environment,ta)&&N(b.adSessionType,pa))e=b.omidNativeInfo,e=L(e)?M(e.partnerName)&&M(e.partnerVersion):!1;e&&(e=b.app,e=L(e)?M(e.libraryVersion)&&M(e.appId):!1)}else e=!1;e&&(Pb(d)&&(this.b.v=new Map(Object.entries(d))),d=this.f,c=void 0===c?null:c,null==a&&(a=Vb()),d.a.adSessionId=a,a=d.a,e=a.c||{},b.omidJsInfo=Object.assign({},e.omidJsInfo||{},b.omidJsInfo||{}),e=b=Object.assign({},e,b),a.C||(null!=a.i?(e.videoElement=a.i,e.accessMode=\'full\'):null!=\na.h&&(e.slotElement=a.h,e.accessMode=\'full\')),a.c=b,void 0!==b.contentUrl&&(a.s=b.contentUrl),eb(d.c,c),d.b&&R(d.b))};n.T=function(){var a=this.f;ib(a.c);a.b.m()};n.Z=function(a){L(a)&&rb(a.x)&&rb(a.y)&&rb(a.width)&&rb(a.height)&&(this.b.G=a,qb(this.c,\'container\'))};n.$=function(a){N(a,sa)&&(this.b.m=a,\'backgrounded\'===a?qb(this.c,\'container\',\'backgrounded\'):qb(this.c,\'container\'))};n.W=function(a){\'impression\'===a&&(this.L(),this.g&&R(this.g))};n.L=function(){pb(this.a,\'native\')&&jb(this.a,\'native\')};\nn.U=function(a){a=void 0===a?null:a;K(this.a,\'native\')&&kb(this.a,\'native\',a)};n.error=function(a,b){N(a,na)&&db(this.a,a,b)};n.X=function(a,b){this.M(a,b)};n.M=function(a,b){K(this.a,\'native\')&&N(a,y)&&(void 0===b||L(b))&&(\'loaded\'==a?kb(this.a,\'native\',b):lb(this.a,a,\'native\',b))};n.Y=function(a){if(\'none\'!==this.a.a.g&&\'number\'===typeof a&&!isNaN(a)){this.b.u=a;a=this.h;var b=a.a.B;null!=b&&lb(a.b,\'volumeChange\',\'native\',{mediaPlayerVolume:b,deviceVolume:a.a.u})}};Z.prototype.startSession=Z.prototype.V;\nZ.prototype.error=Z.prototype.error;Z.prototype.finishSession=Z.prototype.T;Z.prototype.publishAdEvent=Z.prototype.W;Z.prototype.publishImpressionEvent=Z.prototype.L;Z.prototype.publishVideoEvent=Z.prototype.X;Z.prototype.publishMediaEvent=Z.prototype.M;Z.prototype.publishLoadedEvent=Z.prototype.U;Z.prototype.setNativeViewHierarchy=Z.prototype.Z;Z.prototype.setState=Z.prototype.$;Z.prototype.setDeviceVolume=Z.prototype.Y;Z.prototype.init=Z.prototype.S;function jc(){var a=X,b=kc;var c=void 0===c?H:c;this.g=a;this.a=b;this.h={};this.f={};this.c=new V;c.omid=c.omid||{};c.omid.v1_VerificationServiceCommunication=this.c;this.b=null;c&&c.addEventListener&&c.postMessage&&(this.b=new Ub(c));this.c.a=this.i.bind(this);this.b&&(this.b.a=this.j.bind(this))}function lc(a,b,c,d){Eb(a.a,b,c,d)}function mc(a,b,c,d){Db(a.a,\'downloadJavaScriptResource\')(b,c,d)}jc.prototype.j=function(a,b){this.b&&nc(this,a,b,this.b)};jc.prototype.i=function(a,b){nc(this,a,b,this.c)};\nfunction nc(a,b,c,d){function e(C){for(var W=[],oa=0;oa<arguments.length;++oa)W[oa]=arguments[oa];W=new U(g,\'response\',f,ac(f)&&bc(f)?W:JSON.stringify(W));d.b(W,c)}var g=b.b,l=b.method,f=b.version;b=cc(f,b.a);try{switch(l){case \'VerificationService.addEventListener\':var h=p(b).next().value;Za(a.g,h,e);break;case \'VerificationService.addSessionListener\':var k=p(b),m=k.next().value,z=k.next().value;ab(a.g,e,m,z);break;case \'VerificationService.sendUrl\':var xa=p(b).next().value;lc(a,xa,function(){return e(!0)},\nfunction(){return e(!1)});break;case \'VerificationService.setTimeout\':var P=p(b),Q=P.next().value,G=P.next().value;a.h[Q]=Ab(a.a,\'setTimeout\')(e,G);break;case \'VerificationService.clearTimeout\':var sc=p(b).next().value;Cb(a.a,a.h[sc]);break;case \'VerificationService.setInterval\':var Mb=p(b),tc=Mb.next().value,uc=Mb.next().value;a.f[tc]=zb(a.a,e,uc);break;case \'VerificationService.clearInterval\':var vc=p(b).next().value;Bb(a.a,a.f[vc]);break;case \'VerificationService.injectJavaScriptResource\':var wc=\np(b).next().value;mc(a,wc,function(C){return e(!0,C)},function(){return e(!1)});break;case \'VerificationService.getVersion\':p(b).next();var xc=F().c.omidJsInfo;e(xc.serviceVersion)}}catch(C){d.b(new U(g,\'error\',f,\'\\n              name: \'+C.name+\'\\n              message: \'+C.message+\'\\n              filename: \'+C.filename+\'\\n              lineNumber: \'+C.lineNumber+\'\\n              columnNumber: \'+C.columnNumber+\'\\n              stack: \'+C.stack+\'\\n              toString(): \'+C.toString()+\'\\n          \'),\nc)}};function oc(){var a=H.document.createElement(\'iframe\');a.id=\'omid_v1_present\';a.name=\'omid_v1_present\';a.style.display=\'none\';H.document.body.appendChild(a)}function pc(){var a=new MutationObserver(function(b){b.forEach(function(c){\'BODY\'===c.addedNodes[0].nodeName&&(oc(),a.disconnect())})});a.observe(H.document.documentElement,{childList:!0})};var X=new Ta,kc=new function(){var a;this.a=a=void 0===a?omidGlobal:a};new jc;var qc=new function(){},rc=new function(){},hc=new function(){this.b=X;this.c=rc;this.a=F()},yc;H?yc=H.IntersectionObserver&&(H.MutationObserver||H.ResizeObserver)?new T(H,qc,hc,X):new S(H,rc,hc,kc,X):yc=null;var Yb=yc,Zb=new function(){var a=X;var b=void 0===b?H:b;this.f=a;this.b=b;this.c=F();this.a=[]},ec=new Xb,ic=new function(){var a=X,b=F();this.b=a;this.a=b};H.omidBridge=new Z;new dc;\nif(H.frames&&H.document&&!(\'omid_v1_present\'in H.frames)){var zc;if(zc=null==H.document.body)zc=\'MutationObserver\'in H;zc?pc():H.document.body?oc():H.document.write(\'<iframe style=\"display:none\" id=\"omid_v1_present\" name=\"omid_v1_present\"></iframe>\')};\n}).call(this, this);\n\n"

    invoke-direct {p0, v2, v1}, Lcom/vungle/warren/omsdk/OMInjector;->writeToFile(Ljava/lang/String;Ljava/io/File;)Ljava/io/File;

    invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 3
    new-instance v1, Ljava/io/File;

    const-string v2, "omsdk-session.js"

    invoke-direct {v1, p1, v2}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V

    const-string p1, ";(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.3.11-iab2310\'];\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  \'use strict\';\nvar $jscomp = $jscomp || {};\n$jscomp.scope = {};\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  return b ? b.call(a) : $jscomp.arrayIterator(a);\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.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.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 = \"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.defineProperty = $jscomp.ASSUME_ES5 || \"function\" == typeof Object.defineProperties ? Object.defineProperty : function(a, b, c) {\n  a != Array.prototype && a != Object.prototype && (a[b] = c.value);\n};\n$jscomp.getGlobal = function(a) {\n  return \"undefined\" != typeof window && window === a ? a : \"undefined\" != typeof global && null != global ? global : a;\n};\n$jscomp.global = $jscomp.getGlobal(this);\n$jscomp.SYMBOL_PREFIX = \"jscomp_symbol_\";\n$jscomp.initSymbol = function() {\n  $jscomp.initSymbol = function() {\n  };\n  $jscomp.global.Symbol || ($jscomp.global.Symbol = $jscomp.Symbol);\n};\n$jscomp.SymbolClass = function(a, b) {\n  this.$jscomp$symbol$id_ = a;\n  $jscomp.defineProperty(this, \"description\", {configurable:!0, writable:!0, value:b});\n};\n$jscomp.SymbolClass.prototype.toString = function() {\n  return this.$jscomp$symbol$id_;\n};\n$jscomp.Symbol = function() {\n  function a(c) {\n    if (this instanceof a) {\n      throw new TypeError(\"Symbol is not a constructor\");\n    }\n    return new $jscomp.SymbolClass($jscomp.SYMBOL_PREFIX + (c || \"\") + \"_\" + b++, c);\n  }\n  var b = 0;\n  return a;\n}();\n$jscomp.initSymbolIterator = function() {\n  $jscomp.initSymbol();\n  var a = $jscomp.global.Symbol.iterator;\n  a || (a = $jscomp.global.Symbol.iterator = $jscomp.global.Symbol(\"Symbol.iterator\"));\n  \"function\" != typeof Array.prototype[a] && $jscomp.defineProperty(Array.prototype, a, {configurable:!0, writable:!0, value:function() {\n    return $jscomp.iteratorPrototype($jscomp.arrayIteratorImpl(this));\n  }});\n  $jscomp.initSymbolIterator = function() {\n  };\n};\n$jscomp.initSymbolAsyncIterator = function() {\n  $jscomp.initSymbol();\n  var a = $jscomp.global.Symbol.asyncIterator;\n  a || (a = $jscomp.global.Symbol.asyncIterator = $jscomp.global.Symbol(\"Symbol.asyncIterator\"));\n  $jscomp.initSymbolAsyncIterator = function() {\n  };\n};\n$jscomp.iteratorPrototype = function(a) {\n  $jscomp.initSymbolIterator();\n  a = {next:a};\n  a[$jscomp.global.Symbol.iterator] = function() {\n    return this;\n  };\n  return a;\n};\n$jscomp.iteratorFromArray = function(a, b) {\n  $jscomp.initSymbolIterator();\n  a instanceof String && (a += \"\");\n  var c = 0, d = {next:function() {\n    if (c < a.length) {\n      var e = c++;\n      return {value:b(e, a[e]), done:!1};\n    }\n    d.next = function() {\n      return {done:!0, value:void 0};\n    };\n    return d.next();\n  }};\n  d[Symbol.iterator] = function() {\n    return d;\n  };\n  return d;\n};\n$jscomp.polyfill = function(a, b, c, d) {\n  if (b) {\n    c = $jscomp.global;\n    a = a.split(\".\");\n    for (d = 0; d < a.length - 1; d++) {\n      var e = a[d];\n      e in c || (c[e] = {});\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};\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\", LIMITED:\"limited\"}, AppState:{BACKGROUNDED:\"backgrounded\", FOREGROUNDED:\"foregrounded\"}, Environment:{APP:\"app\", WEB:\"web\"}, \nInteractionType:{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\"}, SupportedFeatures:{CONTAINER:\"clid\", VIDEO:\"vlid\"}, VideoPosition:{PREROLL:\"preroll\", MIDROLL:\"midroll\", \nPOSTROLL:\"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\", OBSTRUCTION_CLASS:\"obstructionClass\", OBSTRUCTION_PURPOSE:\"obstructionPurpose\", \nOBSTRUCTION_REASON:\"obstructionReason\", PIXELS:\"pixels\"}, MeasurementStateChangeSource:{CONTAINER:\"container\", CREATIVE:\"creative\"}, ElementMarkup:{OMID_ELEMENT_CLASS_NAME:\"omid-element\"}, CommunicationType:{NONE:\"NONE\", DIRECT:\"DIRECT\", POST_MESSAGE:\"POST_MESSAGE\"}, OmidImplementer:{OMSDK:\"omsdk\"}};\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 = {assertTruthyString:function(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}, assertNotNullObject:function(a, b) {\n  if (null == b) {\n    throw Error(\"Value for \" + a + \" is undefined or null\");\n  }\n}, assertNumber:function(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}, assertNumberBetween:function(a, b, c, d) {\n  (0,module$exports$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}, assertFunction:function(a, b) {\n  if (!b) {\n    throw Error(a + \" must not be truthy.\");\n  }\n}, assertPositiveNumber:function(a, b) {\n  (0,module$exports$omid$common$argsChecker.assertNumber)(a, b);\n  if (0 > b) {\n    throw Error(a + \" must be a positive number.\");\n  }\n}};\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}\nmodule$exports$omid$common$exporter.packageExport = function(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};\nvar module$exports$omid$sessionClient$Partner = function(a, b) {\n  module$exports$omid$common$argsChecker.assertTruthyString(\"Partner.name\", a);\n  module$exports$omid$common$argsChecker.assertTruthyString(\"Partner.version\", b);\n  this.name = a;\n  this.version = b;\n};\n(0,module$exports$omid$common$exporter.packageExport)(\"OmidSessionClient.Partner\", module$exports$omid$sessionClient$Partner);\nvar module$exports$omid$sessionClient$VerificationScriptResource = function(a, b, c) {\n  module$exports$omid$common$argsChecker.assertTruthyString(\"VerificationScriptResource.resourceUrl\", a);\n  this.resourceUrl = a;\n  this.vendorKey = b;\n  this.verificationParameters = c;\n};\nmodule$exports$omid$sessionClient$VerificationScriptResource.prototype.toJSON = function() {\n  return {resourceUrl:this.resourceUrl, vendorKey:this.vendorKey, verificationParameters:this.verificationParameters};\n};\n(0,module$exports$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$exports$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};\nmodule$exports$omid$sessionClient$Context.prototype.setVideoElement = function(a) {\n  module$exports$omid$common$argsChecker.assertNotNullObject(\"Context.videoElement\", a);\n  this.videoElement = a;\n};\nmodule$exports$omid$sessionClient$Context.prototype.setSlotElement = function(a) {\n  module$exports$omid$common$argsChecker.assertNotNullObject(\"Context.slotElement\", a);\n  this.slotElement = a;\n};\n(0,module$exports$omid$common$exporter.packageExport)(\"OmidSessionClient.Context\", module$exports$omid$sessionClient$Context);\nvar module$exports$omid$common$OmidGlobalProvider = {}, module$contents$omid$common$OmidGlobalProvider_globalThis = eval(\"this\");\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 module$contents$omid$common$OmidGlobalProvider_globalThis && module$contents$omid$common$OmidGlobalProvider_globalThis) {\n    return module$contents$omid$common$OmidGlobalProvider_globalThis;\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$logger = {error:function(a) {\n  for (var b = [], c = 0; c < arguments.length; ++c) {\n    b[c - 0] = arguments[c];\n  }\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(b))));\n  }, function() {\n    return console.error.apply(console, $jscomp.arrayFromIterable(b));\n  });\n}, debug:function(a) {\n  for (var b = [], c = 0; c < arguments.length; ++c) {\n    b[c - 0] = arguments[c];\n  }\n  module$contents$omid$common$logger_executeLog(function() {\n  }, function() {\n    return console.error.apply(console, $jscomp.arrayFromIterable(b));\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}\n;var module$exports$omid$common$eventTypedefs = {};\nvar module$exports$omid$common$version = {ApiVersion:\"1.0\", Version:\"1.3.11-iab2310\"};\nvar module$exports$omid$common$VersionUtils = {}, module$contents$omid$common$VersionUtils_SEMVER_DIGITS_NUMBER = 3;\nmodule$exports$omid$common$VersionUtils.isValidVersion = function(a) {\n  return /\\d+\\.\\d+\\.\\d+(-.*)?/.test(a);\n};\nmodule$exports$omid$common$VersionUtils.versionGreaterOrEqual = function(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 {\n      if (d < e) {\n        return !1;\n      }\n    }\n  }\n  return !0;\n};\nvar module$exports$omid$common$ArgsSerDe = {}, module$contents$omid$common$ArgsSerDe_ARGS_NOT_SERIALIZED_VERSION = \"1.0.3\";\nmodule$exports$omid$common$ArgsSerDe.serializeMessageArgs = function(a, b) {\n  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);\n};\nmodule$exports$omid$common$ArgsSerDe.deserializeMessageArgs = function(a, b) {\n  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) : [];\n};\nvar module$exports$omid$common$guid = {generateGuid:function() {\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}};\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}\nmodule$exports$omid$common$windowUtils.isCrossOrigin = function(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}\nmodule$exports$omid$common$windowUtils.resolveGlobalContext = function(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};\nmodule$exports$omid$common$windowUtils.resolveTopWindowContext = function(a) {\n  return module$contents$omid$common$windowUtils_isValidWindow(a) ? a.top : module$exports$omid$common$OmidGlobalProvider.omidGlobal;\n};\nmodule$exports$omid$common$windowUtils.evaluatePageUrl = function(a) {\n  if (!module$contents$omid$common$windowUtils_isValidWindow(a)) {\n    return null;\n  }\n  try {\n    var b = a.top;\n    return (0,module$exports$omid$common$windowUtils.isCrossOrigin)(b) ? null : b.location.href;\n  } catch (c) {\n    return null;\n  }\n};\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(a) {\n    if (\"object\" === typeof a.data) {\n      var b = a.data;\n      module$exports$omid$common$InternalMessage.isValidSerializedMessage(b) && (b = module$exports$omid$common$InternalMessage.deserialize(b), a.source && c.handleMessage(b, a.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 ? (0,module$exports$omid$common$windowUtils.isCrossOrigin)(this.to) : !0;\n};\nvar module$exports$omid$common$DetectOmid = {OMID_PRESENT_FRAME_NAME:\"omid_v1_present\", isOmidPresent:function(a) {\n  try {\n    return a.frames ? !!a.frames[module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME] : !1;\n  } catch (b) {\n    return !1;\n  }\n}, declareOmidPresence:function(a) {\n  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(\'<iframe style=\"display:none\" id=\"\' + (module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME + \'\" name=\"\') + (module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME + \n  \'\"></iframe>\'))));\n}, appendPresenceIframe_:function(a) {\n  var b = a.document.createElement(\"iframe\");\n  b.id = module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME;\n  b.name = module$exports$omid$common$DetectOmid.OMID_PRESENT_FRAME_NAME;\n  b.style.display = \"none\";\n  a.document.body.appendChild(b);\n}, isMutationObserverAvailable_:function(a) {\n  return \"MutationObserver\" in a;\n}, registerMutationObserver_:function(a) {\n  var b = new MutationObserver(function(c) {\n    c.forEach(function(c) {\n      \"BODY\" === c.addedNodes[0].nodeName && (module$exports$omid$common$DetectOmid.appendPresenceIframe_(a), b.disconnect());\n    });\n  });\n  b.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(a, b) {\n    return a && a[b];\n  }, a);\n}\nfunction module$contents$omid$common$serviceCommunication_startServiceCommunication(a, b, c, d) {\n  if (!(0,module$exports$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 (f) {\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}\nmodule$exports$omid$common$serviceCommunication.startSessionServiceCommunication = function(a, b, c) {\n  c = void 0 === c ? module$exports$omid$common$DetectOmid.isOmidPresent : c;\n  var d = [a, (0,module$exports$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};\nmodule$exports$omid$common$serviceCommunication.startVerificationServiceCommunication = function(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((0,module$exports$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};\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$exports$omid$common$argsChecker.assertNotNullObject(\"AdSession.context\", a);\n  this.context_ = a;\n  this.impressionOccurred_ = !1;\n  this.communication_ = b || (0,module$exports$omid$common$serviceCommunication.startSessionServiceCommunication)((0,module$exports$omid$common$windowUtils.resolveGlobalContext)());\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.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);\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);\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);\n};\nmodule$exports$omid$sessionClient$AdSession.prototype.error = function(a, b) {\n  this.sendOneWayMessage(\"sessionError\", a, b);\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\");\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\");\n};\nmodule$exports$omid$sessionClient$AdSession.prototype.sendOneWayMessage = function(a, b) {\n  for (var c = [], d = 1; d < arguments.length; ++d) {\n    c[d - 1] = arguments[d];\n  }\n  this.sendMessage.apply(this, [a, null].concat($jscomp.arrayFromIterable(c)));\n};\nmodule$exports$omid$sessionClient$AdSession.prototype.sendMessage = function(a, b, c) {\n  for (var d = [], e = 2; e < arguments.length; ++e) {\n    d[e - 2] = arguments[e];\n  }\n  this.communication_ ? this.sendInternalMessage_(a, b, d) : this.sessionInterface_.isSupported() && this.sendInterfaceMessage_(a, b, d);\n};\nmodule$exports$omid$sessionClient$AdSession.prototype.sendInternalMessage_ = function(a, b, c) {\n  var d = (0,module$exports$omid$common$guid.generateGuid)();\n  b && (this.callbackMap_[d] = b);\n  a = new module$exports$omid$common$InternalMessage(d, \"SessionService.\" + a, module$contents$omid$sessionClient$AdSession_SESSION_CLIENT_VERSION, (0,module$exports$omid$common$ArgsSerDe.serializeMessageArgs)(module$contents$omid$sessionClient$AdSession_SESSION_CLIENT_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 = (0,module$exports$omid$common$ArgsSerDe.deserializeMessageArgs)(module$contents$omid$sessionClient$AdSession_SESSION_CLIENT_VERSION, a);\n    this.callbackMap_[c].apply(this, d);\n  }\n  \"error\" === b && window.console && module$exports$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$exports$omid$common$logger.error(\"Failed to communicate with SessionInterface with error:\"), module$exports$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$contents$omid$sessionClient$AdSession_SESSION_CLIENT_VERSION, this.context_.partner.name, this.context_.partner.version);\n};\nmodule$exports$omid$sessionClient$AdSession.prototype.injectVerificationScripts_ = function(a) {\n  a && (a = a.map(function(a) {\n    return a.toJSON();\n  }), this.sendOneWayMessage(\"injectVerificationScriptResources\", a));\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.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);\n};\nmodule$exports$omid$sessionClient$AdSession.prototype.setElementBounds = function(a) {\n  module$exports$omid$common$argsChecker.assertNotNullObject(\"AdSession.elementBounds\", a);\n  this.sendOneWayMessage(\"setElementBounds\", a);\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};\n(0,module$exports$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$exports$omid$common$argsChecker.assertNotNullObject(\"AdEvents.adSession\", a);\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\");\n};\nmodule$exports$omid$sessionClient$AdEvents.prototype.loaded = function(a) {\n  a = void 0 === a ? null : a;\n  this.adSession.creativeLoaded();\n  a ? this.adSession.sendOneWayMessage(\"loaded\", a.toJSON()) : this.adSession.sendOneWayMessage(\"loaded\");\n};\n(0,module$exports$omid$common$exporter.packageExport)(\"OmidSessionClient.AdEvents\", module$exports$omid$sessionClient$AdEvents);\nvar module$exports$omid$sessionClient$MediaEvents = function(a) {\n  module$exports$omid$common$argsChecker.assertNotNullObject(\"MediaEvents.adSession\", a);\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$exports$omid$common$argsChecker.assertNumber(\"MediaEvents.start.duration\", a);\n  module$exports$omid$common$argsChecker.assertNumberBetween(\"MediaEvents.start.mediaPlayerVolume\", b, 0, 1);\n  this.adSession.sendOneWayMessage(\"start\", a, b);\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.firstQuartile = function() {\n  this.adSession.sendOneWayMessage(\"firstQuartile\");\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.midpoint = function() {\n  this.adSession.sendOneWayMessage(\"midpoint\");\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.thirdQuartile = function() {\n  this.adSession.sendOneWayMessage(\"thirdQuartile\");\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.complete = function() {\n  this.adSession.sendOneWayMessage(\"complete\");\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.pause = function() {\n  this.adSession.sendOneWayMessage(\"pause\");\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.resume = function() {\n  this.adSession.sendOneWayMessage(\"resume\");\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.bufferStart = function() {\n  this.adSession.sendOneWayMessage(\"bufferStart\");\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.bufferFinish = function() {\n  this.adSession.sendOneWayMessage(\"bufferFinish\");\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.skipped = function() {\n  this.adSession.sendOneWayMessage(\"skipped\");\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.volumeChange = function(a) {\n  module$exports$omid$common$argsChecker.assertNumberBetween(\"MediaEvents.volumeChange.mediaPlayerVolume\", a, 0, 1);\n  this.adSession.sendOneWayMessage(\"volumeChange\", a);\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.playerStateChange = function(a) {\n  module$exports$omid$common$argsChecker.assertNotNullObject(\"MediaEvents.playerStateChange.playerState\", a);\n  this.adSession.sendOneWayMessage(\"playerStateChange\", a);\n};\nmodule$exports$omid$sessionClient$MediaEvents.prototype.adUserInteraction = function(a) {\n  module$exports$omid$common$argsChecker.assertNotNullObject(\"MediaEvents.adUserInteraction.interactionType\", a);\n  this.adSession.sendOneWayMessage(\"adUserInteraction\", a);\n};\n(0,module$exports$omid$common$exporter.packageExport)(\"OmidSessionClient.MediaEvents\", module$exports$omid$sessionClient$MediaEvents);\nvar module$exports$omid$sessionClient$OmidVersion = function(a, b) {\n  module$exports$omid$common$argsChecker.assertTruthyString(\"OmidVersion.semanticVersion\", a);\n  module$exports$omid$common$argsChecker.assertTruthyString(\"OmidVersion.apiLevel\", b);\n};\n(0,module$exports$omid$common$exporter.packageExport)(\"OmidSessionClient.OmidVersion\", module$exports$omid$sessionClient$OmidVersion);\nvar module$exports$omid$sessionClient$VastPropertiesExports = {};\n(0,module$exports$omid$common$exporter.packageExport)(\"OmidSessionClient.VastProperties\", module$exports$omid$common$VastProperties);\n\n}, typeof exports === \'undefined\' ? undefined : exports));\n\n"

    invoke-direct {p0, p1, v1}, Lcom/vungle/warren/omsdk/OMInjector;->writeToFile(Ljava/lang/String;Ljava/io/File;)Ljava/io/File;

    invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    return-object v0
.end method