@bitmovin/player-web-x 10.2.0-beta.12 → 10.2.0-beta.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/bundles/playerx-bitmovin-v8-core.js +2 -2
  2. package/bundles/playerx-bitmovin-v8.js +2 -2
  3. package/bundles/playerx-core.js +2 -2
  4. package/bundles/playerx-dash.js +2 -2
  5. package/bundles/playerx-hls-ts-audio.js +2 -2
  6. package/bundles/playerx-hls.js +2 -2
  7. package/bundles/playerx-playback.js +2 -2
  8. package/bundles/playerx-tv.js +2 -2
  9. package/package.json +1 -1
  10. package/packages/playerx-adaptation.package.js +2 -2
  11. package/packages/playerx-advertising-api.package.js +1 -1
  12. package/packages/playerx-advertising-base.package.js +1 -1
  13. package/packages/playerx-advertising-bitmovin.package.js +2 -2
  14. package/packages/playerx-analytics.package.js +1 -1
  15. package/packages/playerx-bitmovin-advertising-bundle.package.js +2 -2
  16. package/packages/playerx-bitmovin-source-api.package.js +1 -1
  17. package/packages/playerx-bitmovin-ui.package.js +1 -1
  18. package/packages/playerx-bitmovin-v8-core.package.js +1 -1
  19. package/packages/playerx-bitmovin-v8-static-api.package.js +1 -1
  20. package/packages/playerx-bitmovin-video-element-utils.package.js +1 -1
  21. package/packages/playerx-capabilities.package.js +1 -1
  22. package/packages/playerx-container-mp4.package.js +1 -1
  23. package/packages/playerx-container-ts.package.js +1 -1
  24. package/packages/playerx-core.package.js +2 -2
  25. package/packages/playerx-dash-manifest-technology.package.js +1 -1
  26. package/packages/playerx-dash-manifest.package.js +2 -2
  27. package/packages/playerx-dash-parsing.package.js +1 -1
  28. package/packages/playerx-dash-translation.package.js +1 -1
  29. package/packages/playerx-dash.package.js +2 -2
  30. package/packages/playerx-data.package.js +2 -2
  31. package/packages/playerx-event-bus.package.js +1 -1
  32. package/packages/playerx-hls-manifest-technology.package.js +1 -1
  33. package/packages/playerx-hls-manifest.package.js +1 -1
  34. package/packages/playerx-hls-parsing.package.js +1 -1
  35. package/packages/playerx-hls-translation.package.js +1 -1
  36. package/packages/playerx-hls.package.js +1 -1
  37. package/packages/playerx-mse-playback.package.js +1 -1
  38. package/packages/playerx-mse-presentation.package.js +1 -1
  39. package/packages/playerx-native-playback.package.js +2 -2
  40. package/packages/playerx-native-presentation.package.js +1 -1
  41. package/packages/playerx-network.package.js +2 -2
  42. package/packages/playerx-no-adaptation.package.js +2 -2
  43. package/packages/playerx-playback-api.package.js +1 -1
  44. package/packages/playerx-playback-technology.package.js +1 -1
  45. package/packages/playerx-playback.package.js +2 -2
  46. package/packages/playerx-player-api.package.js +1 -1
  47. package/packages/playerx-segment-processing.package.js +1 -1
  48. package/packages/playerx-source.package.js +1 -1
  49. package/packages/playerx-sources-api.package.js +1 -1
  50. package/packages/playerx-stream-data-structure.package.js +1 -1
  51. package/packages/playerx-streaming.package.js +1 -1
  52. package/packages/playerx-subtitle-api.package.js +1 -1
  53. package/packages/playerx-subtitle-base.package.js +1 -1
  54. package/packages/playerx-subtitle-format-detection.package.js +1 -1
  55. package/packages/playerx-subtitle-native-renderer.package.js +1 -1
  56. package/packages/playerx-subtitles.package.js +1 -1
  57. package/packages/playerx-trick-play.package.js +1 -1
  58. package/packages/playerx-ts-transmuxer.package.js +1 -1
  59. package/packages/playerx-tv.package.js +1 -1
  60. package/packages/playerx-ui.package.js +1 -1
  61. package/packages/playerx-view-mode.package.js +1 -1
  62. package/packages/playerx-web-vtt.package.js +1 -1
  63. package/playerx-framework-utils.js +1 -1
@@ -5,6 +5,6 @@
5
5
  * source code is subject to the terms and conditions of the accompanying
6
6
  * license agreement.
7
7
  *
8
- * Bitmovin Player X Version 10.2.0-beta.12
8
+ * Bitmovin Player X Version 10.2.0-beta.13
9
9
  *******************************************************************************/
10
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["advertising-bitmovin"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["advertising-bitmovin"]=t())}(self,(()=>(()=>{"use strict";var e={23590:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.isAbortable=t.sequence=t.rightCompose=t.race=t.forEach=t.map=t.abortAndWaitForExit=t.waitForExit=t.rejectAfter=t.resolveAfter=t.linkAbortSignal=t.Abortable=void 0;const n=r(94902);class i extends n.Awaitable{constructor(e,t=new AbortController){const r=[],a=()=>r.forEach((e=>e()));super(((n,i)=>{r.push((()=>t.signal.removeEventListener("abort",o)));const o=()=>{a(),i(t.signal.reason)},s=e=>{t.signal.aborted?i(t.signal.reason):n(e)},c=e=>{t.abort(e),i(e)};t.signal.addEventListener("abort",o);try{const r=e(s,c,t);r instanceof Promise&&r.catch(i)}catch(e){i(e)}})),this.abortController=t,this.finally(a).catch((()=>{}))}abort(e){this.abortController.abort(e)}static resolve(e){return new i((t=>t(e)))}static reject(e){return new i(((t,r)=>r(e)))}}function o(e,t){const r=()=>{t.removeEventListener("abort",r),e.abort(t.reason)};return t.addEventListener("abort",r),e.finally((()=>t.removeEventListener("abort",r))).catch((()=>{})),e}function s(e,t,r){try{const a=t(r);return o(g(a)?a:i.resolve(a),e)}catch(e){return i.reject(e instanceof Error?e:new Error(String(e)))}}function c(e,t){return new i(((r,n,i)=>{o(e,i.signal).then((e=>a(this,void 0,void 0,(function*(){yield t(),i.signal.aborted?n(i.signal.reason):r(e)})))).catch((e=>n(e)))}))}function d(e,t){const r=new i(((r,n)=>{e.then((e=>r(e))).catch((e=>a(this,void 0,void 0,(function*(){yield t(e),n(e)}))))}));return r.abort=t=>{e.abort(t)},r}function l(e){return e.catch((()=>{})).then((()=>{}))}function u(e,t){return t.abort(e),l(t)}function p(e,t){return new i(((r,a,n)=>{const i=[];let o=Promise.resolve();e.forEach((e=>o=o.then((()=>{n.signal.aborted?a(n.signal.reason):i.push(t(e))})))),o=o.then((()=>r(i))).catch(a)}))}function h(e,t){return new i(((r,a,n)=>{o(p(e,t),n.signal).then((()=>r())).catch(a)}))}function m(e){return new i(((t,r,a)=>Promise.race(e.map((e=>o(e,a.signal)))).then((e=>t(e))).catch((e=>r(e)))))}function f(e,t,r){return o(new i(((e,n,i)=>{o(t,i.signal).then((t=>a(this,void 0,void 0,(function*(){i.signal.aborted?n(i.signal.reason):o(r(t),i.signal).then(e).catch(n)})))).catch(n)})),e)}function v(e,...t){if(1===t.length)return r=>s(e,t[0],r);const[r,...a]=t;return t=>f(e,s(e,r,t),v(e,...a))}function g(e){return Boolean(e)&&"object"==typeof e&&null!==e&&"abort"in e&&"function"==typeof e.abort}t.Abortable=i,t.linkAbortSignal=o,t.resolveAfter=c,t.rejectAfter=d,t.waitForExit=l,t.abortAndWaitForExit=u,t.map=p,t.forEach=h,t.race=m,t.rightCompose=f,t.sequence=v,t.isAbortable=g},19281:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createEffectFactory=void 0;const r=e=>e;t.createEffectFactory=r},66400:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AbortableEffectFactory=void 0;const a=r(23590),n=r(19281);t.AbortableEffectFactory=(0,n.createEffectFactory)((()=>{const e=[];return{effect:{abortable:t=>{const r=new a.Abortable(((e,r,a)=>t(e,r,a)));return e.push(r),r.catch((()=>{})).finally((()=>{const t=e.indexOf(r);-1!==t&&e.splice(t,1)})),r}},removeEffect:()=>{for(const t of e)t.abort(new Error("AbortableEffect was removed"));e.splice(0,e.length)}}}))},97085:(e,t)=>{function r(e,t,r){const a=t;return a._name=e,{onAdd:a,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},91270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function a(e){return(...t)=>{const[a,n]=e(...t);return r(a,n)}}function n(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=a,t.getTaskName=n},94902:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Awaitable=void 0;class r{constructor(e){const t=new Promise(((t,r)=>{this._reject=r,this._resolve=t,null==e||e(t,r)}));this.boundThen=t.then.bind(t),this.boundCatch=t.catch.bind(t),this.boundFinally=t.finally.bind(t)}get then(){return this.boundThen}get catch(){return this.boundCatch}get finally(){return this.boundFinally}get[Symbol.toStringTag](){return this.constructor.name}}t.Awaitable=r},83966:(e,t,r)=>{function a(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{id:e.id||null,adId:e.adId||null,sequence:e.sequence||null,apiFramework:e.apiFramework||null,universalAdIds:[],creativeExtensions:[]}}r.r(t),r.d(t,{VASTClient:()=>G,VASTParser:()=>F,VASTTracker:()=>Q,parseDuration:()=>v});const n=["ADCATEGORIES","ADCOUNT","ADPLAYHEAD","ADSERVINGID","ADTYPE","APIFRAMEWORKS","APPBUNDLE","ASSETURI","BLOCKEDADCATEGORIES","BREAKMAXADLENGTH","BREAKMAXADS","BREAKMAXDURATION","BREAKMINADLENGTH","BREAKMINDURATION","BREAKPOSITION","CLICKPOS","CLICKTYPE","CLIENTUA","CONTENTID","CONTENTPLAYHEAD","CONTENTURI","DEVICEIP","DEVICEUA","DOMAIN","EXTENSIONS","GDPRCONSENT","IFA","IFATYPE","INVENTORYSTATE","LATLONG","LIMITADTRACKING","MEDIAMIME","MEDIAPLAYHEAD","OMIDPARTNER","PAGEURL","PLACEMENTTYPE","PLAYERCAPABILITIES","PLAYERSIZE","PLAYERSTATE","PODSEQUENCE","REGULATIONS","SERVERSIDE","SERVERUA","TRANSACTIONID","UNIVERSALADID","VASTVERSIONS","VERIFICATIONVENDORS"];function i(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const a=[],n=c(e);!t.ERRORCODE||r.isCustomCode||/^[0-9]{3}$/.test(t.ERRORCODE)||(t.ERRORCODE=900),t.CACHEBUSTING=h(Math.round(1e8*Math.random())),t.TIMESTAMP=(new Date).toISOString(),t.RANDOM=t.random=t.CACHEBUSTING;for(const e in t)t[e]=p(t[e]);for(const e in n){const r=n[e];"string"==typeof r&&a.push(o(r,t))}return a}function o(e,t){const r=(e=s(e,t)).match(/[^[\]]+(?=])/g);if(!r)return e;let a=r.filter((e=>n.indexOf(e)>-1));return 0===a.length?e:(a=a.reduce(((e,t)=>(e[t]=-1,e)),{}),s(e,a))}function s(e,t){let r=e;for(const e in t){const a=t[e];r=r.replace(new RegExp("(?:\\[|%%)(".concat(e,")(?:\\]|%%)"),"g"),a)}return r}function c(e){return Array.isArray(e)?e.map((e=>e&&e.hasOwnProperty("url")?e.url:e)):e}function d(e){return/^(https?:\/\/|\/\/)/.test(e)}function l(e,t){for(let r=0;r<t.length;r++)if(u(t[r],e))return!0;return!1}function u(e,t){if(e&&t){const r=Object.getOwnPropertyNames(e),a=Object.getOwnPropertyNames(t);return r.length===a.length&&e.id===t.id&&e.url===t.url}return!1}function p(e){return encodeURIComponent(e).replace(/[!'()*]/g,(e=>"%".concat(e.charCodeAt(0).toString(16))))}function h(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:8;return e.toString().padStart(t,"0")}const m={track:function(e,t,r){i(e,t,r).forEach((e=>{"undefined"!=typeof window&&null!==window&&((new Image).src=e)}))},resolveURLTemplates:i,extractURLsFromTemplates:c,filterUrlTemplates:function(e){return e.reduce(((e,t)=>{const r=t.url||t;return d(r)?e.validUrls.push(r):e.invalidUrls.push(r),e}),{validUrls:[],invalidUrls:[]})},containsTemplateObject:l,isTemplateObjectEqual:u,encodeURIComponentRFC3986:p,replaceUrlMacros:o,isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},flatten:function e(t){return t.reduce(((t,r)=>t.concat(Array.isArray(r)?e(r):r)),[])},joinArrayOfUniqueTemplateObjs:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const r=Array.isArray(e)?e:[],a=Array.isArray(t)?t:[];return r.concat(a).reduce(((e,t)=>(l(t,e)||e.push(t),e)),[])},isValidTimeValue:function(e){return Number.isFinite(e)&&e>=-2},addLeadingZeros:h,isValidUrl:d,isBrowserEnvironment:function(){return"undefined"!=typeof window},formatMacrosValues:function(e){return"object"!=typeof e?e:JSON.stringify(e)}};function f(e){return["true","TRUE","True","1"].includes(e)}function v(e){if(null==e)return-1;if(m.isNumeric(e))return parseInt(e);const t=e.split(":");if(3!==t.length)return-1;const r=t[2].split(".");let a=parseInt(r[0]);2===r.length&&(a+=parseFloat("0.".concat(r[1])));const n=parseInt(60*t[1]),i=parseInt(60*t[0]*60);return isNaN(i)||isNaN(n)||isNaN(a)||n>3600||a>60?-1:i+n+a}const g={childByName:function(e,t){return Array.from(e.childNodes).find((e=>e.nodeName===t))},childrenByName:function(e,t){return Array.from(e.childNodes).filter((e=>e.nodeName===t))},resolveVastAdTagURI:function(e,t){if(!t)return e;if(e.startsWith("//")){const{protocol:t}=location;return"".concat(t).concat(e)}if(!e.includes("://")){const r=t.slice(0,t.lastIndexOf("/"));return"".concat(r,"/").concat(e)}return e},parseBoolean:f,parseNodeText:function(e){return e&&(e.textContent||e.text||"").trim()},copyNodeAttribute:function(e,t,r){const a=t.getAttribute(e);a&&r.setAttribute(e,a)},parseAttributes:function(e){return Array.from(e.attributes).reduce(((e,t)=>(e[t.nodeName]=t.nodeValue,e)),{})},parseDuration:v,getStandAloneAds:function(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).filter((e=>!parseInt(e.sequence,10)))},getSortedAdPods:function(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).filter((e=>parseInt(e.sequence,10))).sort(((e,t)=>e.sequence-t.sequence))},assignAttributes:function(e,t){e&&Array.from(e).forEach((e=>{let{nodeName:r,nodeValue:a}=e;if(r&&a&&t.hasOwnProperty(r)){let e=a;"boolean"==typeof t[r]&&(e=f(e)),t[r]=e}}))},mergeWrapperAdData:function(e,t){var r;e.errorURLTemplates=t.errorURLTemplates.concat(e.errorURLTemplates),e.impressionURLTemplates=t.impressionURLTemplates.concat(e.impressionURLTemplates),e.extensions=t.extensions.concat(e.extensions),t.viewableImpression.length>0&&(e.viewableImpression=[...e.viewableImpression,...t.viewableImpression]),e.followAdditionalWrappers=t.followAdditionalWrappers,e.allowMultipleAds=t.allowMultipleAds,e.fallbackOnNoAd=t.fallbackOnNoAd;const a=(t.creatives||[]).filter((e=>e&&"companion"===e.type)),n=a.reduce(((e,t)=>((t.variations||[]).forEach((t=>{(t.companionClickTrackingURLTemplates||[]).forEach((t=>{m.containsTemplateObject(t,e)||e.push(t)}))})),e)),[]);e.creatives=a.concat(e.creatives);const i=t.videoClickTrackingURLTemplates&&t.videoClickTrackingURLTemplates.length,o=t.videoCustomClickURLTemplates&&t.videoCustomClickURLTemplates.length;if(e.creatives.forEach((e=>{if(t.trackingEvents&&t.trackingEvents[e.type])for(const r in t.trackingEvents[e.type]){const a=t.trackingEvents[e.type][r];Array.isArray(e.trackingEvents[r])||(e.trackingEvents[r]=[]),e.trackingEvents[r]=e.trackingEvents[r].concat(a)}"linear"===e.type&&(i&&(e.videoClickTrackingURLTemplates=e.videoClickTrackingURLTemplates.concat(t.videoClickTrackingURLTemplates)),o&&(e.videoCustomClickURLTemplates=e.videoCustomClickURLTemplates.concat(t.videoCustomClickURLTemplates)),!t.videoClickThroughURLTemplate||null!==e.videoClickThroughURLTemplate&&void 0!==e.videoClickThroughURLTemplate||(e.videoClickThroughURLTemplate=t.videoClickThroughURLTemplate)),"companion"===e.type&&n.length&&(e.variations||[]).forEach((e=>{e.companionClickTrackingURLTemplates=m.joinArrayOfUniqueTemplateObjs(e.companionClickTrackingURLTemplates,n)}))})),t.adVerifications&&(e.adVerifications=e.adVerifications.concat(t.adVerifications)),t.blockedAdCategories&&(e.blockedAdCategories=e.blockedAdCategories.concat(t.blockedAdCategories)),null!==(r=t.creatives)&&void 0!==r&&r.length){const r=t.creatives.filter((e=>{var t;return(null===(t=e.icons)||void 0===t?void 0:t.length)&&!e.mediaFiles.length}));r.length&&(e.creatives=e.creatives.concat(r))}}};function y(e,t){const r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{id:t,adId:r,sequence:n,apiFramework:i}=a(e);return{id:t,adId:r,sequence:n,apiFramework:i,type:"companion",required:null,variations:[]}}(t);return r.required=e.getAttribute("required")||null,r.variations=g.childrenByName(e,"Companion").map((e=>{const t=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{id:e.id||null,adType:"companionAd",width:e.width||0,height:e.height||0,assetWidth:e.assetWidth||null,assetHeight:e.assetHeight||null,expandedWidth:e.expandedWidth||null,expandedHeight:e.expandedHeight||null,apiFramework:e.apiFramework||null,adSlotId:e.adSlotId||null,pxratio:e.pxratio||"1",renderingMode:e.renderingMode||"default",staticResources:[],htmlResources:[],iframeResources:[],adParameters:null,altText:null,companionClickThroughURLTemplate:null,companionClickTrackingURLTemplates:[],trackingEvents:{}}}(g.parseAttributes(e));t.htmlResources=g.childrenByName(e,"HTMLResource").reduce(((e,t)=>{const r=g.parseNodeText(t);return r?e.concat(r):e}),[]),t.iframeResources=g.childrenByName(e,"IFrameResource").reduce(((e,t)=>{const r=g.parseNodeText(t);return r?e.concat(r):e}),[]),t.staticResources=g.childrenByName(e,"StaticResource").reduce(((e,t)=>{const r=g.parseNodeText(t);return r?e.concat({url:r,creativeType:t.getAttribute("creativeType")||null}):e}),[]),t.altText=g.parseNodeText(g.childByName(e,"AltText"))||null;const r=g.childByName(e,"TrackingEvents");r&&g.childrenByName(r,"Tracking").forEach((e=>{const r=e.getAttribute("event"),a=g.parseNodeText(e);r&&a&&(Array.isArray(t.trackingEvents[r])||(t.trackingEvents[r]=[]),t.trackingEvents[r].push(a))})),t.companionClickTrackingURLTemplates=g.childrenByName(e,"CompanionClickTracking").map((e=>({id:e.getAttribute("id")||null,url:g.parseNodeText(e)}))),t.companionClickThroughURLTemplate=g.parseNodeText(g.childByName(e,"CompanionClickThrough"))||null;const a=g.childByName(e,"AdParameters");return a&&(t.adParameters={value:g.parseNodeText(a),xmlEncoded:a.getAttribute("xmlEncoded")||null}),t})),r}function A(e,t){let r;const n=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{id:t,adId:r,sequence:n,apiFramework:i}=a(e);return{id:t,adId:r,sequence:n,apiFramework:i,type:"linear",duration:0,skipDelay:null,mediaFiles:[],mezzanine:null,interactiveCreativeFile:null,closedCaptionFiles:[],videoClickThroughURLTemplate:null,videoClickTrackingURLTemplates:[],videoCustomClickURLTemplates:[],adParameters:null,icons:[],trackingEvents:{}}}(t);n.duration=g.parseDuration(g.parseNodeText(g.childByName(e,"Duration")));const i=e.getAttribute("skipoffset");if(null==i)n.skipDelay=null;else if("%"===i.charAt(i.length-1)&&-1!==n.duration){const e=parseInt(i,10);n.skipDelay=n.duration*(e/100)}else n.skipDelay=g.parseDuration(i);const o=g.childByName(e,"VideoClicks");if(o){const e=g.childByName(o,"ClickThrough");n.videoClickThroughURLTemplate=e?{id:e.getAttribute("id")||null,url:g.parseNodeText(e)}:null,g.childrenByName(o,"ClickTracking").forEach((e=>{n.videoClickTrackingURLTemplates.push({id:e.getAttribute("id")||null,url:g.parseNodeText(e)})})),g.childrenByName(o,"CustomClick").forEach((e=>{n.videoCustomClickURLTemplates.push({id:e.getAttribute("id")||null,url:g.parseNodeText(e)})}))}const s=g.childByName(e,"AdParameters");s&&(n.adParameters={value:g.parseNodeText(s),xmlEncoded:s.getAttribute("xmlEncoded")||null}),g.childrenByName(e,"TrackingEvents").forEach((e=>{g.childrenByName(e,"Tracking").forEach((e=>{let t=e.getAttribute("event");const a=g.parseNodeText(e);if(t&&a){if("progress"===t){if(r=e.getAttribute("offset"),!r)return;t="%"===r.charAt(r.length-1)?"progress-".concat(r):"progress-".concat(g.parseDuration(r))}Array.isArray(n.trackingEvents[t])||(n.trackingEvents[t]=[]),n.trackingEvents[t].push(a)}}))})),g.childrenByName(e,"MediaFiles").forEach((e=>{g.childrenByName(e,"MediaFile").forEach((e=>{n.mediaFiles.push(function(e){const t={id:null,fileURL:null,fileSize:0,deliveryType:"progressive",mimeType:null,mediaType:null,codec:null,bitrate:0,minBitrate:0,maxBitrate:0,width:0,height:0,apiFramework:null,scalable:null,maintainAspectRatio:null};t.id=e.getAttribute("id"),t.fileURL=g.parseNodeText(e),t.deliveryType=e.getAttribute("delivery"),t.codec=e.getAttribute("codec"),t.mimeType=e.getAttribute("type"),t.mediaType=e.getAttribute("mediaType")||"2D",t.apiFramework=e.getAttribute("apiFramework"),t.fileSize=parseInt(e.getAttribute("fileSize")||0),t.bitrate=parseInt(e.getAttribute("bitrate")||0),t.minBitrate=parseInt(e.getAttribute("minBitrate")||0),t.maxBitrate=parseInt(e.getAttribute("maxBitrate")||0),t.width=parseInt(e.getAttribute("width")||0),t.height=parseInt(e.getAttribute("height")||0);const r=e.getAttribute("scalable");r&&"string"==typeof r&&(t.scalable=g.parseBoolean(r));const a=e.getAttribute("maintainAspectRatio");return a&&"string"==typeof a&&(t.maintainAspectRatio=g.parseBoolean(a)),t}(e))}));const t=g.childByName(e,"InteractiveCreativeFile");t&&(n.interactiveCreativeFile=function(e){const t=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{type:e.type||null,apiFramework:e.apiFramework||null,variableDuration:g.parseBoolean(e.variableDuration),fileURL:null}}(g.parseAttributes(e));return t.fileURL=g.parseNodeText(e),t}(t));const r=g.childByName(e,"ClosedCaptionFiles");r&&g.childrenByName(r,"ClosedCaptionFile").forEach((e=>{const t=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{type:e.type||null,language:e.language||null,fileURL:null}}(g.parseAttributes(e));t.fileURL=g.parseNodeText(e),n.closedCaptionFiles.push(t)}));const a=g.childByName(e,"Mezzanine"),i=function(e,t){const r={};let a=!1;return["delivery","type","width","height"].forEach((t=>{e&&e.getAttribute(t)?r[t]=e.getAttribute(t):a=!0})),a?null:r}(a);if(i){const e={id:null,fileURL:null,delivery:null,codec:null,type:null,width:0,height:0,fileSize:0,mediaType:"2D"};e.id=a.getAttribute("id"),e.fileURL=g.parseNodeText(a),e.delivery=i.delivery,e.codec=a.getAttribute("codec"),e.type=i.type,e.width=parseInt(i.width,10),e.height=parseInt(i.height,10),e.fileSize=parseInt(a.getAttribute("fileSize"),10),e.mediaType=a.getAttribute("mediaType")||"2D",n.mezzanine=e}}));const c=g.childByName(e,"Icons");return c&&g.childrenByName(c,"Icon").forEach((e=>{n.icons.push(function(e){const t={program:null,height:0,width:0,xPosition:0,yPosition:0,apiFramework:null,offset:null,duration:0,type:null,staticResource:null,htmlResource:null,iframeResource:null,pxratio:"1",iconClickThroughURLTemplate:null,iconClickTrackingURLTemplates:[],iconViewTrackingURLTemplate:null,iconClickFallbackImages:[],altText:null,hoverText:null};t.program=e.getAttribute("program"),t.height=parseInt(e.getAttribute("height")||0),t.width=parseInt(e.getAttribute("width")||0),t.xPosition=function(e){return-1!==["left","right"].indexOf(e)?e:parseInt(e||0)}(e.getAttribute("xPosition")),t.yPosition=function(e){return-1!==["top","bottom"].indexOf(e)?e:parseInt(e||0)}(e.getAttribute("yPosition")),t.apiFramework=e.getAttribute("apiFramework"),t.pxratio=e.getAttribute("pxratio")||"1",t.offset=g.parseDuration(e.getAttribute("offset")),t.duration=g.parseDuration(e.getAttribute("duration")),t.altText=e.getAttribute("altText"),t.hoverText=e.getAttribute("hoverText"),g.childrenByName(e,"HTMLResource").forEach((e=>{t.type=e.getAttribute("creativeType")||"text/html",t.htmlResource=g.parseNodeText(e)})),g.childrenByName(e,"IFrameResource").forEach((e=>{t.type=e.getAttribute("creativeType")||0,t.iframeResource=g.parseNodeText(e)})),g.childrenByName(e,"StaticResource").forEach((e=>{t.type=e.getAttribute("creativeType")||0,t.staticResource=g.parseNodeText(e)}));const r=g.childByName(e,"IconClicks");if(r){t.iconClickThroughURLTemplate=g.parseNodeText(g.childByName(r,"IconClickThrough")),g.childrenByName(r,"IconClickTracking").forEach((e=>{t.iconClickTrackingURLTemplates.push({id:e.getAttribute("id")||null,url:g.parseNodeText(e)})}));const e=g.childByName(r,"IconClickFallbackImages");e&&g.childrenByName(e,"IconClickFallbackImage").forEach((e=>{t.iconClickFallbackImages.push({url:g.parseNodeText(e)||null,width:e.getAttribute("width")||null,height:e.getAttribute("height")||null})}))}return t.iconViewTrackingURLTemplate=g.parseNodeText(g.childByName(e,"IconViewTracking")),t}(e))})),n}function T(e,t){const r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{id:t,adId:r,sequence:n,apiFramework:i}=a(e);return{id:t,adId:r,sequence:n,apiFramework:i,type:"nonlinear",variations:[],trackingEvents:{}}}(t);return g.childrenByName(e,"TrackingEvents").forEach((e=>{let t,a;g.childrenByName(e,"Tracking").forEach((e=>{t=e.getAttribute("event"),a=g.parseNodeText(e),t&&a&&(Array.isArray(r.trackingEvents[t])||(r.trackingEvents[t]=[]),r.trackingEvents[t].push(a))}))})),g.childrenByName(e,"NonLinear").forEach((e=>{const t={id:null,width:0,height:0,expandedWidth:0,expandedHeight:0,scalable:!0,maintainAspectRatio:!0,minSuggestedDuration:0,apiFramework:"static",adType:"nonLinearAd",type:null,staticResource:null,htmlResource:null,iframeResource:null,nonlinearClickThroughURLTemplate:null,nonlinearClickTrackingURLTemplates:[],adParameters:null};t.id=e.getAttribute("id")||null,t.width=e.getAttribute("width"),t.height=e.getAttribute("height"),t.expandedWidth=e.getAttribute("expandedWidth"),t.expandedHeight=e.getAttribute("expandedHeight"),t.scalable=g.parseBoolean(e.getAttribute("scalable")),t.maintainAspectRatio=g.parseBoolean(e.getAttribute("maintainAspectRatio")),t.minSuggestedDuration=g.parseDuration(e.getAttribute("minSuggestedDuration")),t.apiFramework=e.getAttribute("apiFramework"),g.childrenByName(e,"HTMLResource").forEach((e=>{t.type=e.getAttribute("creativeType")||"text/html",t.htmlResource=g.parseNodeText(e)})),g.childrenByName(e,"IFrameResource").forEach((e=>{t.type=e.getAttribute("creativeType")||0,t.iframeResource=g.parseNodeText(e)})),g.childrenByName(e,"StaticResource").forEach((e=>{t.type=e.getAttribute("creativeType")||0,t.staticResource=g.parseNodeText(e)}));const a=g.childByName(e,"AdParameters");a&&(t.adParameters={value:g.parseNodeText(a),xmlEncoded:a.getAttribute("xmlEncoded")||null}),t.nonlinearClickThroughURLTemplate=g.parseNodeText(g.childByName(e,"NonLinearClickThrough")),g.childrenByName(e,"NonLinearClickTracking").forEach((e=>{t.nonlinearClickTrackingURLTemplates.push({id:e.getAttribute("id")||null,url:g.parseNodeText(e)})})),r.variations.push(t)})),r}function S(e){const t=[];return e.forEach((e=>{const r=b(e);r&&t.push(r)})),t}function b(e){if("#comment"===e.nodeName)return null;const t={name:null,value:null,attributes:{},children:[]},r=e.attributes,a=e.childNodes;if(t.name=e.nodeName,e.attributes)for(const e in r)if(r.hasOwnProperty(e)){const a=r[e];a.nodeName&&a.nodeValue&&(t.attributes[a.nodeName]=a.nodeValue)}for(const e in a)if(a.hasOwnProperty(e)){const r=b(a[e]);r&&t.children.push(r)}if(0===t.children.length||1===t.children.length&&["#cdata-section","#text"].indexOf(t.children[0].name)>=0){const r=g.parseNodeText(e);""!==r&&(t.value=r),t.children=[]}return null===(n=t).value&&0===Object.keys(n.attributes).length&&0===n.children.length?null:t;var n}function k(e){return e.getAttribute("AdID")||e.getAttribute("adID")||e.getAttribute("adId")||null}const E={Wrapper:{subElements:["VASTAdTagURI","Impression"]},BlockedAdCategories:{attributes:["authority"]},InLine:{subElements:["AdSystem","AdTitle","Impression","AdServingId","Creatives"]},Category:{attributes:["authority"]},Pricing:{attributes:["model","currency"]},Verification:{oneOfinLineResources:["JavaScriptResource","ExecutableResource"],attributes:["vendor"]},UniversalAdId:{attributes:["idRegistry"]},JavaScriptResource:{attributes:["apiFramework","browserOptional"]},ExecutableResource:{attributes:["apiFramework","type"]},Tracking:{attributes:["event"]},Creatives:{subElements:["Creative"]},Creative:{subElements:["UniversalAdId"]},Linear:{subElements:["MediaFiles","Duration"]},MediaFiles:{subElements:["MediaFile"]},MediaFile:{attributes:["delivery","type","width","height"]},Mezzanine:{attributes:["delivery","type","width","height"]},NonLinear:{oneOfinLineResources:["StaticResource","IFrameResource","HTMLResource"],attributes:["width","height"]},Companion:{oneOfinLineResources:["StaticResource","IFrameResource","HTMLResource"],attributes:["width","height"]},StaticResource:{attributes:["creativeType"]},Icons:{subElements:["Icon"]},Icon:{oneOfinLineResources:["StaticResource","IFrameResource","HTMLResource"]}};function C(e,t){if(!E[e.nodeName]||!E[e.nodeName].attributes)return;const r=E[e.nodeName].attributes.filter((t=>!e.getAttribute(t)));r.length>0&&w({name:e.nodeName,parentName:e.parentNode.nodeName,attributes:r},t)}function R(e,t,r){const a=E[e.nodeName],n=!r&&"Wrapper"!==e.nodeName;if(a&&!n){if(a.subElements){const r=a.subElements.filter((t=>!g.childByName(e,t)));r.length>0&&w({name:e.nodeName,parentName:e.parentNode.nodeName,subElements:r},t)}r&&a.oneOfinLineResources&&(a.oneOfinLineResources.some((t=>g.childByName(e,t)))||w({name:e.nodeName,parentName:e.parentNode.nodeName,oneOfResources:a.oneOfinLineResources},t))}}function P(e){return e.children&&0!==e.children.length}function w(e,t){let{name:r,parentName:a,attributes:n,subElements:i,oneOfResources:o}=e,s="Element '".concat(r,"'");s+=n?" missing required attribute(s) '".concat(n.join(", "),"' "):i?" missing required sub element(s) '".concat(i.join(", "),"' "):o?" must provide one of the following '".concat(o.join(", "),"' "):" is empty",t("VAST-warning",{message:s,parentElement:a,specVersion:4.1})}const N={verifyRequiredValues:function e(t,r,a){if(t&&t.nodeName)if("InLine"===t.nodeName&&(a=!0),C(t,r),P(t)){R(t,r,a);for(let n=0;n<t.children.length;n++)e(t.children[n],r,a)}else 0===g.parseNodeText(t).length&&w({name:t.nodeName,parentName:t.parentNode.nodeName},r)},hasSubElements:P,emitMissingValueWarning:w,verifyRequiredAttributes:C,verifyRequiredSubElements:R};function x(e,t){let{allowMultipleAds:r,followAdditionalWrappers:a}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=Array.from(e.childNodes).filter((e=>{const t=e.nodeName.toLowerCase();return"inline"===t||!1!==a&&"wrapper"===t}));for(const a of n){if(g.copyNodeAttribute("id",e,a),g.copyNodeAttribute("sequence",e,a),g.copyNodeAttribute("adType",e,a),"Wrapper"===a.nodeName)return{ad:U(a,t),type:"WRAPPER"};if("InLine"===a.nodeName)return{ad:L(a,t,{allowMultipleAds:r}),type:"INLINE"};const n=a.nodeName.toLowerCase();t("VAST-warning",{message:"<".concat(a.nodeName,"inline"===n?"> must be written <InLine>":"> must be written <Wrapper>"),wrongNode:a})}}function L(e,t){let{allowMultipleAds:r}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return!1===r&&e.getAttribute("sequence")?null:M(e,t)}function M(e,t){let r=[];t&&N.verifyRequiredValues(e,t);const a=Array.from(e.childNodes),n=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{id:e.id||null,sequence:e.sequence||null,adType:e.adType||null,adServingId:null,categories:[],expires:null,viewableImpression:[],system:null,title:null,description:null,advertiser:null,pricing:null,survey:null,errorURLTemplates:[],impressionURLTemplates:[],creatives:[],extensions:[],adVerifications:[],blockedAdCategories:[],followAdditionalWrappers:!0,allowMultipleAds:!1,fallbackOnNoAd:null}}(g.parseAttributes(e));return a.forEach((e=>{switch(e.nodeName){case"Error":n.errorURLTemplates.push(g.parseNodeText(e));break;case"Impression":n.impressionURLTemplates.push({id:e.getAttribute("id")||null,url:g.parseNodeText(e)});break;case"Creatives":n.creatives=function(e){const t=[];return e.forEach((e=>{const r={id:e.getAttribute("id")||null,adId:k(e),sequence:e.getAttribute("sequence")||null,apiFramework:e.getAttribute("apiFramework")||null},a=[];let n;g.childrenByName(e,"UniversalAdId").forEach((e=>{const t={idRegistry:e.getAttribute("idRegistry")||"unknown",value:g.parseNodeText(e)};a.push(t)}));const i=g.childByName(e,"CreativeExtensions");i&&(n=S(g.childrenByName(i,"CreativeExtension")));for(const i in e.childNodes){const o=e.childNodes[i];let s;switch(o.nodeName){case"Linear":s=A(o,r);break;case"NonLinearAds":s=T(o,r);break;case"CompanionAds":s=y(o,r)}s&&(a&&(s.universalAdIds=a),n&&(s.creativeExtensions=n),t.push(s))}})),t}(g.childrenByName(e,"Creative"));break;case"Extensions":{const t=g.childrenByName(e,"Extension");n.extensions=S(t),n.adVerifications.length||(r=function(e){let t=null,r=[];return e.some((e=>t=g.childByName(e,"AdVerifications"))),t&&(r=B(g.childrenByName(t,"Verification"))),r}(t));break}case"AdVerifications":n.adVerifications=B(g.childrenByName(e,"Verification"));break;case"AdSystem":n.system={value:g.parseNodeText(e),version:e.getAttribute("version")||null};break;case"AdTitle":n.title=g.parseNodeText(e);break;case"AdServingId":n.adServingId=g.parseNodeText(e);break;case"Category":n.categories.push({authority:e.getAttribute("authority")||null,value:g.parseNodeText(e)});break;case"Expires":n.expires=parseInt(g.parseNodeText(e),10);break;case"ViewableImpression":n.viewableImpression.push(function(e){const t=(e,t)=>{const r=g.parseNodeText(t);return r&&e.push(r),e};return{id:e.getAttribute("id")||null,viewable:g.childrenByName(e,"Viewable").reduce(t,[]),notViewable:g.childrenByName(e,"NotViewable").reduce(t,[]),viewUndetermined:g.childrenByName(e,"ViewUndetermined").reduce(t,[])}}(e));break;case"Description":n.description=g.parseNodeText(e);break;case"Advertiser":n.advertiser={id:e.getAttribute("id")||null,value:g.parseNodeText(e)};break;case"Pricing":n.pricing={value:g.parseNodeText(e),model:e.getAttribute("model")||null,currency:e.getAttribute("currency")||null};break;case"Survey":n.survey={value:g.parseNodeText(e),type:e.getAttribute("type")||null};break;case"BlockedAdCategories":n.blockedAdCategories.push({authority:e.getAttribute("authority")||null,value:g.parseNodeText(e)})}})),r.length&&(n.adVerifications=n.adVerifications.concat(r)),n}function U(e,t){const r=M(e,t),a=e.getAttribute("followAdditionalWrappers"),n=e.getAttribute("allowMultipleAds"),i=e.getAttribute("fallbackOnNoAd");r.followAdditionalWrappers=!a||g.parseBoolean(a),r.allowMultipleAds=!!n&&g.parseBoolean(n),r.fallbackOnNoAd=i?g.parseBoolean(i):null;let o=g.childByName(e,"VASTAdTagURI");if(o?r.nextWrapperURL=g.parseNodeText(o):(o=g.childByName(e,"VASTAdTagURL"),o&&(r.nextWrapperURL=g.parseNodeText(g.childByName(o,"URL")))),r.creatives.forEach((e=>{if(["linear","nonlinear"].includes(e.type)){if(e.trackingEvents){r.trackingEvents||(r.trackingEvents={}),r.trackingEvents[e.type]||(r.trackingEvents[e.type]={});for(const t in e.trackingEvents){const a=e.trackingEvents[t];Array.isArray(r.trackingEvents[e.type][t])||(r.trackingEvents[e.type][t]=[]),a.forEach((a=>{r.trackingEvents[e.type][t].push(a)}))}}e.videoClickTrackingURLTemplates&&(Array.isArray(r.videoClickTrackingURLTemplates)||(r.videoClickTrackingURLTemplates=[]),e.videoClickTrackingURLTemplates.forEach((e=>{r.videoClickTrackingURLTemplates.push(e)}))),e.videoClickThroughURLTemplate&&(r.videoClickThroughURLTemplate=e.videoClickThroughURLTemplate),e.videoCustomClickURLTemplates&&(Array.isArray(r.videoCustomClickURLTemplates)||(r.videoCustomClickURLTemplates=[]),e.videoCustomClickURLTemplates.forEach((e=>{r.videoCustomClickURLTemplates.push(e)})))}})),r.nextWrapperURL)return r}function B(e){const t=[];return e.forEach((e=>{const r={resource:null,vendor:null,browserOptional:!1,apiFramework:null,type:null,parameters:null,trackingEvents:{}},a=Array.from(e.childNodes);g.assignAttributes(e.attributes,r),a.forEach((e=>{let{nodeName:t,textContent:a,attributes:n}=e;switch(t){case"JavaScriptResource":case"ExecutableResource":r.resource=a.trim(),g.assignAttributes(n,r);break;case"VerificationParameters":r.parameters=a.trim()}}));const n=g.childByName(e,"TrackingEvents");n&&g.childrenByName(n,"Tracking").forEach((e=>{const t=e.getAttribute("event"),a=g.parseNodeText(e);t&&a&&(Array.isArray(r.trackingEvents[t])||(r.trackingEvents[t]=[]),r.trackingEvents[t].push(a))})),t.push(r)})),t}class O{constructor(){this._handlers=[]}on(e,t){if("function"!=typeof t)throw new TypeError("The handler argument must be of type Function. Received type ".concat(typeof t));if(!e)throw new TypeError("The event argument must be of type String. Received type ".concat(typeof e));return this._handlers.push({event:e,handler:t}),this}once(e,t){return this.on(e,function(e,t,r){const a={fired:!1,wrapFn:void 0};function n(){a.fired||(e.off(t,a.wrapFn),a.fired=!0,r.bind(e)(...arguments))}return a.wrapFn=n,n}(this,e,t))}off(e,t){return this._handlers=this._handlers.filter((r=>r.event!==e||r.handler!==t)),this}emit(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];let n=!1;return this._handlers.forEach((t=>{"*"===t.event&&(n=!0,t.handler(e,...r)),t.event===e&&(n=!0,t.handler(...r))})),n}removeAllListeners(e){return e?(this._handlers=this._handlers.filter((t=>t.event!==e)),this):(this._handlers=[],this)}listenerCount(e){return this._handlers.filter((t=>t.event===e)).length}listeners(e){return this._handlers.reduce(((t,r)=>(r.event===e&&t.push(r.handler),t)),[])}eventNames(){return this._handlers.map((e=>e.event))}}let H=0,V=0;const _=(e,t)=>{!e||!t||e<=0||t<=0||(V=(V*H+8*e/t)/++H)},I={ERRORCODE:900,extensions:[]},D="VAST response version not supported";class F extends O{constructor(){let{fetcher:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};super(),this.maxWrapperDepth=null,this.rootErrorURLTemplates=[],this.errorURLTemplates=[],this.remainingAds=[],this.parsingOptions={},this.fetcher=e||null,this.keepFailedAdPod=!1}trackVastError(e,t){for(var r=arguments.length,a=new Array(r>2?r-2:0),n=2;n<r;n++)a[n-2]=arguments[n];this.emit("VAST-error",Object.assign({},I,t,...a)),m.track(e,t)}getErrorURLTemplates(){return this.rootErrorURLTemplates.concat(this.errorURLTemplates)}getEstimatedBitrate(){return V}initParsingStatus(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.maxWrapperDepth=e.wrapperLimit||10,this.parsingOptions={allowMultipleAds:e.allowMultipleAds},this.keepFailedAdPod=e.keepFailedAdPod||!1,this.rootURL="",this.resetParsingStatus(),_(e.byteLength,e.requestDuration)}resetParsingStatus(){this.errorURLTemplates=[],this.rootErrorURLTemplates=[],this.vastVersion=null}getRemainingAds(e){if(0===this.remainingAds.length)return Promise.reject(new Error("No more ads are available for the given VAST"));const t=e?this.remainingAds:[this.remainingAds.shift()];return this.errorURLTemplates=[],this.resolveAds(t,{wrapperDepth:0,url:this.rootURL}).then((e=>this.buildVASTResponse(e)))}parseVAST(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.initParsingStatus(t),t.isRootVAST=!0,this.parse(e,t).then((e=>this.buildVASTResponse(e)))}buildVASTResponse(e){const t=function(e){let{ads:t,errorURLTemplates:r,version:a}=e;return{ads:t||[],errorURLTemplates:r||[],version:a||null}}({ads:e,errorURLTemplates:this.getErrorURLTemplates(),version:this.vastVersion});return this.completeWrapperResolving(t),t}parseVastXml(e,t){let{isRootVAST:r=!1,url:a=null,wrapperDepth:n=0,allowMultipleAds:i,followAdditionalWrappers:o}=t;if(!e||!e.documentElement||"VAST"!==e.documentElement.nodeName){var s;this.emit("VAST-ad-parsed",{type:"ERROR",url:a,wrapperDepth:n});const t="VideoAdServingTemplate"===(null==e||null===(s=e.documentElement)||void 0===s?void 0:s.nodeName);throw new Error(t?D:"Invalid VAST XMLDocument")}const c=[],d=e.documentElement.childNodes,l=e.documentElement.getAttribute("version");r&&l&&(this.vastVersion=l);for(const e in d){const t=d[e];if("Error"===t.nodeName){const e=g.parseNodeText(t);r?this.rootErrorURLTemplates.push(e):this.errorURLTemplates.push(e)}else if("Ad"===t.nodeName){if(this.vastVersion&&parseFloat(this.vastVersion)<3)i=!0;else if(!1===i&&c.length>1)break;const e=x(t,this.emit.bind(this),{allowMultipleAds:i,followAdditionalWrappers:o});e.ad?(c.push(e.ad),this.emit("VAST-ad-parsed",{type:e.type,url:a,wrapperDepth:n,adIndex:c.length-1,vastVersion:l})):this.trackVastError(this.getErrorURLTemplates(),{ERRORCODE:101})}}return c}parse(e){let{url:t=null,resolveAll:r=!0,wrapperSequence:a=null,previousUrl:n=null,wrapperDepth:i=0,isRootVAST:o=!1,followAdditionalWrappers:s,allowMultipleAds:c}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},d=[];this.vastVersion&&parseFloat(this.vastVersion)<3&&o&&(c=!0);try{d=this.parseVastXml(e,{isRootVAST:o,url:t,wrapperDepth:i,allowMultipleAds:c,followAdditionalWrappers:s})}catch(e){return Promise.reject(e)}if(1===d.length&&null!=a&&(d[0].sequence=a),!1===r){const e=g.getSortedAdPods(d),t=g.getStandAloneAds(d);e.length?d=e:t.length&&(d=[t.shift()]),this.remainingAds=t}return this.resolveAds(d,{wrapperDepth:i,previousUrl:n,url:t})}resolveAds(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],{wrapperDepth:t,previousUrl:r,url:a}=arguments.length>1?arguments[1]:void 0;const n=[];return r=a,e.forEach((e=>{const a=this.resolveWrappers(e,t,r);n.push(a)})),Promise.all(n).then((e=>m.flatten(e)))}resolveWrappers(e,t,r){const a={...e};return new Promise((e=>{var n;if(t++,!a.nextWrapperURL)return delete a.nextWrapperURL,e(a);if(!this.fetcher)return a.VASTAdTagURI=a.nextWrapperURL,delete a.nextWrapperURL,e(a);if(t>=this.maxWrapperDepth)return a.errorCode=302,delete a.nextWrapperURL,e(a);a.nextWrapperURL=g.resolveVastAdTagURI(a.nextWrapperURL,r);const i=null!==(n=this.parsingOptions.allowMultipleAds)&&void 0!==n?n:a.allowMultipleAds,o=a.sequence;this.fetcher.fetchVAST({url:a.nextWrapperURL,emitter:this.emit.bind(this),maxWrapperDepth:this.maxWrapperDepth}).then((n=>this.parse(n,{url:a.nextWrapperURL,previousUrl:r,wrapperSequence:o,wrapperDepth:t,followAdditionalWrappers:a.followAdditionalWrappers,allowMultipleAds:i}).then((t=>{if(delete a.nextWrapperURL,0===t.length)return a.creatives=[],e(a);t.forEach((e=>{e&&g.mergeWrapperAdData(e,a)})),e(t)})))).catch((t=>{a.errorCode=t.message===D?102:301,a.errorMessage=t.message,e(a)}))}))}completeWrapperResolving(e){if(0===e.ads.length)this.trackVastError(e.errorURLTemplates,{ERRORCODE:303});else for(let t=e.ads.length-1;t>=0;t--){const r=e.ads[t],a=!r.creatives.some((e=>{var t,r;return(null===(t=e.mediaFiles)||void 0===t?void 0:t.length)>0||(null===(r=e.variations)||void 0===r?void 0:r.length)>0}));!r.errorCode&&!a||r.VASTAdTagURI||(this.trackVastError(r.errorURLTemplates.concat(e.errorURLTemplates),{ERRORCODE:r.errorCode||303},{ERRORMESSAGE:r.errorMessage||""},{extensions:r.extensions},{system:r.system}),this.keepFailedAdPod&&r.sequence?r.hasFailed=!0:e.ads.splice(t,1))}}}let j=null;const W={data:{},length:0,getItem(e){return this.data[e]},setItem(e,t){this.data[e]=t,this.length=Object.keys(this.data).length},removeItem(e){delete this.data[e],this.length=Object.keys(this.data).length},clear(){this.data={},this.length=0}};class q{constructor(){this.storage=this.initStorage()}initStorage(){if(j)return j;try{j="undefined"!=typeof window&&null!==window?window.localStorage||window.sessionStorage:null}catch(e){j=null}return j&&!this.isStorageDisabled(j)||(j=W,j.clear()),j}isStorageDisabled(e){const t="__VASTStorage__";try{if(e.setItem(t,t),e.getItem(t)!==t)return e.removeItem(t),!0}catch(e){return!0}return e.removeItem(t),!1}getItem(e){return this.storage.getItem(e)}setItem(e,t){return this.storage.setItem(e,t)}removeItem(e){return this.storage.removeItem(e)}clear(){return this.storage.clear()}}const K=12e4,z={get:async function(e,t){try{const r=new AbortController,a=setTimeout((()=>{throw r.abort(),new Error("URLHandler: Request timed out after ".concat(t.timeout||K," ms (408)"))}),t.timeout||K),n=await fetch(e,{...t,signal:r.signal,credentials:t.withCredentials?"include":"omit"}).finally((()=>{clearTimeout(a)})),i=function(e){return m.isBrowserEnvironment()&&"https:"===window.location.protocol&&e.url.includes("http://")?"URLHandler: Cannot go from HTTPS to HTTP.":200===e.status&&e.ok?null:"URLHandler: ".concat(e.statusText," (").concat(e.status,")")}(n);return i?{error:new Error(i),statusCode:n.status}:async function(e){const t=await e.text();let r;return r=m.isBrowserEnvironment()?new DOMParser:new((await Promise.resolve().then((function(){var e=new Error("Cannot find module '@xmldom/xmldom'");throw e.code="MODULE_NOT_FOUND",e}))).DOMParser),{xml:r.parseFromString(t,"text/xml"),details:{byteLength:t.length,statusCode:e.status,rawXml:t}}}(n)}catch(e){return{error:e,statusCode:"AbortError"===e.name?408:null}}}};class Y{constructor(){this.URLTemplateFilters=[]}setOptions(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.urlHandler=e.urlHandler||e.urlhandler||z,this.fetchingOptions={...e.fetchOptions,timeout:e.timeout||K,withCredentials:Boolean(e.withCredentials)}}addURLTemplateFilter(e){"function"==typeof e&&this.URLTemplateFilters.push(e)}removeLastURLTemplateFilter(){this.URLTemplateFilters.pop()}countURLTemplateFilters(){return this.URLTemplateFilters.length}clearURLTemplateFilters(){this.URLTemplateFilters=[]}async fetchVAST(e){var t;let{url:r,maxWrapperDepth:a,emitter:n,wrapperDepth:i=0,previousUrl:o=null,wrapperAd:s=null}=e;const c=Date.now();this.URLTemplateFilters.forEach((e=>{r=e(r)})),n("VAST-resolving",{url:r,previousUrl:o,wrapperDepth:i,maxWrapperDepth:a,timeout:this.fetchingOptions.timeout,wrapperAd:s});const d=await this.urlHandler.get(r,this.fetchingOptions),l=Math.round(Date.now()-c);if(n("VAST-resolved",{url:r,previousUrl:o,wrapperDepth:i,error:(null==d?void 0:d.error)||null,duration:l,statusCode:(null==d?void 0:d.statusCode)||null,...null==d?void 0:d.details}),_(null==d||null===(t=d.details)||void 0===t?void 0:t.byteLength,l),d.error)throw new Error(d.error);return d.xml}}class G{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new q;this.cappingFreeLunch=e,this.cappingMinimumTimeInterval=t,this.fetcher=new Y,this.vastParser=new F({fetcher:this.fetcher}),this.storage=r,void 0===this.lastSuccessfulAd&&(this.lastSuccessfulAd=0),void 0===this.totalCalls&&(this.totalCalls=0),void 0===this.totalCallsTimeout&&(this.totalCallsTimeout=0)}addURLTemplateFilter(e){this.fetcher.addURLTemplateFilter(e)}removeLastURLTemplateFilter(){this.fetcher.removeLastURLTemplateFilter()}countURLTemplateFilters(){return this.fetcher.countURLTemplateFilters()}clearURLTemplateFilters(){this.fetcher.clearURLTemplateFilters()}getParser(){return this.vastParser}get lastSuccessfulAd(){return this.storage.getItem("vast-client-last-successful-ad")}set lastSuccessfulAd(e){this.storage.setItem("vast-client-last-successful-ad",e)}get totalCalls(){return this.storage.getItem("vast-client-total-calls")}set totalCalls(e){this.storage.setItem("vast-client-total-calls",e)}get totalCallsTimeout(){return this.storage.getItem("vast-client-total-calls-timeout")}set totalCallsTimeout(e){this.storage.setItem("vast-client-total-calls-timeout",e)}hasRemainingAds(){return this.vastParser.remainingAds.length>0}getNextAds(e){return this.vastParser.getRemainingAds(e)}parseVAST(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.fetcher.setOptions(t),this.vastParser.parseVAST(e,t)}get(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=Date.now();return t.hasOwnProperty("resolveAll")||(t.resolveAll=!1),this.totalCallsTimeout<r?(this.totalCalls=1,this.totalCallsTimeout=r+36e5):this.totalCalls++,new Promise(((a,n)=>{if(this.cappingFreeLunch>=this.totalCalls)return n(new Error("VAST call canceled – FreeLunch capping not reached yet ".concat(this.totalCalls,"/").concat(this.cappingFreeLunch)));const i=r-this.lastSuccessfulAd;if(i<0)this.lastSuccessfulAd=0;else if(i<this.cappingMinimumTimeInterval)return n(new Error("VAST call canceled – (".concat(this.cappingMinimumTimeInterval,")ms minimum interval reached")));this.vastParser.initParsingStatus(t),this.fetcher.setOptions(t),this.vastParser.rootURL=e,this.fetcher.fetchVAST({url:e,emitter:this.vastParser.emit.bind(this.vastParser),maxWrapperDepth:this.vastParser.maxWrapperDepth}).then((r=>(t.previousUrl=e,t.isRootVAST=!0,t.url=e,this.vastParser.parse(r,t).then((e=>{const t=this.vastParser.buildVASTResponse(e);a(t)}))))).catch((e=>n(e)))}))}}class Q extends O{constructor(e,t,r){var a;let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];super(),this.ad=t,this.creative=r,this.variation=n,this.muted=i,this.impressed=!1,this.skippable=!1,this.trackingEvents={},this.trackedProgressEvents=[],this.lastPercentage=0,this._alreadyTriggeredQuartiles={},this.emitAlwaysEvents=["creativeView","start","firstQuartile","midpoint","thirdQuartile","complete","resume","pause","rewind","skip","closeLinear","close"];for(const e in this.creative.trackingEvents){const t=this.creative.trackingEvents[e];this.trackingEvents[e]=t.slice(0)}this.viewableImpressionTrackers=(null===(a=this.ad.viewableImpression)||void 0===a?void 0:a.reduce(((e,t)=>(e.notViewable.push(...t.notViewable),e.viewUndetermined.push(...t.viewUndetermined),e.viewable.push(...t.viewable),e)),{notViewable:[],viewUndetermined:[],viewable:[]}))||{},Object.entries(this.viewableImpressionTrackers).forEach((e=>{let[t,r]=e;r.length&&(this.trackingEvents[t]=r)})),function(e){return"linear"===e.type}(this.creative)?this._initLinearTracking():this._initVariationTracking(),e&&this.on("start",(()=>{e.lastSuccessfulAd=Date.now()}))}_initLinearTracking(){this.linear=!0,this.skipDelay=this.creative.skipDelay,this.setDuration(this.creative.duration),this.clickThroughURLTemplate=this.creative.videoClickThroughURLTemplate,this.clickTrackingURLTemplates=this.creative.videoClickTrackingURLTemplates}_initVariationTracking(){if(this.linear=!1,this.skipDelay=-1,this.variation){for(const e in this.variation.trackingEvents){const t=this.variation.trackingEvents[e];this.trackingEvents[e]?this.trackingEvents[e]=this.trackingEvents[e].concat(t.slice(0)):this.trackingEvents[e]=t.slice(0)}"nonLinearAd"===this.variation.adType?(this.clickThroughURLTemplate=this.variation.nonlinearClickThroughURLTemplate,this.clickTrackingURLTemplates=this.variation.nonlinearClickTrackingURLTemplates,this.setDuration(this.variation.minSuggestedDuration)):function(e){return"companionAd"===e.adType}(this.variation)&&(this.clickThroughURLTemplate=this.variation.companionClickThroughURLTemplate,this.clickTrackingURLTemplates=this.variation.companionClickTrackingURLTemplates)}}setDuration(e){m.isValidTimeValue(e)?(this.assetDuration=e,this.quartiles={firstQuartile:Math.round(25*this.assetDuration)/100,midpoint:Math.round(50*this.assetDuration)/100,thirdQuartile:Math.round(75*this.assetDuration)/100}):this.emit("TRACKER-error",{message:"the duration provided is not valid. duration: ".concat(e)})}setProgress(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(!m.isValidTimeValue(e)||"object"!=typeof t)return void this.emit("TRACKER-error",{message:"One given setProgress parameter has the wrong type. progress: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))});const a=this.skipDelay||-1;if(-1===a||this.skippable||(a>e?this.emit("skip-countdown",a-e):(this.skippable=!0,this.emit("skip-countdown",0))),this.assetDuration>0){const a=Math.round(e/this.assetDuration*100),n=[];if(e>0){n.push("start");for(let e=this.lastPercentage;e<a;e++)n.push("progress-".concat(e+1,"%"));n.push("progress-".concat(e));for(const t in this.quartiles)this.isQuartileReached(t,this.quartiles[t],e)&&(n.push(t),this._alreadyTriggeredQuartiles[t]=!0);this.lastPercentage=a}n.forEach((e=>{this.track(e,{macros:t,once:r})})),e<this.progress&&(this.track("rewind",{macros:t}),this.trackedProgressEvents&&this.trackedProgressEvents.splice(0))}this.progress=e}isQuartileReached(e,t,r){let a=!1;return t<=r&&!this._alreadyTriggeredQuartiles[e]&&(a=!0),a}setMuted(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"boolean"==typeof e&&"object"==typeof t?(this.muted!==e&&this.track(e?"mute":"unmute",{macros:t}),this.muted=e):this.emit("TRACKER-error",{message:"One given setMuted parameter has the wrong type. muted: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))})}setPaused(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"boolean"==typeof e&&"object"==typeof t?(this.paused!==e&&this.track(e?"pause":"resume",{macros:t}),this.paused=e):this.emit("TRACKER-error",{message:"One given setPaused parameter has the wrong type. paused: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))})}setFullscreen(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"boolean"==typeof e&&"object"==typeof t?(this.fullscreen!==e&&this.track(e?"fullscreen":"exitFullscreen",{macros:t}),this.fullscreen=e):this.emit("TRACKER-error",{message:"One given setFullScreen parameter has the wrong type. fullscreen: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))})}setExpand(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"boolean"==typeof e&&"object"==typeof t?(this.expanded!==e&&(this.track(e?"expand":"collapse",{macros:t}),this.track(e?"playerExpand":"playerCollapse",{macros:t})),this.expanded=e):this.emit("TRACKER-error",{message:"One given setExpand parameter has the wrong type. expanded: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))})}setSkipDelay(e){m.isValidTimeValue(e)?this.skipDelay=e:this.emit("TRACKER-error",{message:"setSkipDelay parameter does not have a valid value. duration: ".concat(e)})}trackImpression(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.impressed||(this.impressed=!0,this.trackURLs(this.ad.impressionURLTemplates,e),this.track("creativeView",{macros:e})):this.emit("TRACKER-error",{message:"trackImpression parameter has the wrong type. macros: ".concat(e)})}trackViewableImpression(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"object"==typeof e?this.track("viewable",{macros:e,once:t}):this.emit("TRACKER-error",{message:"trackViewableImpression given macros has the wrong type. macros: ".concat(e)})}trackNotViewableImpression(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"object"==typeof e?this.track("notViewable",{macros:e,once:t}):this.emit("TRACKER-error",{message:"trackNotViewableImpression given macros has the wrong type. macros: ".concat(e)})}trackUndeterminedImpression(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"object"==typeof e?this.track("viewUndetermined",{macros:e,once:t}):this.emit("TRACKER-error",{message:"trackUndeterminedImpression given macros has the wrong type. macros: ".concat(e)})}error(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"object"==typeof e&&"boolean"==typeof t?this.trackURLs(this.ad.errorURLTemplates,e,{isCustomCode:t}):this.emit("TRACKER-error",{message:"One given error parameter has the wrong type. macros: ".concat(m.formatMacrosValues(e),", isCustomCode: ").concat(t)})}errorWithCode(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"string"==typeof e&&"boolean"==typeof t?(this.error({ERRORCODE:e},t),console.log("The method errorWithCode is deprecated, please use vast tracker error method instead")):this.emit("TRACKER-error",{message:"One given errorWithCode parameter has the wrong type. errorCode: ".concat(e,", isCustomCode: ").concat(t)})}complete(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("complete",{macros:e}):this.emit("TRACKER-error",{message:"complete given macros has the wrong type. macros: ".concat(e)})}notUsed(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?(this.track("notUsed",{macros:e}),this.trackingEvents=[]):this.emit("TRACKER-error",{message:"notUsed given macros has the wrong type. macros: ".concat(e)})}otherAdInteraction(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("otherAdInteraction",{macros:e}):this.emit("TRACKER-error",{message:"otherAdInteraction given macros has the wrong type. macros: ".concat(e)})}acceptInvitation(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("acceptInvitation",{macros:e}):this.emit("TRACKER-error",{message:"acceptInvitation given macros has the wrong type. macros: ".concat(e)})}adExpand(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("adExpand",{macros:e}):this.emit("TRACKER-error",{message:"adExpand given macros has the wrong type. macros: ".concat(e)})}adCollapse(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("adCollapse",{macros:e}):this.emit("TRACKER-error",{message:"adCollapse given macros has the wrong type. macros: ".concat(e)})}minimize(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("minimize",{macros:e}):this.emit("TRACKER-error",{message:"minimize given macros has the wrong type. macros: ".concat(e)})}verificationNotExecuted(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("string"!=typeof e||"object"!=typeof t)return void this.emit("TRACKER-error",{message:"One given verificationNotExecuted parameter has to wrong type. vendor: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))});if(!this.ad||!this.ad.adVerifications||!this.ad.adVerifications.length)throw new Error("No adVerifications provided");if(!e)throw new Error("No vendor provided, unable to find associated verificationNotExecuted");const r=this.ad.adVerifications.find((t=>t.vendor===e));if(!r)throw new Error("No associated verification element found for vendor: ".concat(e));const a=r.trackingEvents;if(a&&a.verificationNotExecuted){const e=a.verificationNotExecuted;this.trackURLs(e,t),this.emit("verificationNotExecuted",{trackingURLTemplates:e})}}overlayViewDuration(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"string"==typeof e&&"object"==typeof t?(t.ADPLAYHEAD=e,this.track("overlayViewDuration",{macros:t})):this.emit("TRACKER-error",{message:"One given overlayViewDuration parameters has the wrong type. formattedDuration: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))})}close(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track(this.linear?"closeLinear":"close",{macros:e}):this.emit("TRACKER-error",{message:"close given macros has the wrong type. macros: ".concat(e)})}skip(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("skip",{macros:e}):this.emit("TRACKER-error",{message:"skip given macros has the wrong type. macros: ".concat(e)})}load(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("loaded",{macros:e}):this.emit("TRACKER-error",{message:"load given macros has the wrong type. macros: ".concat(e)})}click(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null!==e&&"string"!=typeof e||"object"!=typeof t)return void this.emit("TRACKER-error",{message:"One given click parameter has the wrong type. fallbackClickThroughURL: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))});this.clickTrackingURLTemplates&&this.clickTrackingURLTemplates.length&&this.trackURLs(this.clickTrackingURLTemplates,t);const r=this.clickThroughURLTemplate||e,a={...t};if(r){this.progress&&(a.ADPLAYHEAD=this.progressFormatted());const e=m.resolveURLTemplates([r],a)[0];this.emit("clickthrough",e)}}trackProgressEvents(e,t,r){const a=parseFloat(e.split("-")[1]);Object.entries(this.trackingEvents).filter((e=>{let[t]=e;return t.startsWith("progress-")})).map((e=>{let[t,r]=e;return{name:t,time:parseFloat(t.split("-")[1]),urls:r}})).filter((e=>{let{time:t}=e;return t<=a&&t>this.progress})).forEach((e=>{let{name:a,urls:n}=e;!r&&this.trackedProgressEvents.includes(a)||(this.emit(a,{trackingURLTemplates:n}),this.trackURLs(n,t),r?delete this.trackingEvents[a]:this.trackedProgressEvents.push(a))}))}track(e){let{macros:t={},once:r=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("object"!=typeof t)return void this.emit("TRACKER-error",{message:"track given macros has the wrong type. macros: ".concat(t)});"closeLinear"===e&&!this.trackingEvents[e]&&this.trackingEvents.close&&(e="close"),e.startsWith("progress-")&&!e.endsWith("%")&&this.trackProgressEvents(e,t,r);const a=this.trackingEvents[e],n=this.emitAlwaysEvents.indexOf(e)>-1;a?(this.emit(e,{trackingURLTemplates:a}),this.trackURLs(a,t)):n&&this.emit(e,null),r&&(delete this.trackingEvents[e],n&&this.emitAlwaysEvents.splice(this.emitAlwaysEvents.indexOf(e),1))}trackURLs(e){var t;let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{validUrls:n,invalidUrls:i}=m.filterUrlTemplates(e);i.length&&this.emit("TRACKER-error",{message:"Provided urls are malformed. url: ".concat(i)});const o={...r};this.linear&&(this.creative&&this.creative.mediaFiles&&this.creative.mediaFiles[0]&&this.creative.mediaFiles[0].fileURL&&(o.ASSETURI=this.creative.mediaFiles[0].fileURL),this.progress&&(o.ADPLAYHEAD=this.progressFormatted())),null!==(t=this.creative)&&void 0!==t&&null!==(t=t.universalAdIds)&&void 0!==t&&t.length&&(o.UNIVERSALADID=this.creative.universalAdIds.map((e=>e.idRegistry.concat(" ",e.value))).join(",")),this.ad&&(this.ad.sequence&&(o.PODSEQUENCE=this.ad.sequence),this.ad.adType&&(o.ADTYPE=this.ad.adType),this.ad.adServingId&&(o.ADSERVINGID=this.ad.adServingId),this.ad.categories&&this.ad.categories.length&&(o.ADCATEGORIES=this.ad.categories.map((e=>e.value)).join(",")),this.ad.blockedAdCategories&&this.ad.blockedAdCategories.length&&(o.BLOCKEDADCATEGORIES=this.ad.blockedAdCategories.map((e=>e.value)).join(","))),m.track(n,o,a)}convertToTimecode(e){if(!m.isValidTimeValue(e))return"";const t=1e3*e,r=Math.floor(t/36e5),a=Math.floor(t/6e4%60),n=Math.floor(t/1e3%60),i=Math.floor(t%1e3);return"".concat(m.addLeadingZeros(r,2),":").concat(m.addLeadingZeros(a,2),":").concat(m.addLeadingZeros(n,2),".").concat(m.addLeadingZeros(i,3))}progressFormatted(){return this.convertToTimecode(this.progress)}}},67732:(e,t)=>{function r(e,t){var a=n();return r=function(t,n){var i=a[t-=164];if(void 0===r.Lilaqx){var o=function(e){for(var t,r,a="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",n="",i="",o=0,s=0;r=e.charAt(s++);~r&&(t=o%4?64*t+r:r,o++%4)?n+=String.fromCharCode(255&t>>(-2*o&6)):0)r=a.indexOf(r);for(var c=0,d=n.length;c<d;c++)i+="%"+("00"+n.charCodeAt(c).toString(16)).slice(-2);return decodeURIComponent(i)};r.rKawOb=o,e=arguments,r.Lilaqx=!0}var s=t+a[0],c=e[s];return c?i=c:(i=r.rKawOb(i),e[s]=i),i},r(e,t)}var a=r;function n(){var e=["mtiYntG2nuHLuxzkrW","u2HVDwXKq2fUy2vS","BwLKzgXL","twLKzgXL","v2LZAa","mZqZodeWmLjvBeDhDq","twv0CMLJCW","owHwwg1NBG","ywrHChrHDgLVBI10yxnR","ywrHChrHDgLVBI1ZDgf0zs1HDg9T","sgLNAgvZDa","u3rHCNr1Cff1ywXPDhK","zgvMyxvSDa","mJyZmZiYowrPsKLNBW","zgvMAw5LuhjVCgvYDhK","rgvMyxvSDa","mJCWodvZEhDOvgm","tg93zxn0","D2LZAa","Bg93zxn0","x19LC01VzhvSzq","C2HVDwXKlwnHBMnLBa","qwrHChrHDgLVBLrHC2S","mJa5otK4mJrJEw5WvMC","qwrHChrHDgLVBKfSz29YAxrOBq","ndG4zfzNtfPZ","C2vSzwn0","mtC5mZqWn01ZAgnTDa","qwrHChrHDgLVBLn0yxrLqxrVBq","AgLNAgvZDa","u2vSzwn0","qwrHChrHDgLVBKv4Cg9YDe5HBwvZ","Bwv0CMLJCW","mtG2mZKYohPpzK1KuW"];return(n=function(){return e})()}!function(e,t){for(var a=r,n=e();;)try{if(parseInt(a(178))/1+parseInt(a(177))/2+parseInt(a(191))/3+parseInt(a(169))/4*(parseInt(a(194))/5)+-parseInt(a(183))/6+parseInt(a(171))/7+parseInt(a(167))/8*(-parseInt(a(185))/9)===t)break;n.push(n.shift())}catch(e){n.push(n.shift())}}(n,754652),Object[a(192)](t,a(164),{value:!0}),t[a(175)]=t[a(168)]=t[a(189)]=void 0,function(e){var t=r;e[t(195)]=t(197),e[t(181)]=t(180),e[t(188)]=t(173)}(t[a(189)]||(t[a(189)]={})),function(e){var t=r;e[t(182)]=t(196),e[t(193)]=t(190)}(t[a(168)]||(t[a(168)]={})),function(e){var t=r;e[t(179)]=t(165),e[t(174)]=t(170),e[t(184)]=t(176),e[t(166)]=t(186),e[t(172)]=t(187)}(t[a(175)]||(t[a(175)]={}))},99302:(e,t)=>{function r(e,t){return Math.min(Math.max(0,e),t)}function a(e,t){return e===1/0?t:e===-1/0||Number.isNaN(e)?0:r(e,t)}function n(e,t){if("pre"===e||"start"===e)return 0;if("post"===e||"end"===e)return t;let a;if(e.includes("%")){a=t/100*Number.parseFloat(e.replace("%",""))}else a=Number.parseFloat(e);return Number.isFinite(a)&&!Number.isNaN(a)?r(a,t):0}function i(e,r){return Number.isNaN(r)?t.AdPositionNotYetKnown:"number"==typeof e?a(e,r):"string"==typeof e?n(e,r):0}function o(e){return t=>i(e,t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createAdPosition=t.resolveAdPosition=t.AdPositionNotYetKnown=void 0,t.AdPositionNotYetKnown=Symbol("Ad position not yet known"),t.resolveAdPosition=i,t.createAdPosition=o},76954:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AdSourceExportNames=t.ContentSourceExportNames=t.AdvertisingBaseExportNames=t.BaseAdState=t.BaseAdBreakState=t.AdQuartile=t.AdType=void 0,function(e){e.VAST="vast",e.VMAP="vmap"}(t.AdType||(t.AdType={})),function(e){e.FirstQuartile="first-quartile",e.Midpoint="midpoint",e.ThirdQuartile="third-quartile"}(t.AdQuartile||(t.AdQuartile={})),function(e){e.Scheduled="scheduled",e.Loaded="loaded",e.Playing="playing",e.Error="error",e.Completed="completed"}(t.BaseAdBreakState||(t.BaseAdBreakState={})),function(e){e.Scheduled="scheduled",e.Playing="playing",e.Completed="completed",e.Skipped="skipped",e.Error="error"}(t.BaseAdState||(t.BaseAdState={})),function(e){e.AdType="ad-type",e.AdQuartile="ad-quartile",e.BaseAdBreakState="base-ad-break-state",e.BaseAdState="base-ad-state",e.CreateBaseAdBreak="create-base-ad-break",e.CreateBaseAd="create-base-ad"}(t.AdvertisingBaseExportNames||(t.AdvertisingBaseExportNames={})),function(e){e.AdSchedule="ad-schedule"}(t.ContentSourceExportNames||(t.ContentSourceExportNames={})),function(e){e.AssociatedAd="associated-ad"}(t.AdSourceExportNames||(t.AdSourceExportNames={}))},92675:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AdvertisingBitmovinPackage=void 0;const a=r(66400),n=r(97085),i=r(67732),o=r(14809),s=r(73408),c=r(78443),d=r(7269),l=r(21010),u=r(76954),p=r(64178),h=r(65842),m=r(59231),f=r(51983);t.AdvertisingBitmovinPackage=(0,n.createPackage)("advertising-bitmovin-package",((e,t)=>{const{StateEffectFactory:r,EventListenerEffectFactory:n}=t.registry.get(o.CoreExportNames.CoreEffects),i=t.using(r,n,a.AbortableEffectFactory),{ContentType:s}=i.registry.get(o.CoreExportNames.Constants),c=i.registry.get(d.SourceExportNames.SourceState);if(c.sourceConfig.contentType!==s.Content)return;const{createArrayAtom:l}=i.registry.get(o.CoreExportNames.CoreStateAtoms),{subscribeAndRun:v}=i.registry.get(o.CoreExportNames.Utils).State,{logTransitions:g}=i.registry.get(o.CoreExportNames.CoreStateAtoms).StateMachine,y=(0,m.createBitmovinAdvertisingStateAtom)(i),A=(0,p.createSchedulerStateMachineAtom)(i,y),T=(0,h.SchedulerUpdater)(A),S=l(i);i.registry.set(u.ContentSourceExportNames.AdSchedule,S),g(i,A,"AdScheduler"),(0,f.subscribeToScheduledAdBreaks)(i,S,y),v(i,c.playback.playhead,T)}),[o.CoreExportNames.CoreEffects,o.CoreExportNames.CoreStateAtoms,o.CoreExportNames.Utils,o.CoreExportNames.Constants,d.SourceExportNames.SourceState,d.SourceExportNames.CreateSourceReference,c.VideoElementStateExportNames.VideoElementState,s.NetworkExportNames.NetworkTask,i.AdaptationExportNames.Metrics,l.SourcesApiExportNames.SourceRemovedError]),t.default=t.AdvertisingBitmovinPackage},59231:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createBitmovinAdvertisingStateAtom=void 0;const a=r(14809);function n(e){const{createArrayAtom:t,createPrimitiveAtom:r}=e.registry.get(a.CoreExportNames.CoreStateAtoms),n=t(e),i=r(e,void 0),o=r(e,void 0);return e.effects.state.create({adBreaks:n,videoElement:i,playingAd:o},{})}t.createBitmovinAdvertisingStateAtom=n},97488:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createAdBreakAtom=void 0;const a=r(14809),n=r(52624);function i(e,t){const{createArrayAtom:r}=e.registry.get(a.CoreExportNames.CoreStateAtoms),i=r(e),o=(0,n.createAdBreakStateMachineAtom)(e,t,i),s=r(e);return e.effects.state.create({baseAdBreak:t,state:o,ads:i,vmapTrackingEvents:s},{})}t.createAdBreakAtom=i},52624:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createAdBreakStateMachineAtom=void 0;const a=r(14809),n=r(44197),i=r(75995),o=r(43405),s=r(48562),c=r(75863),d=r(44979),l=r(3607);function u(e,t,r){const{StoreEffectFactory:u}=e.registry.get(a.CoreExportNames.CoreEffects),{createStateMachineAtom:p}=e.registry.get(a.CoreExportNames.CoreStateAtoms).StateMachine;return p(e.using(u("parentContext",e)).using(u("baseAdBreak",t)).using(u("ads",r)),l.AdBreakState.Scheduled,{[l.AdBreakState.Scheduled]:d.scheduledTransitionHandler,[l.AdBreakState.Loading]:s.loadingTransitionHandler,[l.AdBreakState.Parsed]:c.parsedTransitionHandler,[l.AdBreakState.Error]:o.errorTransitionHandler},{[l.AdBreakState.Scheduled]:i.ScheduledHandler,[l.AdBreakState.Loading]:n.LoadingHandler})}t.createAdBreakStateMachineAtom=u},3607:(e,t)=>{var r;function a(){return{type:r.Load}}function n(){return{type:r.Reset}}function i(e){return{type:r.Error,error:e}}function o(){return{type:r.Parsed}}Object.defineProperty(t,"__esModule",{value:!0}),t.AdBreakParsedTransition=t.AdBreakErrorTransition=t.ResetAdBreakTransition=t.LoadAdBreakTransition=t.AdBreakTransitionType=t.AdBreakState=void 0,function(e){e.Scheduled="scheduled",e.Loading="loading",e.Parsed="parsed",e.Error="error"}(t.AdBreakState||(t.AdBreakState={})),function(e){e.Load="load",e.Reset="reset",e.Error="error",e.Parsed="parsed"}(r=t.AdBreakTransitionType||(t.AdBreakTransitionType={})),t.LoadAdBreakTransition=a,t.ResetAdBreakTransition=n,t.AdBreakErrorTransition=i,t.AdBreakParsedTransition=o},44197:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.LoadingHandler=void 0;const n=r(91270),i=r(14809),o=r(76954),s=r(48729),c=r(35162),d=r(99402),l=r(3607),u=(0,n.createTaskClosure)((e=>["ad-state-subscriber",(t,r)=>{const{state:a}=r.effects,n=r.registry.get(o.AdvertisingBaseExportNames.BaseAdState);switch(t.current){case c.AdState.Scheduled:case c.AdState.Preloading:a.dispatch(e.baseAd.state.setValue,n.Scheduled);break;case c.AdState.Skippable:a.dispatch(e.baseAd.isSkippable.setValue,!0);case c.AdState.Playing:a.dispatch(e.baseAd.state.setValue,n.Playing);break;case c.AdState.Skipped:a.dispatch(e.baseAd.state.setValue,n.Skipped);break;case c.AdState.Completed:a.dispatch(e.baseAd.state.setValue,n.Completed);break;case c.AdState.Error:a.dispatch(e.baseAd.state.setValue,n.Error)}}]));t.LoadingHandler=(0,n.createTask)("loading-handler",((e,t)=>a(void 0,void 0,void 0,(function*(){var r;const{store:a,state:n}=t.effects,{baseAdBreak:c,ads:p}=a,{subscribeAndRun:h}=t.registry.get(i.CoreExportNames.Utils).State,m=t.registry.get(o.AdvertisingBaseExportNames.CreateBaseAd);try{const a=yield t.fork(d.FetchAdsTask,c.tag);for(const e of a){const a=m(t.effects.store.parentContext,e.id,c.position,null!==(r=e.creative.skipDelay)&&void 0!==r?r:1/0,c.preloadConfig.adSourcePreloadOffset.value),i=(0,s.createAdAtom)(t.effects.store.parentContext,a,e);h(t.effects.store.parentContext,i.state,u(i)),n.dispatch(p.add,i),n.dispatch(c.ads.add,a)}n.dispatch(e.updateState,(0,l.AdBreakParsedTransition)())}catch(t){const r=t instanceof Error?t:new Error("Failed to fetch ads: "+t);n.dispatch(e.updateState,(0,l.AdBreakErrorTransition)(r))}}))))},75995:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ScheduledHandler=void 0;const a=r(91270);t.ScheduledHandler=(0,a.createTask)("schedule-handler",((e,t)=>{const{ads:r}=t.effects.store;t.effects.state.dispatch(r.clear)}))},43405:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.errorTransitionHandler=void 0;const a=r(3607),n=r(6564),i=r(85896);t.errorTransitionHandler=(0,i.createTransitionHandler)(a.AdBreakState.Error,n.ScheduledTransition)},65271:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ErrorTransition=void 0;const a=r(3607);function n(e,t){return(null==t?void 0:t.type)===a.AdBreakTransitionType.Error}t.ErrorTransition=[n,a.AdBreakState.Error]},48562:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.loadingTransitionHandler=void 0;const a=r(3607),n=r(65271),i=r(85896);function o(e,t){return(null==t?void 0:t.type)===a.AdBreakTransitionType.Parsed}t.loadingTransitionHandler=(0,i.createTransitionHandler)(a.AdBreakState.Loading,n.ErrorTransition,[o,a.AdBreakState.Parsed])},75863:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.parsedTransitionHandler=void 0;const a=r(3607),n=r(65271),i=r(6564),o=r(85896);t.parsedTransitionHandler=(0,o.createTransitionHandler)(a.AdBreakState.Parsed,n.ErrorTransition,i.ScheduledTransition)},44979:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.scheduledTransitionHandler=void 0;const a=r(3607),n=r(65271),i=r(85896);function o(e,t){return(null==t?void 0:t.type)===a.AdBreakTransitionType.Load}t.scheduledTransitionHandler=(0,i.createTransitionHandler)(a.AdBreakState.Scheduled,n.ErrorTransition,[o,a.AdBreakState.Loading])},6564:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ScheduledTransition=void 0;const a=r(3607);function n(e,t){return(null==t?void 0:t.type)===a.AdBreakTransitionType.Reset}t.ScheduledTransition=[n,a.AdBreakState.Scheduled]},85896:(e,t)=>{function r(e,...t){return(r,a)=>{for(const[e,n]of t)if(e(r,a))return n;return e}}Object.defineProperty(t,"__esModule",{value:!0}),t.createTransitionHandler=void 0,t.createTransitionHandler=r},54602:(e,t)=>{function r(e){return e!==t.UnknownAdDuration}Object.defineProperty(t,"__esModule",{value:!0}),t.isAdDurationKnown=t.UnknownAdDuration=void 0,t.UnknownAdDuration=Symbol("Unknown ad duration"),t.isAdDurationKnown=r},75710:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.scheduleAds=void 0;const a=r(7269),n=r(99302),i=r(3607),o=r(35162),s=r(75342);function c(e){const{state:t,store:r}=e.effects,o=e.registry.get(a.SourceExportNames.SourceState),{adBreaks:s}=r.schedulerState.advertisingState,c=o.playback.playhead.position,d=o.playback.duration.value,l=[];for(const e of s){const r=e.baseAdBreak.position(d);if(r===n.AdPositionNotYetKnown)continue;const a=c>=r-e.baseAdBreak.preloadConfig.adManifestPreloadOffset.value,o=e.state.current===i.AdBreakState.Loading||e.state.current===i.AdBreakState.Parsed||e.state.current===i.AdBreakState.Error;a&&!o&&t.dispatch(e.state.updateState,(0,i.LoadAdBreakTransition)()),c>=r&&e.state.current!==i.AdBreakState.Parsed&&e.state.current!==i.AdBreakState.Error&&l.push(e)}return l}function d(e){const{state:t,store:r}=e.effects,i=e.registry.get(a.SourceExportNames.SourceState),{adBreaks:c}=r.schedulerState.advertisingState,d=(0,s.getAllAds)(c),l=i.playback.playhead.position,u=i.playback.duration.value,p=[];for(const e of d){const r=e.baseAd.position(u);if(r===n.AdPositionNotYetKnown)continue;l>=r-e.baseAd.sourcePreloadOffset.value&&e.state.current===o.AdState.Scheduled&&t.dispatch(e.state.updateState,(0,o.PreloadAdTransition)());l>=r&&(e.state.current===o.AdState.Scheduled||e.state.current===o.AdState.Preloading)&&p.push([r,e])}return p}function l(e,t){var r;const{state:a,store:n}=t.effects;if((0,s.isContentPaused)(t)&&!n.schedulerState.wasContentPaused.value&&(0,s.isVideoAttached)(t))return void a.dispatch(e.updateState,void 0);const{adBreaksToLoad:i,currentAd:o}=n.schedulerState,l=c(t),u=d(t);if(l.length>0)return a.dispatch(i.set,l),void a.dispatch(e.updateState,void 0);a.dispatch(i.clear),u.sort((([e],[t])=>e-t));const p=null===(r=u.shift())||void 0===r?void 0:r[1];a.dispatch(o.setValue,p),a.dispatch(e.updateState,void 0)}t.scheduleAds=l},64178:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSchedulerStateMachineAtom=void 0;const a=r(14809),n=r(8565),i=r(86929),o=r(51277),s=r(15100),c=r(71222),d=r(39965),l=r(15282),u=r(52962),p=r(79820),h=r(45544),m=r(39808),f=r(58378),v=r(5647),g=r(88028),y=r(4915),A=r(22632),T=r(33714),S=r(11874),b=r(26580),k=r(20265),E=r(31190),C=r(94253),R=r(26760),P=r(1004),w=r(27027);function N(e,t){const{StoreEffectFactory:r}=e.registry.get(a.CoreExportNames.CoreEffects),N=(0,f.createSchedulerStateAtom)(e,t),x=e.using(r("schedulerState",N)),{createStateMachineAtom:L}=x.registry.get(a.CoreExportNames.CoreStateAtoms).StateMachine;return L(x,w.SchedulerState.Initial,{[w.SchedulerState.Initial]:y.initialTransitionHandler,[w.SchedulerState.ContentDetached]:g.contentDetachedTransitionHandler,[w.SchedulerState.ObservePlayhead]:A.observePlayheadTransitionHandler,[w.SchedulerState.WaitForAdBreaks]:R.waitForAdBreaksTransitionHandler,[w.SchedulerState.ResumeContentPlayback]:k.resumeContentPlaybackTransitionHandler,[w.SchedulerState.WaitForPlay]:P.waitForPlayTransitionHandler,[w.SchedulerState.PauseContentPlayback]:T.pauseContentPlaybackTransitionHandler,[w.SchedulerState.WaitForAd]:C.waitForAdTransitionHandler,[w.SchedulerState.SuspendContent]:E.suspendContentTransitionHandler,[w.SchedulerState.PlayAd]:S.playAdTransitionHandler,[w.SchedulerState.AdComplete]:v.adCompleteTransitionHandler,[w.SchedulerState.RestoreContent]:b.restoreContentTransitionHandler},{[w.SchedulerState.AdComplete]:n.AdCompleteHandler,[w.SchedulerState.ContentDetached]:i.ContentDetachedHandler,[w.SchedulerState.ObservePlayhead]:o.ObservePlayheadHandler,[w.SchedulerState.PauseContentPlayback]:s.PauseContentPlaybackHandler,[w.SchedulerState.PlayAd]:c.PlayAdHandler,[w.SchedulerState.RestoreContent]:d.RestoreContentHandler,[w.SchedulerState.ResumeContentPlayback]:l.ResumeContentPlaybackHandler,[w.SchedulerState.SuspendContent]:u.SuspendContentHandler,[w.SchedulerState.WaitForAd]:p.WaitForAdHandler,[w.SchedulerState.WaitForAdBreaks]:h.WaitForAdBreaksHandler,[w.SchedulerState.WaitForPlay]:m.WaitForPlayHandler})}t.createSchedulerStateMachineAtom=N},65842:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SchedulerUpdater=void 0;const a=r(91270);t.SchedulerUpdater=(0,a.createTaskClosure)((e=>["ad-scheduler-updated",(t,r)=>{r.effects.state.dispatch(e.updateState,void 0)}]))},27027:(e,t)=>{var r;function a(){return{type:r.ContentAttached}}function n(){return{type:r.ContentDetached}}function i(){return{type:r.ContentSeek}}function o(){return{type:r.ContentPaused}}function s(){return{type:r.ContentPlay}}function c(){return{type:r.AdReady}}function d(){return{type:r.AdError}}function l(){return{type:r.AdComplete}}function u(){return{type:r.AdBreaksLoaded}}function p(){return{type:r.ContentRestored}}Object.defineProperty(t,"__esModule",{value:!0}),t.ContentRestoredTransition=t.AdBreaksLoadedTransition=t.AdCompleteTransition=t.AdErrorTransition=t.AdReadyTransition=t.ContentPlayTransition=t.ContentPausedTransition=t.ContentSeekTransition=t.ContentDetachedTransition=t.ContentAttachedTransition=t.SchedulerStateTransitionType=t.SchedulerState=void 0,function(e){e.Initial="initial",e.ContentDetached="content-detached",e.ObservePlayhead="observe-playhead",e.ResumeContentPlayback="resume-content-playback",e.WaitForPlay="wait-for-play",e.PauseContentPlayback="pause-content-playback",e.WaitForAd="wait-for-ad",e.WaitForAdBreaks="wait-for-ad-breaks",e.AdComplete="ad-complete",e.SuspendContent="suspend-content",e.PlayAd="play-ad",e.RestoreContent="restore-content"}(t.SchedulerState||(t.SchedulerState={})),function(e){e.ContentAttached="content-attached",e.ContentDetached="content-detached",e.ContentSeek="content-seek",e.ContentPaused="content-paused",e.ContentPlay="content-play",e.AdReady="ad-ready",e.AdError="ad-error",e.AdComplete="ad-complete",e.AdBreaksLoaded="ad-breaks-loaded",e.ContentRestored="content-restored"}(r=t.SchedulerStateTransitionType||(t.SchedulerStateTransitionType={})),t.ContentAttachedTransition=a,t.ContentDetachedTransition=n,t.ContentSeekTransition=i,t.ContentPausedTransition=o,t.ContentPlayTransition=s,t.AdReadyTransition=c,t.AdErrorTransition=d,t.AdCompleteTransition=l,t.AdBreaksLoadedTransition=u,t.ContentRestoredTransition=p},75342:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isPlaying=t.getAllAds=t.isContentPaused=t.isAdReadyForPlayback=t.isVideoAttached=void 0;const a=r(36921),n=r(7269),i=r(35162);function o(e){return void 0!==e.registry.get(n.SourceExportNames.SourceState).video.element}function s(e){return e.state.current===i.AdState.Preloading}function c(e){const t=e.registry.get(a.PlayPauseExportNames.TargetPlaybackState);return e.registry.get(a.PlayPauseExportNames.TargetPlaybackStateAtom).value===t.Paused}function d(e){const t=[];for(const r of e)t.push(...r.ads);return t}function l(e){return e.state.current===i.AdState.Playing||e.state.current===i.AdState.Skippable}t.isVideoAttached=o,t.isAdReadyForPlayback=s,t.isContentPaused=c,t.getAllAds=d,t.isPlaying=l},8565:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.AdCompleteHandler=void 0;const n=r(91270),i=r(75710);t.AdCompleteHandler=(0,n.createTask)("ad-complete-handler",((e,t)=>a(void 0,void 0,void 0,(function*(){var r;const{state:a,store:n}=t.effects,o=n.schedulerState.currentAd.value,s=null===(r=null==o?void 0:o.sourceReference.value)||void 0===r?void 0:r.state.video;void 0!==s&&a.dispatch(s.setElement,void 0),void 0!==o&&a.dispatch(n.schedulerState.currentAd.setValue,void 0),(0,i.scheduleAds)(e,t)}))))},86929:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ContentDetachedHandler=void 0;const a=r(91270),n=r(14809),i=r(7269),o=r(27027),s=(0,a.createTaskClosure)((e=>["video-element-observer",(t,r)=>{void 0!==t.element&&r.effects.state.dispatch(e.updateState,{type:o.SchedulerStateTransitionType.ContentAttached})}]));t.ContentDetachedHandler=(0,a.createTask)("content-detached-handler",((e,t)=>{const{subscribeAndRun:r}=t.registry.get(n.CoreExportNames.Utils).State,a=t.registry.get(i.SourceExportNames.SourceState);return r(t,a.video,s(e)),t.effects.loop(t.abortSignal)}))},51277:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.ObservePlayheadHandler=void 0;const n=r(91270),i=r(14809),o=r(7269),s=r(75710),c=r(27027),d=(0,n.createTaskClosure)((e=>["ad-scheduler",(t,r)=>a(void 0,void 0,void 0,(function*(){yield r.effects.abortable((e=>e())),e.current===c.SchedulerState.ObservePlayhead&&(0,s.scheduleAds)(e,r)}))])),l=(0,n.createTaskClosure)((e=>["ad-state-subscriber",(t,r)=>{r.effects.state.subscribe(r,t.state,d(e))}])),u=(0,n.createTaskClosure)((e=>["ad-break-subscriber",(t,r)=>{const{mapSubscribe:a}=r.registry.get(i.CoreExportNames.Utils).State;a(r,t.ads,l(e)),r.effects.state.subscribe(r,t.state,d(e))}]));t.ObservePlayheadHandler=(0,n.createTask)("observe-playhead-handler",((e,t)=>{const{advertisingState:r,currentAd:a,adBreaksToLoad:n}=t.effects.store.schedulerState,{adBreaks:s}=r,{subscribeAndRun:c,mapSubscribe:l}=t.registry.get(i.CoreExportNames.Utils).State,p=t.registry.get(o.SourceExportNames.SourceState),h=d(e);return t.effects.state.dispatch(n.clear),t.effects.state.dispatch(a.setValue,void 0),c(t,p.playback.playhead,h),l(t,s,u(e)),t.effects.loop(t.abortSignal)}))},15100:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PauseContentPlaybackHandler=void 0;const a=r(91270),n=r(36921);t.PauseContentPlaybackHandler=(0,a.createTask)("pause-content-playback-handler",((e,t)=>{const r=t.registry.get(n.PlayPauseExportNames.TargetPlaybackStateAtom),a=t.registry.get(n.PlayPauseExportNames.TargetPlaybackState);r.value!==a.Paused?(t.effects.state.dispatch(t.effects.store.schedulerState.wasContentPaused.setValue,!0),t.effects.state.dispatch(r.setValue,a.Paused),t.effects.state.dispatch(e.updateState,void 0)):t.effects.state.dispatch(e.updateState,void 0)}))},71222:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlayAdHandler=void 0;const a=r(91270),n=r(14809),i=r(35162),o=r(9938),s=r(27027),c=(0,a.createTaskClosure)((e=>["ad-state-observer",(t,r)=>{const{state:a}=r.effects;switch(t.current){case i.AdState.Error:a.dispatch(e.updateState,(0,s.AdErrorTransition)());break;case i.AdState.Skipped:case i.AdState.Completed:a.dispatch(e.updateState,(0,s.AdCompleteTransition)())}}]));t.PlayAdHandler=(0,a.createTask)("play-ad-handler",((e,t)=>{const{store:r,state:a,loop:s}=t.effects,{currentAd:d,wasAdPaused:l,video:u}=r.schedulerState,{subscribeAndRun:p}=t.registry.get(n.CoreExportNames.Utils).State;if(void 0===d.value)throw new Error("Current ad unexpectedly undefined");a.dispatch(l.setValue,!1),p(t,d.value.state,c(e));const h=d.value.sourceReference.value;if(void 0===h)throw new Error("Source reference unexpectedly undefined");const m=h.state;return a.dispatch(m.video.setElement,u.value),(0,o.trackAdPlayback)(t,d.value),a.dispatch(d.value.state.updateState,(0,i.PlayAdTransition)()),s(t.abortSignal)}))},39965:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RestoreContentHandler=void 0;const a=r(91270),n=r(7269),i=r(27027),o=(0,a.createTaskClosure)((e=>["load-start-subscriber",(t,r)=>{r.effects.state.dispatch(e.updateState,(0,i.ContentRestoredTransition)())}]));t.RestoreContentHandler=(0,a.createTask)("restore-content-handler",((e,t)=>{const{state:r,events:a}=t.effects,{video:i,currentAd:s,wasContentSuspended:c}=t.effects.store.schedulerState,d=t.registry.get(n.SourceExportNames.SourceState);if(void 0===i.value)throw new Error("Could not restore content - video element is undefined");if(void 0!==d.video.element)throw new Error("Could not restore content - another video element is already attached");const l=i.value;return a.subscribe(t,l,"loadstart",o(e)),r.dispatch(i.setValue,void 0),r.dispatch(s.setValue,void 0),r.dispatch(c.setValue,!1),r.dispatch(d.video.setElement,l),t.effects.loop(t.abortSignal)}))},15282:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ResumeContentPlaybackHandler=void 0;const a=r(91270),n=r(36921);t.ResumeContentPlaybackHandler=(0,a.createTask)("resume-content-playback-handler",((e,t)=>{const r=t.effects.store.schedulerState.wasAdPaused.value,a=t.effects.store.schedulerState.wasContentPaused.value,i=t.registry.get(n.PlayPauseExportNames.TargetPlaybackState),o=t.registry.get(n.PlayPauseExportNames.TargetPlaybackStateAtom),s=r||!a?i.Paused:i.Playing;t.effects.state.dispatch(o.setValue,s),t.effects.state.dispatch(t.effects.store.schedulerState.wasContentPaused.setValue,!1),t.effects.state.dispatch(e.updateState,void 0)}))},52962:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SuspendContentHandler=void 0;const a=r(91270),n=r(7269);t.SuspendContentHandler=(0,a.createTask)("suspend-content-handler",((e,t)=>{const r=t.registry.get(n.SourceExportNames.SourceState),a=t.effects.store.schedulerState,i=r.video,o=i.element;if(void 0===o)throw new Error("Cannot play back ads - content source is detached");if(void 0!==a.video.value)throw new Error("Cannot play back ads - video element is already assigned");const s=.1,c=o.duration,d=r.playback.playhead.position>c-s;if(t.effects.state.dispatch(i.setElement,void 0),t.effects.state.dispatch(a.video.setValue,o),t.effects.state.dispatch(a.wasContentSuspended.setValue,!0),d){const e=r.playback.playhead.position-s;t.effects.state.dispatch(r.playback.playhead.setPosition,e)}t.effects.state.dispatch(e.updateState,void 0)}))},79820:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WaitForAdHandler=void 0;const a=r(91270),n=r(14809),i=r(35162),o=r(27027),s=(0,a.createTaskClosure)((e=>["ad-state-subscriber",(t,r)=>{const{state:a}=r.effects;switch(t.current){case i.AdState.Error:a.dispatch(e.updateState,{type:o.SchedulerStateTransitionType.AdError});break;case i.AdState.Preloading:a.dispatch(e.updateState,{type:o.SchedulerStateTransitionType.AdReady})}}]));t.WaitForAdHandler=(0,a.createTask)("wait-for-ad-handler",((e,t)=>{const r=t.effects.store.schedulerState.currentAd;if(!r.value)throw new Error("Current ad is unexpectedly undefined");const{subscribeAndRun:a}=t.registry.get(n.CoreExportNames.Utils).State;return a(t,r.value.state,s(e)),t.effects.loop(t.abortSignal)}))},45544:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WaitForAdBreaksHandler=void 0;const a=r(91270),n=r(14809),i=r(36921),o=r(3607),s=r(27027);function c(e){return e.state.current===o.AdBreakState.Parsed||e.state.current===o.AdBreakState.Error}const d=(0,a.createTaskClosure)((e=>["target-playback-state-subscriber",(t,r)=>{if(e.current!==s.SchedulerState.WaitForAdBreaks)return;const a=r.registry.get(i.PlayPauseExportNames.TargetPlaybackState);r.effects.state.dispatch(t.setValue,a.Paused)}])),l=(0,a.createTaskClosure)((e=>["ad-break-status-subscriber",(t,r)=>{r.effects.store.schedulerState.adBreaksToLoad.every(c)&&(r.effects.state.dispatch(r.effects.store.schedulerState.adBreaksToLoad.clear),r.effects.state.dispatch(e.updateState,{type:s.SchedulerStateTransitionType.AdBreaksLoaded}))}])),u=(0,a.createTaskClosure)((e=>["ad-break-subscriber",(t,r)=>{const{subscribeAndRun:a}=r.registry.get(n.CoreExportNames.Utils).State;return a(r,t.state,l(e)),r.effects.loop(r.abortSignal)}]));t.WaitForAdBreaksHandler=(0,a.createTask)("wait-for-ad-breaks-handler",((e,t)=>{const r=t.registry.get(i.PlayPauseExportNames.TargetPlaybackStateAtom),{mapSubscribe:a,subscribeAndRun:o}=t.registry.get(n.CoreExportNames.Utils).State;return o(t,r,d(e)),a(t,t.effects.store.schedulerState.adBreaksToLoad,u(e)),t.effects.loop(t.abortSignal)}))},39808:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WaitForPlayHandler=void 0;const a=r(91270),n=r(14809),i=r(36921),o=r(7269),s=r(27027),c=(0,a.createTaskClosure)((e=>["video-element-subscriber",({element:t},r)=>{void 0===t&&e.current===s.SchedulerState.WaitForPlay&&r.effects.state.dispatch(e.updateState,{type:s.SchedulerStateTransitionType.ContentDetached})}])),d=(0,a.createTaskClosure)((e=>["target-playback-state-subscriber",({value:t},r)=>{t!==r.registry.get(i.PlayPauseExportNames.TargetPlaybackState).Paused&&r.effects.state.dispatch(e.updateState,{type:s.SchedulerStateTransitionType.ContentPlay})}]));t.WaitForPlayHandler=(0,a.createTask)("wait-for-play-handler",((e,t)=>{const{subscribeAndRun:r}=t.registry.get(n.CoreExportNames.Utils).State,a=t.registry.get(o.SourceExportNames.SourceState),s=t.registry.get(i.PlayPauseExportNames.TargetPlaybackStateAtom);return r(t,a.video,c(e)),r(t,s,d(e)),t.effects.loop(t.abortSignal)}))},58378:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSchedulerStateAtom=void 0;const a=r(14809);function n(e,t){const{createPrimitiveAtom:r,createArrayAtom:n}=e.registry.get(a.CoreExportNames.CoreStateAtoms),i=r(e,!1),o=r(e,!1),s=r(e,!1),c=r(e,void 0),d=r(e,void 0),l=n(e);return e.effects.state.create({advertisingState:t,wasAdPaused:i,wasContentSuspended:s,currentAd:c,video:d,adBreaksToLoad:l,wasContentPaused:o},{})}t.createSchedulerStateAtom=n},5647:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.adCompleteTransitionHandler=void 0;const a=r(27027),n=r(75342),i=r(60016);function o(e){const{currentAd:t,wasContentSuspended:r,adBreaksToLoad:a}=e.effects.store.schedulerState;return void 0===t.value&&0===a.length&&r.value}function s(e){const{currentAd:t,wasContentSuspended:r,adBreaksToLoad:a}=e.effects.store.schedulerState;return void 0===t.value&&0===a.length&&!r.value}function c(e){const{currentAd:t}=e.effects.store.schedulerState;return void 0!==t.value&&!(0,n.isAdReadyForPlayback)(t.value)}function d(e){const{currentAd:t,wasContentSuspended:r}=e.effects.store.schedulerState;return void 0!==t.value&&(0,n.isAdReadyForPlayback)(t.value)&&!r.value}function l(e){const{currentAd:t,wasContentSuspended:r}=e.effects.store.schedulerState;return void 0!==t.value&&(0,n.isAdReadyForPlayback)(t.value)&&r.value}function u(e){const{currentAd:t,adBreaksToLoad:r}=e.effects.store.schedulerState;return void 0===t.value&&r.length>0}t.adCompleteTransitionHandler=(0,i.createTransitionHandler)(a.SchedulerState.AdComplete,[o,a.SchedulerState.RestoreContent],[s,a.SchedulerState.ResumeContentPlayback],[c,a.SchedulerState.WaitForAd],[d,a.SchedulerState.SuspendContent],[l,a.SchedulerState.PlayAd],[u,a.SchedulerState.WaitForAdBreaks])},88028:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.contentDetachedTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentAttached}t.contentDetachedTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.ContentDetached,[i,a.SchedulerState.ObservePlayhead])},4915:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.initialTransitionHandler=void 0;const a=r(27027),n=r(75342),i=r(60016);function o(e){return(0,n.isVideoAttached)(e)}function s(e){return!(0,n.isVideoAttached)(e)}t.initialTransitionHandler=(0,i.createTransitionHandler)(a.SchedulerState.Initial,[o,a.SchedulerState.ObservePlayhead],[s,a.SchedulerState.ContentDetached])},22632:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.observePlayheadTransitionHandler=void 0;const a=r(27027),n=r(75342),i=r(60016);function o(e,t){return!(0,n.isVideoAttached)(e)||(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentDetached}function s(e){return(0,n.isContentPaused)(e)}function c(e){const{currentAd:t,adBreaksToLoad:r}=e.effects.store.schedulerState;return(void 0!==t.value||r.length>0)&&!(0,n.isContentPaused)(e)}t.observePlayheadTransitionHandler=(0,i.createTransitionHandler)(a.SchedulerState.ObservePlayhead,[o,a.SchedulerState.ContentDetached],[s,a.SchedulerState.WaitForPlay],[c,a.SchedulerState.PauseContentPlayback])},33714:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.pauseContentPlaybackTransitionHandler=void 0;const a=r(27027),n=r(75342),i=r(60016);function o(e){return e.effects.store.schedulerState.adBreaksToLoad.length>0}function s(e){const t=e.effects.store.schedulerState.currentAd.value;if(void 0===t)return!1;const r=(0,n.isAdReadyForPlayback)(t),a=e.effects.store.schedulerState.wasContentSuspended.value;return r&&a}function c(e){const t=e.effects.store.schedulerState.currentAd.value;if(void 0===t)return!1;const r=(0,n.isAdReadyForPlayback)(t),a=e.effects.store.schedulerState.wasContentSuspended.value;return r&&!a}function d(e){const t=e.effects.store.schedulerState.currentAd.value;if(void 0===t)return!1;return!(0,n.isAdReadyForPlayback)(t)}t.pauseContentPlaybackTransitionHandler=(0,i.createTransitionHandler)(a.SchedulerState.PauseContentPlayback,[o,a.SchedulerState.WaitForAdBreaks],[s,a.SchedulerState.PlayAd],[c,a.SchedulerState.SuspendContent],[d,a.SchedulerState.WaitForAd])},11874:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.playAdTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdComplete||(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdError}t.playAdTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.PlayAd,[i,a.SchedulerState.AdComplete])},26580:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.restoreContentTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentRestored}t.restoreContentTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.RestoreContent,[i,a.SchedulerState.ResumeContentPlayback])},20265:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.resumeContentPlaybackTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(){return!0}t.resumeContentPlaybackTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.ResumeContentPlayback,[i,a.SchedulerState.ObservePlayhead])},31190:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.suspendContentTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(){return!0}t.suspendContentTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.SuspendContent,[i,a.SchedulerState.PlayAd])},60016:(e,t)=>{function r(e,...t){return(r,a)=>{for(const[e,n]of t)if(e(r,a))return n;return e}}Object.defineProperty(t,"__esModule",{value:!0}),t.createTransitionHandler=void 0,t.createTransitionHandler=r},94253:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.waitForAdTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentPaused}function o(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentSeek}function s(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentDetached}function c(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdComplete}function d(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdReady&&!e.effects.store.schedulerState.wasContentSuspended.value}function l(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdReady&&e.effects.store.schedulerState.wasContentSuspended.value}t.waitForAdTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.WaitForAd,[i,a.SchedulerState.WaitForPlay],[o,a.SchedulerState.ObservePlayhead],[s,a.SchedulerState.ContentDetached],[c,a.SchedulerState.AdComplete],[d,a.SchedulerState.SuspendContent],[l,a.SchedulerState.PlayAd])},26760:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.waitForAdBreaksTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){return!e.effects.store.schedulerState.wasContentSuspended.value&&(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentSeek}function o(e,t){return e.effects.store.schedulerState.wasContentSuspended.value&&(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentSeek}function s(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdBreaksLoaded}t.waitForAdBreaksTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.WaitForAdBreaks,[i,a.SchedulerState.ResumeContentPlayback],[o,a.SchedulerState.RestoreContent],[s,a.SchedulerState.AdComplete])},1004:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.waitForPlayTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){const{currentAd:r,adBreaksToLoad:n}=e.effects.store.schedulerState;return void 0===r.value&&0===n.length&&((null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentPlay||(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentSeek)}function o(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentPlay}function s(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentDetached}t.waitForPlayTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.WaitForPlay,[i,a.SchedulerState.ObservePlayhead],[o,a.SchedulerState.PauseContentPlayback],[s,a.SchedulerState.ContentDetached])},48729:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createAdAtom=void 0;const a=r(91270),n=r(14809),i=r(54602),o=r(55564),s=r(35162);function c(e){return"number"==typeof e&&Number.isFinite(e)&&e>0}function d(e,t){const{createPrimitiveAtom:r}=e.registry.get(n.CoreExportNames.CoreStateAtoms);return r(e,c(t.creative.duration)?t.creative.duration:i.UnknownAdDuration)}const l=(0,a.createTaskClosure)((e=>["skip-subscriber",(t,r)=>{r.effects.state.dispatch(e.updateState,(0,s.SkipAdTransition)())}]));function u(e,t,r){const{creative:a,tracker:i}=r,{createPrimitiveAtom:s}=e.registry.get(n.CoreExportNames.CoreStateAtoms),c=s(e,void 0),u=(0,o.createAdStateMachineAtom)(e,t,r,c),p=d(e,r);return e.effects.state.subscribe(e,t.skip,l(u)),e.effects.state.create({baseAd:t,duration:p,state:u,creative:a,tracker:i,sourceReference:c},{})}t.createAdAtom=u},55564:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createAdStateMachineAtom=void 0;const a=r(14809),n=r(73153),i=r(46392),o=r(83376),s=r(32353),c=r(4639),d=r(97066),l=r(37905),u=r(31343),p=r(45989),h=r(6978),m=r(19810),f=r(61555),v=r(5459),g=r(55062),y=r(35162);function A(e,t,r,A){const{StoreEffectFactory:T}=e.registry.get(a.CoreExportNames.CoreEffects),{createStateMachineAtom:S}=e.registry.get(a.CoreExportNames.CoreStateAtoms).StateMachine;return S(e.using(T("baseAd",t)).using(T("sourceReference",A)).using(T("vastAd",r)),y.AdState.Scheduled,{[y.AdState.Scheduled]:f.scheduledTransitionHandler,[y.AdState.Preloading]:m.preloadingSourceTransitionHandler,[y.AdState.Playing]:h.playingTransitionHandler,[y.AdState.Skippable]:v.skippableTransitionHandler,[y.AdState.Skipped]:g.skippedTransitionHandler,[y.AdState.Completed]:u.completedTransitionHandler,[y.AdState.Error]:p.errorTransitionHandler},{[y.AdState.Scheduled]:c.ScheduledHandler,[y.AdState.Preloading]:s.PreloadingHandler,[y.AdState.Playing]:o.PlayingHandler,[y.AdState.Skippable]:d.SkippableHandler,[y.AdState.Skipped]:l.SkippedHandler,[y.AdState.Completed]:n.CompletedHandler,[y.AdState.Error]:i.ErrorHandler})}t.createAdStateMachineAtom=A},35162:(e,t)=>{var r;function a(){return{type:r.Reset}}function n(){return{type:r.Preload}}function i(){return{type:r.Play}}function o(){return{type:r.Skippable}}function s(){return{type:r.Completed}}function c(){return{type:r.Skip}}function d(){return{type:r.Abort}}function l(e){return{type:r.Error,error:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.AdErrorTransition=t.AbortAdTransition=t.SkipAdTransition=t.AdCompletedTransition=t.AdSkippableTransition=t.PlayAdTransition=t.PreloadAdTransition=t.ResetAdTransition=t.AdTransitionType=t.AdState=void 0,function(e){e.Scheduled="scheduled",e.Preloading="preloading",e.Playing="playing",e.Skippable="skippable",e.Skipped="skipped",e.Completed="completed",e.Error="error"}(t.AdState||(t.AdState={})),function(e){e.Reset="reset",e.Preload="preload",e.Play="play",e.Skippable="skippable",e.Completed="completed",e.Skip="skip",e.Abort="abort",e.Error="error"}(r=t.AdTransitionType||(t.AdTransitionType={})),t.ResetAdTransition=a,t.PreloadAdTransition=n,t.PlayAdTransition=i,t.AdSkippableTransition=o,t.AdCompletedTransition=s,t.SkipAdTransition=c,t.AbortAdTransition=d,t.AdErrorTransition=l},73153:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CompletedHandler=void 0;const a=r(91270),n=r(82405);t.CompletedHandler=(0,a.createTask)("completed-handler",n.postAdCleanup)},46392:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ErrorHandler=void 0;const a=r(91270),n=r(82405);t.ErrorHandler=(0,a.createTask)("error-handler",((e,t)=>(t.effects.store.vastAd.tracker.error(),(0,n.postAdCleanup)(e,t))))},83376:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlayingHandler=void 0;const a=r(91270),n=r(35162),i=r(43297),o=(0,a.createTaskClosure)((e=>["playhead-subscriber",(t,r)=>{var a;const{state:i,store:o}=r.effects,s=null!==(a=o.baseAd.skipDelay.value)&&void 0!==a?a:1/0;t.position<s||i.dispatch(e.updateState,(0,n.AdSkippableTransition)())}])),s=(0,a.createTaskClosure)((e=>["video-element-subscriber",(t,r)=>{if(void 0!==t.element)return;const a=new Error("Video element was detached mid-playback");r.effects.state.dispatch(e.updateState,(0,n.AdErrorTransition)(a))}])),c=(0,a.createTaskClosure)((e=>["ended-subscriber",(t,r)=>{r.effects.state.dispatch(e.updateState,(0,n.AdCompletedTransition)())}]));t.PlayingHandler=(0,a.createTask)("playing-handler",((e,t)=>{const{state:r,store:a,events:n,loop:d}=t.effects,l=a.sourceReference.value;if(void 0===l)throw new Error("Source reference unexpectedly undefined");const u=l.state;if(void 0===u.video.element)throw new Error("Video element unexpectedly undefined");return r.subscribe(t,u.playback.playhead,(0,i.QuartileSubscriber)(a.baseAd,l.state)),r.subscribe(t,u.playback.playhead,o(e)),r.subscribe(t,u.video,s(e)),n.subscribe(t,u.video.element,"ended",c(e)),d(t.abortSignal)}))},82405:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.postAdCleanup=void 0;const a=r(7269),n=r(21010);function i(e,t){var r;const{store:i,state:o}=t.effects,{sourceReference:s}=i;if(void 0===s.value)return;const c=t.registry.get(a.SourceExportNames.SourceReferences),d=t.registry.get(n.SourcesApiExportNames.SourceRemovedError);null===(r=s.value.abortable)||void 0===r||r.abort(new d),o.dispatch(c.remove,s.value)}t.postAdCleanup=i},32353:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PreloadingHandler=t.mediaFileToResource=void 0;const a=r(91270),n=r(25320),i=r(14809),o=r(7269),s=r(76954),c=r(35162);function d(e){return{url:e.fileURL,type:l(e),metadata:{bitrate:e.bitrate,width:e.width,height:e.height,mimeType:e.mimeType,codec:e.codec}}}function l(e){const{deliveryType:t,mimeType:r,fileURL:a}=e;if(r){const e=r.toLowerCase();if(e.includes("mpegurl")||e.includes("x-mpegurl"))return"hls";if(e.includes("dash")||"application/dash+xml"===e)return"dash"}if("streaming"===t){const e=a.toLowerCase();return e.includes(".m3u8")?"hls":e.includes(".mpd")?"dash":"hls"}return"progressive"}t.mediaFileToResource=d;const u=(0,a.createTaskClosure)((e=>["inject-ad-state",(t,r)=>(r.registry.set(s.AdSourceExportNames.AssociatedAd,e),r.effects.loop(r.abortSignal))]));t.PreloadingHandler=(0,a.createTask)("preloading-handler",((e,t)=>{const{store:r,state:a}=t.effects,{vastAd:s,baseAd:l,sourceReference:p}=r,{ContentType:h}=t.registry.get(i.CoreExportNames.Constants),m=t.registry.get(o.SourceExportNames.SourceState),f=t.registry.get(o.SourceExportNames.CreateSourceReference),v=t.registry.get(o.SourceExportNames.SourceReferences),g=t=>(a.dispatch(e.updateState,(0,c.AdErrorTransition)(t)),!0),y=f({sourceConfig:{resources:s.creative.mediaFiles.map(d),contentType:h.Advertisement},sourceOptions:{loadControl:n.LoadControl.Data,playback:{autoplay:!0,muted:m.playbackConfig.muted,preventSeeking:!0}},sourceErrorHandler:g,sourceId:`ad-${l.id}`,task:u(l)});a.dispatch(v.add,y),a.dispatch(p.setValue,y),a.dispatch(e.updateState,void 0)}))},43297:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.QuartileSubscriber=void 0;const a=r(91270),n=r(76954);t.QuartileSubscriber=(0,a.createTaskClosure)(((e,t)=>["quartile-subscriber",(r,a)=>{const{state:i}=a.effects,o=a.registry.get(n.AdvertisingBaseExportNames.AdQuartile),s=t.playback.duration.value,c=r.position/s;c>=.25&&void 0===e.quartile.value?i.dispatch(e.quartile.setValue,o.FirstQuartile):c>=.5&&e.quartile.value===o.FirstQuartile?i.dispatch(e.quartile.setValue,o.Midpoint):c>=.75&&e.quartile.value===o.Midpoint&&i.dispatch(e.quartile.setValue,o.ThirdQuartile)}]))},4639:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ScheduledHandler=void 0;const a=r(91270);t.ScheduledHandler=(0,a.createTask)("scheduled-handler",((e,t)=>{const{store:r,state:a}=t.effects,{sourceReference:n}=r;a.dispatch(n.setValue,void 0),a.dispatch(e.updateState,void 0)}))},97066:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SkippableHandler=void 0;const a=r(91270),n=r(35162),i=r(43297),o=(0,a.createTaskClosure)((e=>["video-element-subscriber",(t,r)=>{if(void 0!==t.element)return;const a=new Error("Video element was detached mid-playback");r.effects.state.dispatch(e.updateState,(0,n.AdErrorTransition)(a))}])),s=(0,a.createTaskClosure)((e=>["ended-subscriber",(t,r)=>{r.effects.state.dispatch(e.updateState,(0,n.AdCompletedTransition)())}]));t.SkippableHandler=(0,a.createTask)("skippable-handler",((e,t)=>{const{state:r,store:a,events:n,loop:c}=t.effects,d=a.sourceReference.value;if(void 0===d)throw new Error("Source reference unexpectedly undefined");const l=d.state;if(void 0===l.video.element)throw new Error("Video element unexpectedly undefined");return r.subscribe(t,l.playback.playhead,(0,i.QuartileSubscriber)(a.baseAd,d.state)),r.subscribe(t,l.video,o(e)),n.subscribe(t,l.video.element,"ended",s(e)),c(t.abortSignal)}))},37905:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SkippedHandler=void 0;const a=r(91270),n=r(82405);t.SkippedHandler=(0,a.createTask)("skipped-handler",((e,t)=>(t.effects.store.vastAd.tracker.skip(),(0,n.postAdCleanup)(e,t))))},31343:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.completedTransitionHandler=void 0;const a=r(35162),n=r(40872),i=r(95);t.completedTransitionHandler=(0,i.createTransitionHandler)(a.AdState.Completed,n.ScheduledTransition)},4905:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CompletedTransition=void 0;const a=r(35162);function n(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Completed}t.CompletedTransition=[n,a.AdState.Completed]},45989:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.errorTransitionHandler=void 0;const a=r(35162),n=r(40872),i=r(95);t.errorTransitionHandler=(0,i.createTransitionHandler)(a.AdState.Error,n.ScheduledTransition)},29045:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ErrorTransition=void 0;const a=r(35162);function n(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Error}t.ErrorTransition=[n,a.AdState.Error]},6978:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.playingTransitionHandler=void 0;const a=r(35162),n=r(4905),i=r(29045),o=r(40872),s=r(95);function c(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Skippable}t.playingTransitionHandler=(0,s.createTransitionHandler)(a.AdState.Playing,i.ErrorTransition,o.ScheduledTransition,n.CompletedTransition,[c,a.AdState.Skippable])},19810:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.preloadingSourceTransitionHandler=void 0;const a=r(35162),n=r(29045),i=r(40872),o=r(95);function s(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Play}t.preloadingSourceTransitionHandler=(0,o.createTransitionHandler)(a.AdState.Preloading,n.ErrorTransition,i.ScheduledTransition,[s,a.AdState.Playing])},61555:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.scheduledTransitionHandler=void 0;const a=r(35162),n=r(29045),i=r(95);function o(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Preload}t.scheduledTransitionHandler=(0,i.createTransitionHandler)(a.AdState.Scheduled,n.ErrorTransition,[o,a.AdState.Preloading])},40872:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ScheduledTransition=void 0;const a=r(35162);function n(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Reset}t.ScheduledTransition=[n,a.AdState.Scheduled]},5459:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.skippableTransitionHandler=void 0;const a=r(35162),n=r(4905),i=r(29045),o=r(40872),s=r(95);function c(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Skip}t.skippableTransitionHandler=(0,s.createTransitionHandler)(a.AdState.Skippable,i.ErrorTransition,o.ScheduledTransition,n.CompletedTransition,[c,a.AdState.Skipped])},55062:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.skippedTransitionHandler=void 0;const a=r(35162),n=r(40872),i=r(95);t.skippedTransitionHandler=(0,i.createTransitionHandler)(a.AdState.Skipped,n.ScheduledTransition)},95:(e,t)=>{function r(e,...t){return(r,a)=>{for(const[e,n]of t)if(e(r,a))return n;return e}}Object.defineProperty(t,"__esModule",{value:!0}),t.createTransitionHandler=void 0,t.createTransitionHandler=r},9938:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.trackAdPlayback=void 0;const a=r(91270),n=(0,a.createTaskClosure)(((e,t)=>["playing-subscriber",(r,a)=>{e.tracker.trackImpression(),t.paused&&e.tracker.setPaused(t.paused),t.muted&&e.tracker.setMuted(t.muted)}])),i=(0,a.createTaskClosure)(((e,t)=>["playing-subscriber",(r,a)=>{e.tracker.setDuration(t.duration),e.tracker.setProgress(t.currentTime)}])),o=(0,a.createTaskClosure)((e=>["ended-subscriber",(t,r)=>{e.tracker.complete()}])),s=(0,a.createTaskClosure)(((e,t)=>["playing-subscriber",(r,a)=>{e.tracker.setMuted(t.muted)}])),c=(0,a.createTaskClosure)(((e,t)=>["playing-subscriber",(r,a)=>{e.tracker.setPaused(t.paused)}])),d=(0,a.createTaskClosure)((e=>["click-subscriber",(t,r)=>{const a=e.tracker.click();r.effects.state.dispatch(e.baseAd.clicked.trigger,a)}]));function l(e,t){const{events:r}=e.effects,a=t.sourceReference.value,l=null==a?void 0:a.state.video.element;if(void 0===a)throw new Error("Source reference is unexpectedly undefined");if(void 0===l)throw new Error("Video element is unexpectedly undefined");t.tracker.load(),r.subscribe(e,l,"click",d(t)),r.subscribe(e,l,"playing",n(t,l)),r.subscribe(e,l,"ended",o(t)),r.subscribe(e,l,"timeupdate",i(t,l)),r.subscribe(e,l,"play",c(t,l)),r.subscribe(e,l,"pause",c(t,l)),r.subscribe(e,l,"volumechange",s(t,l))}t.trackAdPlayback=l},99402:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.FetchAdsTask=void 0;const n=r(91270),i=r(76954),o=r(91024),s=r(92983),c=r(20761);function d(e,t){return e.fork(o.FetchVastManifest,t.url,(()=>!0))}function l(e,t){return a(this,void 0,void 0,(function*(){const r=[],a=yield e.fork(s.FetchVmapManifest,t.url,(()=>!0));for(const t of a)t.adTagUri?r.push(...yield e.fork(o.FetchVastManifest,t.adTagUri,(()=>!0))):t.vastAdData&&r.push(...yield e.fork(c.ParseVastManifest,t.vastAdData,(()=>!0)));return r}))}t.FetchAdsTask=(0,n.createTask)("ad-loader-task",((e,t)=>a(void 0,void 0,void 0,(function*(){const r=t.registry.get(i.AdvertisingBaseExportNames.AdType);return e.type===r.VMAP?(t.effects.logger.warn("VMAP support is still experimental"),l(t,e)):d(t,e)}))))},91024:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.FetchVastManifest=void 0;const n=r(91270),i=r(73408),o=r(20761);t.FetchVastManifest=(0,n.createTask)("fetch-vast-manifest",((e,t)=>a(void 0,void 0,void 0,(function*(){const r=t.registry.get(i.NetworkExportNames.NetworkTask),a={url:e,method:i.HttpRequestMethod.GET,responseType:i.HttpResponseType.TEXT},n=(yield t.fork(r,[a,void 0])).body;return t.fork(o.ParseVastManifest,n)}))))},92983:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.FetchVmapManifest=void 0;const n=r(91270),i=r(73408),o=r(333);t.FetchVmapManifest=(0,n.createTask)("fetch-vmap-task",((e,t)=>a(void 0,void 0,void 0,(function*(){const r=t.registry.get(i.NetworkExportNames.NetworkTask),a={url:e,method:i.HttpRequestMethod.GET,responseType:i.HttpResponseType.TEXT},n=yield t.fork(r,[a,void 0]);return(0,o.parseVmapXml)(n.body)}))))},20761:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.ParseVastManifest=void 0;const n=r(91270),i=r(54869);t.ParseVastManifest=(0,n.createTask)("parse-vast-task",((e,t)=>a(void 0,void 0,void 0,(function*(){return(0,i.parseVastXml)(e)}))))},35458:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.VmapTrackingEventType=void 0,function(e){e.BreakStart="break-start",e.BreakEnd="break-end",e.Error="error",e.Unknown="unknown"}(t.VmapTrackingEventType||(t.VmapTrackingEventType={}))},28297:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.pingTrackingUrls=t.createVastAdTracker=void 0;const a=r(83966);function n(e,t){const r=new a.VASTTracker(null,e,t);return t.duration&&r.setDuration(t.duration),{load:()=>r.load(),trackImpression:()=>r.trackImpression(),setProgress:e=>r.setProgress(e),setDuration:e=>r.setDuration(e),complete:()=>r.complete(),skip:()=>r.skip(),click:()=>{var e,t;return r.click(),null!==(t=null===(e=r.clickThroughURLTemplate)||void 0===e?void 0:e.url)&&void 0!==t?t:void 0},setPaused:e=>r.setPaused(e),setMuted:e=>r.setMuted(e),error:()=>r.error()}}function i(e,t){if(e)for(const r of e)if(r.type===t)try{(new Image).src=r.url}catch(e){}}t.createVastAdTracker=n,t.pingTrackingUrls=i},54869:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.parseVastXml=void 0;const n=r(83966),i=r(28297);function o(e){return a(this,void 0,void 0,(function*(){const t=new n.VASTClient,r=(new DOMParser).parseFromString(e,"text/xml");return c(yield t.parseVAST(r))}))}function s(e){return"linear"===e.type}function c(e){var t;const r=[];for(const a of e.ads)for(const e of a.creatives){if(!s(e)||0===e.mediaFiles.length)continue;const n=(0,i.createVastAdTracker)(a,e);r.push({id:null!==(t=a.id)&&void 0!==t?t:`ad-${r.length}`,creative:e,tracker:n})}return r}t.parseVastXml=o},333:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.parseVmapXml=void 0;const a=r(35458);function n(e){var t;return null!==(t=e.querySelector(String.raw`vmap\:AdSource, AdSource`))&&void 0!==t?t:void 0}function i(e){var t,r;const a=void 0===e?void 0:e.querySelector(String.raw`vmap\:AdTagURI, AdTagURI`);return null!==(r=null===(t=null==a?void 0:a.textContent)||void 0===t?void 0:t.trim())&&void 0!==r?r:void 0}function o(e){var t;const r=null==e?void 0:e.querySelector(String.raw`vmap\:VASTAdData, VASTAdData`),a=new XMLSerializer,n=null!==(t=null==r?void 0:r.querySelector("VAST"))&&void 0!==t?t:void 0;return void 0===n?void 0:a.serializeToString(n)}function s(e){var t,r,a;const n=[],i=null!==(t=e.querySelector(String.raw`vmap\:TrackingEvents, TrackingEvents`))&&void 0!==t?t:void 0,o=null!==(r=null==i?void 0:i.querySelectorAll(String.raw`vmap\:Tracking, Tracking`))&&void 0!==r?r:[];for(const e of o){const t=e.getAttribute("event"),r=null===(a=e.textContent)||void 0===a?void 0:a.trim();if(t&&r){const e=c(t);n.push({type:e,url:r})}}return n}function c(e){switch(e.toLowerCase()){case"breakstart":return a.VmapTrackingEventType.BreakStart;case"breakend":return a.VmapTrackingEventType.BreakEnd;case"error":return a.VmapTrackingEventType.Error;default:return a.VmapTrackingEventType.Unknown}}function d(e){var t,r;const a=[];for(const c of e){const e=null!==(t=c.getAttribute("timeOffset"))&&void 0!==t?t:"start",d=null!==(r=c.getAttribute("breakId"))&&void 0!==r?r:"",l=n(c),u=i(l),p=o(l),h=s(c);void 0===u&&void 0===p||a.push({id:d,timeOffset:e,adTagUri:u,vastAdData:p,trackingEvents:h})}return a}function l(e){const t=(new DOMParser).parseFromString(e,"text/xml"),r=t.querySelector("parsererror");if(r)throw new Error(`VMAP parse error: ${r.textContent}`);return d(t.querySelectorAll(String.raw`vmap\:AdBreak, AdBreak`))}t.parseVmapXml=l},51983:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.subscribeToScheduledAdBreaks=void 0;const a=r(91270),n=r(14809),i=r(76954),o=r(97488),s=r(3607),c=r(35162);function d(e){return e.state.current===c.AdState.Playing||e.state.current===c.AdState.Skippable}function l(e){return e.state.current===c.AdState.Error||e.state.current===c.AdState.Completed||e.state.current===c.AdState.Skipped}const u=(0,a.createTaskClosure)((e=>["ad-state-subscriber",(t,r)=>{const{state:a}=r.effects,n=r.registry.get(i.AdvertisingBaseExportNames.BaseAdBreakState),o=e.ads.some(d),c=e.ads.every(l);if(o)a.dispatch(e.baseAdBreak.state.setValue,n.Playing);else if(c)a.dispatch(e.baseAdBreak.state.setValue,n.Completed);else switch(e.state.current){case s.AdBreakState.Scheduled:a.dispatch(e.baseAdBreak.state.setValue,n.Scheduled);break;case s.AdBreakState.Parsed:a.dispatch(e.baseAdBreak.state.setValue,n.Loaded);break;case s.AdBreakState.Error:a.dispatch(e.baseAdBreak.state.setValue,n.Error)}}])),p=(0,a.createTaskClosure)((e=>["ad-subscriber",(t,r)=>{const{subscribeAndRun:a}=r.registry.get(n.CoreExportNames.Utils).State;a(r,t.state,u(e))}])),h=(0,a.createTaskClosure)((e=>["ad-break-state-subscriber",(t,r)=>{const{mapSubscribe:a}=r.registry.get(n.CoreExportNames.Utils).State;a(r,e.ads,p(e))}])),m=(0,a.createTaskClosure)(((e,t)=>["forward-ad-break",(r,a)=>{const i=(0,o.createAdBreakAtom)(a,r),s=()=>e.effects.state.dispatch(t.adBreaks.remove,i),c=()=>{},{subscribeAndRun:d}=a.registry.get(n.CoreExportNames.Utils).State;return d(a,i.state,h(i)),a.effects.state.dispatch(t.adBreaks.add,i),a.effects.abortable(c).finally(s).catch(c)}]));function f(e,t,r){const{mapSubscribe:a}=e.registry.get(n.CoreExportNames.Utils).State;return a(e,t,m(e,r))}t.subscribeToScheduledAdBreaks=f},25320:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.LoadControl=t.PlaybackTechnology=t.ResourceType=t.ContentType=t.Version=t.MediaTypeValues=t.Codec=t.SubtitleFormatType=t.MediaType=void 0,function(e){e.Audio="audio",e.Video="video",e.Muxed="muxed",e.Subtitle="subtitle",e.Thumbnail="thumbnail",e.Unknown="unknown"}(r=t.MediaType||(t.MediaType={})),function(e){e.WebVTT="webvtt",e.Unknown="unknown"}(t.SubtitleFormatType||(t.SubtitleFormatType={})),function(e){e.Mp4a="mp4a",e.AVC="avc1",e.HEVC="hvc1",e.ADTS="adts",e.Unknown="unknown"}(t.Codec||(t.Codec={})),t.MediaTypeValues=Object.values(r),t.Version="10.2.0-beta.12",function(e){e.Content="content",e.Advertisement="advertisement"}(t.ContentType||(t.ContentType={})),function(e){e.Hls="hls",e.Dash="dash",e.Progressive="progressive"}(t.ResourceType||(t.ResourceType={})),function(e){e.Mse="mse",e.WebRtc="webrtc",e.WebCodecs="webcodecs",e.Native="native"}(t.PlaybackTechnology||(t.PlaybackTechnology={})),function(e){e[e.Nothing=0]="Nothing",e[e.Metadata=1]="Metadata",e[e.Data=2]="Data"}(t.LoadControl||(t.LoadControl={}))},14809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},73408:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NetworkExportNames=t.HttpRequestMethod=t.HttpResponseType=t.HttpRequestType=void 0,function(e){e.MANIFEST_HLS_MULTIVARIANT="manifest/hls/multivariant",e.MANIFEST_HLS_VARIANT="manifest/hls/variant",e.MEDIA_AUDIO="media/audio",e.MEDIA_VIDEO="media/video",e.MEDIA_SUBTITLES="media/subtitles",e.MEDIA_THUMBNAILS="media/thumbnails",e.MEDIA_SEGMENTINDEX="media/segmentindex",e.KEY_HLS_AES="key/hls/aes",e.TIME_SYNC="time/sync"}(t.HttpRequestType||(t.HttpRequestType={})),function(e){e.ARRAYBUFFER="arraybuffer",e.BLOB="blob",e.DOCUMENT="document",e.JSON="json",e.TEXT="text"}(t.HttpResponseType||(t.HttpResponseType={})),function(e){e.GET="GET",e.POST="POST",e.HEAD="HEAD"}(t.HttpRequestMethod||(t.HttpRequestMethod={})),function(e){e.NetworkAtom="network-atom",e.NetworkTask="network-task",e.FetchTask="fetch-task"}(t.NetworkExportNames||(t.NetworkExportNames={}))},36921:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlayPauseExportNames=void 0,function(e){e.TargetPlaybackStateAtom="target-playback-state-atom",e.TargetPlaybackState="target-playback-state"}(t.PlayPauseExportNames||(t.PlayPauseExportNames={}))},78443:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.MediaElementReadyState=t.VideoElementStateExportNames=void 0,function(e){e.VideoElementState="video-element-state",e.MediaElementReadyState="media-element-ready-state",e.SeekRestriction="seek-restriction"}(t.VideoElementStateExportNames||(t.VideoElementStateExportNames={})),function(e){e[e.HaveNothing=HTMLMediaElement.HAVE_NOTHING]="HaveNothing",e[e.HaveMetadata=HTMLMediaElement.HAVE_METADATA]="HaveMetadata",e[e.HaveCurrentData=HTMLMediaElement.HAVE_CURRENT_DATA]="HaveCurrentData",e[e.HaveFutureData=HTMLMediaElement.HAVE_FUTURE_DATA]="HaveFutureData",e[e.HaveEnoughData=HTMLMediaElement.HAVE_ENOUGH_DATA]="HaveEnoughData"}(t.MediaElementReadyState||(t.MediaElementReadyState={}))},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))},21010:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourcesApiExportNames=t.SourcesApiEvent=void 0,function(e){e.SourceAdded="source-added",e.SourceRemoved="source-removed",e.VideoAttached="video-attached",e.VideoDetached="video-detached",e.SourceError="source-error"}(t.SourcesApiEvent||(t.SourcesApiEvent={})),function(e){e.SourceApiManager="source-api-manager",e.VideoElementUtils="video-element-utils",e.SourceEventBus="source-event-bus",e.SourceApiComponentMap="source-api-component-map",e.SourceRemovedError="source-removed-error"}(t.SourcesApiExportNames||(t.SourcesApiExportNames={}))}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var i=t[a]={exports:{}};return e[a].call(i.exports,i,i.exports,r),i.exports}return(()=>{r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})(),r(92675)})()));
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["advertising-bitmovin"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.playerx=e.bitmovin.playerx||{},e.bitmovin.playerx["advertising-bitmovin"]=t())}(self,(()=>(()=>{"use strict";var e={23590:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.isAbortable=t.sequence=t.rightCompose=t.race=t.forEach=t.map=t.abortAndWaitForExit=t.waitForExit=t.rejectAfter=t.resolveAfter=t.linkAbortSignal=t.Abortable=void 0;const n=r(94902);class i extends n.Awaitable{constructor(e,t=new AbortController){const r=[],a=()=>r.forEach((e=>e()));super(((n,i)=>{r.push((()=>t.signal.removeEventListener("abort",o)));const o=()=>{a(),i(t.signal.reason)},s=e=>{t.signal.aborted?i(t.signal.reason):n(e)},c=e=>{t.abort(e),i(e)};t.signal.addEventListener("abort",o);try{const r=e(s,c,t);r instanceof Promise&&r.catch(i)}catch(e){i(e)}})),this.abortController=t,this.finally(a).catch((()=>{}))}abort(e){this.abortController.abort(e)}static resolve(e){return new i((t=>t(e)))}static reject(e){return new i(((t,r)=>r(e)))}}function o(e,t){const r=()=>{t.removeEventListener("abort",r),e.abort(t.reason)};return t.addEventListener("abort",r),e.finally((()=>t.removeEventListener("abort",r))).catch((()=>{})),e}function s(e,t,r){try{const a=t(r);return o(g(a)?a:i.resolve(a),e)}catch(e){return i.reject(e instanceof Error?e:new Error(String(e)))}}function c(e,t){return new i(((r,n,i)=>{o(e,i.signal).then((e=>a(this,void 0,void 0,(function*(){yield t(),i.signal.aborted?n(i.signal.reason):r(e)})))).catch((e=>n(e)))}))}function d(e,t){const r=new i(((r,n)=>{e.then((e=>r(e))).catch((e=>a(this,void 0,void 0,(function*(){yield t(e),n(e)}))))}));return r.abort=t=>{e.abort(t)},r}function l(e){return e.catch((()=>{})).then((()=>{}))}function u(e,t){return t.abort(e),l(t)}function p(e,t){return new i(((r,a,n)=>{const i=[];let o=Promise.resolve();e.forEach((e=>o=o.then((()=>{n.signal.aborted?a(n.signal.reason):i.push(t(e))})))),o=o.then((()=>r(i))).catch(a)}))}function h(e,t){return new i(((r,a,n)=>{o(p(e,t),n.signal).then((()=>r())).catch(a)}))}function m(e){return new i(((t,r,a)=>Promise.race(e.map((e=>o(e,a.signal)))).then((e=>t(e))).catch((e=>r(e)))))}function f(e,t,r){return o(new i(((e,n,i)=>{o(t,i.signal).then((t=>a(this,void 0,void 0,(function*(){i.signal.aborted?n(i.signal.reason):o(r(t),i.signal).then(e).catch(n)})))).catch(n)})),e)}function v(e,...t){if(1===t.length)return r=>s(e,t[0],r);const[r,...a]=t;return t=>f(e,s(e,r,t),v(e,...a))}function g(e){return Boolean(e)&&"object"==typeof e&&null!==e&&"abort"in e&&"function"==typeof e.abort}t.Abortable=i,t.linkAbortSignal=o,t.resolveAfter=c,t.rejectAfter=d,t.waitForExit=l,t.abortAndWaitForExit=u,t.map=p,t.forEach=h,t.race=m,t.rightCompose=f,t.sequence=v,t.isAbortable=g},19281:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createEffectFactory=void 0;const r=e=>e;t.createEffectFactory=r},66400:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AbortableEffectFactory=void 0;const a=r(23590),n=r(19281);t.AbortableEffectFactory=(0,n.createEffectFactory)((()=>{const e=[];return{effect:{abortable:t=>{const r=new a.Abortable(((e,r,a)=>t(e,r,a)));return e.push(r),r.catch((()=>{})).finally((()=>{const t=e.indexOf(r);-1!==t&&e.splice(t,1)})),r}},removeEffect:()=>{for(const t of e)t.abort(new Error("AbortableEffect was removed"));e.splice(0,e.length)}}}))},97085:(e,t)=>{function r(e,t,r){const a=t;return a._name=e,{onAdd:a,dependencies:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.createPackage=void 0,t.createPackage=r},91270:(e,t)=>{function r(e,t){const r=t;return r._name=e,r}function a(e){return(...t)=>{const[a,n]=e(...t);return r(a,n)}}function n(e){var t;return null!==(t=e._name)&&void 0!==t?t:e.name}Object.defineProperty(t,"__esModule",{value:!0}),t.getTaskName=t.createTaskClosure=t.createTask=void 0,t.createTask=r,t.createTaskClosure=a,t.getTaskName=n},94902:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Awaitable=void 0;class r{constructor(e){const t=new Promise(((t,r)=>{this._reject=r,this._resolve=t,null==e||e(t,r)}));this.boundThen=t.then.bind(t),this.boundCatch=t.catch.bind(t),this.boundFinally=t.finally.bind(t)}get then(){return this.boundThen}get catch(){return this.boundCatch}get finally(){return this.boundFinally}get[Symbol.toStringTag](){return this.constructor.name}}t.Awaitable=r},83966:(e,t,r)=>{function a(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{id:e.id||null,adId:e.adId||null,sequence:e.sequence||null,apiFramework:e.apiFramework||null,universalAdIds:[],creativeExtensions:[]}}r.r(t),r.d(t,{VASTClient:()=>X,VASTParser:()=>F,VASTTracker:()=>G,parseDuration:()=>v});const n=["ADCATEGORIES","ADCOUNT","ADPLAYHEAD","ADSERVINGID","ADTYPE","APIFRAMEWORKS","APPBUNDLE","ASSETURI","BLOCKEDADCATEGORIES","BREAKMAXADLENGTH","BREAKMAXADS","BREAKMAXDURATION","BREAKMINADLENGTH","BREAKMINDURATION","BREAKPOSITION","CLICKPOS","CLICKTYPE","CLIENTUA","CONTENTID","CONTENTPLAYHEAD","CONTENTURI","DEVICEIP","DEVICEUA","DOMAIN","EXTENSIONS","GDPRCONSENT","IFA","IFATYPE","INVENTORYSTATE","LATLONG","LIMITADTRACKING","MEDIAMIME","MEDIAPLAYHEAD","OMIDPARTNER","PAGEURL","PLACEMENTTYPE","PLAYERCAPABILITIES","PLAYERSIZE","PLAYERSTATE","PODSEQUENCE","REGULATIONS","SERVERSIDE","SERVERUA","TRANSACTIONID","UNIVERSALADID","VASTVERSIONS","VERIFICATIONVENDORS"];function i(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const a=[],n=c(e);!t.ERRORCODE||r.isCustomCode||/^[0-9]{3}$/.test(t.ERRORCODE)||(t.ERRORCODE=900),t.CACHEBUSTING=h(Math.round(1e8*Math.random())),t.TIMESTAMP=(new Date).toISOString(),t.RANDOM=t.random=t.CACHEBUSTING;for(const e in t)t[e]=p(t[e]);for(const e in n){const r=n[e];"string"==typeof r&&a.push(o(r,t))}return a}function o(e,t){const r=(e=s(e,t)).match(/[^[\]]+(?=])/g);if(!r)return e;let a=r.filter((e=>n.indexOf(e)>-1));return 0===a.length?e:(a=a.reduce(((e,t)=>(e[t]=-1,e)),{}),s(e,a))}function s(e,t){let r=e;for(const e in t){const a=t[e];r=r.replace(new RegExp("(?:\\[|%%)(".concat(e,")(?:\\]|%%)"),"g"),a)}return r}function c(e){return Array.isArray(e)?e.map((e=>e&&e.hasOwnProperty("url")?e.url:e)):e}function d(e){return/^(https?:\/\/|\/\/)/.test(e)}function l(e,t){for(let r=0;r<t.length;r++)if(u(t[r],e))return!0;return!1}function u(e,t){if(e&&t){const r=Object.getOwnPropertyNames(e),a=Object.getOwnPropertyNames(t);return r.length===a.length&&e.id===t.id&&e.url===t.url}return!1}function p(e){return encodeURIComponent(e).replace(/[!'()*]/g,(e=>"%".concat(e.charCodeAt(0).toString(16))))}function h(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:8;return e.toString().padStart(t,"0")}const m={track:function(e,t,r){i(e,t,r).forEach((e=>{"undefined"!=typeof window&&null!==window&&((new Image).src=e)}))},resolveURLTemplates:i,extractURLsFromTemplates:c,filterUrlTemplates:function(e){return e.reduce(((e,t)=>{const r=t.url||t;return d(r)?e.validUrls.push(r):e.invalidUrls.push(r),e}),{validUrls:[],invalidUrls:[]})},containsTemplateObject:l,isTemplateObjectEqual:u,encodeURIComponentRFC3986:p,replaceUrlMacros:o,isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},flatten:function e(t){return t.reduce(((t,r)=>t.concat(Array.isArray(r)?e(r):r)),[])},joinArrayOfUniqueTemplateObjs:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const r=Array.isArray(e)?e:[],a=Array.isArray(t)?t:[];return r.concat(a).reduce(((e,t)=>(l(t,e)||e.push(t),e)),[])},isValidTimeValue:function(e){return Number.isFinite(e)&&e>=-2},addLeadingZeros:h,isValidUrl:d,isBrowserEnvironment:function(){return"undefined"!=typeof window},formatMacrosValues:function(e){return"object"!=typeof e?e:JSON.stringify(e)}};function f(e){return["true","TRUE","True","1"].includes(e)}function v(e){if(null==e)return-1;if(m.isNumeric(e))return parseInt(e);const t=e.split(":");if(3!==t.length)return-1;const r=t[2].split(".");let a=parseInt(r[0]);2===r.length&&(a+=parseFloat("0.".concat(r[1])));const n=parseInt(60*t[1]),i=parseInt(60*t[0]*60);return isNaN(i)||isNaN(n)||isNaN(a)||n>3600||a>60?-1:i+n+a}const g={childByName:function(e,t){return Array.from(e.childNodes).find((e=>e.nodeName===t))},childrenByName:function(e,t){return Array.from(e.childNodes).filter((e=>e.nodeName===t))},resolveVastAdTagURI:function(e,t){if(!t)return e;if(e.startsWith("//")){const{protocol:t}=location;return"".concat(t).concat(e)}if(!e.includes("://")){const r=t.slice(0,t.lastIndexOf("/"));return"".concat(r,"/").concat(e)}return e},parseBoolean:f,parseNodeText:function(e){return e&&(e.textContent||e.text||"").trim()},copyNodeAttribute:function(e,t,r){const a=t.getAttribute(e);a&&r.setAttribute(e,a)},parseAttributes:function(e){return Array.from(e.attributes).reduce(((e,t)=>(e[t.nodeName]=t.nodeValue,e)),{})},parseDuration:v,getStandAloneAds:function(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).filter((e=>!parseInt(e.sequence,10)))},getSortedAdPods:function(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).filter((e=>parseInt(e.sequence,10))).sort(((e,t)=>e.sequence-t.sequence))},assignAttributes:function(e,t){e&&Array.from(e).forEach((e=>{let{nodeName:r,nodeValue:a}=e;if(r&&a&&t.hasOwnProperty(r)){let e=a;"boolean"==typeof t[r]&&(e=f(e)),t[r]=e}}))},mergeWrapperAdData:function(e,t){var r;e.errorURLTemplates=t.errorURLTemplates.concat(e.errorURLTemplates),e.impressionURLTemplates=t.impressionURLTemplates.concat(e.impressionURLTemplates),e.extensions=t.extensions.concat(e.extensions),t.viewableImpression.length>0&&(e.viewableImpression=[...e.viewableImpression,...t.viewableImpression]),e.followAdditionalWrappers=t.followAdditionalWrappers,e.allowMultipleAds=t.allowMultipleAds,e.fallbackOnNoAd=t.fallbackOnNoAd;const a=(t.creatives||[]).filter((e=>e&&"companion"===e.type)),n=a.reduce(((e,t)=>((t.variations||[]).forEach((t=>{(t.companionClickTrackingURLTemplates||[]).forEach((t=>{m.containsTemplateObject(t,e)||e.push(t)}))})),e)),[]);e.creatives=a.concat(e.creatives);const i=t.videoClickTrackingURLTemplates&&t.videoClickTrackingURLTemplates.length,o=t.videoCustomClickURLTemplates&&t.videoCustomClickURLTemplates.length;if(e.creatives.forEach((e=>{if(t.trackingEvents&&t.trackingEvents[e.type])for(const r in t.trackingEvents[e.type]){const a=t.trackingEvents[e.type][r];Array.isArray(e.trackingEvents[r])||(e.trackingEvents[r]=[]),e.trackingEvents[r]=e.trackingEvents[r].concat(a)}"linear"===e.type&&(i&&(e.videoClickTrackingURLTemplates=e.videoClickTrackingURLTemplates.concat(t.videoClickTrackingURLTemplates)),o&&(e.videoCustomClickURLTemplates=e.videoCustomClickURLTemplates.concat(t.videoCustomClickURLTemplates)),!t.videoClickThroughURLTemplate||null!==e.videoClickThroughURLTemplate&&void 0!==e.videoClickThroughURLTemplate||(e.videoClickThroughURLTemplate=t.videoClickThroughURLTemplate)),"companion"===e.type&&n.length&&(e.variations||[]).forEach((e=>{e.companionClickTrackingURLTemplates=m.joinArrayOfUniqueTemplateObjs(e.companionClickTrackingURLTemplates,n)}))})),t.adVerifications&&(e.adVerifications=e.adVerifications.concat(t.adVerifications)),t.blockedAdCategories&&(e.blockedAdCategories=e.blockedAdCategories.concat(t.blockedAdCategories)),null!==(r=t.creatives)&&void 0!==r&&r.length){const r=t.creatives.filter((e=>{var t;return(null===(t=e.icons)||void 0===t?void 0:t.length)&&!e.mediaFiles.length}));r.length&&(e.creatives=e.creatives.concat(r))}}};function y(e,t){const r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{id:t,adId:r,sequence:n,apiFramework:i}=a(e);return{id:t,adId:r,sequence:n,apiFramework:i,type:"companion",required:null,variations:[]}}(t);return r.required=e.getAttribute("required")||null,r.variations=g.childrenByName(e,"Companion").map((e=>{const t=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{id:e.id||null,adType:"companionAd",width:e.width||0,height:e.height||0,assetWidth:e.assetWidth||null,assetHeight:e.assetHeight||null,expandedWidth:e.expandedWidth||null,expandedHeight:e.expandedHeight||null,apiFramework:e.apiFramework||null,adSlotId:e.adSlotId||null,pxratio:e.pxratio||"1",renderingMode:e.renderingMode||"default",staticResources:[],htmlResources:[],iframeResources:[],adParameters:null,altText:null,companionClickThroughURLTemplate:null,companionClickTrackingURLTemplates:[],trackingEvents:{}}}(g.parseAttributes(e));t.htmlResources=g.childrenByName(e,"HTMLResource").reduce(((e,t)=>{const r=g.parseNodeText(t);return r?e.concat(r):e}),[]),t.iframeResources=g.childrenByName(e,"IFrameResource").reduce(((e,t)=>{const r=g.parseNodeText(t);return r?e.concat(r):e}),[]),t.staticResources=g.childrenByName(e,"StaticResource").reduce(((e,t)=>{const r=g.parseNodeText(t);return r?e.concat({url:r,creativeType:t.getAttribute("creativeType")||null}):e}),[]),t.altText=g.parseNodeText(g.childByName(e,"AltText"))||null;const r=g.childByName(e,"TrackingEvents");r&&g.childrenByName(r,"Tracking").forEach((e=>{const r=e.getAttribute("event"),a=g.parseNodeText(e);r&&a&&(Array.isArray(t.trackingEvents[r])||(t.trackingEvents[r]=[]),t.trackingEvents[r].push(a))})),t.companionClickTrackingURLTemplates=g.childrenByName(e,"CompanionClickTracking").map((e=>({id:e.getAttribute("id")||null,url:g.parseNodeText(e)}))),t.companionClickThroughURLTemplate=g.parseNodeText(g.childByName(e,"CompanionClickThrough"))||null;const a=g.childByName(e,"AdParameters");return a&&(t.adParameters={value:g.parseNodeText(a),xmlEncoded:a.getAttribute("xmlEncoded")||null}),t})),r}function A(e,t){let r;const n=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{id:t,adId:r,sequence:n,apiFramework:i}=a(e);return{id:t,adId:r,sequence:n,apiFramework:i,type:"linear",duration:0,skipDelay:null,mediaFiles:[],mezzanine:null,interactiveCreativeFile:null,closedCaptionFiles:[],videoClickThroughURLTemplate:null,videoClickTrackingURLTemplates:[],videoCustomClickURLTemplates:[],adParameters:null,icons:[],trackingEvents:{}}}(t);n.duration=g.parseDuration(g.parseNodeText(g.childByName(e,"Duration")));const i=e.getAttribute("skipoffset");if(null==i)n.skipDelay=null;else if("%"===i.charAt(i.length-1)&&-1!==n.duration){const e=parseInt(i,10);n.skipDelay=n.duration*(e/100)}else n.skipDelay=g.parseDuration(i);const o=g.childByName(e,"VideoClicks");if(o){const e=g.childByName(o,"ClickThrough");n.videoClickThroughURLTemplate=e?{id:e.getAttribute("id")||null,url:g.parseNodeText(e)}:null,g.childrenByName(o,"ClickTracking").forEach((e=>{n.videoClickTrackingURLTemplates.push({id:e.getAttribute("id")||null,url:g.parseNodeText(e)})})),g.childrenByName(o,"CustomClick").forEach((e=>{n.videoCustomClickURLTemplates.push({id:e.getAttribute("id")||null,url:g.parseNodeText(e)})}))}const s=g.childByName(e,"AdParameters");s&&(n.adParameters={value:g.parseNodeText(s),xmlEncoded:s.getAttribute("xmlEncoded")||null}),g.childrenByName(e,"TrackingEvents").forEach((e=>{g.childrenByName(e,"Tracking").forEach((e=>{let t=e.getAttribute("event");const a=g.parseNodeText(e);if(t&&a){if("progress"===t){if(r=e.getAttribute("offset"),!r)return;t="%"===r.charAt(r.length-1)?"progress-".concat(r):"progress-".concat(g.parseDuration(r))}Array.isArray(n.trackingEvents[t])||(n.trackingEvents[t]=[]),n.trackingEvents[t].push(a)}}))})),g.childrenByName(e,"MediaFiles").forEach((e=>{g.childrenByName(e,"MediaFile").forEach((e=>{n.mediaFiles.push(function(e){const t={id:null,fileURL:null,fileSize:0,deliveryType:"progressive",mimeType:null,mediaType:null,codec:null,bitrate:0,minBitrate:0,maxBitrate:0,width:0,height:0,apiFramework:null,scalable:null,maintainAspectRatio:null};t.id=e.getAttribute("id"),t.fileURL=g.parseNodeText(e),t.deliveryType=e.getAttribute("delivery"),t.codec=e.getAttribute("codec"),t.mimeType=e.getAttribute("type"),t.mediaType=e.getAttribute("mediaType")||"2D",t.apiFramework=e.getAttribute("apiFramework"),t.fileSize=parseInt(e.getAttribute("fileSize")||0),t.bitrate=parseInt(e.getAttribute("bitrate")||0),t.minBitrate=parseInt(e.getAttribute("minBitrate")||0),t.maxBitrate=parseInt(e.getAttribute("maxBitrate")||0),t.width=parseInt(e.getAttribute("width")||0),t.height=parseInt(e.getAttribute("height")||0);const r=e.getAttribute("scalable");r&&"string"==typeof r&&(t.scalable=g.parseBoolean(r));const a=e.getAttribute("maintainAspectRatio");return a&&"string"==typeof a&&(t.maintainAspectRatio=g.parseBoolean(a)),t}(e))}));const t=g.childByName(e,"InteractiveCreativeFile");t&&(n.interactiveCreativeFile=function(e){const t=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{type:e.type||null,apiFramework:e.apiFramework||null,variableDuration:g.parseBoolean(e.variableDuration),fileURL:null}}(g.parseAttributes(e));return t.fileURL=g.parseNodeText(e),t}(t));const r=g.childByName(e,"ClosedCaptionFiles");r&&g.childrenByName(r,"ClosedCaptionFile").forEach((e=>{const t=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{type:e.type||null,language:e.language||null,fileURL:null}}(g.parseAttributes(e));t.fileURL=g.parseNodeText(e),n.closedCaptionFiles.push(t)}));const a=g.childByName(e,"Mezzanine"),i=function(e,t){const r={};let a=!1;return["delivery","type","width","height"].forEach((t=>{e&&e.getAttribute(t)?r[t]=e.getAttribute(t):a=!0})),a?null:r}(a);if(i){const e={id:null,fileURL:null,delivery:null,codec:null,type:null,width:0,height:0,fileSize:0,mediaType:"2D"};e.id=a.getAttribute("id"),e.fileURL=g.parseNodeText(a),e.delivery=i.delivery,e.codec=a.getAttribute("codec"),e.type=i.type,e.width=parseInt(i.width,10),e.height=parseInt(i.height,10),e.fileSize=parseInt(a.getAttribute("fileSize"),10),e.mediaType=a.getAttribute("mediaType")||"2D",n.mezzanine=e}}));const c=g.childByName(e,"Icons");return c&&g.childrenByName(c,"Icon").forEach((e=>{n.icons.push(function(e){const t={program:null,height:0,width:0,xPosition:0,yPosition:0,apiFramework:null,offset:null,duration:0,type:null,staticResource:null,htmlResource:null,iframeResource:null,pxratio:"1",iconClickThroughURLTemplate:null,iconClickTrackingURLTemplates:[],iconViewTrackingURLTemplate:null,iconClickFallbackImages:[],altText:null,hoverText:null};t.program=e.getAttribute("program"),t.height=parseInt(e.getAttribute("height")||0),t.width=parseInt(e.getAttribute("width")||0),t.xPosition=function(e){return-1!==["left","right"].indexOf(e)?e:parseInt(e||0)}(e.getAttribute("xPosition")),t.yPosition=function(e){return-1!==["top","bottom"].indexOf(e)?e:parseInt(e||0)}(e.getAttribute("yPosition")),t.apiFramework=e.getAttribute("apiFramework"),t.pxratio=e.getAttribute("pxratio")||"1",t.offset=g.parseDuration(e.getAttribute("offset")),t.duration=g.parseDuration(e.getAttribute("duration")),t.altText=e.getAttribute("altText"),t.hoverText=e.getAttribute("hoverText"),g.childrenByName(e,"HTMLResource").forEach((e=>{t.type=e.getAttribute("creativeType")||"text/html",t.htmlResource=g.parseNodeText(e)})),g.childrenByName(e,"IFrameResource").forEach((e=>{t.type=e.getAttribute("creativeType")||0,t.iframeResource=g.parseNodeText(e)})),g.childrenByName(e,"StaticResource").forEach((e=>{t.type=e.getAttribute("creativeType")||0,t.staticResource=g.parseNodeText(e)}));const r=g.childByName(e,"IconClicks");if(r){t.iconClickThroughURLTemplate=g.parseNodeText(g.childByName(r,"IconClickThrough")),g.childrenByName(r,"IconClickTracking").forEach((e=>{t.iconClickTrackingURLTemplates.push({id:e.getAttribute("id")||null,url:g.parseNodeText(e)})}));const e=g.childByName(r,"IconClickFallbackImages");e&&g.childrenByName(e,"IconClickFallbackImage").forEach((e=>{t.iconClickFallbackImages.push({url:g.parseNodeText(e)||null,width:e.getAttribute("width")||null,height:e.getAttribute("height")||null})}))}return t.iconViewTrackingURLTemplate=g.parseNodeText(g.childByName(e,"IconViewTracking")),t}(e))})),n}function T(e,t){const r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{id:t,adId:r,sequence:n,apiFramework:i}=a(e);return{id:t,adId:r,sequence:n,apiFramework:i,type:"nonlinear",variations:[],trackingEvents:{}}}(t);return g.childrenByName(e,"TrackingEvents").forEach((e=>{let t,a;g.childrenByName(e,"Tracking").forEach((e=>{t=e.getAttribute("event"),a=g.parseNodeText(e),t&&a&&(Array.isArray(r.trackingEvents[t])||(r.trackingEvents[t]=[]),r.trackingEvents[t].push(a))}))})),g.childrenByName(e,"NonLinear").forEach((e=>{const t={id:null,width:0,height:0,expandedWidth:0,expandedHeight:0,scalable:!0,maintainAspectRatio:!0,minSuggestedDuration:0,apiFramework:"static",adType:"nonLinearAd",type:null,staticResource:null,htmlResource:null,iframeResource:null,nonlinearClickThroughURLTemplate:null,nonlinearClickTrackingURLTemplates:[],adParameters:null};t.id=e.getAttribute("id")||null,t.width=e.getAttribute("width"),t.height=e.getAttribute("height"),t.expandedWidth=e.getAttribute("expandedWidth"),t.expandedHeight=e.getAttribute("expandedHeight"),t.scalable=g.parseBoolean(e.getAttribute("scalable")),t.maintainAspectRatio=g.parseBoolean(e.getAttribute("maintainAspectRatio")),t.minSuggestedDuration=g.parseDuration(e.getAttribute("minSuggestedDuration")),t.apiFramework=e.getAttribute("apiFramework"),g.childrenByName(e,"HTMLResource").forEach((e=>{t.type=e.getAttribute("creativeType")||"text/html",t.htmlResource=g.parseNodeText(e)})),g.childrenByName(e,"IFrameResource").forEach((e=>{t.type=e.getAttribute("creativeType")||0,t.iframeResource=g.parseNodeText(e)})),g.childrenByName(e,"StaticResource").forEach((e=>{t.type=e.getAttribute("creativeType")||0,t.staticResource=g.parseNodeText(e)}));const a=g.childByName(e,"AdParameters");a&&(t.adParameters={value:g.parseNodeText(a),xmlEncoded:a.getAttribute("xmlEncoded")||null}),t.nonlinearClickThroughURLTemplate=g.parseNodeText(g.childByName(e,"NonLinearClickThrough")),g.childrenByName(e,"NonLinearClickTracking").forEach((e=>{t.nonlinearClickTrackingURLTemplates.push({id:e.getAttribute("id")||null,url:g.parseNodeText(e)})})),r.variations.push(t)})),r}function S(e){const t=[];return e.forEach((e=>{const r=b(e);r&&t.push(r)})),t}function b(e){if("#comment"===e.nodeName)return null;const t={name:null,value:null,attributes:{},children:[]},r=e.attributes,a=e.childNodes;if(t.name=e.nodeName,e.attributes)for(const e in r)if(r.hasOwnProperty(e)){const a=r[e];a.nodeName&&a.nodeValue&&(t.attributes[a.nodeName]=a.nodeValue)}for(const e in a)if(a.hasOwnProperty(e)){const r=b(a[e]);r&&t.children.push(r)}if(0===t.children.length||1===t.children.length&&["#cdata-section","#text"].indexOf(t.children[0].name)>=0){const r=g.parseNodeText(e);""!==r&&(t.value=r),t.children=[]}return null===(n=t).value&&0===Object.keys(n.attributes).length&&0===n.children.length?null:t;var n}function k(e){return e.getAttribute("AdID")||e.getAttribute("adID")||e.getAttribute("adId")||null}const E={Wrapper:{subElements:["VASTAdTagURI","Impression"]},BlockedAdCategories:{attributes:["authority"]},InLine:{subElements:["AdSystem","AdTitle","Impression","AdServingId","Creatives"]},Category:{attributes:["authority"]},Pricing:{attributes:["model","currency"]},Verification:{oneOfinLineResources:["JavaScriptResource","ExecutableResource"],attributes:["vendor"]},UniversalAdId:{attributes:["idRegistry"]},JavaScriptResource:{attributes:["apiFramework","browserOptional"]},ExecutableResource:{attributes:["apiFramework","type"]},Tracking:{attributes:["event"]},Creatives:{subElements:["Creative"]},Creative:{subElements:["UniversalAdId"]},Linear:{subElements:["MediaFiles","Duration"]},MediaFiles:{subElements:["MediaFile"]},MediaFile:{attributes:["delivery","type","width","height"]},Mezzanine:{attributes:["delivery","type","width","height"]},NonLinear:{oneOfinLineResources:["StaticResource","IFrameResource","HTMLResource"],attributes:["width","height"]},Companion:{oneOfinLineResources:["StaticResource","IFrameResource","HTMLResource"],attributes:["width","height"]},StaticResource:{attributes:["creativeType"]},Icons:{subElements:["Icon"]},Icon:{oneOfinLineResources:["StaticResource","IFrameResource","HTMLResource"]}};function C(e,t){if(!E[e.nodeName]||!E[e.nodeName].attributes)return;const r=E[e.nodeName].attributes.filter((t=>!e.getAttribute(t)));r.length>0&&w({name:e.nodeName,parentName:e.parentNode.nodeName,attributes:r},t)}function R(e,t,r){const a=E[e.nodeName],n=!r&&"Wrapper"!==e.nodeName;if(a&&!n){if(a.subElements){const r=a.subElements.filter((t=>!g.childByName(e,t)));r.length>0&&w({name:e.nodeName,parentName:e.parentNode.nodeName,subElements:r},t)}r&&a.oneOfinLineResources&&(a.oneOfinLineResources.some((t=>g.childByName(e,t)))||w({name:e.nodeName,parentName:e.parentNode.nodeName,oneOfResources:a.oneOfinLineResources},t))}}function P(e){return e.children&&0!==e.children.length}function w(e,t){let{name:r,parentName:a,attributes:n,subElements:i,oneOfResources:o}=e,s="Element '".concat(r,"'");s+=n?" missing required attribute(s) '".concat(n.join(", "),"' "):i?" missing required sub element(s) '".concat(i.join(", "),"' "):o?" must provide one of the following '".concat(o.join(", "),"' "):" is empty",t("VAST-warning",{message:s,parentElement:a,specVersion:4.1})}const N={verifyRequiredValues:function e(t,r,a){if(t&&t.nodeName)if("InLine"===t.nodeName&&(a=!0),C(t,r),P(t)){R(t,r,a);for(let n=0;n<t.children.length;n++)e(t.children[n],r,a)}else 0===g.parseNodeText(t).length&&w({name:t.nodeName,parentName:t.parentNode.nodeName},r)},hasSubElements:P,emitMissingValueWarning:w,verifyRequiredAttributes:C,verifyRequiredSubElements:R};function x(e,t){let{allowMultipleAds:r,followAdditionalWrappers:a}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const n=Array.from(e.childNodes).filter((e=>{const t=e.nodeName.toLowerCase();return"inline"===t||!1!==a&&"wrapper"===t}));for(const a of n){if(g.copyNodeAttribute("id",e,a),g.copyNodeAttribute("sequence",e,a),g.copyNodeAttribute("adType",e,a),"Wrapper"===a.nodeName)return{ad:U(a,t),type:"WRAPPER"};if("InLine"===a.nodeName)return{ad:L(a,t,{allowMultipleAds:r}),type:"INLINE"};const n=a.nodeName.toLowerCase();t("VAST-warning",{message:"<".concat(a.nodeName,"inline"===n?"> must be written <InLine>":"> must be written <Wrapper>"),wrongNode:a})}}function L(e,t){let{allowMultipleAds:r}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return!1===r&&e.getAttribute("sequence")?null:M(e,t)}function M(e,t){let r=[];t&&N.verifyRequiredValues(e,t);const a=Array.from(e.childNodes),n=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{id:e.id||null,sequence:e.sequence||null,adType:e.adType||null,adServingId:null,categories:[],expires:null,viewableImpression:[],system:null,title:null,description:null,advertiser:null,pricing:null,survey:null,errorURLTemplates:[],impressionURLTemplates:[],creatives:[],extensions:[],adVerifications:[],blockedAdCategories:[],followAdditionalWrappers:!0,allowMultipleAds:!1,fallbackOnNoAd:null}}(g.parseAttributes(e));return a.forEach((e=>{switch(e.nodeName){case"Error":n.errorURLTemplates.push(g.parseNodeText(e));break;case"Impression":n.impressionURLTemplates.push({id:e.getAttribute("id")||null,url:g.parseNodeText(e)});break;case"Creatives":n.creatives=function(e){const t=[];return e.forEach((e=>{const r={id:e.getAttribute("id")||null,adId:k(e),sequence:e.getAttribute("sequence")||null,apiFramework:e.getAttribute("apiFramework")||null},a=[];let n;g.childrenByName(e,"UniversalAdId").forEach((e=>{const t={idRegistry:e.getAttribute("idRegistry")||"unknown",value:g.parseNodeText(e)};a.push(t)}));const i=g.childByName(e,"CreativeExtensions");i&&(n=S(g.childrenByName(i,"CreativeExtension")));for(const i in e.childNodes){const o=e.childNodes[i];let s;switch(o.nodeName){case"Linear":s=A(o,r);break;case"NonLinearAds":s=T(o,r);break;case"CompanionAds":s=y(o,r)}s&&(a&&(s.universalAdIds=a),n&&(s.creativeExtensions=n),t.push(s))}})),t}(g.childrenByName(e,"Creative"));break;case"Extensions":{const t=g.childrenByName(e,"Extension");n.extensions=S(t),n.adVerifications.length||(r=function(e){let t=null,r=[];return e.some((e=>t=g.childByName(e,"AdVerifications"))),t&&(r=B(g.childrenByName(t,"Verification"))),r}(t));break}case"AdVerifications":n.adVerifications=B(g.childrenByName(e,"Verification"));break;case"AdSystem":n.system={value:g.parseNodeText(e),version:e.getAttribute("version")||null};break;case"AdTitle":n.title=g.parseNodeText(e);break;case"AdServingId":n.adServingId=g.parseNodeText(e);break;case"Category":n.categories.push({authority:e.getAttribute("authority")||null,value:g.parseNodeText(e)});break;case"Expires":n.expires=parseInt(g.parseNodeText(e),10);break;case"ViewableImpression":n.viewableImpression.push(function(e){const t=(e,t)=>{const r=g.parseNodeText(t);return r&&e.push(r),e};return{id:e.getAttribute("id")||null,viewable:g.childrenByName(e,"Viewable").reduce(t,[]),notViewable:g.childrenByName(e,"NotViewable").reduce(t,[]),viewUndetermined:g.childrenByName(e,"ViewUndetermined").reduce(t,[])}}(e));break;case"Description":n.description=g.parseNodeText(e);break;case"Advertiser":n.advertiser={id:e.getAttribute("id")||null,value:g.parseNodeText(e)};break;case"Pricing":n.pricing={value:g.parseNodeText(e),model:e.getAttribute("model")||null,currency:e.getAttribute("currency")||null};break;case"Survey":n.survey={value:g.parseNodeText(e),type:e.getAttribute("type")||null};break;case"BlockedAdCategories":n.blockedAdCategories.push({authority:e.getAttribute("authority")||null,value:g.parseNodeText(e)})}})),r.length&&(n.adVerifications=n.adVerifications.concat(r)),n}function U(e,t){const r=M(e,t),a=e.getAttribute("followAdditionalWrappers"),n=e.getAttribute("allowMultipleAds"),i=e.getAttribute("fallbackOnNoAd");r.followAdditionalWrappers=!a||g.parseBoolean(a),r.allowMultipleAds=!!n&&g.parseBoolean(n),r.fallbackOnNoAd=i?g.parseBoolean(i):null;let o=g.childByName(e,"VASTAdTagURI");if(o?r.nextWrapperURL=g.parseNodeText(o):(o=g.childByName(e,"VASTAdTagURL"),o&&(r.nextWrapperURL=g.parseNodeText(g.childByName(o,"URL")))),r.creatives.forEach((e=>{if(["linear","nonlinear"].includes(e.type)){if(e.trackingEvents){r.trackingEvents||(r.trackingEvents={}),r.trackingEvents[e.type]||(r.trackingEvents[e.type]={});for(const t in e.trackingEvents){const a=e.trackingEvents[t];Array.isArray(r.trackingEvents[e.type][t])||(r.trackingEvents[e.type][t]=[]),a.forEach((a=>{r.trackingEvents[e.type][t].push(a)}))}}e.videoClickTrackingURLTemplates&&(Array.isArray(r.videoClickTrackingURLTemplates)||(r.videoClickTrackingURLTemplates=[]),e.videoClickTrackingURLTemplates.forEach((e=>{r.videoClickTrackingURLTemplates.push(e)}))),e.videoClickThroughURLTemplate&&(r.videoClickThroughURLTemplate=e.videoClickThroughURLTemplate),e.videoCustomClickURLTemplates&&(Array.isArray(r.videoCustomClickURLTemplates)||(r.videoCustomClickURLTemplates=[]),e.videoCustomClickURLTemplates.forEach((e=>{r.videoCustomClickURLTemplates.push(e)})))}})),r.nextWrapperURL)return r}function B(e){const t=[];return e.forEach((e=>{const r={resource:null,vendor:null,browserOptional:!1,apiFramework:null,type:null,parameters:null,trackingEvents:{}},a=Array.from(e.childNodes);g.assignAttributes(e.attributes,r),a.forEach((e=>{let{nodeName:t,textContent:a,attributes:n}=e;switch(t){case"JavaScriptResource":case"ExecutableResource":r.resource=a.trim(),g.assignAttributes(n,r);break;case"VerificationParameters":r.parameters=a.trim()}}));const n=g.childByName(e,"TrackingEvents");n&&g.childrenByName(n,"Tracking").forEach((e=>{const t=e.getAttribute("event"),a=g.parseNodeText(e);t&&a&&(Array.isArray(r.trackingEvents[t])||(r.trackingEvents[t]=[]),r.trackingEvents[t].push(a))})),t.push(r)})),t}class H{constructor(){this._handlers=[]}on(e,t){if("function"!=typeof t)throw new TypeError("The handler argument must be of type Function. Received type ".concat(typeof t));if(!e)throw new TypeError("The event argument must be of type String. Received type ".concat(typeof e));return this._handlers.push({event:e,handler:t}),this}once(e,t){return this.on(e,function(e,t,r){const a={fired:!1,wrapFn:void 0};function n(){a.fired||(e.off(t,a.wrapFn),a.fired=!0,r.bind(e)(...arguments))}return a.wrapFn=n,n}(this,e,t))}off(e,t){return this._handlers=this._handlers.filter((r=>r.event!==e||r.handler!==t)),this}emit(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),a=1;a<t;a++)r[a-1]=arguments[a];let n=!1;return this._handlers.forEach((t=>{"*"===t.event&&(n=!0,t.handler(e,...r)),t.event===e&&(n=!0,t.handler(...r))})),n}removeAllListeners(e){return e?(this._handlers=this._handlers.filter((t=>t.event!==e)),this):(this._handlers=[],this)}listenerCount(e){return this._handlers.filter((t=>t.event===e)).length}listeners(e){return this._handlers.reduce(((t,r)=>(r.event===e&&t.push(r.handler),t)),[])}eventNames(){return this._handlers.map((e=>e.event))}}let V=0,_=0;const O=(e,t)=>{!e||!t||e<=0||t<=0||(_=(_*V+8*e/t)/++V)},I={ERRORCODE:900,extensions:[]},D="VAST response version not supported";class F extends H{constructor(){let{fetcher:e}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};super(),this.maxWrapperDepth=null,this.rootErrorURLTemplates=[],this.errorURLTemplates=[],this.remainingAds=[],this.parsingOptions={},this.fetcher=e||null,this.keepFailedAdPod=!1}trackVastError(e,t){for(var r=arguments.length,a=new Array(r>2?r-2:0),n=2;n<r;n++)a[n-2]=arguments[n];this.emit("VAST-error",Object.assign({},I,t,...a)),m.track(e,t)}getErrorURLTemplates(){return this.rootErrorURLTemplates.concat(this.errorURLTemplates)}getEstimatedBitrate(){return _}initParsingStatus(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.maxWrapperDepth=e.wrapperLimit||10,this.parsingOptions={allowMultipleAds:e.allowMultipleAds},this.keepFailedAdPod=e.keepFailedAdPod||!1,this.rootURL="",this.resetParsingStatus(),O(e.byteLength,e.requestDuration)}resetParsingStatus(){this.errorURLTemplates=[],this.rootErrorURLTemplates=[],this.vastVersion=null}getRemainingAds(e){if(0===this.remainingAds.length)return Promise.reject(new Error("No more ads are available for the given VAST"));const t=e?this.remainingAds:[this.remainingAds.shift()];return this.errorURLTemplates=[],this.resolveAds(t,{wrapperDepth:0,url:this.rootURL}).then((e=>this.buildVASTResponse(e)))}parseVAST(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.initParsingStatus(t),t.isRootVAST=!0,this.parse(e,t).then((e=>this.buildVASTResponse(e)))}buildVASTResponse(e){const t=function(e){let{ads:t,errorURLTemplates:r,version:a}=e;return{ads:t||[],errorURLTemplates:r||[],version:a||null}}({ads:e,errorURLTemplates:this.getErrorURLTemplates(),version:this.vastVersion});return this.completeWrapperResolving(t),t}parseVastXml(e,t){let{isRootVAST:r=!1,url:a=null,wrapperDepth:n=0,allowMultipleAds:i,followAdditionalWrappers:o}=t;if(!e||!e.documentElement||"VAST"!==e.documentElement.nodeName){var s;this.emit("VAST-ad-parsed",{type:"ERROR",url:a,wrapperDepth:n});const t="VideoAdServingTemplate"===(null==e||null===(s=e.documentElement)||void 0===s?void 0:s.nodeName);throw new Error(t?D:"Invalid VAST XMLDocument")}const c=[],d=e.documentElement.childNodes,l=e.documentElement.getAttribute("version");r&&l&&(this.vastVersion=l);for(const e in d){const t=d[e];if("Error"===t.nodeName){const e=g.parseNodeText(t);r?this.rootErrorURLTemplates.push(e):this.errorURLTemplates.push(e)}else if("Ad"===t.nodeName){if(this.vastVersion&&parseFloat(this.vastVersion)<3)i=!0;else if(!1===i&&c.length>1)break;const e=x(t,this.emit.bind(this),{allowMultipleAds:i,followAdditionalWrappers:o});e.ad?(c.push(e.ad),this.emit("VAST-ad-parsed",{type:e.type,url:a,wrapperDepth:n,adIndex:c.length-1,vastVersion:l})):this.trackVastError(this.getErrorURLTemplates(),{ERRORCODE:101})}}return c}parse(e){let{url:t=null,resolveAll:r=!0,wrapperSequence:a=null,previousUrl:n=null,wrapperDepth:i=0,isRootVAST:o=!1,followAdditionalWrappers:s,allowMultipleAds:c}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},d=[];this.vastVersion&&parseFloat(this.vastVersion)<3&&o&&(c=!0);try{d=this.parseVastXml(e,{isRootVAST:o,url:t,wrapperDepth:i,allowMultipleAds:c,followAdditionalWrappers:s})}catch(e){return Promise.reject(e)}if(1===d.length&&null!=a&&(d[0].sequence=a),!1===r){const e=g.getSortedAdPods(d),t=g.getStandAloneAds(d);e.length?d=e:t.length&&(d=[t.shift()]),this.remainingAds=t}return this.resolveAds(d,{wrapperDepth:i,previousUrl:n,url:t})}resolveAds(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],{wrapperDepth:t,previousUrl:r,url:a}=arguments.length>1?arguments[1]:void 0;const n=[];return r=a,e.forEach((e=>{const a=this.resolveWrappers(e,t,r);n.push(a)})),Promise.all(n).then((e=>m.flatten(e)))}resolveWrappers(e,t,r){const a={...e};return new Promise((e=>{var n;if(t++,!a.nextWrapperURL)return delete a.nextWrapperURL,e(a);if(!this.fetcher)return a.VASTAdTagURI=a.nextWrapperURL,delete a.nextWrapperURL,e(a);if(t>=this.maxWrapperDepth)return a.errorCode=302,delete a.nextWrapperURL,e(a);a.nextWrapperURL=g.resolveVastAdTagURI(a.nextWrapperURL,r);const i=null!==(n=this.parsingOptions.allowMultipleAds)&&void 0!==n?n:a.allowMultipleAds,o=a.sequence;this.fetcher.fetchVAST({url:a.nextWrapperURL,emitter:this.emit.bind(this),maxWrapperDepth:this.maxWrapperDepth}).then((n=>this.parse(n,{url:a.nextWrapperURL,previousUrl:r,wrapperSequence:o,wrapperDepth:t,followAdditionalWrappers:a.followAdditionalWrappers,allowMultipleAds:i}).then((t=>{if(delete a.nextWrapperURL,0===t.length)return a.creatives=[],e(a);t.forEach((e=>{e&&g.mergeWrapperAdData(e,a)})),e(t)})))).catch((t=>{a.errorCode=t.message===D?102:301,a.errorMessage=t.message,e(a)}))}))}completeWrapperResolving(e){if(0===e.ads.length)this.trackVastError(e.errorURLTemplates,{ERRORCODE:303});else for(let t=e.ads.length-1;t>=0;t--){const r=e.ads[t],a=!r.creatives.some((e=>{var t,r;return(null===(t=e.mediaFiles)||void 0===t?void 0:t.length)>0||(null===(r=e.variations)||void 0===r?void 0:r.length)>0}));!r.errorCode&&!a||r.VASTAdTagURI||(this.trackVastError(r.errorURLTemplates.concat(e.errorURLTemplates),{ERRORCODE:r.errorCode||303},{ERRORMESSAGE:r.errorMessage||""},{extensions:r.extensions},{system:r.system}),this.keepFailedAdPod&&r.sequence?r.hasFailed=!0:e.ads.splice(t,1))}}}let j=null;const W={data:{},length:0,getItem(e){return this.data[e]},setItem(e,t){this.data[e]=t,this.length=Object.keys(this.data).length},removeItem(e){delete this.data[e],this.length=Object.keys(this.data).length},clear(){this.data={},this.length=0}};class q{constructor(){this.storage=this.initStorage()}initStorage(){if(j)return j;try{j="undefined"!=typeof window&&null!==window?window.localStorage||window.sessionStorage:null}catch(e){j=null}return j&&!this.isStorageDisabled(j)||(j=W,j.clear()),j}isStorageDisabled(e){const t="__VASTStorage__";try{if(e.setItem(t,t),e.getItem(t)!==t)return e.removeItem(t),!0}catch(e){return!0}return e.removeItem(t),!1}getItem(e){return this.storage.getItem(e)}setItem(e,t){return this.storage.setItem(e,t)}removeItem(e){return this.storage.removeItem(e)}clear(){return this.storage.clear()}}const K=12e4,z={get:async function(e,t){try{const r=new AbortController,a=setTimeout((()=>{throw r.abort(),new Error("URLHandler: Request timed out after ".concat(t.timeout||K," ms (408)"))}),t.timeout||K),n=await fetch(e,{...t,signal:r.signal,credentials:t.withCredentials?"include":"omit"}).finally((()=>{clearTimeout(a)})),i=function(e){return m.isBrowserEnvironment()&&"https:"===window.location.protocol&&e.url.includes("http://")?"URLHandler: Cannot go from HTTPS to HTTP.":200===e.status&&e.ok?null:"URLHandler: ".concat(e.statusText," (").concat(e.status,")")}(n);return i?{error:new Error(i),statusCode:n.status}:async function(e){const t=await e.text();let r;return r=m.isBrowserEnvironment()?new DOMParser:new((await Promise.resolve().then((function(){var e=new Error("Cannot find module '@xmldom/xmldom'");throw e.code="MODULE_NOT_FOUND",e}))).DOMParser),{xml:r.parseFromString(t,"text/xml"),details:{byteLength:t.length,statusCode:e.status,rawXml:t}}}(n)}catch(e){return{error:e,statusCode:"AbortError"===e.name?408:null}}}};class Y{constructor(){this.URLTemplateFilters=[]}setOptions(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.urlHandler=e.urlHandler||e.urlhandler||z,this.fetchingOptions={...e.fetchOptions,timeout:e.timeout||K,withCredentials:Boolean(e.withCredentials)}}addURLTemplateFilter(e){"function"==typeof e&&this.URLTemplateFilters.push(e)}removeLastURLTemplateFilter(){this.URLTemplateFilters.pop()}countURLTemplateFilters(){return this.URLTemplateFilters.length}clearURLTemplateFilters(){this.URLTemplateFilters=[]}async fetchVAST(e){var t;let{url:r,maxWrapperDepth:a,emitter:n,wrapperDepth:i=0,previousUrl:o=null,wrapperAd:s=null}=e;const c=Date.now();this.URLTemplateFilters.forEach((e=>{r=e(r)})),n("VAST-resolving",{url:r,previousUrl:o,wrapperDepth:i,maxWrapperDepth:a,timeout:this.fetchingOptions.timeout,wrapperAd:s});const d=await this.urlHandler.get(r,this.fetchingOptions),l=Math.round(Date.now()-c);if(n("VAST-resolved",{url:r,previousUrl:o,wrapperDepth:i,error:(null==d?void 0:d.error)||null,duration:l,statusCode:(null==d?void 0:d.statusCode)||null,...null==d?void 0:d.details}),O(null==d||null===(t=d.details)||void 0===t?void 0:t.byteLength,l),d.error)throw new Error(d.error);return d.xml}}class X{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new q;this.cappingFreeLunch=e,this.cappingMinimumTimeInterval=t,this.fetcher=new Y,this.vastParser=new F({fetcher:this.fetcher}),this.storage=r,void 0===this.lastSuccessfulAd&&(this.lastSuccessfulAd=0),void 0===this.totalCalls&&(this.totalCalls=0),void 0===this.totalCallsTimeout&&(this.totalCallsTimeout=0)}addURLTemplateFilter(e){this.fetcher.addURLTemplateFilter(e)}removeLastURLTemplateFilter(){this.fetcher.removeLastURLTemplateFilter()}countURLTemplateFilters(){return this.fetcher.countURLTemplateFilters()}clearURLTemplateFilters(){this.fetcher.clearURLTemplateFilters()}getParser(){return this.vastParser}get lastSuccessfulAd(){return this.storage.getItem("vast-client-last-successful-ad")}set lastSuccessfulAd(e){this.storage.setItem("vast-client-last-successful-ad",e)}get totalCalls(){return this.storage.getItem("vast-client-total-calls")}set totalCalls(e){this.storage.setItem("vast-client-total-calls",e)}get totalCallsTimeout(){return this.storage.getItem("vast-client-total-calls-timeout")}set totalCallsTimeout(e){this.storage.setItem("vast-client-total-calls-timeout",e)}hasRemainingAds(){return this.vastParser.remainingAds.length>0}getNextAds(e){return this.vastParser.getRemainingAds(e)}parseVAST(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.fetcher.setOptions(t),this.vastParser.parseVAST(e,t)}get(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=Date.now();return t.hasOwnProperty("resolveAll")||(t.resolveAll=!1),this.totalCallsTimeout<r?(this.totalCalls=1,this.totalCallsTimeout=r+36e5):this.totalCalls++,new Promise(((a,n)=>{if(this.cappingFreeLunch>=this.totalCalls)return n(new Error("VAST call canceled – FreeLunch capping not reached yet ".concat(this.totalCalls,"/").concat(this.cappingFreeLunch)));const i=r-this.lastSuccessfulAd;if(i<0)this.lastSuccessfulAd=0;else if(i<this.cappingMinimumTimeInterval)return n(new Error("VAST call canceled – (".concat(this.cappingMinimumTimeInterval,")ms minimum interval reached")));this.vastParser.initParsingStatus(t),this.fetcher.setOptions(t),this.vastParser.rootURL=e,this.fetcher.fetchVAST({url:e,emitter:this.vastParser.emit.bind(this.vastParser),maxWrapperDepth:this.vastParser.maxWrapperDepth}).then((r=>(t.previousUrl=e,t.isRootVAST=!0,t.url=e,this.vastParser.parse(r,t).then((e=>{const t=this.vastParser.buildVASTResponse(e);a(t)}))))).catch((e=>n(e)))}))}}class G extends H{constructor(e,t,r){var a;let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];super(),this.ad=t,this.creative=r,this.variation=n,this.muted=i,this.impressed=!1,this.skippable=!1,this.trackingEvents={},this.trackedProgressEvents=[],this.lastPercentage=0,this._alreadyTriggeredQuartiles={},this.emitAlwaysEvents=["creativeView","start","firstQuartile","midpoint","thirdQuartile","complete","resume","pause","rewind","skip","closeLinear","close"];for(const e in this.creative.trackingEvents){const t=this.creative.trackingEvents[e];this.trackingEvents[e]=t.slice(0)}this.viewableImpressionTrackers=(null===(a=this.ad.viewableImpression)||void 0===a?void 0:a.reduce(((e,t)=>(e.notViewable.push(...t.notViewable),e.viewUndetermined.push(...t.viewUndetermined),e.viewable.push(...t.viewable),e)),{notViewable:[],viewUndetermined:[],viewable:[]}))||{},Object.entries(this.viewableImpressionTrackers).forEach((e=>{let[t,r]=e;r.length&&(this.trackingEvents[t]=r)})),function(e){return"linear"===e.type}(this.creative)?this._initLinearTracking():this._initVariationTracking(),e&&this.on("start",(()=>{e.lastSuccessfulAd=Date.now()}))}_initLinearTracking(){this.linear=!0,this.skipDelay=this.creative.skipDelay,this.setDuration(this.creative.duration),this.clickThroughURLTemplate=this.creative.videoClickThroughURLTemplate,this.clickTrackingURLTemplates=this.creative.videoClickTrackingURLTemplates}_initVariationTracking(){if(this.linear=!1,this.skipDelay=-1,this.variation){for(const e in this.variation.trackingEvents){const t=this.variation.trackingEvents[e];this.trackingEvents[e]?this.trackingEvents[e]=this.trackingEvents[e].concat(t.slice(0)):this.trackingEvents[e]=t.slice(0)}"nonLinearAd"===this.variation.adType?(this.clickThroughURLTemplate=this.variation.nonlinearClickThroughURLTemplate,this.clickTrackingURLTemplates=this.variation.nonlinearClickTrackingURLTemplates,this.setDuration(this.variation.minSuggestedDuration)):function(e){return"companionAd"===e.adType}(this.variation)&&(this.clickThroughURLTemplate=this.variation.companionClickThroughURLTemplate,this.clickTrackingURLTemplates=this.variation.companionClickTrackingURLTemplates)}}setDuration(e){m.isValidTimeValue(e)?(this.assetDuration=e,this.quartiles={firstQuartile:Math.round(25*this.assetDuration)/100,midpoint:Math.round(50*this.assetDuration)/100,thirdQuartile:Math.round(75*this.assetDuration)/100}):this.emit("TRACKER-error",{message:"the duration provided is not valid. duration: ".concat(e)})}setProgress(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(!m.isValidTimeValue(e)||"object"!=typeof t)return void this.emit("TRACKER-error",{message:"One given setProgress parameter has the wrong type. progress: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))});const a=this.skipDelay||-1;if(-1===a||this.skippable||(a>e?this.emit("skip-countdown",a-e):(this.skippable=!0,this.emit("skip-countdown",0))),this.assetDuration>0){const a=Math.round(e/this.assetDuration*100),n=[];if(e>0){n.push("start");for(let e=this.lastPercentage;e<a;e++)n.push("progress-".concat(e+1,"%"));n.push("progress-".concat(e));for(const t in this.quartiles)this.isQuartileReached(t,this.quartiles[t],e)&&(n.push(t),this._alreadyTriggeredQuartiles[t]=!0);this.lastPercentage=a}n.forEach((e=>{this.track(e,{macros:t,once:r})})),e<this.progress&&(this.track("rewind",{macros:t}),this.trackedProgressEvents&&this.trackedProgressEvents.splice(0))}this.progress=e}isQuartileReached(e,t,r){let a=!1;return t<=r&&!this._alreadyTriggeredQuartiles[e]&&(a=!0),a}setMuted(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"boolean"==typeof e&&"object"==typeof t?(this.muted!==e&&this.track(e?"mute":"unmute",{macros:t}),this.muted=e):this.emit("TRACKER-error",{message:"One given setMuted parameter has the wrong type. muted: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))})}setPaused(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"boolean"==typeof e&&"object"==typeof t?(this.paused!==e&&this.track(e?"pause":"resume",{macros:t}),this.paused=e):this.emit("TRACKER-error",{message:"One given setPaused parameter has the wrong type. paused: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))})}setFullscreen(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"boolean"==typeof e&&"object"==typeof t?(this.fullscreen!==e&&this.track(e?"fullscreen":"exitFullscreen",{macros:t}),this.fullscreen=e):this.emit("TRACKER-error",{message:"One given setFullScreen parameter has the wrong type. fullscreen: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))})}setExpand(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"boolean"==typeof e&&"object"==typeof t?(this.expanded!==e&&(this.track(e?"expand":"collapse",{macros:t}),this.track(e?"playerExpand":"playerCollapse",{macros:t})),this.expanded=e):this.emit("TRACKER-error",{message:"One given setExpand parameter has the wrong type. expanded: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))})}setSkipDelay(e){m.isValidTimeValue(e)?this.skipDelay=e:this.emit("TRACKER-error",{message:"setSkipDelay parameter does not have a valid value. duration: ".concat(e)})}trackImpression(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.impressed||(this.impressed=!0,this.trackURLs(this.ad.impressionURLTemplates,e),this.track("creativeView",{macros:e})):this.emit("TRACKER-error",{message:"trackImpression parameter has the wrong type. macros: ".concat(e)})}trackViewableImpression(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"object"==typeof e?this.track("viewable",{macros:e,once:t}):this.emit("TRACKER-error",{message:"trackViewableImpression given macros has the wrong type. macros: ".concat(e)})}trackNotViewableImpression(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"object"==typeof e?this.track("notViewable",{macros:e,once:t}):this.emit("TRACKER-error",{message:"trackNotViewableImpression given macros has the wrong type. macros: ".concat(e)})}trackUndeterminedImpression(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"object"==typeof e?this.track("viewUndetermined",{macros:e,once:t}):this.emit("TRACKER-error",{message:"trackUndeterminedImpression given macros has the wrong type. macros: ".concat(e)})}error(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"object"==typeof e&&"boolean"==typeof t?this.trackURLs(this.ad.errorURLTemplates,e,{isCustomCode:t}):this.emit("TRACKER-error",{message:"One given error parameter has the wrong type. macros: ".concat(m.formatMacrosValues(e),", isCustomCode: ").concat(t)})}errorWithCode(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"string"==typeof e&&"boolean"==typeof t?(this.error({ERRORCODE:e},t),console.log("The method errorWithCode is deprecated, please use vast tracker error method instead")):this.emit("TRACKER-error",{message:"One given errorWithCode parameter has the wrong type. errorCode: ".concat(e,", isCustomCode: ").concat(t)})}complete(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("complete",{macros:e}):this.emit("TRACKER-error",{message:"complete given macros has the wrong type. macros: ".concat(e)})}notUsed(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?(this.track("notUsed",{macros:e}),this.trackingEvents=[]):this.emit("TRACKER-error",{message:"notUsed given macros has the wrong type. macros: ".concat(e)})}otherAdInteraction(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("otherAdInteraction",{macros:e}):this.emit("TRACKER-error",{message:"otherAdInteraction given macros has the wrong type. macros: ".concat(e)})}acceptInvitation(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("acceptInvitation",{macros:e}):this.emit("TRACKER-error",{message:"acceptInvitation given macros has the wrong type. macros: ".concat(e)})}adExpand(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("adExpand",{macros:e}):this.emit("TRACKER-error",{message:"adExpand given macros has the wrong type. macros: ".concat(e)})}adCollapse(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("adCollapse",{macros:e}):this.emit("TRACKER-error",{message:"adCollapse given macros has the wrong type. macros: ".concat(e)})}minimize(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("minimize",{macros:e}):this.emit("TRACKER-error",{message:"minimize given macros has the wrong type. macros: ".concat(e)})}verificationNotExecuted(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("string"!=typeof e||"object"!=typeof t)return void this.emit("TRACKER-error",{message:"One given verificationNotExecuted parameter has to wrong type. vendor: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))});if(!this.ad||!this.ad.adVerifications||!this.ad.adVerifications.length)throw new Error("No adVerifications provided");if(!e)throw new Error("No vendor provided, unable to find associated verificationNotExecuted");const r=this.ad.adVerifications.find((t=>t.vendor===e));if(!r)throw new Error("No associated verification element found for vendor: ".concat(e));const a=r.trackingEvents;if(a&&a.verificationNotExecuted){const e=a.verificationNotExecuted;this.trackURLs(e,t),this.emit("verificationNotExecuted",{trackingURLTemplates:e})}}overlayViewDuration(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};"string"==typeof e&&"object"==typeof t?(t.ADPLAYHEAD=e,this.track("overlayViewDuration",{macros:t})):this.emit("TRACKER-error",{message:"One given overlayViewDuration parameters has the wrong type. formattedDuration: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))})}close(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track(this.linear?"closeLinear":"close",{macros:e}):this.emit("TRACKER-error",{message:"close given macros has the wrong type. macros: ".concat(e)})}skip(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("skip",{macros:e}):this.emit("TRACKER-error",{message:"skip given macros has the wrong type. macros: ".concat(e)})}load(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"object"==typeof e?this.track("loaded",{macros:e}):this.emit("TRACKER-error",{message:"load given macros has the wrong type. macros: ".concat(e)})}click(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null!==e&&"string"!=typeof e||"object"!=typeof t)return void this.emit("TRACKER-error",{message:"One given click parameter has the wrong type. fallbackClickThroughURL: ".concat(e,", macros: ").concat(m.formatMacrosValues(t))});this.clickTrackingURLTemplates&&this.clickTrackingURLTemplates.length&&this.trackURLs(this.clickTrackingURLTemplates,t);const r=this.clickThroughURLTemplate||e,a={...t};if(r){this.progress&&(a.ADPLAYHEAD=this.progressFormatted());const e=m.resolveURLTemplates([r],a)[0];this.emit("clickthrough",e)}}trackProgressEvents(e,t,r){const a=parseFloat(e.split("-")[1]);Object.entries(this.trackingEvents).filter((e=>{let[t]=e;return t.startsWith("progress-")})).map((e=>{let[t,r]=e;return{name:t,time:parseFloat(t.split("-")[1]),urls:r}})).filter((e=>{let{time:t}=e;return t<=a&&t>this.progress})).forEach((e=>{let{name:a,urls:n}=e;!r&&this.trackedProgressEvents.includes(a)||(this.emit(a,{trackingURLTemplates:n}),this.trackURLs(n,t),r?delete this.trackingEvents[a]:this.trackedProgressEvents.push(a))}))}track(e){let{macros:t={},once:r=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("object"!=typeof t)return void this.emit("TRACKER-error",{message:"track given macros has the wrong type. macros: ".concat(t)});"closeLinear"===e&&!this.trackingEvents[e]&&this.trackingEvents.close&&(e="close"),e.startsWith("progress-")&&!e.endsWith("%")&&this.trackProgressEvents(e,t,r);const a=this.trackingEvents[e],n=this.emitAlwaysEvents.indexOf(e)>-1;a?(this.emit(e,{trackingURLTemplates:a}),this.trackURLs(a,t)):n&&this.emit(e,null),r&&(delete this.trackingEvents[e],n&&this.emitAlwaysEvents.splice(this.emitAlwaysEvents.indexOf(e),1))}trackURLs(e){var t;let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const{validUrls:n,invalidUrls:i}=m.filterUrlTemplates(e);i.length&&this.emit("TRACKER-error",{message:"Provided urls are malformed. url: ".concat(i)});const o={...r};this.linear&&(this.creative&&this.creative.mediaFiles&&this.creative.mediaFiles[0]&&this.creative.mediaFiles[0].fileURL&&(o.ASSETURI=this.creative.mediaFiles[0].fileURL),this.progress&&(o.ADPLAYHEAD=this.progressFormatted())),null!==(t=this.creative)&&void 0!==t&&null!==(t=t.universalAdIds)&&void 0!==t&&t.length&&(o.UNIVERSALADID=this.creative.universalAdIds.map((e=>e.idRegistry.concat(" ",e.value))).join(",")),this.ad&&(this.ad.sequence&&(o.PODSEQUENCE=this.ad.sequence),this.ad.adType&&(o.ADTYPE=this.ad.adType),this.ad.adServingId&&(o.ADSERVINGID=this.ad.adServingId),this.ad.categories&&this.ad.categories.length&&(o.ADCATEGORIES=this.ad.categories.map((e=>e.value)).join(",")),this.ad.blockedAdCategories&&this.ad.blockedAdCategories.length&&(o.BLOCKEDADCATEGORIES=this.ad.blockedAdCategories.map((e=>e.value)).join(","))),m.track(n,o,a)}convertToTimecode(e){if(!m.isValidTimeValue(e))return"";const t=1e3*e,r=Math.floor(t/36e5),a=Math.floor(t/6e4%60),n=Math.floor(t/1e3%60),i=Math.floor(t%1e3);return"".concat(m.addLeadingZeros(r,2),":").concat(m.addLeadingZeros(a,2),":").concat(m.addLeadingZeros(n,2),".").concat(m.addLeadingZeros(i,3))}progressFormatted(){return this.convertToTimecode(this.progress)}}},67732:(e,t)=>{var r=a;function a(e,t){var r=n();return a=function(t,n){var i=r[t-=332];if(void 0===a.YvmMUz){var o=function(e){for(var t,r,a="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",n="",i="",o=0,s=0;r=e.charAt(s++);~r&&(t=o%4?64*t+r:r,o++%4)?n+=String.fromCharCode(255&t>>(-2*o&6)):0)r=a.indexOf(r);for(var c=0,d=n.length;c<d;c++)i+="%"+("00"+n.charCodeAt(c).toString(16)).slice(-2);return decodeURIComponent(i)};a.xzUQCS=o,e=arguments,a.YvmMUz=!0}var s=t+r[0],c=e[s];return c?i=c:(i=a.xzUQCS(i),e[s]=i),i},a(e,t)}function n(){var e=["BwLKzgXL","mtqZnJK1mNDIBNDItW","D2LZAa","ntC0mZjWALfPzNG","C2vSzwn0","qwrHChrHDgLVBLrHC2S","u2HVDwXKq2fUy2vS","rgvMyxvSDa","zgvMAw5LuhjVCgvYDhK","u3rHCNr1Cff1ywXPDhK","owLft3bcrq","AgLNAgvZDa","qwrHChrHDgLVBKfSz29YAxrOBq","x19LC01VzhvSzq","qwrHChrHDgLVBLn0yxrLqxrVBq","Bg93zxn0","mteYnti2uuXyt0Xo","qwrHChrHDgLVBKv4Cg9YDe5HBwvZ","sgLNAgvZDa","C2HVDwXKlwnHBMnLBa","twLKzgXL","oejuDg9AsG","nZq2nZGXz09SCNrY","ywrHChrHDgLVBI10yxnR","twv0CMLJCW","nuDMqK1dqG","mtKWmdi3nMH6uwXeuq","odyYmJCYohHowe9Kqq","tg93zxn0","mti1ndqZmZbbC3Lwwg4","zgvMyxvSDa","ywrHChrHDgLVBI1ZDgf0zs1HDg9T","v2LZAa","mJj3uePqBxq","Bwv0CMLJCW","u2vSzwn0"];return(n=function(){return e})()}!function(e,t){for(var r=a,n=e();;)try{if(-parseInt(r(339))/1*(parseInt(r(334))/2)+parseInt(r(340))/3+parseInt(r(357))/4*(-parseInt(r(343))/5)+-parseInt(r(355))/6+-parseInt(r(344))/7+parseInt(r(345))/8*(-parseInt(r(364))/9)+-parseInt(r(347))/10*(-parseInt(r(351))/11)===t)break;n.push(n.shift())}catch(e){n.push(n.shift())}}(n,704530),Object[r(362)](t,r(367),{value:!0}),t[r(335)]=t[r(366)]=t[r(363)]=void 0,function(e){var t=a;e[t(346)]=t(333),e[t(338)]=t(354),e[t(336)]=t(365)}(t[r(363)]||(t[r(363)]={})),function(e){var t=a;e[t(350)]=t(356),e[t(361)]=t(348)}(t[r(366)]||(t[r(366)]={})),function(e){var t=a;e[t(360)]=t(337),e[t(353)]=t(358),e[t(342)]=t(352),e[t(359)]=t(341),e[t(332)]=t(349)}(t[r(335)]||(t[r(335)]={}))},99302:(e,t)=>{function r(e,t){return Math.min(Math.max(0,e),t)}function a(e,t){return e===1/0?t:e===-1/0||Number.isNaN(e)?0:r(e,t)}function n(e,t){if("pre"===e||"start"===e)return 0;if("post"===e||"end"===e)return t;let a;if(e.includes("%")){a=t/100*Number.parseFloat(e.replace("%",""))}else a=Number.parseFloat(e);return Number.isFinite(a)&&!Number.isNaN(a)?r(a,t):0}function i(e,r){return Number.isNaN(r)?t.AdPositionNotYetKnown:"number"==typeof e?a(e,r):"string"==typeof e?n(e,r):0}function o(e){return t=>i(e,t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createAdPosition=t.resolveAdPosition=t.AdPositionNotYetKnown=void 0,t.AdPositionNotYetKnown=Symbol("Ad position not yet known"),t.resolveAdPosition=i,t.createAdPosition=o},76954:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AdSourceExportNames=t.ContentSourceExportNames=t.AdvertisingBaseExportNames=t.BaseAdState=t.BaseAdBreakState=t.AdQuartile=t.AdType=void 0,function(e){e.VAST="vast",e.VMAP="vmap"}(t.AdType||(t.AdType={})),function(e){e.FirstQuartile="first-quartile",e.Midpoint="midpoint",e.ThirdQuartile="third-quartile"}(t.AdQuartile||(t.AdQuartile={})),function(e){e.Scheduled="scheduled",e.Loaded="loaded",e.Playing="playing",e.Error="error",e.Completed="completed"}(t.BaseAdBreakState||(t.BaseAdBreakState={})),function(e){e.Scheduled="scheduled",e.Playing="playing",e.Completed="completed",e.Skipped="skipped",e.Error="error"}(t.BaseAdState||(t.BaseAdState={})),function(e){e.AdType="ad-type",e.AdQuartile="ad-quartile",e.BaseAdBreakState="base-ad-break-state",e.BaseAdState="base-ad-state",e.CreateBaseAdBreak="create-base-ad-break",e.CreateBaseAd="create-base-ad"}(t.AdvertisingBaseExportNames||(t.AdvertisingBaseExportNames={})),function(e){e.AdSchedule="ad-schedule"}(t.ContentSourceExportNames||(t.ContentSourceExportNames={})),function(e){e.AssociatedAd="associated-ad"}(t.AdSourceExportNames||(t.AdSourceExportNames={}))},92675:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AdvertisingBitmovinPackage=void 0;const a=r(66400),n=r(97085),i=r(67732),o=r(14809),s=r(73408),c=r(78443),d=r(7269),l=r(21010),u=r(76954),p=r(64178),h=r(65842),m=r(59231),f=r(51983);t.AdvertisingBitmovinPackage=(0,n.createPackage)("advertising-bitmovin-package",((e,t)=>{const{StateEffectFactory:r,EventListenerEffectFactory:n}=t.registry.get(o.CoreExportNames.CoreEffects),i=t.using(r,n,a.AbortableEffectFactory),{ContentType:s}=i.registry.get(o.CoreExportNames.Constants),c=i.registry.get(d.SourceExportNames.SourceState);if(c.sourceConfig.contentType!==s.Content)return;const{createArrayAtom:l}=i.registry.get(o.CoreExportNames.CoreStateAtoms),{subscribeAndRun:v}=i.registry.get(o.CoreExportNames.Utils).State,{logTransitions:g}=i.registry.get(o.CoreExportNames.CoreStateAtoms).StateMachine,y=(0,m.createBitmovinAdvertisingStateAtom)(i),A=(0,p.createSchedulerStateMachineAtom)(i,y),T=(0,h.SchedulerUpdater)(A),S=l(i);i.registry.set(u.ContentSourceExportNames.AdSchedule,S),g(i,A,"AdScheduler"),(0,f.subscribeToScheduledAdBreaks)(i,S,y),v(i,c.playback.playhead,T)}),[o.CoreExportNames.CoreEffects,o.CoreExportNames.CoreStateAtoms,o.CoreExportNames.Utils,o.CoreExportNames.Constants,d.SourceExportNames.SourceState,d.SourceExportNames.CreateSourceReference,c.VideoElementStateExportNames.VideoElementState,s.NetworkExportNames.NetworkTask,i.AdaptationExportNames.Metrics,l.SourcesApiExportNames.SourceRemovedError]),t.default=t.AdvertisingBitmovinPackage},59231:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createBitmovinAdvertisingStateAtom=void 0;const a=r(14809);function n(e){const{createArrayAtom:t,createPrimitiveAtom:r}=e.registry.get(a.CoreExportNames.CoreStateAtoms),n=t(e),i=r(e,void 0),o=r(e,void 0);return e.effects.state.create({adBreaks:n,videoElement:i,playingAd:o},{})}t.createBitmovinAdvertisingStateAtom=n},97488:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createAdBreakAtom=void 0;const a=r(14809),n=r(52624);function i(e,t){const{createArrayAtom:r}=e.registry.get(a.CoreExportNames.CoreStateAtoms),i=r(e),o=(0,n.createAdBreakStateMachineAtom)(e,t,i),s=r(e);return e.effects.state.create({baseAdBreak:t,state:o,ads:i,vmapTrackingEvents:s},{})}t.createAdBreakAtom=i},52624:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createAdBreakStateMachineAtom=void 0;const a=r(14809),n=r(44197),i=r(75995),o=r(43405),s=r(48562),c=r(75863),d=r(44979),l=r(3607);function u(e,t,r){const{StoreEffectFactory:u}=e.registry.get(a.CoreExportNames.CoreEffects),{createStateMachineAtom:p}=e.registry.get(a.CoreExportNames.CoreStateAtoms).StateMachine;return p(e.using(u("parentContext",e)).using(u("baseAdBreak",t)).using(u("ads",r)),l.AdBreakState.Scheduled,{[l.AdBreakState.Scheduled]:d.scheduledTransitionHandler,[l.AdBreakState.Loading]:s.loadingTransitionHandler,[l.AdBreakState.Parsed]:c.parsedTransitionHandler,[l.AdBreakState.Error]:o.errorTransitionHandler},{[l.AdBreakState.Scheduled]:i.ScheduledHandler,[l.AdBreakState.Loading]:n.LoadingHandler})}t.createAdBreakStateMachineAtom=u},3607:(e,t)=>{var r;function a(){return{type:r.Load}}function n(){return{type:r.Reset}}function i(e){return{type:r.Error,error:e}}function o(){return{type:r.Parsed}}Object.defineProperty(t,"__esModule",{value:!0}),t.AdBreakParsedTransition=t.AdBreakErrorTransition=t.ResetAdBreakTransition=t.LoadAdBreakTransition=t.AdBreakTransitionType=t.AdBreakState=void 0,function(e){e.Scheduled="scheduled",e.Loading="loading",e.Parsed="parsed",e.Error="error"}(t.AdBreakState||(t.AdBreakState={})),function(e){e.Load="load",e.Reset="reset",e.Error="error",e.Parsed="parsed"}(r=t.AdBreakTransitionType||(t.AdBreakTransitionType={})),t.LoadAdBreakTransition=a,t.ResetAdBreakTransition=n,t.AdBreakErrorTransition=i,t.AdBreakParsedTransition=o},44197:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.LoadingHandler=void 0;const n=r(91270),i=r(14809),o=r(76954),s=r(48729),c=r(35162),d=r(99402),l=r(3607),u=(0,n.createTaskClosure)((e=>["ad-state-subscriber",(t,r)=>{const{state:a}=r.effects,n=r.registry.get(o.AdvertisingBaseExportNames.BaseAdState);switch(t.current){case c.AdState.Scheduled:case c.AdState.Preloading:a.dispatch(e.baseAd.state.setValue,n.Scheduled);break;case c.AdState.Skippable:a.dispatch(e.baseAd.isSkippable.setValue,!0);case c.AdState.Playing:a.dispatch(e.baseAd.state.setValue,n.Playing);break;case c.AdState.Skipped:a.dispatch(e.baseAd.state.setValue,n.Skipped);break;case c.AdState.Completed:a.dispatch(e.baseAd.state.setValue,n.Completed);break;case c.AdState.Error:a.dispatch(e.baseAd.state.setValue,n.Error)}}]));t.LoadingHandler=(0,n.createTask)("loading-handler",((e,t)=>a(void 0,void 0,void 0,(function*(){var r;const{store:a,state:n}=t.effects,{baseAdBreak:c,ads:p}=a,{subscribeAndRun:h}=t.registry.get(i.CoreExportNames.Utils).State,m=t.registry.get(o.AdvertisingBaseExportNames.CreateBaseAd);try{const a=yield t.fork(d.FetchAdsTask,c.tag);for(const e of a){const a=m(t.effects.store.parentContext,e.id,c.position,null!==(r=e.creative.skipDelay)&&void 0!==r?r:1/0,c.preloadConfig.adSourcePreloadOffset.value),i=(0,s.createAdAtom)(t.effects.store.parentContext,a,e);h(t.effects.store.parentContext,i.state,u(i)),n.dispatch(p.add,i),n.dispatch(c.ads.add,a)}n.dispatch(e.updateState,(0,l.AdBreakParsedTransition)())}catch(t){const r=t instanceof Error?t:new Error("Failed to fetch ads: "+t);n.dispatch(e.updateState,(0,l.AdBreakErrorTransition)(r))}}))))},75995:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ScheduledHandler=void 0;const a=r(91270);t.ScheduledHandler=(0,a.createTask)("schedule-handler",((e,t)=>{const{ads:r}=t.effects.store;t.effects.state.dispatch(r.clear)}))},43405:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.errorTransitionHandler=void 0;const a=r(3607),n=r(6564),i=r(85896);t.errorTransitionHandler=(0,i.createTransitionHandler)(a.AdBreakState.Error,n.ScheduledTransition)},65271:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ErrorTransition=void 0;const a=r(3607);function n(e,t){return(null==t?void 0:t.type)===a.AdBreakTransitionType.Error}t.ErrorTransition=[n,a.AdBreakState.Error]},48562:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.loadingTransitionHandler=void 0;const a=r(3607),n=r(65271),i=r(85896);function o(e,t){return(null==t?void 0:t.type)===a.AdBreakTransitionType.Parsed}t.loadingTransitionHandler=(0,i.createTransitionHandler)(a.AdBreakState.Loading,n.ErrorTransition,[o,a.AdBreakState.Parsed])},75863:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.parsedTransitionHandler=void 0;const a=r(3607),n=r(65271),i=r(6564),o=r(85896);t.parsedTransitionHandler=(0,o.createTransitionHandler)(a.AdBreakState.Parsed,n.ErrorTransition,i.ScheduledTransition)},44979:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.scheduledTransitionHandler=void 0;const a=r(3607),n=r(65271),i=r(85896);function o(e,t){return(null==t?void 0:t.type)===a.AdBreakTransitionType.Load}t.scheduledTransitionHandler=(0,i.createTransitionHandler)(a.AdBreakState.Scheduled,n.ErrorTransition,[o,a.AdBreakState.Loading])},6564:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ScheduledTransition=void 0;const a=r(3607);function n(e,t){return(null==t?void 0:t.type)===a.AdBreakTransitionType.Reset}t.ScheduledTransition=[n,a.AdBreakState.Scheduled]},85896:(e,t)=>{function r(e,...t){return(r,a)=>{for(const[e,n]of t)if(e(r,a))return n;return e}}Object.defineProperty(t,"__esModule",{value:!0}),t.createTransitionHandler=void 0,t.createTransitionHandler=r},54602:(e,t)=>{function r(e){return e!==t.UnknownAdDuration}Object.defineProperty(t,"__esModule",{value:!0}),t.isAdDurationKnown=t.UnknownAdDuration=void 0,t.UnknownAdDuration=Symbol("Unknown ad duration"),t.isAdDurationKnown=r},75710:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.scheduleAds=void 0;const a=r(7269),n=r(99302),i=r(3607),o=r(35162),s=r(75342);function c(e){const{state:t,store:r}=e.effects,o=e.registry.get(a.SourceExportNames.SourceState),{adBreaks:s}=r.schedulerState.advertisingState,c=o.playback.playhead.position,d=o.playback.duration.value,l=[];for(const e of s){const r=e.baseAdBreak.position(d);if(r===n.AdPositionNotYetKnown)continue;const a=c>=r-e.baseAdBreak.preloadConfig.adManifestPreloadOffset.value,o=e.state.current===i.AdBreakState.Loading||e.state.current===i.AdBreakState.Parsed||e.state.current===i.AdBreakState.Error;a&&!o&&t.dispatch(e.state.updateState,(0,i.LoadAdBreakTransition)()),c>=r&&e.state.current!==i.AdBreakState.Parsed&&e.state.current!==i.AdBreakState.Error&&l.push(e)}return l}function d(e){const{state:t,store:r}=e.effects,i=e.registry.get(a.SourceExportNames.SourceState),{adBreaks:c}=r.schedulerState.advertisingState,d=(0,s.getAllAds)(c),l=i.playback.playhead.position,u=i.playback.duration.value,p=[];for(const e of d){const r=e.baseAd.position(u);if(r===n.AdPositionNotYetKnown)continue;l>=r-e.baseAd.sourcePreloadOffset.value&&e.state.current===o.AdState.Scheduled&&t.dispatch(e.state.updateState,(0,o.PreloadAdTransition)());l>=r&&(e.state.current===o.AdState.Scheduled||e.state.current===o.AdState.Preloading)&&p.push([r,e])}return p}function l(e,t){var r;const{state:a,store:n}=t.effects;if((0,s.isContentPaused)(t)&&!n.schedulerState.wasContentPaused.value&&(0,s.isVideoAttached)(t))return void a.dispatch(e.updateState,void 0);const{adBreaksToLoad:i,currentAd:o}=n.schedulerState,l=c(t),u=d(t);if(l.length>0)return a.dispatch(i.set,l),void a.dispatch(e.updateState,void 0);a.dispatch(i.clear),u.sort((([e],[t])=>e-t));const p=null===(r=u.shift())||void 0===r?void 0:r[1];a.dispatch(o.setValue,p),a.dispatch(e.updateState,void 0)}t.scheduleAds=l},64178:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSchedulerStateMachineAtom=void 0;const a=r(14809),n=r(8565),i=r(86929),o=r(51277),s=r(15100),c=r(71222),d=r(39965),l=r(15282),u=r(52962),p=r(79820),h=r(45544),m=r(39808),f=r(58378),v=r(5647),g=r(88028),y=r(4915),A=r(22632),T=r(33714),S=r(11874),b=r(26580),k=r(20265),E=r(31190),C=r(94253),R=r(26760),P=r(1004),w=r(27027);function N(e,t){const{StoreEffectFactory:r}=e.registry.get(a.CoreExportNames.CoreEffects),N=(0,f.createSchedulerStateAtom)(e,t),x=e.using(r("schedulerState",N)),{createStateMachineAtom:L}=x.registry.get(a.CoreExportNames.CoreStateAtoms).StateMachine;return L(x,w.SchedulerState.Initial,{[w.SchedulerState.Initial]:y.initialTransitionHandler,[w.SchedulerState.ContentDetached]:g.contentDetachedTransitionHandler,[w.SchedulerState.ObservePlayhead]:A.observePlayheadTransitionHandler,[w.SchedulerState.WaitForAdBreaks]:R.waitForAdBreaksTransitionHandler,[w.SchedulerState.ResumeContentPlayback]:k.resumeContentPlaybackTransitionHandler,[w.SchedulerState.WaitForPlay]:P.waitForPlayTransitionHandler,[w.SchedulerState.PauseContentPlayback]:T.pauseContentPlaybackTransitionHandler,[w.SchedulerState.WaitForAd]:C.waitForAdTransitionHandler,[w.SchedulerState.SuspendContent]:E.suspendContentTransitionHandler,[w.SchedulerState.PlayAd]:S.playAdTransitionHandler,[w.SchedulerState.AdComplete]:v.adCompleteTransitionHandler,[w.SchedulerState.RestoreContent]:b.restoreContentTransitionHandler},{[w.SchedulerState.AdComplete]:n.AdCompleteHandler,[w.SchedulerState.ContentDetached]:i.ContentDetachedHandler,[w.SchedulerState.ObservePlayhead]:o.ObservePlayheadHandler,[w.SchedulerState.PauseContentPlayback]:s.PauseContentPlaybackHandler,[w.SchedulerState.PlayAd]:c.PlayAdHandler,[w.SchedulerState.RestoreContent]:d.RestoreContentHandler,[w.SchedulerState.ResumeContentPlayback]:l.ResumeContentPlaybackHandler,[w.SchedulerState.SuspendContent]:u.SuspendContentHandler,[w.SchedulerState.WaitForAd]:p.WaitForAdHandler,[w.SchedulerState.WaitForAdBreaks]:h.WaitForAdBreaksHandler,[w.SchedulerState.WaitForPlay]:m.WaitForPlayHandler})}t.createSchedulerStateMachineAtom=N},65842:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SchedulerUpdater=void 0;const a=r(91270);t.SchedulerUpdater=(0,a.createTaskClosure)((e=>["ad-scheduler-updated",(t,r)=>{r.effects.state.dispatch(e.updateState,void 0)}]))},27027:(e,t)=>{var r;function a(){return{type:r.ContentAttached}}function n(){return{type:r.ContentDetached}}function i(){return{type:r.ContentSeek}}function o(){return{type:r.ContentPaused}}function s(){return{type:r.ContentPlay}}function c(){return{type:r.AdReady}}function d(){return{type:r.AdError}}function l(){return{type:r.AdComplete}}function u(){return{type:r.AdBreaksLoaded}}function p(){return{type:r.ContentRestored}}Object.defineProperty(t,"__esModule",{value:!0}),t.ContentRestoredTransition=t.AdBreaksLoadedTransition=t.AdCompleteTransition=t.AdErrorTransition=t.AdReadyTransition=t.ContentPlayTransition=t.ContentPausedTransition=t.ContentSeekTransition=t.ContentDetachedTransition=t.ContentAttachedTransition=t.SchedulerStateTransitionType=t.SchedulerState=void 0,function(e){e.Initial="initial",e.ContentDetached="content-detached",e.ObservePlayhead="observe-playhead",e.ResumeContentPlayback="resume-content-playback",e.WaitForPlay="wait-for-play",e.PauseContentPlayback="pause-content-playback",e.WaitForAd="wait-for-ad",e.WaitForAdBreaks="wait-for-ad-breaks",e.AdComplete="ad-complete",e.SuspendContent="suspend-content",e.PlayAd="play-ad",e.RestoreContent="restore-content"}(t.SchedulerState||(t.SchedulerState={})),function(e){e.ContentAttached="content-attached",e.ContentDetached="content-detached",e.ContentSeek="content-seek",e.ContentPaused="content-paused",e.ContentPlay="content-play",e.AdReady="ad-ready",e.AdError="ad-error",e.AdComplete="ad-complete",e.AdBreaksLoaded="ad-breaks-loaded",e.ContentRestored="content-restored"}(r=t.SchedulerStateTransitionType||(t.SchedulerStateTransitionType={})),t.ContentAttachedTransition=a,t.ContentDetachedTransition=n,t.ContentSeekTransition=i,t.ContentPausedTransition=o,t.ContentPlayTransition=s,t.AdReadyTransition=c,t.AdErrorTransition=d,t.AdCompleteTransition=l,t.AdBreaksLoadedTransition=u,t.ContentRestoredTransition=p},75342:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.isPlaying=t.getAllAds=t.isContentPaused=t.isAdReadyForPlayback=t.isVideoAttached=void 0;const a=r(36921),n=r(7269),i=r(35162);function o(e){return void 0!==e.registry.get(n.SourceExportNames.SourceState).video.element}function s(e){return e.state.current===i.AdState.Preloading}function c(e){const t=e.registry.get(a.PlayPauseExportNames.TargetPlaybackState);return e.registry.get(a.PlayPauseExportNames.TargetPlaybackStateAtom).value===t.Paused}function d(e){const t=[];for(const r of e)t.push(...r.ads);return t}function l(e){return e.state.current===i.AdState.Playing||e.state.current===i.AdState.Skippable}t.isVideoAttached=o,t.isAdReadyForPlayback=s,t.isContentPaused=c,t.getAllAds=d,t.isPlaying=l},8565:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.AdCompleteHandler=void 0;const n=r(91270),i=r(75710);t.AdCompleteHandler=(0,n.createTask)("ad-complete-handler",((e,t)=>a(void 0,void 0,void 0,(function*(){var r;const{state:a,store:n}=t.effects,o=n.schedulerState.currentAd.value,s=null===(r=null==o?void 0:o.sourceReference.value)||void 0===r?void 0:r.state.video;void 0!==s&&a.dispatch(s.setElement,void 0),void 0!==o&&a.dispatch(n.schedulerState.currentAd.setValue,void 0),(0,i.scheduleAds)(e,t)}))))},86929:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ContentDetachedHandler=void 0;const a=r(91270),n=r(14809),i=r(7269),o=r(27027),s=(0,a.createTaskClosure)((e=>["video-element-observer",(t,r)=>{void 0!==t.element&&r.effects.state.dispatch(e.updateState,{type:o.SchedulerStateTransitionType.ContentAttached})}]));t.ContentDetachedHandler=(0,a.createTask)("content-detached-handler",((e,t)=>{const{subscribeAndRun:r}=t.registry.get(n.CoreExportNames.Utils).State,a=t.registry.get(i.SourceExportNames.SourceState);return r(t,a.video,s(e)),t.effects.loop(t.abortSignal)}))},51277:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.ObservePlayheadHandler=void 0;const n=r(91270),i=r(14809),o=r(7269),s=r(75710),c=r(27027),d=(0,n.createTaskClosure)((e=>["ad-scheduler",(t,r)=>a(void 0,void 0,void 0,(function*(){yield r.effects.abortable((e=>e())),e.current===c.SchedulerState.ObservePlayhead&&(0,s.scheduleAds)(e,r)}))])),l=(0,n.createTaskClosure)((e=>["ad-state-subscriber",(t,r)=>{r.effects.state.subscribe(r,t.state,d(e))}])),u=(0,n.createTaskClosure)((e=>["ad-break-subscriber",(t,r)=>{const{mapSubscribe:a}=r.registry.get(i.CoreExportNames.Utils).State;a(r,t.ads,l(e)),r.effects.state.subscribe(r,t.state,d(e))}]));t.ObservePlayheadHandler=(0,n.createTask)("observe-playhead-handler",((e,t)=>{const{advertisingState:r,currentAd:a,adBreaksToLoad:n}=t.effects.store.schedulerState,{adBreaks:s}=r,{subscribeAndRun:c,mapSubscribe:l}=t.registry.get(i.CoreExportNames.Utils).State,p=t.registry.get(o.SourceExportNames.SourceState),h=d(e);return t.effects.state.dispatch(n.clear),t.effects.state.dispatch(a.setValue,void 0),c(t,p.playback.playhead,h),l(t,s,u(e)),t.effects.loop(t.abortSignal)}))},15100:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PauseContentPlaybackHandler=void 0;const a=r(91270),n=r(36921);t.PauseContentPlaybackHandler=(0,a.createTask)("pause-content-playback-handler",((e,t)=>{const r=t.registry.get(n.PlayPauseExportNames.TargetPlaybackStateAtom),a=t.registry.get(n.PlayPauseExportNames.TargetPlaybackState);r.value!==a.Paused?(t.effects.state.dispatch(t.effects.store.schedulerState.wasContentPaused.setValue,!0),t.effects.state.dispatch(r.setValue,a.Paused),t.effects.state.dispatch(e.updateState,void 0)):t.effects.state.dispatch(e.updateState,void 0)}))},71222:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlayAdHandler=void 0;const a=r(91270),n=r(14809),i=r(35162),o=r(9938),s=r(27027),c=(0,a.createTaskClosure)((e=>["ad-state-observer",(t,r)=>{const{state:a}=r.effects;switch(t.current){case i.AdState.Error:a.dispatch(e.updateState,(0,s.AdErrorTransition)());break;case i.AdState.Skipped:case i.AdState.Completed:a.dispatch(e.updateState,(0,s.AdCompleteTransition)())}}]));t.PlayAdHandler=(0,a.createTask)("play-ad-handler",((e,t)=>{const{store:r,state:a,loop:s}=t.effects,{currentAd:d,wasAdPaused:l,video:u}=r.schedulerState,{subscribeAndRun:p}=t.registry.get(n.CoreExportNames.Utils).State;if(void 0===d.value)throw new Error("Current ad unexpectedly undefined");a.dispatch(l.setValue,!1),p(t,d.value.state,c(e));const h=d.value.sourceReference.value;if(void 0===h)throw new Error("Source reference unexpectedly undefined");const m=h.state;return a.dispatch(m.video.setElement,u.value),(0,o.trackAdPlayback)(t,d.value),a.dispatch(d.value.state.updateState,(0,i.PlayAdTransition)()),s(t.abortSignal)}))},39965:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RestoreContentHandler=void 0;const a=r(91270),n=r(7269),i=r(27027),o=(0,a.createTaskClosure)((e=>["load-start-subscriber",(t,r)=>{r.effects.state.dispatch(e.updateState,(0,i.ContentRestoredTransition)())}]));t.RestoreContentHandler=(0,a.createTask)("restore-content-handler",((e,t)=>{const{state:r,events:a}=t.effects,{video:i,currentAd:s,wasContentSuspended:c}=t.effects.store.schedulerState,d=t.registry.get(n.SourceExportNames.SourceState);if(void 0===i.value)throw new Error("Could not restore content - video element is undefined");if(void 0!==d.video.element)throw new Error("Could not restore content - another video element is already attached");const l=i.value;return a.subscribe(t,l,"loadstart",o(e)),r.dispatch(i.setValue,void 0),r.dispatch(s.setValue,void 0),r.dispatch(c.setValue,!1),r.dispatch(d.video.setElement,l),t.effects.loop(t.abortSignal)}))},15282:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ResumeContentPlaybackHandler=void 0;const a=r(91270),n=r(36921);t.ResumeContentPlaybackHandler=(0,a.createTask)("resume-content-playback-handler",((e,t)=>{const r=t.effects.store.schedulerState.wasAdPaused.value,a=t.effects.store.schedulerState.wasContentPaused.value,i=t.registry.get(n.PlayPauseExportNames.TargetPlaybackState),o=t.registry.get(n.PlayPauseExportNames.TargetPlaybackStateAtom),s=r||!a?i.Paused:i.Playing;t.effects.state.dispatch(o.setValue,s),t.effects.state.dispatch(t.effects.store.schedulerState.wasContentPaused.setValue,!1),t.effects.state.dispatch(e.updateState,void 0)}))},52962:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SuspendContentHandler=void 0;const a=r(91270),n=r(7269);t.SuspendContentHandler=(0,a.createTask)("suspend-content-handler",((e,t)=>{const r=t.registry.get(n.SourceExportNames.SourceState),a=t.effects.store.schedulerState,i=r.video,o=i.element;if(void 0===o)throw new Error("Cannot play back ads - content source is detached");if(void 0!==a.video.value)throw new Error("Cannot play back ads - video element is already assigned");const s=.1,c=o.duration,d=r.playback.playhead.position>c-s;if(t.effects.state.dispatch(i.setElement,void 0),t.effects.state.dispatch(a.video.setValue,o),t.effects.state.dispatch(a.wasContentSuspended.setValue,!0),d){const e=r.playback.playhead.position-s;t.effects.state.dispatch(r.playback.playhead.setPosition,e)}t.effects.state.dispatch(e.updateState,void 0)}))},79820:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WaitForAdHandler=void 0;const a=r(91270),n=r(14809),i=r(35162),o=r(27027),s=(0,a.createTaskClosure)((e=>["ad-state-subscriber",(t,r)=>{const{state:a}=r.effects;switch(t.current){case i.AdState.Error:a.dispatch(e.updateState,{type:o.SchedulerStateTransitionType.AdError});break;case i.AdState.Preloading:a.dispatch(e.updateState,{type:o.SchedulerStateTransitionType.AdReady})}}]));t.WaitForAdHandler=(0,a.createTask)("wait-for-ad-handler",((e,t)=>{const r=t.effects.store.schedulerState.currentAd;if(!r.value)throw new Error("Current ad is unexpectedly undefined");const{subscribeAndRun:a}=t.registry.get(n.CoreExportNames.Utils).State;return a(t,r.value.state,s(e)),t.effects.loop(t.abortSignal)}))},45544:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WaitForAdBreaksHandler=void 0;const a=r(91270),n=r(14809),i=r(36921),o=r(3607),s=r(27027);function c(e){return e.state.current===o.AdBreakState.Parsed||e.state.current===o.AdBreakState.Error}const d=(0,a.createTaskClosure)((e=>["target-playback-state-subscriber",(t,r)=>{if(e.current!==s.SchedulerState.WaitForAdBreaks)return;const a=r.registry.get(i.PlayPauseExportNames.TargetPlaybackState);r.effects.state.dispatch(t.setValue,a.Paused)}])),l=(0,a.createTaskClosure)((e=>["ad-break-status-subscriber",(t,r)=>{r.effects.store.schedulerState.adBreaksToLoad.every(c)&&(r.effects.state.dispatch(r.effects.store.schedulerState.adBreaksToLoad.clear),r.effects.state.dispatch(e.updateState,{type:s.SchedulerStateTransitionType.AdBreaksLoaded}))}])),u=(0,a.createTaskClosure)((e=>["ad-break-subscriber",(t,r)=>{const{subscribeAndRun:a}=r.registry.get(n.CoreExportNames.Utils).State;return a(r,t.state,l(e)),r.effects.loop(r.abortSignal)}]));t.WaitForAdBreaksHandler=(0,a.createTask)("wait-for-ad-breaks-handler",((e,t)=>{const r=t.registry.get(i.PlayPauseExportNames.TargetPlaybackStateAtom),{mapSubscribe:a,subscribeAndRun:o}=t.registry.get(n.CoreExportNames.Utils).State;return o(t,r,d(e)),a(t,t.effects.store.schedulerState.adBreaksToLoad,u(e)),t.effects.loop(t.abortSignal)}))},39808:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WaitForPlayHandler=void 0;const a=r(91270),n=r(14809),i=r(36921),o=r(7269),s=r(27027),c=(0,a.createTaskClosure)((e=>["video-element-subscriber",({element:t},r)=>{void 0===t&&e.current===s.SchedulerState.WaitForPlay&&r.effects.state.dispatch(e.updateState,{type:s.SchedulerStateTransitionType.ContentDetached})}])),d=(0,a.createTaskClosure)((e=>["target-playback-state-subscriber",({value:t},r)=>{t!==r.registry.get(i.PlayPauseExportNames.TargetPlaybackState).Paused&&r.effects.state.dispatch(e.updateState,{type:s.SchedulerStateTransitionType.ContentPlay})}]));t.WaitForPlayHandler=(0,a.createTask)("wait-for-play-handler",((e,t)=>{const{subscribeAndRun:r}=t.registry.get(n.CoreExportNames.Utils).State,a=t.registry.get(o.SourceExportNames.SourceState),s=t.registry.get(i.PlayPauseExportNames.TargetPlaybackStateAtom);return r(t,a.video,c(e)),r(t,s,d(e)),t.effects.loop(t.abortSignal)}))},58378:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createSchedulerStateAtom=void 0;const a=r(14809);function n(e,t){const{createPrimitiveAtom:r,createArrayAtom:n}=e.registry.get(a.CoreExportNames.CoreStateAtoms),i=r(e,!1),o=r(e,!1),s=r(e,!1),c=r(e,void 0),d=r(e,void 0),l=n(e);return e.effects.state.create({advertisingState:t,wasAdPaused:i,wasContentSuspended:s,currentAd:c,video:d,adBreaksToLoad:l,wasContentPaused:o},{})}t.createSchedulerStateAtom=n},5647:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.adCompleteTransitionHandler=void 0;const a=r(27027),n=r(75342),i=r(60016);function o(e){const{currentAd:t,wasContentSuspended:r,adBreaksToLoad:a}=e.effects.store.schedulerState;return void 0===t.value&&0===a.length&&r.value}function s(e){const{currentAd:t,wasContentSuspended:r,adBreaksToLoad:a}=e.effects.store.schedulerState;return void 0===t.value&&0===a.length&&!r.value}function c(e){const{currentAd:t}=e.effects.store.schedulerState;return void 0!==t.value&&!(0,n.isAdReadyForPlayback)(t.value)}function d(e){const{currentAd:t,wasContentSuspended:r}=e.effects.store.schedulerState;return void 0!==t.value&&(0,n.isAdReadyForPlayback)(t.value)&&!r.value}function l(e){const{currentAd:t,wasContentSuspended:r}=e.effects.store.schedulerState;return void 0!==t.value&&(0,n.isAdReadyForPlayback)(t.value)&&r.value}function u(e){const{currentAd:t,adBreaksToLoad:r}=e.effects.store.schedulerState;return void 0===t.value&&r.length>0}t.adCompleteTransitionHandler=(0,i.createTransitionHandler)(a.SchedulerState.AdComplete,[o,a.SchedulerState.RestoreContent],[s,a.SchedulerState.ResumeContentPlayback],[c,a.SchedulerState.WaitForAd],[d,a.SchedulerState.SuspendContent],[l,a.SchedulerState.PlayAd],[u,a.SchedulerState.WaitForAdBreaks])},88028:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.contentDetachedTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentAttached}t.contentDetachedTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.ContentDetached,[i,a.SchedulerState.ObservePlayhead])},4915:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.initialTransitionHandler=void 0;const a=r(27027),n=r(75342),i=r(60016);function o(e){return(0,n.isVideoAttached)(e)}function s(e){return!(0,n.isVideoAttached)(e)}t.initialTransitionHandler=(0,i.createTransitionHandler)(a.SchedulerState.Initial,[o,a.SchedulerState.ObservePlayhead],[s,a.SchedulerState.ContentDetached])},22632:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.observePlayheadTransitionHandler=void 0;const a=r(27027),n=r(75342),i=r(60016);function o(e,t){return!(0,n.isVideoAttached)(e)||(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentDetached}function s(e){return(0,n.isContentPaused)(e)}function c(e){const{currentAd:t,adBreaksToLoad:r}=e.effects.store.schedulerState;return(void 0!==t.value||r.length>0)&&!(0,n.isContentPaused)(e)}t.observePlayheadTransitionHandler=(0,i.createTransitionHandler)(a.SchedulerState.ObservePlayhead,[o,a.SchedulerState.ContentDetached],[s,a.SchedulerState.WaitForPlay],[c,a.SchedulerState.PauseContentPlayback])},33714:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.pauseContentPlaybackTransitionHandler=void 0;const a=r(27027),n=r(75342),i=r(60016);function o(e){return e.effects.store.schedulerState.adBreaksToLoad.length>0}function s(e){const t=e.effects.store.schedulerState.currentAd.value;if(void 0===t)return!1;const r=(0,n.isAdReadyForPlayback)(t),a=e.effects.store.schedulerState.wasContentSuspended.value;return r&&a}function c(e){const t=e.effects.store.schedulerState.currentAd.value;if(void 0===t)return!1;const r=(0,n.isAdReadyForPlayback)(t),a=e.effects.store.schedulerState.wasContentSuspended.value;return r&&!a}function d(e){const t=e.effects.store.schedulerState.currentAd.value;if(void 0===t)return!1;return!(0,n.isAdReadyForPlayback)(t)}t.pauseContentPlaybackTransitionHandler=(0,i.createTransitionHandler)(a.SchedulerState.PauseContentPlayback,[o,a.SchedulerState.WaitForAdBreaks],[s,a.SchedulerState.PlayAd],[c,a.SchedulerState.SuspendContent],[d,a.SchedulerState.WaitForAd])},11874:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.playAdTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdComplete||(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdError}t.playAdTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.PlayAd,[i,a.SchedulerState.AdComplete])},26580:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.restoreContentTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentRestored}t.restoreContentTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.RestoreContent,[i,a.SchedulerState.ResumeContentPlayback])},20265:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.resumeContentPlaybackTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(){return!0}t.resumeContentPlaybackTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.ResumeContentPlayback,[i,a.SchedulerState.ObservePlayhead])},31190:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.suspendContentTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(){return!0}t.suspendContentTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.SuspendContent,[i,a.SchedulerState.PlayAd])},60016:(e,t)=>{function r(e,...t){return(r,a)=>{for(const[e,n]of t)if(e(r,a))return n;return e}}Object.defineProperty(t,"__esModule",{value:!0}),t.createTransitionHandler=void 0,t.createTransitionHandler=r},94253:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.waitForAdTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentPaused}function o(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentSeek}function s(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentDetached}function c(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdComplete}function d(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdReady&&!e.effects.store.schedulerState.wasContentSuspended.value}function l(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdReady&&e.effects.store.schedulerState.wasContentSuspended.value}t.waitForAdTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.WaitForAd,[i,a.SchedulerState.WaitForPlay],[o,a.SchedulerState.ObservePlayhead],[s,a.SchedulerState.ContentDetached],[c,a.SchedulerState.AdComplete],[d,a.SchedulerState.SuspendContent],[l,a.SchedulerState.PlayAd])},26760:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.waitForAdBreaksTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){return!e.effects.store.schedulerState.wasContentSuspended.value&&(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentSeek}function o(e,t){return e.effects.store.schedulerState.wasContentSuspended.value&&(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentSeek}function s(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.AdBreaksLoaded}t.waitForAdBreaksTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.WaitForAdBreaks,[i,a.SchedulerState.ResumeContentPlayback],[o,a.SchedulerState.RestoreContent],[s,a.SchedulerState.AdComplete])},1004:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.waitForPlayTransitionHandler=void 0;const a=r(27027),n=r(60016);function i(e,t){const{currentAd:r,adBreaksToLoad:n}=e.effects.store.schedulerState;return void 0===r.value&&0===n.length&&((null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentPlay||(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentSeek)}function o(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentPlay}function s(e,t){return(null==t?void 0:t.type)===a.SchedulerStateTransitionType.ContentDetached}t.waitForPlayTransitionHandler=(0,n.createTransitionHandler)(a.SchedulerState.WaitForPlay,[i,a.SchedulerState.ObservePlayhead],[o,a.SchedulerState.PauseContentPlayback],[s,a.SchedulerState.ContentDetached])},48729:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createAdAtom=void 0;const a=r(91270),n=r(14809),i=r(54602),o=r(55564),s=r(35162);function c(e){return"number"==typeof e&&Number.isFinite(e)&&e>0}function d(e,t){const{createPrimitiveAtom:r}=e.registry.get(n.CoreExportNames.CoreStateAtoms);return r(e,c(t.creative.duration)?t.creative.duration:i.UnknownAdDuration)}const l=(0,a.createTaskClosure)((e=>["skip-subscriber",(t,r)=>{r.effects.state.dispatch(e.updateState,(0,s.SkipAdTransition)())}]));function u(e,t,r){const{creative:a,tracker:i}=r,{createPrimitiveAtom:s}=e.registry.get(n.CoreExportNames.CoreStateAtoms),c=s(e,void 0),u=(0,o.createAdStateMachineAtom)(e,t,r,c),p=d(e,r);return e.effects.state.subscribe(e,t.skip,l(u)),e.effects.state.create({baseAd:t,duration:p,state:u,creative:a,tracker:i,sourceReference:c},{})}t.createAdAtom=u},55564:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.createAdStateMachineAtom=void 0;const a=r(14809),n=r(73153),i=r(46392),o=r(83376),s=r(32353),c=r(4639),d=r(97066),l=r(37905),u=r(31343),p=r(45989),h=r(6978),m=r(19810),f=r(61555),v=r(5459),g=r(55062),y=r(35162);function A(e,t,r,A){const{StoreEffectFactory:T}=e.registry.get(a.CoreExportNames.CoreEffects),{createStateMachineAtom:S}=e.registry.get(a.CoreExportNames.CoreStateAtoms).StateMachine;return S(e.using(T("baseAd",t)).using(T("sourceReference",A)).using(T("vastAd",r)),y.AdState.Scheduled,{[y.AdState.Scheduled]:f.scheduledTransitionHandler,[y.AdState.Preloading]:m.preloadingSourceTransitionHandler,[y.AdState.Playing]:h.playingTransitionHandler,[y.AdState.Skippable]:v.skippableTransitionHandler,[y.AdState.Skipped]:g.skippedTransitionHandler,[y.AdState.Completed]:u.completedTransitionHandler,[y.AdState.Error]:p.errorTransitionHandler},{[y.AdState.Scheduled]:c.ScheduledHandler,[y.AdState.Preloading]:s.PreloadingHandler,[y.AdState.Playing]:o.PlayingHandler,[y.AdState.Skippable]:d.SkippableHandler,[y.AdState.Skipped]:l.SkippedHandler,[y.AdState.Completed]:n.CompletedHandler,[y.AdState.Error]:i.ErrorHandler})}t.createAdStateMachineAtom=A},35162:(e,t)=>{var r;function a(){return{type:r.Reset}}function n(){return{type:r.Preload}}function i(){return{type:r.Play}}function o(){return{type:r.Skippable}}function s(){return{type:r.Completed}}function c(){return{type:r.Skip}}function d(){return{type:r.Abort}}function l(e){return{type:r.Error,error:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.AdErrorTransition=t.AbortAdTransition=t.SkipAdTransition=t.AdCompletedTransition=t.AdSkippableTransition=t.PlayAdTransition=t.PreloadAdTransition=t.ResetAdTransition=t.AdTransitionType=t.AdState=void 0,function(e){e.Scheduled="scheduled",e.Preloading="preloading",e.Playing="playing",e.Skippable="skippable",e.Skipped="skipped",e.Completed="completed",e.Error="error"}(t.AdState||(t.AdState={})),function(e){e.Reset="reset",e.Preload="preload",e.Play="play",e.Skippable="skippable",e.Completed="completed",e.Skip="skip",e.Abort="abort",e.Error="error"}(r=t.AdTransitionType||(t.AdTransitionType={})),t.ResetAdTransition=a,t.PreloadAdTransition=n,t.PlayAdTransition=i,t.AdSkippableTransition=o,t.AdCompletedTransition=s,t.SkipAdTransition=c,t.AbortAdTransition=d,t.AdErrorTransition=l},73153:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CompletedHandler=void 0;const a=r(91270),n=r(82405);t.CompletedHandler=(0,a.createTask)("completed-handler",n.postAdCleanup)},46392:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ErrorHandler=void 0;const a=r(91270),n=r(82405);t.ErrorHandler=(0,a.createTask)("error-handler",((e,t)=>(t.effects.store.vastAd.tracker.error(),(0,n.postAdCleanup)(e,t))))},83376:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlayingHandler=void 0;const a=r(91270),n=r(35162),i=r(43297),o=(0,a.createTaskClosure)((e=>["playhead-subscriber",(t,r)=>{var a;const{state:i,store:o}=r.effects,s=null!==(a=o.baseAd.skipDelay.value)&&void 0!==a?a:1/0;t.position<s||i.dispatch(e.updateState,(0,n.AdSkippableTransition)())}])),s=(0,a.createTaskClosure)((e=>["video-element-subscriber",(t,r)=>{if(void 0!==t.element)return;const a=new Error("Video element was detached mid-playback");r.effects.state.dispatch(e.updateState,(0,n.AdErrorTransition)(a))}])),c=(0,a.createTaskClosure)((e=>["ended-subscriber",(t,r)=>{r.effects.state.dispatch(e.updateState,(0,n.AdCompletedTransition)())}]));t.PlayingHandler=(0,a.createTask)("playing-handler",((e,t)=>{const{state:r,store:a,events:n,loop:d}=t.effects,l=a.sourceReference.value;if(void 0===l)throw new Error("Source reference unexpectedly undefined");const u=l.state;if(void 0===u.video.element)throw new Error("Video element unexpectedly undefined");return r.subscribe(t,u.playback.playhead,(0,i.QuartileSubscriber)(a.baseAd,l.state)),r.subscribe(t,u.playback.playhead,o(e)),r.subscribe(t,u.video,s(e)),n.subscribe(t,u.video.element,"ended",c(e)),d(t.abortSignal)}))},82405:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.postAdCleanup=void 0;const a=r(7269),n=r(21010);function i(e,t){var r;const{store:i,state:o}=t.effects,{sourceReference:s}=i;if(void 0===s.value)return;const c=t.registry.get(a.SourceExportNames.SourceReferences),d=t.registry.get(n.SourcesApiExportNames.SourceRemovedError);null===(r=s.value.abortable)||void 0===r||r.abort(new d),o.dispatch(c.remove,s.value)}t.postAdCleanup=i},32353:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PreloadingHandler=t.mediaFileToResource=void 0;const a=r(91270),n=r(25320),i=r(14809),o=r(7269),s=r(76954),c=r(35162);function d(e){return{url:e.fileURL,type:l(e),metadata:{bitrate:e.bitrate,width:e.width,height:e.height,mimeType:e.mimeType,codec:e.codec}}}function l(e){const{deliveryType:t,mimeType:r,fileURL:a}=e;if(r){const e=r.toLowerCase();if(e.includes("mpegurl")||e.includes("x-mpegurl"))return"hls";if(e.includes("dash")||"application/dash+xml"===e)return"dash"}if("streaming"===t){const e=a.toLowerCase();return e.includes(".m3u8")?"hls":e.includes(".mpd")?"dash":"hls"}return"progressive"}t.mediaFileToResource=d;const u=(0,a.createTaskClosure)((e=>["inject-ad-state",(t,r)=>(r.registry.set(s.AdSourceExportNames.AssociatedAd,e),r.effects.loop(r.abortSignal))]));t.PreloadingHandler=(0,a.createTask)("preloading-handler",((e,t)=>{const{store:r,state:a}=t.effects,{vastAd:s,baseAd:l,sourceReference:p}=r,{ContentType:h}=t.registry.get(i.CoreExportNames.Constants),m=t.registry.get(o.SourceExportNames.SourceState),f=t.registry.get(o.SourceExportNames.CreateSourceReference),v=t.registry.get(o.SourceExportNames.SourceReferences),g=t=>(a.dispatch(e.updateState,(0,c.AdErrorTransition)(t)),!0),y=f({sourceConfig:{resources:s.creative.mediaFiles.map(d),contentType:h.Advertisement},sourceOptions:{loadControl:n.LoadControl.Data,playback:{autoplay:!0,muted:m.playbackConfig.muted,preventSeeking:!0}},sourceErrorHandler:g,sourceId:`ad-${l.id}`,task:u(l)});a.dispatch(v.add,y),a.dispatch(p.setValue,y),a.dispatch(e.updateState,void 0)}))},43297:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.QuartileSubscriber=void 0;const a=r(91270),n=r(76954);t.QuartileSubscriber=(0,a.createTaskClosure)(((e,t)=>["quartile-subscriber",(r,a)=>{const{state:i}=a.effects,o=a.registry.get(n.AdvertisingBaseExportNames.AdQuartile),s=t.playback.duration.value,c=r.position/s;c>=.25&&void 0===e.quartile.value?i.dispatch(e.quartile.setValue,o.FirstQuartile):c>=.5&&e.quartile.value===o.FirstQuartile?i.dispatch(e.quartile.setValue,o.Midpoint):c>=.75&&e.quartile.value===o.Midpoint&&i.dispatch(e.quartile.setValue,o.ThirdQuartile)}]))},4639:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ScheduledHandler=void 0;const a=r(91270);t.ScheduledHandler=(0,a.createTask)("scheduled-handler",((e,t)=>{const{store:r,state:a}=t.effects,{sourceReference:n}=r;a.dispatch(n.setValue,void 0),a.dispatch(e.updateState,void 0)}))},97066:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SkippableHandler=void 0;const a=r(91270),n=r(35162),i=r(43297),o=(0,a.createTaskClosure)((e=>["video-element-subscriber",(t,r)=>{if(void 0!==t.element)return;const a=new Error("Video element was detached mid-playback");r.effects.state.dispatch(e.updateState,(0,n.AdErrorTransition)(a))}])),s=(0,a.createTaskClosure)((e=>["ended-subscriber",(t,r)=>{r.effects.state.dispatch(e.updateState,(0,n.AdCompletedTransition)())}]));t.SkippableHandler=(0,a.createTask)("skippable-handler",((e,t)=>{const{state:r,store:a,events:n,loop:c}=t.effects,d=a.sourceReference.value;if(void 0===d)throw new Error("Source reference unexpectedly undefined");const l=d.state;if(void 0===l.video.element)throw new Error("Video element unexpectedly undefined");return r.subscribe(t,l.playback.playhead,(0,i.QuartileSubscriber)(a.baseAd,d.state)),r.subscribe(t,l.video,o(e)),n.subscribe(t,l.video.element,"ended",s(e)),c(t.abortSignal)}))},37905:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SkippedHandler=void 0;const a=r(91270),n=r(82405);t.SkippedHandler=(0,a.createTask)("skipped-handler",((e,t)=>(t.effects.store.vastAd.tracker.skip(),(0,n.postAdCleanup)(e,t))))},31343:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.completedTransitionHandler=void 0;const a=r(35162),n=r(40872),i=r(95);t.completedTransitionHandler=(0,i.createTransitionHandler)(a.AdState.Completed,n.ScheduledTransition)},4905:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CompletedTransition=void 0;const a=r(35162);function n(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Completed}t.CompletedTransition=[n,a.AdState.Completed]},45989:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.errorTransitionHandler=void 0;const a=r(35162),n=r(40872),i=r(95);t.errorTransitionHandler=(0,i.createTransitionHandler)(a.AdState.Error,n.ScheduledTransition)},29045:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ErrorTransition=void 0;const a=r(35162);function n(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Error}t.ErrorTransition=[n,a.AdState.Error]},6978:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.playingTransitionHandler=void 0;const a=r(35162),n=r(4905),i=r(29045),o=r(40872),s=r(95);function c(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Skippable}t.playingTransitionHandler=(0,s.createTransitionHandler)(a.AdState.Playing,i.ErrorTransition,o.ScheduledTransition,n.CompletedTransition,[c,a.AdState.Skippable])},19810:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.preloadingSourceTransitionHandler=void 0;const a=r(35162),n=r(29045),i=r(40872),o=r(95);function s(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Play}t.preloadingSourceTransitionHandler=(0,o.createTransitionHandler)(a.AdState.Preloading,n.ErrorTransition,i.ScheduledTransition,[s,a.AdState.Playing])},61555:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.scheduledTransitionHandler=void 0;const a=r(35162),n=r(29045),i=r(95);function o(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Preload}t.scheduledTransitionHandler=(0,i.createTransitionHandler)(a.AdState.Scheduled,n.ErrorTransition,[o,a.AdState.Preloading])},40872:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ScheduledTransition=void 0;const a=r(35162);function n(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Reset}t.ScheduledTransition=[n,a.AdState.Scheduled]},5459:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.skippableTransitionHandler=void 0;const a=r(35162),n=r(4905),i=r(29045),o=r(40872),s=r(95);function c(e,t){return(null==t?void 0:t.type)===a.AdTransitionType.Skip}t.skippableTransitionHandler=(0,s.createTransitionHandler)(a.AdState.Skippable,i.ErrorTransition,o.ScheduledTransition,n.CompletedTransition,[c,a.AdState.Skipped])},55062:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.skippedTransitionHandler=void 0;const a=r(35162),n=r(40872),i=r(95);t.skippedTransitionHandler=(0,i.createTransitionHandler)(a.AdState.Skipped,n.ScheduledTransition)},95:(e,t)=>{function r(e,...t){return(r,a)=>{for(const[e,n]of t)if(e(r,a))return n;return e}}Object.defineProperty(t,"__esModule",{value:!0}),t.createTransitionHandler=void 0,t.createTransitionHandler=r},9938:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.trackAdPlayback=void 0;const a=r(91270),n=(0,a.createTaskClosure)(((e,t)=>["playing-subscriber",(r,a)=>{e.tracker.trackImpression(),t.paused&&e.tracker.setPaused(t.paused),t.muted&&e.tracker.setMuted(t.muted)}])),i=(0,a.createTaskClosure)(((e,t)=>["playing-subscriber",(r,a)=>{e.tracker.setDuration(t.duration),e.tracker.setProgress(t.currentTime)}])),o=(0,a.createTaskClosure)((e=>["ended-subscriber",(t,r)=>{e.tracker.complete()}])),s=(0,a.createTaskClosure)(((e,t)=>["playing-subscriber",(r,a)=>{e.tracker.setMuted(t.muted)}])),c=(0,a.createTaskClosure)(((e,t)=>["playing-subscriber",(r,a)=>{e.tracker.setPaused(t.paused)}])),d=(0,a.createTaskClosure)((e=>["click-subscriber",(t,r)=>{const a=e.tracker.click();r.effects.state.dispatch(e.baseAd.clicked.trigger,a)}]));function l(e,t){const{events:r}=e.effects,a=t.sourceReference.value,l=null==a?void 0:a.state.video.element;if(void 0===a)throw new Error("Source reference is unexpectedly undefined");if(void 0===l)throw new Error("Video element is unexpectedly undefined");t.tracker.load(),r.subscribe(e,l,"click",d(t)),r.subscribe(e,l,"playing",n(t,l)),r.subscribe(e,l,"ended",o(t)),r.subscribe(e,l,"timeupdate",i(t,l)),r.subscribe(e,l,"play",c(t,l)),r.subscribe(e,l,"pause",c(t,l)),r.subscribe(e,l,"volumechange",s(t,l))}t.trackAdPlayback=l},99402:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.FetchAdsTask=void 0;const n=r(91270),i=r(76954),o=r(91024),s=r(92983),c=r(20761);function d(e,t){return e.fork(o.FetchVastManifest,t.url,(()=>!0))}function l(e,t){return a(this,void 0,void 0,(function*(){const r=[],a=yield e.fork(s.FetchVmapManifest,t.url,(()=>!0));for(const t of a)t.adTagUri?r.push(...yield e.fork(o.FetchVastManifest,t.adTagUri,(()=>!0))):t.vastAdData&&r.push(...yield e.fork(c.ParseVastManifest,t.vastAdData,(()=>!0)));return r}))}t.FetchAdsTask=(0,n.createTask)("ad-loader-task",((e,t)=>a(void 0,void 0,void 0,(function*(){const r=t.registry.get(i.AdvertisingBaseExportNames.AdType);return e.type===r.VMAP?(t.effects.logger.warn("VMAP support is still experimental"),l(t,e)):d(t,e)}))))},91024:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.FetchVastManifest=void 0;const n=r(91270),i=r(73408),o=r(20761);t.FetchVastManifest=(0,n.createTask)("fetch-vast-manifest",((e,t)=>a(void 0,void 0,void 0,(function*(){const r=t.registry.get(i.NetworkExportNames.NetworkTask),a={url:e,method:i.HttpRequestMethod.GET,responseType:i.HttpResponseType.TEXT},n=(yield t.fork(r,[a,void 0])).body;return t.fork(o.ParseVastManifest,n)}))))},92983:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.FetchVmapManifest=void 0;const n=r(91270),i=r(73408),o=r(333);t.FetchVmapManifest=(0,n.createTask)("fetch-vmap-task",((e,t)=>a(void 0,void 0,void 0,(function*(){const r=t.registry.get(i.NetworkExportNames.NetworkTask),a={url:e,method:i.HttpRequestMethod.GET,responseType:i.HttpResponseType.TEXT},n=yield t.fork(r,[a,void 0]);return(0,o.parseVmapXml)(n.body)}))))},20761:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.ParseVastManifest=void 0;const n=r(91270),i=r(54869);t.ParseVastManifest=(0,n.createTask)("parse-vast-task",((e,t)=>a(void 0,void 0,void 0,(function*(){return(0,i.parseVastXml)(e)}))))},35458:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.VmapTrackingEventType=void 0,function(e){e.BreakStart="break-start",e.BreakEnd="break-end",e.Error="error",e.Unknown="unknown"}(t.VmapTrackingEventType||(t.VmapTrackingEventType={}))},28297:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.pingTrackingUrls=t.createVastAdTracker=void 0;const a=r(83966);function n(e,t){const r=new a.VASTTracker(null,e,t);return t.duration&&r.setDuration(t.duration),{load:()=>r.load(),trackImpression:()=>r.trackImpression(),setProgress:e=>r.setProgress(e),setDuration:e=>r.setDuration(e),complete:()=>r.complete(),skip:()=>r.skip(),click:()=>{var e,t;return r.click(),null!==(t=null===(e=r.clickThroughURLTemplate)||void 0===e?void 0:e.url)&&void 0!==t?t:void 0},setPaused:e=>r.setPaused(e),setMuted:e=>r.setMuted(e),error:()=>r.error()}}function i(e,t){if(e)for(const r of e)if(r.type===t)try{(new Image).src=r.url}catch(e){}}t.createVastAdTracker=n,t.pingTrackingUrls=i},54869:function(e,t,r){var a=this&&this.__awaiter||function(e,t,r,a){function n(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function o(e){try{c(a.next(e))}catch(e){i(e)}}function s(e){try{c(a.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):n(e.value).then(o,s)}c((a=a.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.parseVastXml=void 0;const n=r(83966),i=r(28297);function o(e){return a(this,void 0,void 0,(function*(){const t=new n.VASTClient,r=(new DOMParser).parseFromString(e,"text/xml");return c(yield t.parseVAST(r))}))}function s(e){return"linear"===e.type}function c(e){var t;const r=[];for(const a of e.ads)for(const e of a.creatives){if(!s(e)||0===e.mediaFiles.length)continue;const n=(0,i.createVastAdTracker)(a,e);r.push({id:null!==(t=a.id)&&void 0!==t?t:`ad-${r.length}`,creative:e,tracker:n})}return r}t.parseVastXml=o},333:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.parseVmapXml=void 0;const a=r(35458);function n(e){var t;return null!==(t=e.querySelector(String.raw`vmap\:AdSource, AdSource`))&&void 0!==t?t:void 0}function i(e){var t,r;const a=void 0===e?void 0:e.querySelector(String.raw`vmap\:AdTagURI, AdTagURI`);return null!==(r=null===(t=null==a?void 0:a.textContent)||void 0===t?void 0:t.trim())&&void 0!==r?r:void 0}function o(e){var t;const r=null==e?void 0:e.querySelector(String.raw`vmap\:VASTAdData, VASTAdData`),a=new XMLSerializer,n=null!==(t=null==r?void 0:r.querySelector("VAST"))&&void 0!==t?t:void 0;return void 0===n?void 0:a.serializeToString(n)}function s(e){var t,r,a;const n=[],i=null!==(t=e.querySelector(String.raw`vmap\:TrackingEvents, TrackingEvents`))&&void 0!==t?t:void 0,o=null!==(r=null==i?void 0:i.querySelectorAll(String.raw`vmap\:Tracking, Tracking`))&&void 0!==r?r:[];for(const e of o){const t=e.getAttribute("event"),r=null===(a=e.textContent)||void 0===a?void 0:a.trim();if(t&&r){const e=c(t);n.push({type:e,url:r})}}return n}function c(e){switch(e.toLowerCase()){case"breakstart":return a.VmapTrackingEventType.BreakStart;case"breakend":return a.VmapTrackingEventType.BreakEnd;case"error":return a.VmapTrackingEventType.Error;default:return a.VmapTrackingEventType.Unknown}}function d(e){var t,r;const a=[];for(const c of e){const e=null!==(t=c.getAttribute("timeOffset"))&&void 0!==t?t:"start",d=null!==(r=c.getAttribute("breakId"))&&void 0!==r?r:"",l=n(c),u=i(l),p=o(l),h=s(c);void 0===u&&void 0===p||a.push({id:d,timeOffset:e,adTagUri:u,vastAdData:p,trackingEvents:h})}return a}function l(e){const t=(new DOMParser).parseFromString(e,"text/xml"),r=t.querySelector("parsererror");if(r)throw new Error(`VMAP parse error: ${r.textContent}`);return d(t.querySelectorAll(String.raw`vmap\:AdBreak, AdBreak`))}t.parseVmapXml=l},51983:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.subscribeToScheduledAdBreaks=void 0;const a=r(91270),n=r(14809),i=r(76954),o=r(97488),s=r(3607),c=r(35162);function d(e){return e.state.current===c.AdState.Playing||e.state.current===c.AdState.Skippable}function l(e){return e.state.current===c.AdState.Error||e.state.current===c.AdState.Completed||e.state.current===c.AdState.Skipped}const u=(0,a.createTaskClosure)((e=>["ad-state-subscriber",(t,r)=>{const{state:a}=r.effects,n=r.registry.get(i.AdvertisingBaseExportNames.BaseAdBreakState),o=e.ads.some(d),c=e.ads.every(l);if(o)a.dispatch(e.baseAdBreak.state.setValue,n.Playing);else if(c)a.dispatch(e.baseAdBreak.state.setValue,n.Completed);else switch(e.state.current){case s.AdBreakState.Scheduled:a.dispatch(e.baseAdBreak.state.setValue,n.Scheduled);break;case s.AdBreakState.Parsed:a.dispatch(e.baseAdBreak.state.setValue,n.Loaded);break;case s.AdBreakState.Error:a.dispatch(e.baseAdBreak.state.setValue,n.Error)}}])),p=(0,a.createTaskClosure)((e=>["ad-subscriber",(t,r)=>{const{subscribeAndRun:a}=r.registry.get(n.CoreExportNames.Utils).State;a(r,t.state,u(e))}])),h=(0,a.createTaskClosure)((e=>["ad-break-state-subscriber",(t,r)=>{const{mapSubscribe:a}=r.registry.get(n.CoreExportNames.Utils).State;a(r,e.ads,p(e))}])),m=(0,a.createTaskClosure)(((e,t)=>["forward-ad-break",(r,a)=>{const i=(0,o.createAdBreakAtom)(a,r),s=()=>e.effects.state.dispatch(t.adBreaks.remove,i),c=()=>{},{subscribeAndRun:d}=a.registry.get(n.CoreExportNames.Utils).State;return d(a,i.state,h(i)),a.effects.state.dispatch(t.adBreaks.add,i),a.effects.abortable(c).finally(s).catch(c)}]));function f(e,t,r){const{mapSubscribe:a}=e.registry.get(n.CoreExportNames.Utils).State;return a(e,t,m(e,r))}t.subscribeToScheduledAdBreaks=f},25320:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.LoadControl=t.PlaybackTechnology=t.ResourceType=t.ContentType=t.Version=t.MediaTypeValues=t.Codec=t.SubtitleFormatType=t.MediaType=void 0,function(e){e.Audio="audio",e.Video="video",e.Muxed="muxed",e.Subtitle="subtitle",e.Thumbnail="thumbnail",e.Unknown="unknown"}(r=t.MediaType||(t.MediaType={})),function(e){e.WebVTT="webvtt",e.Unknown="unknown"}(t.SubtitleFormatType||(t.SubtitleFormatType={})),function(e){e.Mp4a="mp4a",e.AVC="avc1",e.HEVC="hvc1",e.ADTS="adts",e.Unknown="unknown"}(t.Codec||(t.Codec={})),t.MediaTypeValues=Object.values(r),t.Version="10.2.0-beta.13",function(e){e.Content="content",e.Advertisement="advertisement"}(t.ContentType||(t.ContentType={})),function(e){e.Hls="hls",e.Dash="dash",e.Progressive="progressive"}(t.ResourceType||(t.ResourceType={})),function(e){e.Mse="mse",e.WebRtc="webrtc",e.WebCodecs="webcodecs",e.Native="native"}(t.PlaybackTechnology||(t.PlaybackTechnology={})),function(e){e[e.Nothing=0]="Nothing",e[e.Metadata=1]="Metadata",e[e.Data=2]="Data"}(t.LoadControl||(t.LoadControl={}))},14809:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreExportNames=void 0,function(e){e.Utils="utils",e.Constants="constants",e.CoreEffects="core-effects",e.CoreStateAtoms="core-state-atoms"}(t.CoreExportNames||(t.CoreExportNames={}))},73408:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NetworkExportNames=t.HttpRequestMethod=t.HttpResponseType=t.HttpRequestType=void 0,function(e){e.MANIFEST_HLS_MULTIVARIANT="manifest/hls/multivariant",e.MANIFEST_HLS_VARIANT="manifest/hls/variant",e.MEDIA_AUDIO="media/audio",e.MEDIA_VIDEO="media/video",e.MEDIA_SUBTITLES="media/subtitles",e.MEDIA_THUMBNAILS="media/thumbnails",e.MEDIA_SEGMENTINDEX="media/segmentindex",e.KEY_HLS_AES="key/hls/aes",e.TIME_SYNC="time/sync"}(t.HttpRequestType||(t.HttpRequestType={})),function(e){e.ARRAYBUFFER="arraybuffer",e.BLOB="blob",e.DOCUMENT="document",e.JSON="json",e.TEXT="text"}(t.HttpResponseType||(t.HttpResponseType={})),function(e){e.GET="GET",e.POST="POST",e.HEAD="HEAD"}(t.HttpRequestMethod||(t.HttpRequestMethod={})),function(e){e.NetworkAtom="network-atom",e.NetworkTask="network-task",e.FetchTask="fetch-task"}(t.NetworkExportNames||(t.NetworkExportNames={}))},36921:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PlayPauseExportNames=void 0,function(e){e.TargetPlaybackStateAtom="target-playback-state-atom",e.TargetPlaybackState="target-playback-state"}(t.PlayPauseExportNames||(t.PlayPauseExportNames={}))},78443:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.MediaElementReadyState=t.VideoElementStateExportNames=void 0,function(e){e.VideoElementState="video-element-state",e.MediaElementReadyState="media-element-ready-state",e.SeekRestriction="seek-restriction"}(t.VideoElementStateExportNames||(t.VideoElementStateExportNames={})),function(e){e[e.HaveNothing=HTMLMediaElement.HAVE_NOTHING]="HaveNothing",e[e.HaveMetadata=HTMLMediaElement.HAVE_METADATA]="HaveMetadata",e[e.HaveCurrentData=HTMLMediaElement.HAVE_CURRENT_DATA]="HaveCurrentData",e[e.HaveFutureData=HTMLMediaElement.HAVE_FUTURE_DATA]="HaveFutureData",e[e.HaveEnoughData=HTMLMediaElement.HAVE_ENOUGH_DATA]="HaveEnoughData"}(t.MediaElementReadyState||(t.MediaElementReadyState={}))},7269:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourceExportNames=void 0,function(e){e.CreateSourceStateAtom="create-source-state-atom",e.CreateSourceReference="create-source-reference",e.SourceReferences="source-references",e.SourceState="source-state-atom"}(t.SourceExportNames||(t.SourceExportNames={}))},21010:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SourcesApiExportNames=t.SourcesApiEvent=void 0,function(e){e.SourceAdded="source-added",e.SourceRemoved="source-removed",e.VideoAttached="video-attached",e.VideoDetached="video-detached",e.SourceError="source-error"}(t.SourcesApiEvent||(t.SourcesApiEvent={})),function(e){e.SourceApiManager="source-api-manager",e.VideoElementUtils="video-element-utils",e.SourceEventBus="source-event-bus",e.SourceApiComponentMap="source-api-component-map",e.SourceRemovedError="source-removed-error"}(t.SourcesApiExportNames||(t.SourcesApiExportNames={}))}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var i=t[a]={exports:{}};return e[a].call(i.exports,i,i.exports,r),i.exports}return(()=>{r.d=(e,t)=>{for(var a in t)r.o(t,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}})(),(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})(),r(92675)})()));