{
  "nativeAdsAdapter.adapter,getPosition": "var pos=this.getNpawReference().Constants.AdPosition;var ret=pos.Midroll;var video=this.getVideo();var isClientSide='google-ima'===(this.player.ads.currentAdBreak.integration||'');if(video){var adapter=video.getAdapter();if(adapter){var playhead=video.getPlayhead();var duration=video.getDuration()||0;if(playhead<0.1||(!isClientSide&&!adapter.flags.isJoined)){ret=pos.Preroll;}else if((isClientSide&&playhead+1>=duration)||(!isClientSide&&playhead+1+this.getDuration()>=duration)){ret=pos.Postroll;}}}return ret;",
  "nativeAdsAdapter.adapter,quartileListener,e": "var pos=this.getPlayhead()/this.duration;if(pos>=0.25){this.fireQuartile(1);if(pos>=0.5){this.fireQuartile(2);if(pos>=0.75){this.fireQuartile(3);}}}",
  "nativeAdsAdapter.adapter,resumeAdListener,e": "this.fireResume();",
  "nativeAdsAdapter.adapter,getIsVisible": "try{var tag=this.player ? this.player.element : null;}catch(err){}return tag ? this.getNpawUtils().calculateAdViewability(tag): false;",
  "nativeAdsAdapter.adapter,skipAdListener,e": "this.fireSkip();",
  "nativeAdsAdapter.adapter,_getCurrentAd": "var ads=this.player.ads;var ret=null;if(ads){if(ads.currentAds&&ads.currentAds[0]){ret=ads.currentAds[0];}else if(ads&&ads.currentAdBreak&&ads.currentAdBreak.ads[this.adCount-1]){ret=ads.currentAdBreak.ads[this.adCount-1];}}return ret;",
  "nativeAdsAdapter.adapter,errorAdListener,e": "this.fireError();if(!this.flags.isStarted){this.adCount=(this.adCount||0)+1;}",
  "nativeAdsAdapter.adapter,getGivenBreaks": "var ret=null;if(this.player.ads.scheduledAdBreaks){ret=this.player.ads.scheduledAdBreaks.length||ret;}return ret;",
  "nativeAdsAdapter.adapter,getIsSkippable": "var current=this._getCurrentAd();return current&&current.skipOffset ? current.skipOffset>=0 : false;",
  "nativeAdsAdapter.adapter,getIsFullscreen": "var ret=false;if(this.player.element&&this.player.element.clientWidth&&this.player.element.clientHeight){ret=(window.innerHeight<=this.player.element.clientHeight+30&&window.innerWidth<=this.player.element.clientWidth+30);}return ret;",
  "nativeAdsAdapter.adapter,getVersion": "return '7.0.13-theoplayer2-ads-js';",
  "nativeAdsAdapter.adapter,getAudioEnabled": "return!this.player.muted&&this.player.volume>0;",
  "nativeAdsAdapter.adapter,unregisterListeners": "if(this.monitor)this.monitor.stop();if(this.player&&this.player.ads&&this.references){for(var key in this.references){this.player.ads.removeEventListener(key,this.references[key]);}delete this.references;}if(this.player&&this.playerReferences){for(var key2 in this.playerReferences){this.player.removeEventListener(key2,this.playerReferences[key2]);}delete this.playerReferences;}",
  "nativeAdsAdapter.adapter,breakBeginListener,e": "this.adCount=0;this.actualSlot=e.ad;",
  "nativeAdsAdapter.adapter,registerListeners": "if(this.player.ads){this.isDAI=false;this.getNpawUtils().logAllEvents(this.player.ads);this.monitorPlayhead(true,false,2000);this.references={adbegin: this.playAdListener.bind(this),adend: this.endedAdListener.bind(this),aderror: this.errorAdListener.bind(this),adskip: this.skipAdListener.bind(this),adbreakbegin: this.breakBeginListener.bind(this),adbreakend: this.breakEndListener.bind(this)};if(typeof google!=='undefined'&&google.ima.dai){this.isDAI=true;}this.playerReferences={pause: this.pauseAdListener.bind(this),playing: this.resumeAdListener.bind(this),play: this.resumeAdListener.bind(this),timeupdate: this.quartileListener.bind(this)};for(var key in this.references){this.player.ads.addEventListener(key,this.references[key]);}for(var key2 in this.playerReferences){this.player.addEventListener(key2,this.playerReferences[key2]);}}",
  "nativeAdsAdapter.adapter,getPlayhead": "var ret=this.player.currentTime;if(this.isDAI==true){ret=this.player.currentTime-this.playhead;}return ret;",
  "nativeAdsAdapter.adapter,getDuration": "var current=this._getCurrentAd();return current&&current.duration ? current.duration : this.player.duration;",
  "nativeAdsAdapter.adapter,pauseAdListener,e": "this.firePause();",
  "nativeAdsAdapter.adapter,breakEndListener,e": "this.fireBreakStop();var adapter=this.getVideo().getAdapter();if(adapter){adapter.fireResume();}this.getVideo().requestBuilder.lastSent.givenAds=undefined;var postrollPosition=this.getNpawReference().Constants.AdPosition.Postroll;if(this.getPosition()===postrollPosition&&this.player.ads.scheduledAds.length===0){this.getVideo().getAdapter().fireStop({},'breakEndListener');}",
  "nativeAdsAdapter.adapter,getGivenAds": "return this.actualSlot ? this.actualSlot.ads.length : null;",
  "nativeAdsAdapter.adapter,endedAdListener,e": "var adapter=this.getVideo().getAdapter();if(adapter&&!adapter.flags.isStarted){this.fireStart();}this.fireStop({adPlayhead: this.duration});",
  "nativeAdsAdapter.adapter,getResource": "var ret=null;var current=this._getCurrentAd();if(current){if(current.mediaUrl){ret=current.mediaUrl;}else if(current.mediaFiles){ret=current.mediaFiles[0].resourceURI||current.mediaFiles[0].contentURL;}}return ret;",
  "nativeAdsAdapter.adapter,getTitle": "var current=this._getCurrentAd();return current&&current.title ? current.title : 'unknown';",
  "nativeAdsAdapter.adapter,playAdListener,e": "this.adCount=(this.adCount||0)+1;var adapter=this.getVideo().getAdapter();if(adapter){adapter.ended=false;adapter.fireInit();adapter.firePause();}this.fireStart({adPlayhead: '0'});this.fireJoin({adPlayhead: '0'});this.duration=this.getDuration();this.playhead=this.player.currentTime;",
  
  "adapter,checkExistsPlayer": "try{if(this.player.element){return this.checkExistsObjectOnPage(this.player.element);}}catch(err){return true;}",
  "adapter,getBitrate": "var ret=-1;var qty=this.getActiveQuality();if(qty&&qty.bandwidth){ret=qty.bandwidth;}return ret;",
  "adapter,pauseListener,e": "this.firePlayerLog('pauseListener',{});if(!this.flags.isSeeking){this.firePause({},'pauseListener');}",
  "adapter,offlineListener,e": "this.firePlayerLog('offlineListener',{});this.fireError('OFFLINE_SOURCE','OFFLINE_SOURCE',undefined,undefined,'offlineListener');",
  "adapter,getRendition": "this._setLanguage();var ret=null;var qty=this.getActiveQuality();if(qty){if(qty.name&&isNaN(qty.name)){ret=qty.name;}else{ret=this.getNpawUtils().buildRenditionString(qty.width,qty.height,qty.bandwidth);}}else if(this.player.videoHeight&&this.player.videoWidth){ret=this.getNpawUtils().buildRenditionString(this.player.videoWidth,this.player.videoHeight,0);}return ret;",
  "adapter,getLatency": "var ret=null;if(this.getIsLive()&&this.player.currentProgramDateTime!==null){var now=new Date().getTime();ret=now-this.player.currentProgramDateTime;}return ret;",
  "adapter,getPlayerVersion": "var version='THEOplayer';if(typeof THEOplayer!=='undefined'){version+=THEOplayer.version;}else if(typeof theoplayer!=='undefined'){version+=theoplayer.version;}return version;",
  "adapter,playListener,e": "this.firePlayerLog('playListener',{});if(!this.player.autoplay){this.fireInit({},'playListener');}",
  "adapter,endedListener,e": "this.firePlayerLog('endedListener',{});if(this.flags.isStarted){this.fireStop({},'endedListener');this.ended=true;}",
  "adapter,getPlayrate": "try{return this.player.playbackRate;}catch(err){}return 0;",
  "adapter,getActiveQuality": "var vTracks=this.player.videoTracks;for(var i=0;i<vTracks.length;i++){var currentTrack=vTracks.item(i);if(currentTrack.enabled){return currentTrack.activeQuality;}}return{};",
  "adapter,playrateListener,e": "if(this.monitor){this.monitor.skipNextTick();}",
  "adapter,getPlayhead": "var ret=null;try{if((this.player.ads&&this.player.ads.playing)||(this.flags.isSeeking&&this.flags.isPaused)){ret=this.lastPlayhead;}else{this.lastPlayhead=this.player.currentTime;ret=this.player.currentTime;}}catch(err){}return ret;",
  "adapter,getDuration": "var ret=null;if(this.player.ads&&this.player.ads.playing){ret=this.lastDuration||ret;}else{this.lastDuration=this.player.duration;ret=this.lastDuration;}return ret;",
  "adapter,getThroughput": "if(this.player){if(this.player.metrics&&this.player.metrics.currentBandwidthEstimate){return this.player.metrics.currentBandwidthEstimate;}}return null;",
  "adapter,getDroppedFrames": "return this.player.metrics ? this.player.metrics.droppedVideoFrames : null;",
  "adapter,getVersion": "return '7.0.13-theoplayer2-js';",
  "adapter,unregisterListeners": "if(this.getVideo()){this.getVideo().removeAdsAdapter();}if(this.monitor)this.monitor.stop();if(this.player&&this.references){for(var key in this.references){this.player.removeEventListener(key,this.references[key]);}delete this.references;}if(this.player&&this.player.network&&this.networkReferences){this.player.network.removeRequestInterceptor(this.requestInterceptor);this.player.network.removeResponseInterceptor(this.responseInterceptor);for(var key2 in this.networkReferences){this.player.network.removeEventListener(key2,this.networkReferences[key2]);}delete this.networkReferences;delete this.requestInterceptor;delete this.responseInterceptor;}",
  "adapter,stateChangeListener,e": "if(e.readyState===1&&((this.player.src!==this.previousSrc)&&(this.player.src!==undefined))){this.fireInit({},'stateChangeListener');this.previousSrc=this.player.src;}if(e.currentTime===0&&e.readyState===0&&((this.player.src!==this.previousSrc)&&(this.player.src!==undefined))){this.fireStop();this.previousSrc=this.player.src;}",
  "adapter,_segmentUrl": "var ret=null;if(this.getVideo()&&this.getVideo().options&&!this.getVideo().options['parse.manifest']&&this.parsedUrl){ret={parsedResource: this.parsedUrl};}return ret;",
  "adapter,getIsLive": "return isNaN(this.player.duration)? null : this.player.duration===Infinity;",
  "adapter,_setLanguage": "if(this.getVideo()){var tracks=this.player.audioTracks;for(var track in tracks){var t=tracks[track];if(t.activeQuality){this.getVideo().options['content.language']=t.language==='und' ? t.name||t.label : t.language;}}}",
  "adapter,registerListeners": "this.getNpawUtils().logAllEvents(this.player);this.monitorPlayhead(false,true);this.references={play: this.playListener.bind(this),playing: this.playingListener.bind(this),pause: this.pauseListener.bind(this),seeking: this.seekingListener.bind(this),ended: this.endedListener.bind(this),error: this.errorListener.bind(this),readystatechange: this.stateChangeListener.bind(this),sourcechange: this.endedListener.bind(this),timeupdate: this.timeUpdateListener.bind(this),ratechange: this.playrateListener.bind(this),waiting: this.waitingListener.bind(this)};this.networkReferences={offline: this.offlineListener.bind(this)};for(var key in this.references){this.player.addEventListener(key,this.references[key]);}if(this.player.network){for(var key2 in this.networkReferences){this.player.network.addEventListener(key2,this.networkReferences[key2]);}}if(!this.getVideo().getAdsAdapter()&&this.player.ads){this.getAdapterClass('nativeAdsAdapter')._updatePlayer(this.player);this.plugin.setAdsAdapter(this.getAdapterClass('nativeAdsAdapter'),this.getVideo().getVideoKey());}",
  "adapter,getResource": "if(this.player.src&&!this.previousSrc){this.previousSrc=this.player.src;}return this.player.src||null;",
  "adapter,getURLToParse": "return this.parsedUrl;",
  "adapter,seekingListener,e": "this.firePlayerLog('seekingListener',{});this.fireSeekBegin({},false,'seekingListener');",
  "adapter,timeUpdateListener,e": "if(!this.player.ads||!this.player.ads.playing){if(!this.flags.isStarted&&e.currentTime&&!this.ended){if(this.getIsLive()||e.currentTime+1<this.getDuration()){this.fireStart(this._segmentUrl(),'timeUpdateListener');this.fireJoin(this._segmentUrl(),'timeUpdateListener');}}if(!this.flags.isPaused){this.fireSeekEnd({},'timeUpdateListener');this.fireBufferEnd({},'timeUpdateListener');}}",
  "adapter,getPlayerName": "return 'THEOplayer';",
  "adapter,playingListener,e": "this.firePlayerLog('playingListener',{});if(!this.getVideo().getAdsAdapter()||!this.getVideo().getAdsAdapter().flags.isStarted){if(this.flags.isSeeking&&!this.flags.isPaused){this.fireSeekEnd({},'playingListener');}if(this.flags.isBuffering&&!this.flags.isPaused){this.fireBufferEnd({},'playingListener');}this.fireResume({},'playingListener');if(!this.player.ads||!this.player.ads.playing){this.ended=false;this.fireStart(this._segmentUrl(),'playingListener');}this.fireJoin({},'playingListener');}",
  "adapter,waitingListener,e": "this.firePlayerLog('waitingListener',{});if(!this.flags.isPaused&&!this.flags.isSeeking){this.fireBufferBegin({},false,'waitingListener');}",
  "adapter,errorListener,e": "this.firePlayerLog('errorListener',{});var eventErrorObjectCode,playerErrorObjectCode,playerErrorCode,eventErrorObjectMessage,playerErrorObjectMessage,playerErrorMessage,eventErrorObjectCause,playerErrorObjectCause,playerErrorCause;if(e.errorObject){eventErrorObjectCode=e.errorObject.code;eventErrorObjectMessage=e.errorObject.message;eventErrorObjectCause=!!e.errorObject.cause&&e.errorObject.cause.message;}else{eventErrorObjectMessage=e.error;}if(this.player&&this.player.errorObject){playerErrorObjectCode=this.player.errorObject.code;playerErrorObjectMessage=this.player.errorObject.message;playerErrorObjectCause=!!this.player.errorObject.cause&&this.player.errorObject.cause.message;}if(this.player&&this.player.error){playerErrorCode=this.player.error.code;playerErrorMessage=this.player.error.message;playerErrorCause=this.player.error.cause;}var messages=[];if(eventErrorObjectMessage){messages.push('event: '+eventErrorObjectMessage);}if(playerErrorObjectMessage){messages.push('player.errorObject: '+playerErrorObjectMessage);}if(playerErrorMessage){messages.push('player.error: '+playerErrorMessage);}var causes=[];if(eventErrorObjectCause){causes.push('event: '+eventErrorObjectCause);}if(playerErrorObjectCause){causes.push('player.errorObject: '+playerErrorObjectCause);}if(playerErrorCause){causes.push('player.error: '+playerErrorCause);}var codes=[];if(eventErrorObjectCode){codes.push('event: '+eventErrorObjectCode);}if(playerErrorObjectCode){codes.push('player.errorObject: '+playerErrorObjectCode);}if(playerErrorCode){codes.push('player.error: '+playerErrorCode);}var code=eventErrorObjectCode||playerErrorObjectCode||playerErrorCode||'GENERIC_ERROR';var msg='[MESSAGES] '+messages.join('-')+'-[CAUSES] '+causes.join('-')+'-[CODES] '+codes.join('-');this.fireFatalError(code,msg,undefined,undefined,'errorListener');"
}
