From 0381f11777c5000c15adcf66c5ac436f7c62fb9c Mon Sep 17 00:00:00 2001 From: Paul Irish Date: Tue, 3 May 2022 12:26:45 -0700 Subject: [PATCH 01/33] report(psi): stub out locale swapping (#13885) --- build/build-report.js | 13 +++++++++++++ report/clients/bundle.js | 1 + report/test-assets/faux-psi-template.html | 5 +++-- report/test-assets/faux-psi.js | 23 ++++++++++++++++++++++- 4 files changed, 39 insertions(+), 3 deletions(-) diff --git a/build/build-report.js b/build/build-report.js index 8fdabc9d2537..426619233d5f 100644 --- a/build/build-report.js +++ b/build/build-report.js @@ -96,6 +96,11 @@ async function buildEsModulesBundle() { input: 'report/clients/bundle.js', plugins: [ rollupPlugins.commonjs(), + // Exclude this 30kb from the devtools bundle for now. + rollupPlugins.shim({ + [`${LH_ROOT}/shared/localization/i18n-module.js`]: + 'export const swapLocale = _ => {}; export const format = _ => {};', + }), ], }); @@ -110,12 +115,19 @@ async function buildUmdBundle() { const bundle = await rollup.rollup({ input: 'report/clients/bundle.js', plugins: [ + rollupPlugins.inlineFs({verbose: true}), rollupPlugins.commonjs(), rollupPlugins.terser({ format: { beautify: true, }, }), + // Shim this empty to ensure the bundle isn't 10MB + rollupPlugins.shim({ + [`${LH_ROOT}/shared/localization/locales.js`]: 'export default {}', + 'fs': 'export default {}', + }), + rollupPlugins.nodeResolve({preferBuiltins: true}), ], }); @@ -123,6 +135,7 @@ async function buildUmdBundle() { file: 'dist/report/bundle.umd.js', format: 'umd', name: 'report', + sourcemap: Boolean(process.env.DEBUG), }); await bundle.close(); } diff --git a/report/clients/bundle.js b/report/clients/bundle.js index 9f8af53456dd..fb43f978f399 100644 --- a/report/clients/bundle.js +++ b/report/clients/bundle.js @@ -16,3 +16,4 @@ export {DOM} from '../renderer/dom.js'; export {ReportRenderer} from '../renderer/report-renderer.js'; export {ReportUIFeatures} from '../renderer/report-ui-features.js'; export {renderReport} from '../renderer/api.js'; +export {swapLocale, format} from '../../shared/localization/i18n-module.js'; diff --git a/report/test-assets/faux-psi-template.html b/report/test-assets/faux-psi-template.html index 33c76ea6ea4f..3bb90e07a0f1 100644 --- a/report/test-assets/faux-psi-template.html +++ b/report/test-assets/faux-psi-template.html @@ -119,7 +119,7 @@ border-width: 1px 0; padding: 4px; } -button { +#reanalyze { background-color: hsl(216deg 100% 50%); border-radius: 4px; color: white; @@ -133,8 +133,9 @@ +
- +
diff --git a/report/test-assets/faux-psi.js b/report/test-assets/faux-psi.js index 864d70723fe8..88ada6a6aa09 100644 --- a/report/test-assets/faux-psi.js +++ b/report/test-assets/faux-psi.js @@ -18,7 +18,12 @@ const wait = (ms = 100) => new Promise(resolve => setTimeout(resolve, ms)); (async function __initPsiReports__() { renderLHReport(); - document.querySelector('button')?.addEventListener('click', () => { + document.querySelector('button#reanalyze')?.addEventListener('click', () => { + renderLHReport(); + }); + + document.querySelector('button#translate')?.addEventListener('click', async () => { + await swapLhrLocale('es'); renderLHReport(); }); })(); @@ -81,6 +86,22 @@ async function renderLHReport() { } } +/** + * @param {LH.Locale} locale + */ +async function swapLhrLocale(locale) { + const response = await fetch(`https://www.gstatic.com/pagespeed/insights/ui/locales/${locale}.json`); + /** @type {import('../../shared/localization/locales').LhlMessages} */ + const lhlMessages = await response.json(); + console.log(lhlMessages); + if (!lhlMessages) throw new Error(`could not fetch data for locale: ${locale}`); + + lighthouseRenderer.format.registerLocaleData(locale, lhlMessages); + // @ts-expect-error LHR global + window.__LIGHTHOUSE_JSON__ = lighthouseRenderer.swapLocale(window.__LIGHTHOUSE_JSON__, locale) + .lhr; +} + /** * Tweak the LHR to make the desktop and mobile reports easier to identify. From e103deb2e06787b7075f2a535e3f7b02854bafd3 Mon Sep 17 00:00:00 2001 From: Brendan Kenny Date: Wed, 27 Apr 2022 18:42:14 -0500 Subject: [PATCH 02/33] new_audit: add responsiveness metric for timespans (#13917) --- .../experimental-interaction-to-next-paint.js | 84 +++ .../computed/metrics/responsiveness.js | 64 +++ .../fraggle-rock/config/default-config.js | 2 + lighthouse-core/lib/i18n/i18n.js | 2 + lighthouse-core/lib/minify-trace.js | 2 + ...rimental-interaction-to-next-paint-test.js | 62 +++ .../computed/metrics/responsiveness-test.js | 166 ++++++ .../reports/sample-flow-result.json | 68 ++- .../timespan-responsiveness-m103.trace.json | 505 ++++++++++++++++++ .../fraggle-rock/scenarios/api-test-pptr.js | 6 + shared/localization/locales/en-US.json | 6 + shared/localization/locales/en-XL.json | 6 + ...hthouse-successful-navigation-expected.txt | 2 +- .../lighthouse-successful-run-expected.txt | 2 +- types/artifacts.d.ts | 3 + 15 files changed, 964 insertions(+), 16 deletions(-) create mode 100644 lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js create mode 100644 lighthouse-core/computed/metrics/responsiveness.js create mode 100644 lighthouse-core/test/audits/metrics/experimental-interaction-to-next-paint-test.js create mode 100644 lighthouse-core/test/computed/metrics/responsiveness-test.js create mode 100644 lighthouse-core/test/fixtures/traces/timespan-responsiveness-m103.trace.json diff --git a/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js b/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js new file mode 100644 index 000000000000..2ef0c4ae2d42 --- /dev/null +++ b/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js @@ -0,0 +1,84 @@ +/** + * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ +'use strict'; + +const Audit = require('../audit.js'); +const ComputedResponsivenes = require('../../computed/metrics/responsiveness.js'); +const i18n = require('../../lib/i18n/i18n.js'); + +const UIStrings = { + /** Description of the Interaction to Next Paint metric. This description is displayed within a tooltip when the user hovers on the metric name to see more. No character length limits. 'Learn More' becomes link text to additional documentation. */ + description: 'Interaction to Next Paint measures page responsiveness, how long it ' + + 'takes the page to visibly respond to user input. [Learn more](https://web.dev/inp/).', +}; + +const str_ = i18n.createMessageInstanceIdFn(__filename, UIStrings); + +/** + * @fileoverview This metric gives a high-percentile measure of responsiveness to input. + */ +class ExperimentalInteractionToNextPaint extends Audit { + /** + * @return {LH.Audit.Meta} + */ + static get meta() { + return { + id: 'experimental-interaction-to-next-paint', + title: str_(i18n.UIStrings.interactionToNextPaint), + description: str_(UIStrings.description), + scoreDisplayMode: Audit.SCORING_MODES.NUMERIC, + supportedModes: ['timespan'], + requiredArtifacts: ['traces'], + }; + } + + /** + * @return {LH.Audit.ScoreOptions} + */ + static get defaultOptions() { + return { + // https://web.dev/inp/ + // This is using the same threshold as field tools since only supported in + // unsimulated user flows for now. + // see https://www.desmos.com/calculator/4xtrhg51th + p10: 200, + median: 500, + }; + } + + /** + * @param {LH.Artifacts} artifacts + * @param {LH.Audit.Context} context + * @return {Promise} + */ + static async audit(artifacts, context) { + const {settings} = context; + // TODO: responsiveness isn't yet supported by lantern. + if (settings.throttlingMethod === 'simulate') { + return {score: null, notApplicable: true}; + } + + const trace = artifacts.traces[Audit.DEFAULT_PASS]; + const metricData = {trace, settings}; + const metricResult = await ComputedResponsivenes.request(metricData, context); + + // TODO: include the no-interaction state in the report instead of using n/a. + if (metricResult === null) { + return {score: null, notApplicable: true}; + } + + return { + score: Audit.computeLogNormalScore({p10: context.options.p10, median: context.options.median}, + metricResult.timing), + numericValue: metricResult.timing, + numericUnit: 'millisecond', + displayValue: str_(i18n.UIStrings.ms, {timeInMs: metricResult.timing}), + }; + } +} + +module.exports = ExperimentalInteractionToNextPaint; +module.exports.UIStrings = UIStrings; diff --git a/lighthouse-core/computed/metrics/responsiveness.js b/lighthouse-core/computed/metrics/responsiveness.js new file mode 100644 index 000000000000..56bc33f03ce8 --- /dev/null +++ b/lighthouse-core/computed/metrics/responsiveness.js @@ -0,0 +1,64 @@ +/** + * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ +'use strict'; + +/** + * @fileoverview Returns a high-percentle (usually 98th) measure of how long it + * takes the page to visibly respond to user input (or null, if there was no + * user input in the provided trace). + */ + +const makeComputedArtifact = require('../computed-artifact.js'); +const ProcessedTrace = require('../processed-trace.js'); + +class Responsiveness { + /** + * @param {LH.Artifacts.ProcessedTrace} processedTrace + * @return {{timing: number}|null} + */ + static getHighPercentileResponsiveness(processedTrace) { + const durations = processedTrace.frameTreeEvents + // https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/timing/responsiveness_metrics.cc;l=146-150;drc=a1a2302f30b0a58f7669a41c80acdf1fa11958dd + .filter(e => e.name === 'Responsiveness.Renderer.UserInteraction') + .map(evt => evt.args.data?.maxDuration) + .filter(/** @return {duration is number} */duration => duration !== undefined) + .sort((a, b) => b - a); + + // If there were no interactions with the page, the metric is N/A. + if (durations.length === 0) { + return null; + } + + // INP is the "nearest-rank"/inverted_cdf 98th percentile, except Chrome only + // keeps the 10 worst events around, so it can never be more than the 10th from + // last array element. To keep things simpler, sort desc and pick from front. + // See https://source.chromium.org/chromium/chromium/src/+/main:components/page_load_metrics/browser/responsiveness_metrics_normalization.cc;l=45-59;drc=cb0f9c8b559d9c7c3cb4ca94fc1118cc015d38ad + const index = Math.min(9, Math.floor(durations.length / 50)); + + return { + timing: durations[index], + }; + } + + /** + * @param {{trace: LH.Trace, settings: Immutable}} data + * @param {LH.Artifacts.ComputedContext} context + * @return {Promise} + */ + static async compute_(data, context) { + if (data.settings.throttlingMethod === 'simulate') { + throw new Error('Responsiveness currently unsupported by simulated throttling'); + } + + const processedTrace = await ProcessedTrace.request(data.trace, context); + return Responsiveness.getHighPercentileResponsiveness(processedTrace); + } +} + +module.exports = makeComputedArtifact(Responsiveness, [ + 'trace', + 'settings', +]); diff --git a/lighthouse-core/fraggle-rock/config/default-config.js b/lighthouse-core/fraggle-rock/config/default-config.js index e9afe32bf1f0..7ba42483d093 100644 --- a/lighthouse-core/fraggle-rock/config/default-config.js +++ b/lighthouse-core/fraggle-rock/config/default-config.js @@ -11,12 +11,14 @@ const {deepClone} = require('../../config/config-helpers.js'); /** @type {LH.Config.AuditJson[]} */ const frAudits = [ 'byte-efficiency/uses-responsive-images-snapshot', + 'metrics/experimental-interaction-to-next-paint', ]; /** @type {Record} */ const frCategoryAuditRefExtensions = { 'performance': [ {id: 'uses-responsive-images-snapshot', weight: 0}, + {id: 'experimental-interaction-to-next-paint', weight: 0, group: 'metrics', acronym: 'INP'}, ], }; diff --git a/lighthouse-core/lib/i18n/i18n.js b/lighthouse-core/lib/i18n/i18n.js index e8c8ce5438bc..4abdad25f405 100644 --- a/lighthouse-core/lib/i18n/i18n.js +++ b/lighthouse-core/lib/i18n/i18n.js @@ -105,6 +105,8 @@ const UIStrings = { largestContentfulPaintMetric: 'Largest Contentful Paint', /** The name of the metric "Cumulative Layout Shift" that indicates how much the page changes its layout while it loads. If big segments of the page shift their location during load, the Cumulative Layout Shift will be higher. Shown to users as the label for the numeric metric value. Ideally fits within a ~40 character limit. */ cumulativeLayoutShiftMetric: 'Cumulative Layout Shift', + /** The name of the "Interaction to Next Paint" metric that measures the time between a user interaction and when the browser displays a response on screen. Shown to users as the label for the numeric metric value. Ideally fits within a ~40 character limit. */ + interactionToNextPaint: 'Interaction to Next Paint', /** Table item value for the severity of a small, or low impact vulnerability. Part of a ranking scale in the form: low, medium, high. */ itemSeverityLow: 'Low', /** Table item value for the severity of a vulnerability. Part of a ranking scale in the form: low, medium, high. */ diff --git a/lighthouse-core/lib/minify-trace.js b/lighthouse-core/lib/minify-trace.js index a57c49f3c100..a01111225dab 100644 --- a/lighthouse-core/lib/minify-trace.js +++ b/lighthouse-core/lib/minify-trace.js @@ -44,6 +44,8 @@ const traceEventsToAlwaysKeep = new Set([ 'EventDispatch', 'LayoutShift', 'FrameCommittedInBrowser', + 'EventTiming', + 'Responsiveness.Renderer.UserInteraction', // Not currently used by Lighthouse but might be used in the future for cross-frame LCP 'NavStartToLargestContentfulPaint::Invalidate::AllFrames::UKM', 'NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM', diff --git a/lighthouse-core/test/audits/metrics/experimental-interaction-to-next-paint-test.js b/lighthouse-core/test/audits/metrics/experimental-interaction-to-next-paint-test.js new file mode 100644 index 000000000000..53c000f3d8e5 --- /dev/null +++ b/lighthouse-core/test/audits/metrics/experimental-interaction-to-next-paint-test.js @@ -0,0 +1,62 @@ +/** + * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ +'use strict'; + +const ExperimentalInteractionToNextPaint = + require('../../../audits/metrics/experimental-interaction-to-next-paint.js'); +const interactionTrace = require('../../fixtures/traces/timespan-responsiveness-m103.trace.json'); +const noInteractionTrace = require('../../fixtures/traces/jumpy-cls-m90.json'); + +/* eslint-env jest */ + +describe('Interaction to Next Paint', () => { + function getTestData() { + const artifacts = { + traces: { + [ExperimentalInteractionToNextPaint.DEFAULT_PASS]: interactionTrace, + }, + }; + + const context = { + settings: {throttlingMethod: 'devtools'}, + computedCache: new Map(), + options: ExperimentalInteractionToNextPaint.defaultOptions, + }; + + return {artifacts, context}; + } + + it('evaluates INP correctly', async () => { + const {artifacts, context} = getTestData(); + const result = await ExperimentalInteractionToNextPaint.audit(artifacts, context); + expect(result).toEqual({ + score: 0.63, + numericValue: 392, + numericUnit: 'millisecond', + displayValue: expect.toBeDisplayString('390 ms'), + }); + }); + + it('is not applicable if using simulated throttling', async () => { + const {artifacts, context} = getTestData(); + context.settings.throttlingMethod = 'simulate'; + const result = await ExperimentalInteractionToNextPaint.audit(artifacts, context); + expect(result).toMatchObject({ + score: null, + notApplicable: true, + }); + }); + + it('is not applicable if no interactions occurred in trace', async () => { + const {artifacts, context} = getTestData(); + artifacts.traces[ExperimentalInteractionToNextPaint.DEFAULT_PASS] = noInteractionTrace; + const result = await ExperimentalInteractionToNextPaint.audit(artifacts, context); + expect(result).toMatchObject({ + score: null, + notApplicable: true, + }); + }); +}); diff --git a/lighthouse-core/test/computed/metrics/responsiveness-test.js b/lighthouse-core/test/computed/metrics/responsiveness-test.js new file mode 100644 index 000000000000..93aaace17901 --- /dev/null +++ b/lighthouse-core/test/computed/metrics/responsiveness-test.js @@ -0,0 +1,166 @@ +/** + * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ +'use strict'; + +const assert = require('assert').strict; + +const Responsiveness = require('../../../computed/metrics/responsiveness.js'); +const createTestTrace = require('../../create-test-trace.js'); + +const interactionTrace = require('../../fixtures/traces/timespan-responsiveness-m103.trace.json'); +const noInteractionTrace = require('../../fixtures/traces/frame-metrics-m89.json'); + +/* eslint-env jest */ + +const childFrameId = 'CAF4634127666E186C9C8B35627DBF0B'; + +/** + * @param {Array<{maxDuration: number, ts: number, interactionType?: 'keyboard'|'tapOrClick', inChildFrame?: boolean}>} interactionEventsData + */ +function makeTrace(interactionEventsData) { + let needsChildFrame = false; + let lastTs = 0; + for (const evtData of interactionEventsData) { + if (evtData.inChildFrame) needsChildFrame = true; + lastTs = Math.max(lastTs, evtData.ts); + } + + // If there are non-mainFrame events, create a child frame in trace to add those events to. + const childFrames = needsChildFrame ? [{frame: childFrameId}] : []; + const trace = createTestTrace({traceEnd: lastTs + 10_000, childFrames}); + + const navigationStartEvt = trace.traceEvents.find(e => e.name === 'navigationStart'); + assert(navigationStartEvt?.args?.frame); + const mainFrameId = navigationStartEvt.args.frame; + + /** @type {Array} */ + const interactionEvents = interactionEventsData.map(data => { + const { + maxDuration, + ts, + interactionType = 'keyboard', + inChildFrame = false, + } = data; + + return { + name: 'Responsiveness.Renderer.UserInteraction', + cat: 'devtools.timeline', + ph: 'X', + pid: 1111, + tid: 222, + ts: ts, + tts: ts, + dur: 14, + tdur: 14, + args: { + frame: inChildFrame ? childFrameId : mainFrameId, + data: { + interactionType, + maxDuration, + }, + }, + }; + }); + + trace.traceEvents.push(...interactionEvents); + return trace; +} + +describe('Metric: Responsiveness', () => { + it('should return null if there were no interactions', async () => { + const metricInputData = { + trace: makeTrace([]), + settings: {throttlingMethod: 'provided'}, + }; + const context = {computedCache: new Map()}; + const result = await Responsiveness.request(metricInputData, context); + expect(result).toEqual(null); + }); + + it('should select the 98th percentile interaction', async () => { + for (let eventCount = 1; eventCount < 601; eventCount++) { + const interactionEvents = []; + for (let i = 0; i < eventCount; i++) { + interactionEvents.push({ + ts: i * (i + 3) / 2, // End of the last event + 1ms. + maxDuration: i + 1, // Identify events by unique maxDuration. + }); + } + const metricInputData = { + trace: makeTrace(interactionEvents), + settings: {throttlingMethod: 'provided'}, + }; + + // For a list labeled 1-n, result will be `Math.ceil(0.98 * n)`th element + // until n > 500, when it becomes capped at the 10th worst duration. + let expectedTiming = Math.ceil(0.98 * eventCount); + if (eventCount >= 500) { + expectedTiming = eventCount - 9; + } + + const context = {computedCache: new Map()}; + const result = await Responsiveness.request(metricInputData, context); + assert.equal(result.timing, expectedTiming, `error at ${eventCount} events`); + } + }); + + it('should consider interaction events across the frame tree', async () => { + const interactionEvents = []; + for (let i = 0; i < 50; i++) { + const maxDuration = i + 1; + interactionEvents.push({ + ts: i * 100, + maxDuration, + inChildFrame: Boolean(maxDuration % 2), + }); + } + + const trace = makeTrace(interactionEvents); + // Ensure the target high-percentile event is where it's expected. + const targetEvent = trace.traceEvents.find(evt => { + return evt.name === 'Responsiveness.Renderer.UserInteraction' && + evt.args.data?.maxDuration === 49; + }); + expect(targetEvent?.args.frame).toEqual(childFrameId); + + const metricInputData = { + trace, + settings: {throttlingMethod: 'provided'}, + }; + const context = {computedCache: new Map()}; + const result = await Responsiveness.request(metricInputData, context); + expect(result).toEqual({timing: 49}); + }); + + it('should throw on attempting with a simulated timespan', async () => { + const metricInputData = { + trace: makeTrace([]), + settings: {throttlingMethod: 'simulate'}, + }; + expect(Responsiveness.request(metricInputData, {computedCache: new Map()})) + .rejects.toThrow(); + }); + + it('evaluates from a real trace', async () => { + const metricInputData = { + trace: interactionTrace, + settings: {throttlingMethod: 'provided'}, + }; + const context = {computedCache: new Map()}; + const result = await Responsiveness.request(metricInputData, context); + expect(result).toEqual({timing: 392}); + }); + + it('evaluates from a real trace with no interaction events', async () => { + const metricInputData = { + trace: noInteractionTrace, + settings: {throttlingMethod: 'provided'}, + }; + const context = {computedCache: new Map()}; + const result = await Responsiveness.request(metricInputData, context); + expect(result).toEqual(null); + }); +}); diff --git a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json index 1fad9fdcb678..df862f533ffe 100644 --- a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json +++ b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json @@ -2,7 +2,7 @@ "steps": [ { "lhr": { - "lighthouseVersion": "9.4.0", + "lighthouseVersion": "9.5.0", "requestedUrl": "https://www.mikescerealshack.co/", "finalUrl": "https://www.mikescerealshack.co/", "fetchTime": "2022-03-08T15:35:57.356Z", @@ -3488,7 +3488,7 @@ "description": "Some third-party scripts may contain known security vulnerabilities that are easily identified and exploited by attackers. [Learn more](https://web.dev/no-vulnerable-libraries/).", "score": 0, "scoreDisplayMode": "binary", - "displayValue": "2 vulnerabilities detected", + "displayValue": "3 vulnerabilities detected", "details": { "type": "table", "headings": [ @@ -3511,7 +3511,7 @@ "items": [ { "highestSeverity": "Medium", - "vulnCount": 2, + "vulnCount": 3, "detectedLib": { "text": "Next.js@10.0.6", "url": "https://snyk.io/vuln/npm:next?lh=10.0.6&utm_source=lighthouse&utm_medium=ref&utm_campaign=audit", @@ -7202,7 +7202,7 @@ "lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js | displayValue": [ { "values": { - "itemCount": 2 + "itemCount": 3 }, "path": "audits[no-vulnerable-libraries].displayValue" } @@ -7548,7 +7548,7 @@ }, { "lhr": { - "lighthouseVersion": "9.4.0", + "lighthouseVersion": "9.5.0", "requestedUrl": "https://www.mikescerealshack.co/", "finalUrl": "https://www.mikescerealshack.co/search?q=call+of+duty", "fetchTime": "2022-03-08T15:36:08.267Z", @@ -9381,6 +9381,16 @@ "headings": [], "items": [] } + }, + "experimental-interaction-to-next-paint": { + "id": "experimental-interaction-to-next-paint", + "title": "Interaction to Next Paint", + "description": "Interaction to Next Paint measures page responsiveness, how long it takes the page to visibly respond to user input. [Learn more](https://web.dev/inp/).", + "score": 1, + "scoreDisplayMode": "numeric", + "numericValue": 53, + "numericUnit": "millisecond", + "displayValue": "50 ms" } }, "configSettings": { @@ -9597,6 +9607,12 @@ "id": "script-treemap-data", "weight": 0, "group": "hidden" + }, + { + "id": "experimental-interaction-to-next-paint", + "weight": 0, + "group": "metrics", + "acronym": "INP" } ], "id": "performance", @@ -10270,12 +10286,24 @@ }, { "startTime": 88, + "name": "lh:audit:experimental-interaction-to-next-paint", + "duration": 1, + "entryType": "measure" + }, + { + "startTime": 89, + "name": "lh:computed:Responsiveness", + "duration": 1, + "entryType": "measure" + }, + { + "startTime": 90, "name": "lh:runner:generate", "duration": 1, "entryType": "measure" } ], - "total": 89 + "total": 91 }, "i18n": { "rendererFormattedStrings": { @@ -10363,6 +10391,12 @@ "timeInMs": 533.3879999999999 }, "path": "audits[network-server-latency].displayValue" + }, + { + "values": { + "timeInMs": 53 + }, + "path": "audits[experimental-interaction-to-next-paint].displayValue" } ], "lighthouse-core/lib/i18n/i18n.js | cumulativeLayoutShiftMetric": [ @@ -10741,6 +10775,12 @@ "lighthouse-core/audits/dobetterweb/uses-passive-event-listeners.js | description": [ "audits[uses-passive-event-listeners].description" ], + "lighthouse-core/lib/i18n/i18n.js | interactionToNextPaint": [ + "audits[experimental-interaction-to-next-paint].title" + ], + "lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js | description": [ + "audits[experimental-interaction-to-next-paint].description" + ], "lighthouse-core/config/default-config.js | performanceCategoryTitle": [ "categories.performance.title" ], @@ -10859,7 +10899,7 @@ }, { "lhr": { - "lighthouseVersion": "9.4.0", + "lighthouseVersion": "9.5.0", "requestedUrl": "https://www.mikescerealshack.co/search?q=call+of+duty", "finalUrl": "https://www.mikescerealshack.co/search?q=call+of+duty", "fetchTime": "2022-03-08T15:36:22.894Z", @@ -13479,7 +13519,7 @@ "description": "Some third-party scripts may contain known security vulnerabilities that are easily identified and exploited by attackers. [Learn more](https://web.dev/no-vulnerable-libraries/).", "score": 0, "scoreDisplayMode": "binary", - "displayValue": "2 vulnerabilities detected", + "displayValue": "3 vulnerabilities detected", "details": { "type": "table", "headings": [ @@ -13502,7 +13542,7 @@ "items": [ { "highestSeverity": "Medium", - "vulnCount": 2, + "vulnCount": 3, "detectedLib": { "text": "Next.js@10.0.6", "url": "https://snyk.io/vuln/npm:next?lh=10.0.6&utm_source=lighthouse&utm_medium=ref&utm_campaign=audit", @@ -15338,7 +15378,7 @@ "lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js | displayValue": [ { "values": { - "itemCount": 2 + "itemCount": 3 }, "path": "audits[no-vulnerable-libraries].displayValue" } @@ -15663,7 +15703,7 @@ }, { "lhr": { - "lighthouseVersion": "9.4.0", + "lighthouseVersion": "9.5.0", "requestedUrl": "https://www.mikescerealshack.co/corrections", "finalUrl": "https://www.mikescerealshack.co/corrections", "fetchTime": "2022-03-08T15:36:29.745Z", @@ -19091,7 +19131,7 @@ "description": "Some third-party scripts may contain known security vulnerabilities that are easily identified and exploited by attackers. [Learn more](https://web.dev/no-vulnerable-libraries/).", "score": 0, "scoreDisplayMode": "binary", - "displayValue": "2 vulnerabilities detected", + "displayValue": "3 vulnerabilities detected", "details": { "type": "table", "headings": [ @@ -19114,7 +19154,7 @@ "items": [ { "highestSeverity": "Medium", - "vulnCount": 2, + "vulnCount": 3, "detectedLib": { "text": "Next.js@10.0.6", "url": "https://snyk.io/vuln/npm:next?lh=10.0.6&utm_source=lighthouse&utm_medium=ref&utm_campaign=audit", @@ -22851,7 +22891,7 @@ "lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js | displayValue": [ { "values": { - "itemCount": 2 + "itemCount": 3 }, "path": "audits[no-vulnerable-libraries].displayValue" } diff --git a/lighthouse-core/test/fixtures/traces/timespan-responsiveness-m103.trace.json b/lighthouse-core/test/fixtures/traces/timespan-responsiveness-m103.trace.json new file mode 100644 index 000000000000..0b32b88a6970 --- /dev/null +++ b/lighthouse-core/test/fixtures/traces/timespan-responsiveness-m103.trace.json @@ -0,0 +1,505 @@ +{ + "traceEvents": [ + {"args":{"name":"swapper"},"cat":"__metadata","name":"thread_name","ph":"M","pid":0,"tid":0,"ts":0}, + {"args":{"name":"CrRendererMain"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":259,"ts":0}, + {"args":{"name":"CrBrowserMain"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":259,"ts":0}, + {"args":{"name":"Compositor"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":43011,"ts":0}, + {"args":{"name":"NetworkService"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":55299,"ts":0}, + {"args":{"name":"StackSamplingProfiler"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":11523,"ts":0}, + {"args":{"name":"Chrome_DevToolsHandlerThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":130051,"ts":0}, + {"args":{"name":"VizCompositorThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":34563,"ts":0}, + {"args":{"name":"Chrome_IOThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":31235,"ts":0}, + {"args":{"name":"CrGpuMain"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":259,"ts":0}, + {"args":{"name":"Chrome_ChildIOThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":15363,"ts":0}, + {"args":{"name":"Chrome_ChildIOThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":36611,"ts":0}, + {"args":{"name":"StackSamplingProfiler"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":11015,"ts":0}, + {"args":{"name":"CompositorTileWorker4"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":41731,"ts":0}, + {"args":{"name":"CompositorTileWorker1"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":23299,"ts":0}, + {"args":{"name":"ThreadPoolBackgroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":37891,"ts":0}, + {"args":{"name":"ThreadPoolServiceThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":34819,"ts":0}, + {"args":{"name":"ThreadPoolServiceThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":13571,"ts":0}, + {"args":{"name":"ThreadPoolServiceThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":27151,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":33283,"ts":0}, + {"args":{"name":"CompositorTileWorker2"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":23555,"ts":0}, + {"args":{"name":"PowerSaveBlocker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":154627,"ts":0}, + {"args":{"name":"CompositorTileWorker3"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":23811,"ts":0}, + {"args":{"name":"MemoryInfra"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":45059,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":15875,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":13827,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":33027,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":9735,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":128515,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":27395,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":32519,"ts":0}, + {"args":{"name":"Renderer"},"cat":"__metadata","name":"process_name","ph":"M","pid":6728,"tid":0,"ts":0}, + {"args":{"name":"Browser"},"cat":"__metadata","name":"process_name","ph":"M","pid":6693,"tid":0,"ts":0}, + {"args":{"name":"GPU Process"},"cat":"__metadata","name":"process_name","ph":"M","pid":6724,"tid":0,"ts":0}, + {"args":{"uptime":"9"},"cat":"__metadata","name":"process_uptime_seconds","ph":"M","pid":6728,"tid":0,"ts":0}, + {"args":{"uptime":"10"},"cat":"__metadata","name":"process_uptime_seconds","ph":"M","pid":6693,"tid":0,"ts":0}, + {"args":{"uptime":"9"},"cat":"__metadata","name":"process_uptime_seconds","ph":"M","pid":6724,"tid":0,"ts":0}, + {"args":{"data":{"frameTreeNodeId":2,"frames":[{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","name":"","processId":6728,"url":"http://localhost:8080/parent.html"},{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","name":"","parent":"B9F558A7E7EF74FD8D4B8B64CC7A803C","processId":6728,"url":"http://localhost:10200/events.html"}],"persistentIds":true}},"cat":"disabled-by-default-devtools.timeline","name":"TracingStartedInBrowser","ph":"I","pid":6693,"s":"t","tid":259,"ts":218690473956,"tts":886782}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2036,"name":"RunTask","ph":"X","pid":6728,"tdur":1934,"tid":259,"ts":218690478990,"tts":1326090}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1956,"name":"EvaluateScript","ph":"X","pid":6728,"tdur":1853,"tid":259,"ts":218690479020,"tts":1326121}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":1349,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":1298,"tid":259,"ts":218690479605,"tts":1326653}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2664,"name":"RunTask","ph":"X","pid":6728,"tdur":2654,"tid":259,"ts":218690482729,"tts":1329447}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":58,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":58,"tid":259,"ts":218690484793,"tts":1331500}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":3895,"name":"RunTask","ph":"X","pid":6728,"tdur":3870,"tid":259,"ts":218690487883,"tts":1333972}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":32,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":30,"tid":259,"ts":218690491700,"tts":1337766}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2244,"name":"RunTask","ph":"X","pid":6728,"tdur":2244,"tid":259,"ts":218690494080,"tts":1339815}, + {"args":{"data":{"columnNumber":59,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":19,"scriptId":"26","url":"__puppeteer_evaluation_script__"}},"cat":"devtools.timeline","dur":706,"name":"FunctionCall","ph":"X","pid":6728,"tdur":114,"tid":259,"ts":218690494903,"tts":1341231}, + {"args":{"microtask_count":3},"cat":"v8.execute","dur":58,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":57,"tid":259,"ts":218690496251,"tts":1341987}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1072,"name":"RunTask","ph":"X","pid":6728,"tdur":1073,"tid":259,"ts":218690497655,"tts":1343074}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2803,"name":"RunTask","ph":"X","pid":6728,"tdur":2790,"tid":259,"ts":218690500533,"tts":1345709}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218690500655,"tts":1345877}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218690501959,"tts":1347126}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218690502352,"tts":1347517}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":25,"name":"EventDispatch","ph":"X","pid":6728,"tdur":22,"tid":259,"ts":218690502473,"tts":1347639}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":734,"name":"EventDispatch","ph":"X","pid":6728,"tdur":731,"tid":259,"ts":218690502502,"tts":1347668}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218690503245,"tts":1348409}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":10735,"name":"RunTask","ph":"X","pid":6728,"tdur":10646,"tid":259,"ts":218690503355,"tts":1348518}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":17,"name":"EventDispatch","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218690508395,"tts":1353552}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":19,"name":"EventDispatch","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218690509305,"tts":1354460}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690509332,"tts":1354482}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690509372,"tts":1354520}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":52707,"name":"RunTask","ph":"X","pid":6728,"tdur":52083,"tid":259,"ts":218690514132,"tts":1359206}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":25689,"name":"EventDispatch","ph":"X","pid":6728,"tdur":25095,"tid":259,"ts":218690515437,"tts":1360514}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":24400,"name":"FunctionCall","ph":"X","pid":6728,"tdur":23848,"tid":259,"ts":218690516706,"tts":1361742}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":6,"url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218690541066,"tts":1385572}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":21749,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21719,"tid":259,"ts":218690541148,"tts":1385633}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21674,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21640,"tid":259,"ts":218690541202,"tts":1385691}, + {"args":{"data":{"type":"selectstart"}},"cat":"devtools.timeline","dur":601,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690564403,"tts":1409455}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":168884,"name":"RunTask","ph":"X","pid":6728,"tdur":168527,"tid":259,"ts":218690566930,"tts":1411350}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":21171,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21122,"tid":259,"ts":218690567975,"tts":1412397}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21126,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21075,"tid":259,"ts":218690567996,"tts":1412421}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":6,"url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218690589099,"tts":1433479}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":21601,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21015,"tid":259,"ts":218690589177,"tts":1434058}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20927,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20843,"tid":259,"ts":218690589701,"tts":1434080}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20822,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20785,"tid":259,"ts":218690610825,"tts":1455122}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20758,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20718,"tid":259,"ts":218690610845,"tts":1455145}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":7,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218690631624,"tts":1475886}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218690631642,"tts":1475902}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20076,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20066,"tid":259,"ts":218690632999,"tts":1477258}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":19929,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19905,"tid":259,"ts":218690653770,"tts":1498027}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20194,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20157,"tid":259,"ts":218690673740,"tts":1517981}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20324,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20260,"tid":259,"ts":218690693981,"tts":1538193}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20036,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20007,"tid":259,"ts":218690714346,"tts":1558500}, + {"args":{"data":{"cancelable":true,"duration":32,"interactionId":0,"processingEnd":2767,"processingStart":2767,"timeStamp":2759,"type":"pointerover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":6,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218690736549,"tts":1580612}, + {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218690736558,"tts":1580622}, + {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":5,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690736998,"tts":1581062}, + {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218690737007,"tts":1581070}, + {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":4,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690737013,"tts":1581077}, + {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690737024,"tts":1581087}, + {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690737031,"tts":1581094}, + {"args":{"data":{"cancelable":true,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"mouseover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":4,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690737038,"tts":1581102}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1047,"name":"RunTask","ph":"X","pid":6728,"tdur":1043,"tid":259,"ts":218690751219,"tts":1592598}, + {"args":{"data":{"cancelable":true,"duration":240,"interactionId":0,"processingEnd":2821,"processingStart":2800,"timeStamp":2770,"type":"mousedown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":7,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218690751773,"tts":1593148}, + {"args":{"data":{"cancelable":true,"duration":240,"interactionId":3981,"processingEnd":2800,"processingStart":2774,"timeStamp":2770,"type":"pointerdown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":4,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218690751810,"tts":1593186}, + {"args":{"data":{"cancelable":true,"duration":184,"interactionId":3981,"processingEnd":2848,"processingStart":2827,"timeStamp":2824,"type":"pointerup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":4,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690752159,"tts":1593534}, + {"args":{"data":{"cancelable":true,"duration":184,"interactionId":0,"processingEnd":2869,"processingStart":2848,"timeStamp":2824,"type":"mouseup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218690752166,"tts":1593541}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":237,"totalDuration":237},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":22,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":23,"tid":259,"ts":218690752223,"tts":1593598}, + {"args":{"data":{"cancelable":true,"duration":184,"interactionId":3981,"processingEnd":2890,"processingStart":2869,"timeStamp":2824,"type":"click"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218690752249,"tts":1593624}, + {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218690889383,"tts":899894}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1376,"name":"RunTask","ph":"X","pid":6728,"tdur":1376,"tid":259,"ts":218691243667,"tts":1969193}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":45,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":45,"tid":259,"ts":218691244970,"tts":1970496}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1430,"name":"RunTask","ph":"X","pid":6728,"tdur":1419,"tid":259,"ts":218691245855,"tts":1971289}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":19,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":18,"tid":259,"ts":218691246967,"tts":1972390}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1045,"name":"RunTask","ph":"X","pid":6728,"tdur":1045,"tid":259,"ts":218691247460,"tts":1972882}, + {"args":{"data":{"columnNumber":59,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":19,"scriptId":"30","url":"__puppeteer_evaluation_script__"}},"cat":"devtools.timeline","dur":58,"name":"FunctionCall","ph":"X","pid":6728,"tdur":53,"tid":259,"ts":218691248111,"tts":1973539}, + {"args":{"microtask_count":3},"cat":"v8.execute","dur":37,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":36,"tid":259,"ts":218691248459,"tts":1973882}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2631,"name":"RunTask","ph":"X","pid":6728,"tdur":2569,"tid":259,"ts":218691252306,"tts":1977072}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":11,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218691252995,"tts":1977764}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691253029,"tts":1977795}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691253043,"tts":1977809}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691253054,"tts":1977820}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691253061,"tts":1977827}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691253067,"tts":1977833}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":46034,"name":"RunTask","ph":"X","pid":6728,"tdur":45907,"tid":259,"ts":218691254949,"tts":1979653}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691255802,"tts":1980508}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":21222,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21113,"tid":259,"ts":218691255831,"tts":1980537}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21142,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21037,"tid":259,"ts":218691255855,"tts":1980566}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":22009,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21987,"tid":259,"ts":218691277084,"tts":2001682}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21272,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21244,"tid":259,"ts":218691277802,"tts":2002406}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691299807,"tts":2024385}, + {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":11,"name":"EventDispatch","ph":"X","pid":6728,"tdur":10,"tid":259,"ts":218691300463,"tts":2025041}, + {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691300477,"tts":2025054}, + {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691300483,"tts":2025060}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691300831,"tts":2025409}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691300839,"tts":2025416}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691300844,"tts":2025421}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"pointerout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":5,"name":"EventTiming","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218691301696,"tts":2026273}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691301704,"tts":2026280}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691301709,"tts":2026285}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"pointerover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691301881,"tts":2026457}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691301886,"tts":2026463}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"mouseout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691301891,"tts":2026467}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"mouseover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691301895,"tts":2026472}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":167913,"name":"RunTask","ph":"X","pid":6728,"tdur":167305,"tid":259,"ts":218691301904,"tts":2026481}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691302292,"tts":2026870}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":20846,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20759,"tid":259,"ts":218691302312,"tts":2026889}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20811,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20718,"tid":259,"ts":218691302329,"tts":2026911}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":20956,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20932,"tid":259,"ts":218691323175,"tts":2047666}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20924,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20896,"tid":259,"ts":218691323190,"tts":2047685}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20984,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20934,"tid":259,"ts":218691344160,"tts":2068629}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20933,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20382,"tid":259,"ts":218691344182,"tts":2069151}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218691365136,"tts":2089556}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20106,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20078,"tid":259,"ts":218691366396,"tts":2090819}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20296,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20189,"tid":259,"ts":218691386541,"tts":2110942}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20102,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20011,"tid":259,"ts":218691406880,"tts":2131181}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":19977,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19842,"tid":259,"ts":218691427171,"tts":2151387}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20000,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19973,"tid":259,"ts":218691447594,"tts":2171684}, + {"args":{"data":{"cancelable":true,"duration":216,"interactionId":0,"processingEnd":3558,"processingStart":3536,"timeStamp":3512,"type":"mousedown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":8,"name":"EventTiming","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218691485329,"tts":2206187}, + {"args":{"data":{"cancelable":true,"duration":216,"interactionId":3988,"processingEnd":3536,"processingStart":3514,"timeStamp":3512,"type":"pointerdown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691485786,"tts":2206643}, + {"args":{"data":{"cancelable":true,"duration":168,"interactionId":3988,"processingEnd":3582,"processingStart":3561,"timeStamp":3560,"type":"pointerup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691485796,"tts":2206653}, + {"args":{"data":{"cancelable":true,"duration":168,"interactionId":0,"processingEnd":3603,"processingStart":3582,"timeStamp":3560,"type":"mouseup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691485802,"tts":2206659}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":218,"totalDuration":218},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":6,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218691485819,"tts":2206677}, + {"args":{"data":{"cancelable":true,"duration":168,"interactionId":3988,"processingEnd":3624,"processingStart":3603,"timeStamp":3560,"type":"click"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691485828,"tts":2206685}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1667,"name":"RunTask","ph":"X","pid":6728,"tdur":1667,"tid":259,"ts":218691775391,"tts":2428052}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":27,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":27,"tid":259,"ts":218691776985,"tts":2429646}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2402,"name":"RunTask","ph":"X","pid":6728,"tdur":2373,"tid":259,"ts":218691785682,"tts":2436935}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":13,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218691786297,"tts":2437550}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218691786320,"tts":2437569}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691786336,"tts":2437586}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691786344,"tts":2437593}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691786352,"tts":2437601}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691786358,"tts":2437608}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":45401,"name":"RunTask","ph":"X","pid":6728,"tdur":45293,"tid":259,"ts":218691788095,"tts":2439320}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":21356,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21302,"tid":259,"ts":218691788197,"tts":2439423}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21317,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21258,"tid":259,"ts":218691788216,"tts":2439447}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":6,"url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691809507,"tts":2460688}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":21768,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21711,"tid":259,"ts":218691809574,"tts":2460749}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21729,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21669,"tid":259,"ts":218691809592,"tts":2460769}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691832060,"tts":2483179}, + {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218691832072,"tts":2483190}, + {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691832089,"tts":2483207}, + {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691832095,"tts":2483213}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691832735,"tts":2483854}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691832742,"tts":2483861}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691832750,"tts":2483867}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691832755,"tts":2483872}, + {"args":{"data":{"type":"selectstart"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691833420,"tts":2484539}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"pointerout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":5,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691834168,"tts":2485286}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691834176,"tts":2485293}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"pointerover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":8,"name":"EventTiming","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218691834181,"tts":2485298}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691834192,"tts":2485308}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691834196,"tts":2485314}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"mouseout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691834201,"tts":2485319}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"mouseover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691834206,"tts":2485323}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":171694,"name":"RunTask","ph":"X","pid":6728,"tdur":168398,"tid":259,"ts":218691834216,"tts":2485333}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":21428,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21346,"tid":259,"ts":218691834654,"tts":2485773}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21385,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21301,"tid":259,"ts":218691834671,"tts":2485793}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":6,"url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691855364,"tts":2506448}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":20815,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20778,"tid":259,"ts":218691856103,"tts":2507142}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20776,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20735,"tid":259,"ts":218691856121,"tts":2507164}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20923,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20857,"tid":259,"ts":218691877343,"tts":2528332}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20841,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20770,"tid":259,"ts":218691877372,"tts":2528365}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218691898239,"tts":2549163}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691898258,"tts":2549181}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20873,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20453,"tid":259,"ts":218691899672,"tts":2550375}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21949,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20387,"tid":259,"ts":218691920589,"tts":2570879}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20431,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20032,"tid":259,"ts":218691942585,"tts":2591321}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20552,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20213,"tid":259,"ts":218691963058,"tts":2611401}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20219,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20112,"tid":259,"ts":218691983651,"tts":2631663}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2550,"name":"RunTask","ph":"X","pid":6728,"tdur":2456,"tid":259,"ts":218692007034,"tts":2654836}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1523,"name":"RunTask","ph":"X","pid":6728,"tdur":1428,"tid":259,"ts":218692009590,"tts":2657298}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692010581,"tts":2658524}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692010935,"tts":2658553}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1284,"name":"RunTask","ph":"X","pid":6728,"tdur":1280,"tid":259,"ts":218692011122,"tts":2658737}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":7595,"name":"RunTask","ph":"X","pid":6728,"tdur":7481,"tid":259,"ts":218692012743,"tts":2660349}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","nodeId":2}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692012777,"tts":2660386}, + {"args":{"beginData":{"dirtyObjects":22,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","partialLayout":false,"totalObjects":22},"endData":{"layoutRoots":[{"depth":1,"nodeId":2,"quads":[[0,0,1224,0,1224,2176,0,2176]]}]}},"cat":"devtools.timeline","dur":1657,"name":"Layout","ph":"X","pid":6728,"tdur":1598,"tid":259,"ts":218692012830,"tts":2660474}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","nodeId":5}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692015412,"tts":2662993}, + {"args":{"beginData":{"dirtyObjects":23,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","partialLayout":false,"totalObjects":23},"endData":{"layoutRoots":[{"depth":1,"nodeId":5,"quads":[[0,0,1200,0,1200,960,0,960]]}]}},"cat":"devtools.timeline","dur":1531,"name":"Layout","ph":"X","pid":6728,"tdur":1529,"tid":259,"ts":218692015464,"tts":2663046}, + {"args":{"data":{"cancelable":true,"duration":224,"interactionId":0,"processingEnd":4090,"processingStart":4068,"timeStamp":4045,"type":"mousedown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":5,"name":"EventTiming","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218692020419,"tts":2667912}, + {"args":{"data":{"cancelable":true,"duration":224,"interactionId":3995,"processingEnd":4068,"processingStart":4047,"timeStamp":4045,"type":"pointerdown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":9,"name":"EventTiming","ph":"X","pid":6728,"tdur":9,"tid":259,"ts":218692020835,"tts":2668313}, + {"args":{"data":{"cancelable":true,"duration":176,"interactionId":3995,"processingEnd":4115,"processingStart":4093,"timeStamp":4092,"type":"pointerup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218692020851,"tts":2668329}, + {"args":{"data":{"cancelable":true,"duration":176,"interactionId":0,"processingEnd":4135,"processingStart":4115,"timeStamp":4092,"type":"mouseup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":8,"name":"EventTiming","ph":"X","pid":6728,"tdur":9,"tid":259,"ts":218692020858,"tts":2668335}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":221,"totalDuration":221},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":28,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":29,"tid":259,"ts":218692020886,"tts":2668363}, + {"args":{"data":{"cancelable":true,"duration":176,"interactionId":3995,"processingEnd":4157,"processingStart":4136,"timeStamp":4092,"type":"click"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218692020918,"tts":2668395}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":4211,"name":"RunTask","ph":"X","pid":6728,"tdur":3614,"tid":259,"ts":218692027401,"tts":2673364}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2074,"name":"RunTask","ph":"X","pid":6728,"tdur":2027,"tid":259,"ts":218692031625,"tts":2676991}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1643,"name":"RunTask","ph":"X","pid":6728,"tdur":1643,"tid":259,"ts":218692033709,"tts":2679028}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":3487,"name":"RunTask","ph":"X","pid":6728,"tdur":3399,"tid":259,"ts":218692035358,"tts":2680677}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1555,"name":"RunTask","ph":"X","pid":6728,"tdur":1554,"tid":259,"ts":218692039275,"tts":2684506}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1454,"name":"RunTask","ph":"X","pid":6728,"tdur":1451,"tid":259,"ts":218692040836,"tts":2686066}, + {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218692119281,"tts":1026203}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1397,"name":"RunTask","ph":"X","pid":6728,"tdur":1316,"tid":259,"ts":218692338095,"tts":2911795}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":54031,"name":"RunTask","ph":"X","pid":6728,"tdur":50716,"tid":259,"ts":218692538543,"tts":3060906}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692538619,"tts":3060989}, + {"args":{"data":{"type":"keydown"}},"cat":"devtools.timeline","dur":21703,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20394,"tid":259,"ts":218692538646,"tts":3061011}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20341,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19036,"tid":259,"ts":218692539559,"tts":3061921}, + {"args":{"data":{"type":"keypress"}},"cat":"devtools.timeline","dur":31619,"name":"EventDispatch","ph":"X","pid":6728,"tdur":29608,"tid":259,"ts":218692560369,"tts":3081427}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20650,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19270,"tid":259,"ts":218692560944,"tts":3081985}, + {"args":{"data":{"type":"beforeinput"}},"cat":"devtools.timeline","dur":10,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218692582471,"tts":3102112}, + {"args":{"data":{"type":"textInput"}},"cat":"devtools.timeline","dur":8919,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8328,"tid":259,"ts":218692583062,"tts":3102702}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692584874,"tts":3104496}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","nodeId":2}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692584975,"tts":3104592}, + {"args":{"beginData":{"dirtyObjects":7,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","partialLayout":false,"totalObjects":23},"endData":{"layoutRoots":[{"depth":1,"nodeId":2,"quads":[[0,0,1224,0,1224,2176,0,2176]]}]}},"cat":"devtools.timeline","dur":1038,"name":"Layout","ph":"X","pid":6728,"tdur":1034,"tid":259,"ts":218692584998,"tts":3104615}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692586644,"tts":3106249}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","nodeId":2}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692587980,"tts":3107516}, + {"args":{"beginData":{"dirtyObjects":5,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","partialLayout":false,"totalObjects":21},"endData":{"layoutRoots":[{"depth":1,"nodeId":2,"quads":[[0,0,1224,0,1224,2176,0,2176]]}]}},"cat":"devtools.timeline","dur":84,"name":"Layout","ph":"X","pid":6728,"tdur":79,"tid":259,"ts":218692588019,"tts":3107556}, + {"args":{"data":{"type":"input"}},"cat":"devtools.timeline","dur":17,"name":"EventDispatch","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218692591907,"tts":3110964}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":44491,"name":"RunTask","ph":"X","pid":6728,"tdur":41491,"tid":259,"ts":218692592594,"tts":3111642}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20072,"name":"FunctionCall","ph":"X","pid":6728,"tdur":18786,"tid":259,"ts":218692593419,"tts":3112474}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20972,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19513,"tid":259,"ts":218692613537,"tts":3131319}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":22078,"name":"RunTask","ph":"X","pid":6728,"tdur":20595,"tid":259,"ts":218692637095,"tts":3153143}, + {"args":{"data":{"type":"keyup"}},"cat":"devtools.timeline","dur":21409,"name":"EventDispatch","ph":"X","pid":6728,"tdur":19932,"tid":259,"ts":218692637737,"tts":3153779}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21362,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19881,"tid":259,"ts":218692637764,"tts":3153810}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":6,"url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692658942,"tts":3173521}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1733,"name":"RunTask","ph":"X","pid":6728,"tdur":1650,"tid":259,"ts":218692659204,"tts":3173771}, + {"args":{"data":{"type":"selectionchange"}},"cat":"devtools.timeline","dur":24,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218692660972,"tts":3175469}, + {"args":{"data":{"cancelable":true,"duration":56,"interactionId":0,"processingEnd":4841,"processingStart":4841,"timeStamp":4841,"type":"beforeinput"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":6,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218692661664,"tts":3176106}, + {"args":{"data":{"cancelable":false,"duration":56,"interactionId":0,"processingEnd":4850,"processingStart":4850,"timeStamp":4846,"type":"input"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218692661673,"tts":3176116}, + {"args":{"data":{"cancelable":true,"duration":104,"interactionId":0,"processingEnd":4851,"processingStart":4819,"timeStamp":4797,"type":"keypress"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":8,"name":"EventTiming","ph":"X","pid":6728,"tdur":9,"tid":259,"ts":218692661679,"tts":3176121}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":22898,"name":"RunTask","ph":"X","pid":6728,"tdur":21520,"tid":259,"ts":218692661707,"tts":3176149}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20632,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19380,"tid":259,"ts":218692662372,"tts":3176800}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2483,"name":"RunTask","ph":"X","pid":6728,"tdur":2048,"tid":259,"ts":218692685933,"tts":3198913}, + {"args":{"data":{"cancelable":true,"duration":104,"interactionId":4002,"processingEnd":4819,"processingStart":4797,"timeStamp":4797,"type":"keydown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":6,"name":"EventTiming","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218692702699,"tts":3211375}, + {"args":{"data":{"interactionType":"keyboard","maxDuration":101,"totalDuration":149},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":13,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218692702717,"tts":3211393}, + {"args":{"data":{"cancelable":true,"duration":72,"interactionId":4002,"processingEnd":4918,"processingStart":4896,"timeStamp":4876,"type":"keyup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218692702734,"tts":3211410}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1372,"name":"RunTask","ph":"X","pid":6728,"tdur":1158,"tid":259,"ts":218692990213,"tts":3420534}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1315,"name":"EvaluateScript","ph":"X","pid":6728,"tdur":1101,"tid":259,"ts":218692990241,"tts":3420562}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":435,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":415,"tid":259,"ts":218692991117,"tts":3421245}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2205,"name":"RunTask","ph":"X","pid":6728,"tdur":2181,"tid":259,"ts":218692992369,"tts":3422215}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":58,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":58,"tid":259,"ts":218692994017,"tts":3423847}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1277,"name":"RunTask","ph":"X","pid":6728,"tdur":1249,"tid":259,"ts":218692995994,"tts":3425565}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":3009,"name":"RunTask","ph":"X","pid":6728,"tdur":2915,"tid":259,"ts":218692997276,"tts":3426820}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":43,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":38,"tid":259,"ts":218692999698,"tts":3429156}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1061,"name":"RunTask","ph":"X","pid":6728,"tdur":1062,"tid":259,"ts":218693004768,"tts":3433367}, + {"args":{"data":{"columnNumber":59,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":19,"scriptId":"43","url":"__puppeteer_evaluation_script__"}},"cat":"devtools.timeline","dur":580,"name":"FunctionCall","ph":"X","pid":6728,"tdur":574,"tid":259,"ts":218693005171,"tts":3433777}, + {"args":{"microtask_count":3},"cat":"v8.execute","dur":57,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":56,"tid":259,"ts":218693005762,"tts":3434363}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":4987,"name":"RunTask","ph":"X","pid":6728,"tdur":4417,"tid":259,"ts":218693020922,"tts":3445996}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":12,"name":"EventDispatch","ph":"X","pid":6728,"tdur":9,"tid":259,"ts":218693021888,"tts":3446951}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693021919,"tts":3446980}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693021930,"tts":3446990}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693021939,"tts":3446999}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218693022435,"tts":3447439}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":228,"name":"EventDispatch","ph":"X","pid":6728,"tdur":224,"tid":259,"ts":218693023027,"tts":3447875}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693023322,"tts":3448168}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693023331,"tts":3448176}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":103958,"name":"RunTask","ph":"X","pid":6728,"tdur":92280,"tid":259,"ts":218693025921,"tts":3450426}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693026692,"tts":3451198}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":44637,"name":"EventDispatch","ph":"X","pid":6728,"tdur":41013,"tid":259,"ts":218693026723,"tts":3451229}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":44228,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40665,"tid":259,"ts":218693027113,"tts":3451559}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":44765,"name":"EventDispatch","ph":"X","pid":6728,"tdur":39141,"tid":259,"ts":218693072104,"tts":3492782}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":44447,"name":"FunctionCall","ph":"X","pid":6728,"tdur":38859,"tid":259,"ts":218693072377,"tts":3493026}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693118913,"tts":3533899}, + {"args":{"data":{"type":"change"}},"cat":"devtools.timeline","dur":9,"name":"EventDispatch","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218693118956,"tts":3533940}, + {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":35,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21,"tid":259,"ts":218693127333,"tts":3540340}, + {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693127379,"tts":3540373}, + {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693127386,"tts":3540380}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693127472,"tts":3540458}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693128724,"tts":3541595}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":9,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218693128971,"tts":3541840}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693129052,"tts":3541918}, + {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":7,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218693130676,"tts":3543391}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693130687,"tts":3543401}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130692,"tts":3543406}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693130697,"tts":3543411}, + {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130702,"tts":3543417}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130711,"tts":3543425}, + {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"mouseout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":19,"name":"EventTiming","ph":"X","pid":6728,"tdur":18,"tid":259,"ts":218693130715,"tts":3543430}, + {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"mouseover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130742,"tts":3543456}, + {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5059,"processingStart":5059,"timeStamp":5044,"type":"pointerover"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":8,"name":"EventTiming","ph":"X","pid":6728,"tdur":9,"tid":259,"ts":218693130762,"tts":3543471}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130774,"tts":3543484}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130779,"tts":3543489}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130784,"tts":3543493}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130788,"tts":3543499}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130793,"tts":3543503}, + {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"mouseover"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130798,"tts":3543508}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":283742,"name":"RunTask","ph":"X","pid":6728,"tdur":275715,"tid":259,"ts":218693130813,"tts":3543522}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693131846,"tts":3544517}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":44889,"name":"EventDispatch","ph":"X","pid":6728,"tdur":42205,"tid":259,"ts":218693131873,"tts":3544543}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":44850,"name":"FunctionCall","ph":"X","pid":6728,"tdur":42161,"tid":259,"ts":218693131892,"tts":3544567}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":41664,"name":"EventDispatch","ph":"X","pid":6728,"tdur":40920,"tid":259,"ts":218693176907,"tts":3586828}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40691,"name":"FunctionCall","ph":"X","pid":6728,"tdur":39971,"tid":259,"ts":218693177854,"tts":3587752}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":40521,"name":"EventDispatch","ph":"X","pid":6728,"tdur":39636,"tid":259,"ts":218693219028,"tts":3628207}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40472,"name":"FunctionCall","ph":"X","pid":6728,"tdur":39584,"tid":259,"ts":218693219046,"tts":3628229}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218693259541,"tts":3667837}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":29919,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29045,"tid":259,"ts":218693261216,"tts":3669474}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":29952,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29624,"tid":259,"ts":218693291210,"tts":3698603}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":29965,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29263,"tid":259,"ts":218693321461,"tts":3728534}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30171,"name":"FunctionCall","ph":"X","pid":6728,"tdur":28621,"tid":259,"ts":218693351970,"tts":3758346}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30134,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29990,"tid":259,"ts":218693382323,"tts":3787156}, + {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218693414838,"tts":1106006}, + {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218693414849,"tts":1106017}, + {"args":{"data":{"cancelable":true,"duration":392,"interactionId":0,"processingEnd":5153,"processingStart":5109,"timeStamp":5061,"type":"mousedown"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":7,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218693420021,"tts":3823806}, + {"args":{"data":{"cancelable":true,"duration":392,"interactionId":283,"processingEnd":5108,"processingStart":5063,"timeStamp":5061,"type":"pointerdown"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693420037,"tts":3823822}, + {"args":{"data":{"cancelable":true,"duration":288,"interactionId":283,"processingEnd":5213,"processingStart":5168,"timeStamp":5167,"type":"pointerup"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693420046,"tts":3823832}, + {"args":{"data":{"cancelable":true,"duration":288,"interactionId":0,"processingEnd":5255,"processingStart":5213,"timeStamp":5167,"type":"mouseup"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693420052,"tts":3823838}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":392,"totalDuration":392},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":7,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218693420065,"tts":3823850}, + {"args":{"data":{"cancelable":true,"duration":288,"interactionId":283,"processingEnd":5296,"processingStart":5256,"timeStamp":5167,"type":"click"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693420075,"tts":3823861}, + {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218693523282,"tts":1108926}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1174,"name":"RunTask","ph":"X","pid":6728,"tdur":1171,"tid":259,"ts":218693718952,"tts":4052194}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":45,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":45,"tid":259,"ts":218693720056,"tts":4053294}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1353,"name":"RunTask","ph":"X","pid":6728,"tdur":1340,"tid":259,"ts":218693720837,"tts":4054064}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":17,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":17,"tid":259,"ts":218693722139,"tts":4055353}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1577,"name":"RunTask","ph":"X","pid":6728,"tdur":1575,"tid":259,"ts":218693722300,"tts":4055446}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2875,"name":"RunTask","ph":"X","pid":6728,"tdur":2811,"tid":259,"ts":218693737654,"tts":4067878}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":612,"name":"EventDispatch","ph":"X","pid":6728,"tdur":610,"tid":259,"ts":218693737828,"tts":4068055}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218693738465,"tts":4068690}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693738488,"tts":4068712}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693738498,"tts":4068722}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693738509,"tts":4068733}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693738516,"tts":4068740}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":85859,"name":"RunTask","ph":"X","pid":6728,"tdur":85478,"tid":259,"ts":218693740542,"tts":4070701}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":40521,"name":"EventDispatch","ph":"X","pid":6728,"tdur":40285,"tid":259,"ts":218693741501,"tts":4071664}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40480,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40239,"tid":259,"ts":218693741523,"tts":4071691}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":40395,"name":"EventDispatch","ph":"X","pid":6728,"tdur":40249,"tid":259,"ts":218693782496,"tts":4112426}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40319,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40171,"tid":259,"ts":218693782553,"tts":4112485}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","stackTrace":[{"columnNumber":47,"functionName":"keepBusy","lineNumber":197,"scriptId":7,"url":"http://localhost:10200/events.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693822841,"tts":4152632}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693824210,"tts":4153995}, + {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693824223,"tts":4154008}, + {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693824231,"tts":4154015}, + {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693824236,"tts":4154020}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693824329,"tts":4154114}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693824335,"tts":4154120}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693824342,"tts":4154126}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693824969,"tts":4154754}, + {"args":{"data":{"type":"selectstart"}},"cat":"devtools.timeline","dur":640,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218693825170,"tts":4155590}, + {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5774,"timeStamp":5762,"type":"pointerout"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":6,"name":"EventTiming","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218693826959,"tts":4156737}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693826968,"tts":4156746}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693826973,"tts":4156751}, + {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"pointerover"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693826979,"tts":4156756}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693826984,"tts":4156761}, + {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693826988,"tts":4156766}, + {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"mouseout"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693826993,"tts":4156770}, + {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"mouseover"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693826998,"tts":4156776}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":281243,"name":"RunTask","ph":"X","pid":6728,"tdur":279603,"tid":259,"ts":218693827424,"tts":4157202}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":41268,"name":"EventDispatch","ph":"X","pid":6728,"tdur":41102,"tid":259,"ts":218693828313,"tts":4158094}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":41227,"name":"FunctionCall","ph":"X","pid":6728,"tdur":41057,"tid":259,"ts":218693828335,"tts":4158119}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","stackTrace":[{"columnNumber":47,"functionName":"keepBusy","lineNumber":197,"scriptId":7,"url":"http://localhost:10200/events.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693869234,"tts":4199156}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":41004,"name":"EventDispatch","ph":"X","pid":6728,"tdur":40926,"tid":259,"ts":218693869603,"tts":4199219}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40969,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40886,"tid":259,"ts":218693869619,"tts":4199239}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":40617,"name":"EventDispatch","ph":"X","pid":6728,"tdur":39761,"tid":259,"ts":218693910632,"tts":4240171}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40565,"name":"FunctionCall","ph":"X","pid":6728,"tdur":39705,"tid":259,"ts":218693910649,"tts":4240191}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":7,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218693951234,"tts":4279918}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693951244,"tts":4279927}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30452,"name":"FunctionCall","ph":"X","pid":6728,"tdur":30276,"tid":259,"ts":218693952927,"tts":4281663}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30520,"name":"FunctionCall","ph":"X","pid":6728,"tdur":30467,"tid":259,"ts":218693983542,"tts":4312110}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30943,"name":"FunctionCall","ph":"X","pid":6728,"tdur":30852,"tid":259,"ts":218694014110,"tts":4342633}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":29952,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29888,"tid":259,"ts":218694045103,"tts":4373543}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30038,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29917,"tid":259,"ts":218694075906,"tts":4404290}, + {"args":{"data":{"type":"selectionchange"}},"cat":"devtools.timeline","dur":11,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218694108737,"tts":4436850}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1225,"name":"RunTask","ph":"X","pid":6728,"tdur":1216,"tid":259,"ts":218694108840,"tts":4436950}, + {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218694110356,"tts":1117458}, + {"args":{"data":{"cancelable":true,"duration":376,"interactionId":0,"processingEnd":5859,"processingStart":5819,"timeStamp":5776,"type":"mousedown"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":11,"name":"EventTiming","ph":"X","pid":6728,"tdur":10,"tid":259,"ts":218694120963,"tts":4446667}, + {"args":{"data":{"cancelable":true,"duration":376,"interactionId":290,"processingEnd":5819,"processingStart":5778,"timeStamp":5776,"type":"pointerdown"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218694120988,"tts":4446691}, + {"args":{"data":{"cancelable":true,"duration":288,"interactionId":290,"processingEnd":5906,"processingStart":5865,"timeStamp":5863,"type":"pointerup"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218694120998,"tts":4446702}, + {"args":{"data":{"cancelable":true,"duration":288,"interactionId":0,"processingEnd":5947,"processingStart":5906,"timeStamp":5863,"type":"mouseup"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218694121004,"tts":4446708}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":372,"totalDuration":372},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":8,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218694121021,"tts":4446725}, + {"args":{"data":{"cancelable":true,"duration":288,"interactionId":290,"processingEnd":5988,"processingStart":5947,"timeStamp":5863,"type":"click"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218694121032,"tts":4446735}, + {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218694225416,"tts":1119084}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":85561,"name":"RunTask","ph":"X","pid":6728,"tdur":85443,"tid":259,"ts":218694618137,"tts":4827314}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694618180,"tts":4827361}, + {"args":{"data":{"type":"keydown"}},"cat":"devtools.timeline","dur":41170,"name":"EventDispatch","ph":"X","pid":6728,"tdur":41133,"tid":259,"ts":218694618199,"tts":4827378}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40763,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40721,"tid":259,"ts":218694618582,"tts":4827766}, + {"args":{"data":{"type":"keypress"}},"cat":"devtools.timeline","dur":44037,"name":"EventDispatch","ph":"X","pid":6728,"tdur":43953,"tid":259,"ts":218694659630,"tts":4868773}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40621,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40531,"tid":259,"ts":218694659648,"tts":4868796}, + {"args":{"data":{"type":"beforeinput"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218694700725,"tts":4909785}, + {"args":{"data":{"type":"textInput"}},"cat":"devtools.timeline","dur":2337,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2339,"tid":259,"ts":218694700744,"tts":4909803}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694701432,"tts":4910492}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","nodeId":5}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694701458,"tts":4910518}, + {"args":{"beginData":{"dirtyObjects":6,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","partialLayout":false,"totalObjects":24},"endData":{"layoutRoots":[{"depth":1,"nodeId":5,"quads":[[0,0,1200,0,1200,960,0,960]]}]}},"cat":"devtools.timeline","dur":226,"name":"Layout","ph":"X","pid":6728,"tdur":225,"tid":259,"ts":218694701675,"tts":4910737}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694702370,"tts":4911430}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","nodeId":5}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694702610,"tts":4911670}, + {"args":{"beginData":{"dirtyObjects":4,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","partialLayout":false,"totalObjects":22},"endData":{"layoutRoots":[{"depth":1,"nodeId":5,"quads":[[0,0,1200,0,1200,960,0,960]]}]}},"cat":"devtools.timeline","dur":54,"name":"Layout","ph":"X","pid":6728,"tdur":53,"tid":259,"ts":218694702901,"tts":4911962}, + {"args":{"data":{"type":"input"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218694703053,"tts":4912114}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":63666,"name":"RunTask","ph":"X","pid":6728,"tdur":63412,"tid":259,"ts":218694703715,"tts":4912773}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30072,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29969,"tid":259,"ts":218694704659,"tts":4913724}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30253,"name":"FunctionCall","ph":"X","pid":6728,"tdur":30167,"tid":259,"ts":218694734869,"tts":4943837}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":41264,"name":"RunTask","ph":"X","pid":6728,"tdur":41209,"tid":259,"ts":218694767552,"tts":4976350}, + {"args":{"data":{"type":"keyup"}},"cat":"devtools.timeline","dur":41211,"name":"EventDispatch","ph":"X","pid":6728,"tdur":41155,"tid":259,"ts":218694767580,"tts":4976380}, + {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40934,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40873,"tid":259,"ts":218694767601,"tts":4976405}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","stackTrace":[{"columnNumber":47,"functionName":"keepBusy","lineNumber":197,"scriptId":7,"url":"http://localhost:10200/events.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694808508,"tts":5017259}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1255,"name":"RunTask","ph":"X","pid":6728,"tdur":1255,"tid":259,"ts":218694808837,"tts":5017581}, + {"args":{"data":{"type":"selectionchange"}},"cat":"devtools.timeline","dur":11,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218694810103,"tts":5018853}, + {"args":{"data":{"cancelable":true,"duration":72,"interactionId":0,"processingEnd":6737,"processingStart":6737,"timeStamp":6737,"type":"beforeinput"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":5,"name":"EventTiming","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218694810567,"tts":5019310}, + {"args":{"data":{"cancelable":false,"duration":64,"interactionId":0,"processingEnd":6740,"processingStart":6740,"timeStamp":6739,"type":"input"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218694810575,"tts":5019318}, + {"args":{"data":{"cancelable":true,"duration":152,"interactionId":0,"processingEnd":6740,"processingStart":6696,"timeStamp":6654,"type":"keypress"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218694810580,"tts":5019323}, + {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218694810636,"tts":1124264}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":31780,"name":"RunTask","ph":"X","pid":6728,"tdur":31695,"tid":259,"ts":218694810934,"tts":5019678}, + {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30044,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29963,"tid":259,"ts":218694811038,"tts":5019787}, + {"args":{"data":{"cancelable":true,"duration":152,"interactionId":297,"processingEnd":6696,"processingStart":6655,"timeStamp":6654,"type":"keydown"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":7,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218694855393,"tts":5061261}, + {"args":{"data":{"interactionType":"keyboard","maxDuration":151,"totalDuration":226},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":7,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218694855412,"tts":5061280}, + {"args":{"data":{"cancelable":true,"duration":112,"interactionId":297,"processingEnd":6845,"processingStart":6804,"timeStamp":6769,"type":"keyup"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218694855422,"tts":5061289}, + {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218694958140,"tts":1125911}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1357,"name":"RunTask","ph":"X","pid":6728,"tdur":1357,"tid":259,"ts":218695149825,"tts":5286179}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":14,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":13,"tid":259,"ts":218695151139,"tts":5287494}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":3936,"name":"RunTask","ph":"X","pid":6728,"tdur":3809,"tid":259,"ts":218695155922,"tts":5291772}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":17,"name":"EventDispatch","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218695156787,"tts":5292628}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218695156978,"tts":5292815}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218695157013,"tts":5292851}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695157027,"tts":5292864}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695157039,"tts":5292876}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218695157339,"tts":5293175}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218695157347,"tts":5293183}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":20,"name":"EventDispatch","ph":"X","pid":6728,"tdur":13,"tid":259,"ts":218695157393,"tts":5293208}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":45737,"name":"RunTask","ph":"X","pid":6728,"tdur":45681,"tid":259,"ts":218695159871,"tts":5295594}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218695160512,"tts":5296238}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":20805,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20772,"tid":259,"ts":218695160539,"tts":5296264}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20761,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20723,"tid":259,"ts":218695160563,"tts":5296292}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":21399,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21372,"tid":259,"ts":218695181360,"tts":5317053}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21079,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21048,"tid":259,"ts":218695181375,"tts":5317072}, + {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218695203603,"tts":5339270}, + {"args":{"data":{"type":"change"}},"cat":"devtools.timeline","dur":7,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218695203615,"tts":5339282}, + {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":13,"name":"EventDispatch","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218695204656,"tts":5340324}, + {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695204672,"tts":5340339}, + {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695204682,"tts":5340349}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218695204715,"tts":5340382}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218695204750,"tts":5340417}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695204757,"tts":5340423}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695204762,"tts":5340428}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7193,"processingStart":7193,"timeStamp":7190,"type":"pointerout"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":12,"name":"EventTiming","ph":"X","pid":6728,"tdur":11,"tid":259,"ts":218695205671,"tts":5341338}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695205686,"tts":5341352}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695205691,"tts":5341357}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205696,"tts":5341362}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205701,"tts":5341368}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205705,"tts":5341372}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"mouseout"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205710,"tts":5341377}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"pointerout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205717,"tts":5341383}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695205721,"tts":5341387}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"pointerover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205726,"tts":5341392}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695205731,"tts":5341397}, + {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205736,"tts":5341402}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"mouseout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":753,"name":"EventTiming","ph":"X","pid":6728,"tdur":745,"tid":259,"ts":218695205740,"tts":5341409}, + {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"mouseover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695206501,"tts":5342163}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":168690,"name":"RunTask","ph":"X","pid":6728,"tdur":168336,"tid":259,"ts":218695206536,"tts":5342197}, + {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218695206697,"tts":5342362}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":20352,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20314,"tid":259,"ts":218695207456,"tts":5343114}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20311,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20268,"tid":259,"ts":218695207480,"tts":5343142}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":21572,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21549,"tid":259,"ts":218695227824,"tts":5363445}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21531,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21504,"tid":259,"ts":218695227837,"tts":5363462}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20806,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20763,"tid":259,"ts":218695249422,"tts":5385021}, + {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20759,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20711,"tid":259,"ts":218695249442,"tts":5385046}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695270220,"tts":5405778}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":19937,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19907,"tid":259,"ts":218695271615,"tts":5407174}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20145,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20122,"tid":259,"ts":218695292155,"tts":5427692}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20074,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20000,"tid":259,"ts":218695312340,"tts":5447860}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20421,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20300,"tid":259,"ts":218695332468,"tts":5467922}, + {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20345,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20313,"tid":259,"ts":218695353108,"tts":5488447}, + {"args":{"data":{"cancelable":true,"duration":224,"interactionId":0,"processingEnd":7461,"processingStart":7440,"timeStamp":7416,"type":"mousedown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":7,"name":"EventTiming","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218695389475,"tts":5521807}, + {"args":{"data":{"cancelable":true,"duration":224,"interactionId":4009,"processingEnd":7440,"processingStart":7419,"timeStamp":7416,"type":"pointerdown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218695389492,"tts":5521823}, + {"args":{"data":{"cancelable":true,"duration":176,"interactionId":4009,"processingEnd":7486,"processingStart":7466,"timeStamp":7465,"type":"pointerup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695389501,"tts":5521833}, + {"args":{"data":{"cancelable":true,"duration":176,"interactionId":0,"processingEnd":7508,"processingStart":7486,"timeStamp":7465,"type":"mouseup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":9,"name":"EventTiming","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218695389506,"tts":5521838}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":220,"totalDuration":220},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":420,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":420,"tid":259,"ts":218695389529,"tts":5521861}, + {"args":{"data":{"cancelable":true,"duration":176,"interactionId":4009,"processingEnd":7529,"processingStart":7508,"timeStamp":7465,"type":"click"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695389953,"tts":5522284}, + {"args":{"sync_id":"__lighthouseTimespanStart__"},"cat":"__metadata","name":"clock_sync","ph":"c","pid":6693,"tid":259,"ts":218690474893,"tts":887163}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218690475029}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218691016974}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218691801075}, + {"args":{"snapshot":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAHyARgDASIAAhEBAxEB/8QAHAABAAICAwEAAAAAAAAAAAAAAAQFBggBAgMH/8QASBAAAQMCAwIJCQcDAgUEAwAAAAECAwQRBRIhBjETFBVBVZGy0dIWIlFUYXSSlKEHMjU2cYGTI8HwUrEIJCVCYjdDZHKis+H/xAAbAQEAAgMBAQAAAAAAAAAAAAAAAgUBAwQGB//EADgRAAIBAgIHBwMEAQMFAAAAAAABAgMRBBIFEyExUVJxFUGRscHR8DJhoRQiM4HxI0LhQ2JjgpL/2gAMAwEAAhEDEQA/AMIBHq6ri8kDODe/hX5bt/7fap7o5qqiIqXX2n0VSTbXA9mpJuxyDhVRN6ohErcQjpZqVjmq5Kh+RrmroiiU4wV5MSkoq7JgOEciqqIqXTegRUVVRFS6bzNzJyAioqXRUVPYcZm3VLpdN+u4XByDhHIu5UGZtkXMll3ai4OQeFTVQ00TZJXojXORqc91VbHNXVQ0lO6eoejI271MOcVe73GHJK93uPYEKLEY34lLR5Va5jEfmVdFRT0SrTj76ZY3plZn4Rfu/oRVWD3Pvt/ZhVIvv+xJBwjkW9lRbBHtVFVHIqJ7SdyRyADJkAAAAAAAAAAAAAAAAAAAAAAAAAAApNoo3vq8LcxjnIyfM5WpeyaXKCko5Y5aaVKeRsja1zldlXSPT6bzOgcFbAqrPO382exyVMIqk81/mz2Mc2tycawlZG5mcMqOS17pZNCvhppmvo1bDI2BK50jG5V8xn9jKayhgrJIXztVXQrmYqOVLKSjE8FrKspydt1vx7GJ4XPUcm/mz2MJom1a4jQvZBNEiLO1yOaqql0XLmdz69R2jpZ37PTNhgnZijY1Y+6aKme667lVUuZoDC0ekmnLff8AKS2ffYYWDSVm/ll7FVgMaIyaRvCokitXK9mRGray2QqMDoZZbRYikyTtWRsiZLNejudXc/sMsBueEi8t3u/N9pteHTy37jDkw7EG7O1UbWKtRF/SitormZ7qv7pp+wq6ThKenWOOd6PqGPc1Y1ajUtZ1k9G4zEGp6Pi1a/dbwNTwcWrX7rGFzUj0pZWpTvWKOvztajF0jvzJ6C22tgfVYDaCFzlRzHIxG6ol05i+BKOBjGEoX+pWJLCpRlG+9WMMxSlWpq66RtK/LxVrYkVi6Oum72nSqgnklqHcDKqvoWsvlXV/m/XQzYGuWjoybebf/wA+5CWCUru+/wD59zBFpn07Kl2WaCJ1E1HPa1fvpa57YWlJNFiMiqszpIWItPExzVREREVUVUTeqXMwqqeKqgfDUMR8T97V5ziGliik4RqOWS2XM5yuW3o1ILR7jJWat/n+u8isG4y2PZ/n3OaRGpSwoxrmNRiWa7emm5T1ALRKysd6VlYAAyZAAAAAAAAAAAAAAAAAAAAAAAAMg2T2SxPal1SmFpD/AMujVfwr8u+9raexS9j+yzHpVtFNhr1urbNqb6pvTcZB9g6sjgxxahzo4pkZG19l1VEdey+lMydaGVSbNxyJT2xangdA1WN4vTLHmTg8l3Ki3VV3r+mh5bSGmamHxEqUZJJexS4rGV6dVxgti+x86T7JNpFVUTiKq1bLafcvUYrtNs7XbOYmygxFI+HcxJE4N2ZLKqon+x9xTAnQ4ilRBjCo2WphkmYivajGMhSNzGpqqo7Ki2VdFst9LGGfa9hlfiu10NXhdJNVQNp2NV7GKqXRzlt9TOj9N66uoVpxUf6RGjjcTNtW22duvcfLqiGSnpm1EzVZA5VRJHJZqqm/U8WPa9uZjkcnpRbmUbS4RtNj0L2VGGTs/p8GxscOVjEsu5qaJdVVV9pj79hNoXSNe2hqm5b6cGq70X0r6Vv+xcz0jQT2Ti//AGR04GvipUk8VFKX2/y/MjLIxL3e3Rcu/n9AfIyO2dzW3WyXW11PZv2fY+iJ/wAnWI5ERFcka3Xdrv8AZ9SUmxGPcBDHydUpkdmX+mq3XX0qRWkqL3zj/wDS9zsVVvevyVqTwqxHJKxWquW+ZLX9B2jeyRuaNyOb6UW5KfsPjcVA6OSgqmxMekv3F81rVRbJrfmKGPCnsRreHuxLpltvu7N6TbSxWt207SX2a3hVJvci0dLG16Mc9qPXc1V1U7FO3CJcjUdVKr0Zlz5dd2/eezMNc12ZJcq3aqWutrXvvVd9zYqlTvh+TKnPviWQAOg3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH2j7D4Xz7N4tHC9zJ1dNwTmyKxc+SLLqipz2Ppz6nFUmdFStZwbHujjc+yo9EVFRzlct7WVU51VWqvOar0OLV9BE6KkqpYo3OzKxF0vuvb0kjyjxb16X6dx5fF6ExFWvOrBxtJ3234dCrxGjnWqOeaxtTg8+JOq2x4isKRIxXudlRFveyN0VU9K3vzJ6S84SH/VH1oadeUeLevS/TuHlHi3r0v07jn7BxXGPi/Y0dkPn/BuLwkP+qPrQcJD/qj60NOvKPFvXpfp3Dyjxb16X6dw7BxXGPi/YdkPn/BuLwkP+qPrQcJD/qj60NOvKPFvXpfp3Dyjxb16X6dw7BxXGPi/YdkPn/BtNt6+JdksQRjmK7K21l/80NQy1ftDiz2OYtdNlcitWyomi6LuKot9E6OqYNzdVr91t32v04lhhMN+mi43uAAXJ1gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEPFMSp8MjZJVK5GOXKitaq6nemrY553woyRkjURyo9ipoUe3euGQtS+ZZUVLJfceOJ1CRYTWwsndPU6yJK3RUu5LJp/t7CuqYuVOrOL3RV/wAPYcc8RKE5LuSuZWRWV0D8QkokV3DsbnVFTS36mH1edi17WTT2Smjkb/Ud9/S67/buOaz+rWT1ErpEetE1WPaqpd9k003/AKGuekZLdHc/f2Ncsa1uXzb7GckWvroaHglqFciSOyNVEvqYnHLiEtekddUvppEijWFytV110zaJvVdy3I9W98r81W6Raxtal2Kq2RltLJuFTSLy3jGz+4njXlvFeJmtdXQ0LY3VGZGvcjEVEvqu4kmC4g90j53VTpFqm1jbMutkZzWTdb2k2GapkxSqvUOZVRyqrI1Yq52ZdE9FiUdINzacdnd+fzs3Eo4y8rW+bfljI5q+CGvgo5Fck06KrPN0WyXXUlGDYUqPxXApXvkfP/W4dXKq2cqKiacxabSSTJitLE+Z0FK+NyJIiKqI/m3c5KnjW6cqjXekv7S3+JmGKbg5td6/KXuZKDF6imq0xWlakkssNZFlkfdW5FaiKq25lVDyppJ34xUtnqXwyRy+axWuXPHa1k5re0m8a07OPfb18iX6lp2ce+3qZadIpWSo5Y3I5GrlW3Mpg2EyzcYwlzpplWSWVkqOeqpl5k+pc7DNazC5GKjkmbIudFvpqtiNDHa6ajlte/kn6/gxSxWtko2tf2T9S2rsTpaKnfNM9eDY/I5Woq2X0HrXVcVFTLPNmyIqJ5rbrqtjB6yOOPAsShYj+G4193VdMyWO9ZNLFFi0UU02VksSxecqrrvspzvSM1e67vB7fY0vGyV9nd7+xnqLdLoDBMWklSTGZIZpkdEsKwI162uts1k5+c96+oSXGaqFa1Gf1I1a9ZFajG21aie03PSKV1l77b+vt+TY8alfZ+evsZoAiWSyAsjuAAAAAAAAAAAAAAAAAAAAAAAAAJMFI6WnWZZYo40fkvIqpdbX5kU54o31yl+J3hNbqxvYhnjuIoJXFG+uUvxO8I4o31yl+J3hGtj8TGdEUErijfXKX4neEcUb65S/E7wjWx+JjOiKCVxRvrlL8TvCOKN9cpfid4RrY/ExnRFBK4o31yl+J3hHFG+uUvxO8I1sfiYzoiglcUb65S/E7wjijfXKX4neEa2PxMZ0RQSuKN9cpfid4RxRvrlL8TvCNbH4mM6IoJXFG+uUvxO8I4o31yl+J3hGtj8TGdEUrajBqWd8yyormzLd6LbX996bi84o31yl+J3hHFG+uUvxO8JCbp1FaSv/AEyMnCeySIqIiJZNwJXFG+uUvxO8I4o31yl+J3hJ62PxMlnRFBK4o31yl+J3hHFG+uUvxO8I1sfiYzoiglcUb65S/E7wjijfXKX4neEa2PxMZ0RQSuKN9cpfid4RxRvrlL8TvCNbH4mM6IoJXFG+uUvxO8I4o31yl+J3hGtj8TGdEUErijfXKX4neEcUb65S/E7wjWx+JjOiKCVxRvrlL8TvCOKN9cpfid4RrY/ExnRFBK4o31yl+J3hHFG+uUvxO8I1sfiYzoigsaLCn1tZBS01VSvnme2Njczku5VsifdBCWJpQdpSsRdaC3s6ssuCq3/5Tewp91wb7ONnqikgfNhqPc6NrlXhZE1VP/sfCYvwpfeWdlxt7gUCNwykW3/tM7KFHperUpW1cmtr3O3AqtJVJ07ZG1tfoYiv2ZbIQwOlqMLY2NiZnOdPIiInpXzj4d9oe1+wWE1k9Hs5gUNblbl4y6omRM3OrUzaoh9X/wCInH6ug2UgwzCFzVWIy8EqM1VWoqXb9UPg2BfZauIUkkmK1jYJnLdrYm5sv6rzlKsZWjtlUfiysVavLdJ+LGFbe7PotPHXbJUkjFVEdIypmz29Ns1j7nSfZzsptNgkeKbPOVrZY1yIyVysR3tuqrp+p8MZ9k0sTHtdi0bXKujsiLpzXup9N/4bZq3Acbx3AcVljbBHC2oY5y2RfORLp7FRfoP11V7qj8WZlUxEd8n4sosc+zjEsCwWuxLEZY2thdlbE3XMl0RHIvo37zBTZf7Ya+gqdgK/i9VBK52XKjXoqr5ybjWg9LoWpOpQbm23fv29yLrRk5TpNyd9oABcFkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXOxv5uwX32HtoBsb+bsF99h7aAoNK/yrp6ldi/rXQhxr/0p1t/GW9lxsXs/tdiVDQ07MXoGTwpG1WzUy5XZbIiKrHdW/8AY1zZ+Fr7w3suPqSVdQzDEYtZAicG1qyI5UVNNVvrfennc/NznNpx2y9X6HJpRXt1foe/2uYthuP4hs0mE1LXTR1L1kisrXtWyLdzV/T6mOYdVU7qzgp3uhle7zVmRtna+m90/c6wMgfV0SrpwaPlVUcq86JvX0lbPsrQVNa2od6b6SLmcq8yannKiTSbOOgrfSZLjU9PQxsdJVP1X7jJEt1qtkKDaaSgoJoMUxV744ainSJODVXXVHc6pv3oWG0GzlFUS0VRK5rFZZEY9VyqqfvvMb+1GOBcPoKKmczK3z8iLuvfW3ouQpxTaRtr7INszDFNvNlsQ+zd2D4axUxFzGNukGVFyrvVf0Q+XlJhcDmVDFVE0ve2ttC7Pa6DjloNLj6I7tEu9Fv7+wABclqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXOxv5uwX32HtoBsb+bsF99h7aAoNK/wAq6epXYv610ITPwp3vDey4yR0TqaaB0sPGFaxJGtai5cy7m2RUvp6TG2/hTveG9lxl2GNlSJJHOhqLNajrqjXons5l+h14qnGTu1ezfoVOn5SSgo8X6FBtNjNZNg0bXU7KVkE7Fkjhul25t6rzkLGExBMQp34Q5Zle1ytZwmVdbaovpsv0Lja9UqaSOWJUWPVsqNci3ZuX903/ALFCiRw0P9eoZFLRNVc7tWq30aaqm7druKjF4bXR/bvRS4StKjL925iR+O1UkdJVyTvY6RjM02mVyuRNLb1tdb+wm/aEyGCsoqhrEc5LRSIqXR6Ncm/rU9NjoIqxEr5ZXpHDKqxse9XZnW3qqrfS+4vcc2cjxBaOWvqmwMmfdrUTMuTfffz2Rf3K2OGcKTk1te47cRW1lRRheyI1JDhE2yWJPjw6FlS2NkkUyIqOauZEXrv6DEjPq2gpcL2WqoaSpjlbI1rdW2cqI+/p9v0Po2OYFgmHswxsOC4UxssKvc+WjWXhHpkRIky6o5yOct9fu7l1LPA479DQtOLd2/JFng8ZHDUdqvdv0NewfapZMIhw9snkZRS1CcG5zG09lci1HBKjW25moq3vpdui3LOswrAK7ZnaCWHZuko56KORmfg0++jVVFatk0Vqsci+hyHZHT1OTSyM6lpaDdsrPgQLnAKXD5mTT4lOjWQ+dwCIuebT7rVtZNbarzL7DFq+sdBiU0bVTgmtRyNunpdp6eZOsvKk1TV2bKOlKVXETw6TThv3W8ywBULiz3xojIUbIqX1ddEs+1r29F1PSlxGSWobG+FUz66rbLoi29pqWIptpJncq0G7IswVbqyZKliIt43SqzRuttPpvudJcQmirZGKl4myq3m1Tg8367zDxEFv42MOtFFuCo5YV17QWu26Krty6b9Pb9DzjxeVkF5IeEejM665ea9k0/y6D9VT4jXw4l2DphEyVVWxk7EjakrWP866WVddbH1X7YsB2VwTZCKr2alp3V/CIipHUpKuXI5d1150Q11sbTpSjFpvMQqYqFOUYtPafLQVPKro1VFYkiImZXI76aIdFxSZ2dUiRG52oi3uqJdEXS27fqbP1NMnroFyCtdXvdBBLlSJrpUa66383+x1nxbgkkVsKua21nK7Ki7t+mm/Qk8RBbWzLqxW1stAVMuLK1ZVbE13BuVtkk+9ovs03HvSYjxip4Hg0aqNuvn36ktqFiKbdkwqsG7XJ4ANxtAAAAAAAAALnY383YL77D20A2N/N2C++w9tAUGlf5V09Suxf1roQU/CX+8N7LioSvYkLZZG5GKrkve9rOylun4S/wB4b2XFIk1CsarIjGZlW7V/UtszTdnba/Q6rtN7fmw90rYXQrJGqvaio3RN99x50eJQVSRoxVSR7UdkVF0ulzrw1BHEsd40YtnZUT02VP8AdDiGXDY3I+J0TVam9PQidwzyuv3L7jM7rajs3E4bWkRzXa6Iiroirz2/8VOzsSpWqt3rotl81dN3eh0XiCMkflYrWfes1Vte/evWebqahcvCsVGtj3tami33c3P7DGeolsaYzT4olpWwpGyTMtnOypou8zCj+2jaF1NEja2JqoxqZFpkVU0SybjBop6CWCG+RESzmtcn3Vsi/wB0JFNFSva2SBjFRuiKibjXUoxxDWbK7GudNVms1mZ1F9sW0krkayugVVbmT/lm7v8AEIUn2pYxVYfU0Tqimip6hj3ytZStZfMl3LdE3+cir+pi7IImORzY2o5EyoqJzeg6tpYG3yxMS6ZV05vR9EIrR9NWahHwMLCU1tyrwIy4pA3heFR7Fj1d5qrZNdfopJhqYpnSNjcqqzfp+vcp14jS5XJwDLO0XTf/AJc601FFTvc5quVVXNrzf5c6Y61NXtY3rWX22OYa6CadIo1cr1S9sq2ta97nizFadY43PVzXPaio1EVfRp9UJUdPDE/NHG1rrWuicx1SjpktaFmm7Td/lkMtVeKFqnFHmzEKZ7JHteqsjZwirlXcdeU6a9szr+jIvpVP7L1BuGwtZOxquRszcqoltEtbTQ9uKQaf0m3Tnt+vevWYWufAwtZ9jiCshnejYnZnKmb9jwixWB8Mb3o5qyWytRFde9lRNOfVCUynhjfmZG1rvSiHVtJTty5YWJltbTdbcZaq8UZtU4o4krIWPViq5VRbaNXfa9urU8ExalXLlc5WuVUzZVRNL+n9FJTqaFz3PdE1XOW6rbedFoqZUtwDLfp+vevWGqt9jQesvssdG4hC5bNzqvm/9qpv3HRuK0jmNcj3Wcl2+Yuu5dNPahI4pBmvwTL7r2OvEqazU4Fnm7tN3+WQw1W7mhap9jzbiNM51kc6/taqc9v9xXTxsVWPi4TIxZVutrIno9u89eJ010XgWXT2fud308T0RHxtVESyXTmM5ajTTsLTasyMlTBFRz1MDFVjbqqWVt1Tf/c6cepGyufaz1sirlW630//AISlpoVRyLGmVyKipzLdbqeMuHQSPY5G5Fat/NtqRlGqt1jDU+6x0jxOJ+WzVTRM176Ldvs/8kOr8Ypmo9fPVjWZ8yNXXn/2JPEqey2iaiqlron6dydR5wYbTRRZFYkiWtdyJuMNV9yaFqvFCpxCOnlVkjX6NRzlRL2RUd4VO7K2F6OVFVVa1XKiJzIqp/Y7yUsEi3fE1y2y3VObXT6qcspoWfdjamipu5lJpVb71YklO+88W4jTuRLOct3I3cu9eb6HPH4Ugilcrmtkvluh3Sjp0SyQste9rc5y6kgc1jXRMVrL5UtuuLVeKH+p9jxixCGaSFkN3cIq8ypl0Xf8Kkw8I6Snje17IWNc3cqJu/y6nuThnt+8zHNb9xc7G/m7BffYe2gGxv5uwX32HtoCj0r/ACrp6nDi/rXQgp+Ev94b2XERuzcsjEc3DKxzXao5sciovPe/7ktv4U73hvZcbVwSVtJhWHVNKrpGcVhbwLl81zlytsnPey3/AGN2Pxv6W37VK7e/+iOLxX6f/be7foairspWZnZaLEGsXKmVIZNEbayfQ9k2ZnbbLhVc2yKmkUiaLzf5uNtYsR2gkyK2lp0iV70dI9itRqI6yaZt1rrcvMHqZqzDoamoi4F8qZkj52pzXKxaZS/6SOJaTt/sRpg3Zupax7G4VWo16Ijv6Mm5NwTZypSJ0aYXW5HWunBSX0W6WXeljdwEu2//ABoz2p/2I0edsrOrERuGV7Vaio1Ujk00RP7J1HtR4BX0sTWMoK9URLJeF6/2N2wYWmsrzKmrmFpSzuoI0s5KxHo+t/gf3DkrEej63+B/cbpg2dvz5F4k+15cppZyViPR9b/A/uHJWI9H1v8AA/uN0wO358i8R2vLlNLOSsR6Prf4H9w5KxHo+t/gf3G6YHb8+ReI7XlymlnJWI9H1v8AA/uHJWI9H1v8D+43TA7fnyLxHa8uU0s5KxHo+t/gf3DkrEej63+B/cbpgdvz5F4jteXKaWclYj0fW/wP7hyViPR9b/A/uN0wO358i8R2vLlNLOSsR6Prf4H9w5KxHo+t/gf3G6YHb8+ReI7XlymlnJWI9H1v8D+4clYj0fW/wP7jdMDt+fIvEdry5TSzkrEej63+B/cOSsR6Prf4H9xumB2/PkXiO15cppZyViPR9b/A/uHJWI9H1v8AA/uN0wO358i8R2vLlNLOSsR6Prf4H9w5KxHo+t/gf3G6YHb8+ReI7XlymlnJWI9H1v8AA/uHJWI9H1v8D+43TA7fnyLxHa8uU0s5KxHo+t/gf3DkrEej63+B/cbpgdvz5F4jteXKaebKQTU+2OCsqIZIX8chXLIxWrbOnMoPp/2r/wDrDs1+tP8A/tUDF13iFCq1a69Wbp1daozfej48n4S/3hvZcSGY/jMbGsZi2INY1LI1Kl6IidZHT8Jf7w3suIh6CMIzvmV9pZKKle67y18osb6YxH5l/ePKLG+mMR+Zf3lUCWopcq8DOqhwRa+UWN9MYj8y/vHlFjfTGI/Mv7yqA1FLlXgNVDgi18osb6YxH5l/ePKLG+mMR+Zf3lUBqKXKvAaqHBFr5RY30xiPzL+8eUWN9MYj8y/vKoDUUuVeA1UOCLXyixvpjEfmX948osb6YxH5l/eVQGopcq8BqocEWvlFjfTGI/Mv7x5RY30xiPzL+8qgNRS5V4DVQ4ItfKLG+mMR+Zf3jyixvpjEfmX95VAailyrwGqhwRa+UWN9MYj8y/vHlFjfTGI/Mv7yqA1FLlXgNVDgi18osb6YxH5l/ePKLG+mMR+Zf3lUBqKXKvAaqHBFr5RY30xiPzL+8eUWN9MYj8y/vKoDUUuVeA1UOCLXyixvpjEfmX948osb6YxH5l/eVQGopcq8BqocEWvlFjfTGI/Mv7x5RY30xiPzL+8qgNRS5V4DVQ4ItfKLG+mMR+Zf3jyixvpjEfmX95VAailyrwGqhwRa+UWN9MYj8y/vHlFjfTGI/Mv7yqA1FLlXgNVDgi18osb6YxH5l/ePKLG+mMR+Zf3lUBqKXKvAaqHBFr5RY30xiPzL+8eUWN9MYj8y/vKoDUUuVeA1UOCMg2araqu2ywSStqZ6iRKuFqOlkV6omdNLqDw2N/N2C++w9tAUmlEo1IpcPVnFiklJJcCCn4S/3hvZcRCWn4S/3hvZcRC8p75dTuh39QADYTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALnY383YL77D20A2N/N2C++w9tAUGlf5V09Suxf1roQU/CX+8N7LiIS0/CX+8N7LiIXdPfLqd0O/qAAbCYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABc7G/m7BffYe2gGxv5uwX32HtoCg0r/KunqV2L+tdCCn4S/3hvZcRCWn4S/3hvZcRC7p75dTuh39QADYTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALnY383YL77D20A2N/N2C++w9tAUGlf5V09Suxf1roQU/CX+8N7LiIS0/CX+8N7LiIXdPfLqd0O/qAAbCYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABc7G/m7BffYe2gGxv5uwX32HtoCg0r/KunqV2L+tdCCn4S/3hvZcRCWn4S/3hvZcRC7p75dTuh39QADYTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALnY383YL77D20A2N/N2C++w9tAUGlf5V09Suxf1roQU/CX+8N7LiIS0/CX+8N7LiIXdPfLqd0O/qAAbCYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABc7G/m7BffYe2gGxv5uwX32HtoCg0r/KunqV2L+tdCEn4O/wB4b2HEMmN/B3+8N7DiGXVPfLqdsN76gAG02AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFzsb+bsF99h7aAbG/m7BffYe2gKDSv8q6epXYv610IiJ/0Ny861SJ/+CkEn0OIpS074X0dLUxuej7TI7RbW0yuQ9+V4OhsM6pfGXEc0W9l9p2LNFvYVILbleDobDOqXxjleDobDOqXxk88uXyJZnwKkFtyvB0NhnVL4xyvB0NhnVL4xnly+QzPgVILbleDobDOqXxjleDobDOqXxjPLl8hmfAqQW3K8HQ2GdUvjHK8HQ2GdUvjGeXL5DM+BUgtuV4OhsM6pfGOV4OhsM6pfGM8uXyGZ8CpBbcrwdDYZ1S+McrwdDYZ1S+MZ5cvkMz4FSC25Xg6Gwzql8Y5Xg6Gwzql8Yzy5fIZnwKkFtyvB0NhnVL4xyvB0NhnVL4xnly+QzPgVILbleDobDOqXxjleDobDOqXxjPLl8hmfAqQW3K8HQ2GdUvjHK8HQ2GdUvjGeXL5DM+BUgtuV4OhsM6pfGOV4OhsM6pfGM8uXyGZ8CpBbcrwdDYZ1S+McrwdDYZ1S+MZ5cvkMz4FSC25Xg6Gwzql8Y5Xg6Gwzql8Yzy5fIZnwKkFtyvB0NhnVL4xyvB0NhnVL4xnly+QzPgVILbleDobDOqXxjleDobDOqXxjPLl8hmfAqQW3K8HQ2GdUvjHK8HQ2GdUvjGeXL5DM+B32N/N2C++w9tAd6LaBtFWQVVPhGGNmhekjHZZNHIt0X74KvHYariJqUV3fY5a9KdSV0ijABcHaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf/2Q=="},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218692351614}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218693035617}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218693752986}, + {"args":{"snapshot":"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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH//2Q=="},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218694336891}, + {"args":{"snapshot":"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IQ0dXBUwYbRtmhekjFXSLZUW6fzAtWP05i7dOU5bfRnSNntR4APduAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/9k="},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218694854064}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218695387920}, + {"args":{"number":12},"cat":"__metadata","name":"num_cpus","ph":"M","pid":6693,"tid":128515,"ts":218695682413}, + {"args":{"number":12},"cat":"__metadata","name":"num_cpus","ph":"M","pid":6724,"tid":27395,"ts":218695682426}, + {"args":{"number":12},"cat":"__metadata","name":"num_cpus","ph":"M","pid":6728,"tid":259,"ts":218695682428}, + {"args":{"sort_index":-6},"cat":"__metadata","name":"process_sort_index","ph":"M","pid":6693,"tid":128515,"ts":218695682433}, + {"args":{"sort_index":-1},"cat":"__metadata","name":"process_sort_index","ph":"M","pid":6724,"tid":27395,"ts":218695682437}, + {"args":{"sort_index":-5},"cat":"__metadata","name":"process_sort_index","ph":"M","pid":6728,"tid":259,"ts":218695682481}, + {"args":{"labels":"Subframe: http://localhost:10200/,http://localhost:8080/"},"cat":"__metadata","name":"process_labels","ph":"M","pid":6728,"tid":259,"ts":218695682483}, + {"args":{"sort_index":-1},"cat":"__metadata","name":"thread_sort_index","ph":"M","pid":6728,"tid":259,"ts":218695682486} + ] +} \ No newline at end of file diff --git a/lighthouse-core/test/fraggle-rock/scenarios/api-test-pptr.js b/lighthouse-core/test/fraggle-rock/scenarios/api-test-pptr.js index 46b01441b29e..af994a6d311b 100644 --- a/lighthouse-core/test/fraggle-rock/scenarios/api-test-pptr.js +++ b/lighthouse-core/test/fraggle-rock/scenarios/api-test-pptr.js @@ -65,6 +65,9 @@ describe('Fraggle Rock API', () => { await setupTestPage(); + // Wait long enough to ensure a paint after button interaction. + await state.page.waitForTimeout(200); + const result = await run.endTimespan(); if (!result) throw new Error('Lighthouse failed to produce a result'); @@ -118,6 +121,9 @@ describe('Fraggle Rock API', () => { await page.click('button'); await page.waitForSelector('input'); + // Wait long enough to ensure a paint after button interaction. + await page.waitForTimeout(200); + const result = await run.endTimespan(); if (!result) throw new Error('Lighthouse failed to produce a result'); diff --git a/shared/localization/locales/en-US.json b/shared/localization/locales/en-US.json index f706382e68ec..9a407772a9ae 100644 --- a/shared/localization/locales/en-US.json +++ b/shared/localization/locales/en-US.json @@ -1184,6 +1184,9 @@ "lighthouse-core/audits/metrics/cumulative-layout-shift.js | description": { "message": "Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more](https://web.dev/cls/)." }, + "lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js | description": { + "message": "Interaction to Next Paint measures page responsiveness, how long it takes the page to visibly respond to user input. [Learn more](https://web.dev/inp/)." + }, "lighthouse-core/audits/metrics/first-contentful-paint.js | description": { "message": "First Contentful Paint marks the time at which the first text or image is painted. [Learn more](https://web.dev/first-contentful-paint/)." }, @@ -1955,6 +1958,9 @@ "lighthouse-core/lib/i18n/i18n.js | imageResourceType": { "message": "Image" }, + "lighthouse-core/lib/i18n/i18n.js | interactionToNextPaint": { + "message": "Interaction to Next Paint" + }, "lighthouse-core/lib/i18n/i18n.js | interactiveMetric": { "message": "Time to Interactive" }, diff --git a/shared/localization/locales/en-XL.json b/shared/localization/locales/en-XL.json index cbd2350b0212..8a7093befc5c 100644 --- a/shared/localization/locales/en-XL.json +++ b/shared/localization/locales/en-XL.json @@ -1184,6 +1184,9 @@ "lighthouse-core/audits/metrics/cumulative-layout-shift.js | description": { "message": "Ĉúm̂úl̂át̂ív̂é L̂áŷóût́ Ŝh́îf́t̂ ḿêáŝúr̂éŝ t́ĥé m̂óv̂ém̂én̂t́ ôf́ v̂íŝíb̂ĺê él̂ém̂én̂t́ŝ ẃît́ĥín̂ t́ĥé v̂íêẃp̂ór̂t́. [L̂éâŕn̂ ḿôŕê](https://web.dev/cls/)." }, + "lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js | description": { + "message": "Îńt̂ér̂áĉt́îón̂ t́ô Ńêx́t̂ Ṕâín̂t́ m̂éâśûŕêś p̂áĝé r̂éŝṕôńŝív̂én̂éŝś, ĥóŵ ĺôńĝ ít̂ t́âḱêś t̂h́ê ṕâǵê t́ô v́îśîb́l̂ý r̂éŝṕôńd̂ t́ô úŝér̂ ín̂ṕût́. [L̂éâŕn̂ ḿôŕê](https://web.dev/inp/)." + }, "lighthouse-core/audits/metrics/first-contentful-paint.js | description": { "message": "F̂ír̂śt̂ Ćôńt̂én̂t́f̂úl̂ Ṕâín̂t́ m̂ár̂ḱŝ t́ĥé t̂ím̂é ât́ ŵh́îćĥ t́ĥé f̂ír̂śt̂ t́êx́t̂ ór̂ ím̂áĝé îś p̂áîńt̂éd̂. [Ĺêár̂ń m̂ór̂é](https://web.dev/first-contentful-paint/)." }, @@ -1955,6 +1958,9 @@ "lighthouse-core/lib/i18n/i18n.js | imageResourceType": { "message": "Îḿâǵê" }, + "lighthouse-core/lib/i18n/i18n.js | interactionToNextPaint": { + "message": "Îńt̂ér̂áĉt́îón̂ t́ô Ńêx́t̂ Ṕâín̂t́" + }, "lighthouse-core/lib/i18n/i18n.js | interactiveMetric": { "message": "T̂ím̂é t̂ó Îńt̂ér̂áĉt́îv́ê" }, diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-navigation-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-navigation-expected.txt index a58f871acd42..f86145ab0f0b 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-navigation-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-navigation-expected.txt @@ -34,7 +34,7 @@ Computing artifact: NetworkRecords$M Get webapp installability errors Getting browser version Collect stacks -Computing artifact: ProcessedTrace$f +Computing artifact: ProcessedTrace$g Computing artifact: ProcessedNavigation$7 Get webapp manifest Audit phase diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt index 3190c6a8e4bb..68cf33afc720 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt @@ -121,7 +121,7 @@ Getting browser version Gathering: TapTargets Gathering: Accessibility Gathering: TraceElements -Computing artifact: ProcessedTrace$f +Computing artifact: ProcessedTrace$g Computing artifact: ProcessedNavigation$7 Gathering: InspectorIssues Gathering: SourceMaps diff --git a/types/artifacts.d.ts b/types/artifacts.d.ts index 75263ca5a94d..429552a1aa0e 100644 --- a/types/artifacts.d.ts +++ b/types/artifacts.d.ts @@ -959,6 +959,9 @@ export interface TraceEvent { compositeFailed?: number; unsupportedProperties?: string[]; size?: number; + /** Responsiveness data. */ + interactionType?: 'drag'|'keyboard'|'tapOrClick'; + maxDuration?: number; }; frame?: string; name?: string; From f9d7c3b6f32d9398cb2de33e6b0739634c15c671 Mon Sep 17 00:00:00 2001 From: Brendan Kenny Date: Fri, 6 May 2022 12:45:14 -0500 Subject: [PATCH 03/33] core(responsiveness): use raw trace event (#13970) --- .../experimental-interaction-to-next-paint.js | 12 +++++---- .../computed/metrics/responsiveness.js | 27 ++++++++++--------- .../computed/metrics/responsiveness-test.js | 20 +++++++------- types/artifacts.d.ts | 17 ++++++++++++ 4 files changed, 48 insertions(+), 28 deletions(-) diff --git a/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js b/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js index 2ef0c4ae2d42..1e23e3717ba1 100644 --- a/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js +++ b/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js @@ -63,19 +63,21 @@ class ExperimentalInteractionToNextPaint extends Audit { const trace = artifacts.traces[Audit.DEFAULT_PASS]; const metricData = {trace, settings}; - const metricResult = await ComputedResponsivenes.request(metricData, context); + const responsivenessEvent = await ComputedResponsivenes.request(metricData, context); // TODO: include the no-interaction state in the report instead of using n/a. - if (metricResult === null) { + if (responsivenessEvent === null) { return {score: null, notApplicable: true}; } + const timing = responsivenessEvent.args.data.maxDuration; + return { score: Audit.computeLogNormalScore({p10: context.options.p10, median: context.options.median}, - metricResult.timing), - numericValue: metricResult.timing, + timing), + numericValue: timing, numericUnit: 'millisecond', - displayValue: str_(i18n.UIStrings.ms, {timeInMs: metricResult.timing}), + displayValue: str_(i18n.UIStrings.ms, {timeInMs: timing}), }; } } diff --git a/lighthouse-core/computed/metrics/responsiveness.js b/lighthouse-core/computed/metrics/responsiveness.js index 56bc33f03ce8..97a283c7d06e 100644 --- a/lighthouse-core/computed/metrics/responsiveness.js +++ b/lighthouse-core/computed/metrics/responsiveness.js @@ -11,24 +11,25 @@ * user input in the provided trace). */ +/** @typedef {LH.Trace.CompleteEvent & {name: 'Responsiveness.Renderer.UserInteraction', args: {frame: string, data: {interactionType: 'drag'|'keyboard'|'tapOrClick', maxDuration: number}}}} ResponsivenessEvent */ + const makeComputedArtifact = require('../computed-artifact.js'); const ProcessedTrace = require('../processed-trace.js'); class Responsiveness { /** * @param {LH.Artifacts.ProcessedTrace} processedTrace - * @return {{timing: number}|null} + * @return {ResponsivenessEvent|null} */ static getHighPercentileResponsiveness(processedTrace) { - const durations = processedTrace.frameTreeEvents + const responsivenessEvents = processedTrace.frameTreeEvents // https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/timing/responsiveness_metrics.cc;l=146-150;drc=a1a2302f30b0a58f7669a41c80acdf1fa11958dd - .filter(e => e.name === 'Responsiveness.Renderer.UserInteraction') - .map(evt => evt.args.data?.maxDuration) - .filter(/** @return {duration is number} */duration => duration !== undefined) - .sort((a, b) => b - a); + .filter(/** @return {e is ResponsivenessEvent} */ e => { + return e.name === 'Responsiveness.Renderer.UserInteraction'; + }).sort((a, b) => b.args.data.maxDuration - a.args.data.maxDuration); // If there were no interactions with the page, the metric is N/A. - if (durations.length === 0) { + if (responsivenessEvents.length === 0) { return null; } @@ -36,17 +37,15 @@ class Responsiveness { // keeps the 10 worst events around, so it can never be more than the 10th from // last array element. To keep things simpler, sort desc and pick from front. // See https://source.chromium.org/chromium/chromium/src/+/main:components/page_load_metrics/browser/responsiveness_metrics_normalization.cc;l=45-59;drc=cb0f9c8b559d9c7c3cb4ca94fc1118cc015d38ad - const index = Math.min(9, Math.floor(durations.length / 50)); + const index = Math.min(9, Math.floor(responsivenessEvents.length / 50)); - return { - timing: durations[index], - }; + return responsivenessEvents[index]; } /** * @param {{trace: LH.Trace, settings: Immutable}} data * @param {LH.Artifacts.ComputedContext} context - * @return {Promise} + * @return {Promise} */ static async compute_(data, context) { if (data.settings.throttlingMethod === 'simulate') { @@ -54,7 +53,9 @@ class Responsiveness { } const processedTrace = await ProcessedTrace.request(data.trace, context); - return Responsiveness.getHighPercentileResponsiveness(processedTrace); + const event = Responsiveness.getHighPercentileResponsiveness(processedTrace); + + return JSON.parse(JSON.stringify(event)); } } diff --git a/lighthouse-core/test/computed/metrics/responsiveness-test.js b/lighthouse-core/test/computed/metrics/responsiveness-test.js index 93aaace17901..38b194043c25 100644 --- a/lighthouse-core/test/computed/metrics/responsiveness-test.js +++ b/lighthouse-core/test/computed/metrics/responsiveness-test.js @@ -76,8 +76,8 @@ describe('Metric: Responsiveness', () => { settings: {throttlingMethod: 'provided'}, }; const context = {computedCache: new Map()}; - const result = await Responsiveness.request(metricInputData, context); - expect(result).toEqual(null); + const event = await Responsiveness.request(metricInputData, context); + expect(event).toEqual(null); }); it('should select the 98th percentile interaction', async () => { @@ -102,8 +102,8 @@ describe('Metric: Responsiveness', () => { } const context = {computedCache: new Map()}; - const result = await Responsiveness.request(metricInputData, context); - assert.equal(result.timing, expectedTiming, `error at ${eventCount} events`); + const event = await Responsiveness.request(metricInputData, context); + assert.equal(event.args.data.maxDuration, expectedTiming, `error at ${eventCount} events`); } }); @@ -131,8 +131,8 @@ describe('Metric: Responsiveness', () => { settings: {throttlingMethod: 'provided'}, }; const context = {computedCache: new Map()}; - const result = await Responsiveness.request(metricInputData, context); - expect(result).toEqual({timing: 49}); + const event = await Responsiveness.request(metricInputData, context); + expect(event.args.data).toMatchObject({maxDuration: 49}); }); it('should throw on attempting with a simulated timespan', async () => { @@ -150,8 +150,8 @@ describe('Metric: Responsiveness', () => { settings: {throttlingMethod: 'provided'}, }; const context = {computedCache: new Map()}; - const result = await Responsiveness.request(metricInputData, context); - expect(result).toEqual({timing: 392}); + const event = await Responsiveness.request(metricInputData, context); + expect(event.args.data).toMatchObject({maxDuration: 392}); }); it('evaluates from a real trace with no interaction events', async () => { @@ -160,7 +160,7 @@ describe('Metric: Responsiveness', () => { settings: {throttlingMethod: 'provided'}, }; const context = {computedCache: new Map()}; - const result = await Responsiveness.request(metricInputData, context); - expect(result).toEqual(null); + const event = await Responsiveness.request(metricInputData, context); + expect(event).toEqual(null); }); }); diff --git a/types/artifacts.d.ts b/types/artifacts.d.ts index 429552a1aa0e..fb2377f64f6c 100644 --- a/types/artifacts.d.ts +++ b/types/artifacts.d.ts @@ -980,6 +980,23 @@ export interface TraceEvent { }; } +declare module Trace { + /** + * Base event of a `ph: 'X'` 'complete' event. Extend with `name` and `args` as + * needed. + */ + interface CompleteEvent { + ph: 'X'; + cat: string; + pid: number; + tid: number; + dur: number; + ts: number; + tdur: number; + tts: number; + } +} + /** * A record of DevTools Debugging Protocol events. */ From b342d88fd70f99617eca4dab2a599e519b78f26f Mon Sep 17 00:00:00 2001 From: Adam Raine <6752989+adamraine@users.noreply.github.com> Date: Mon, 2 May 2022 10:11:40 -0700 Subject: [PATCH 04/33] report: hide disclaimer text in timespan (#13931) --- .../renderer/performance-category-renderer.js | 24 ++++++++++--------- .../performance-category-renderer-test.js | 11 +++++++++ 2 files changed, 24 insertions(+), 11 deletions(-) diff --git a/report/renderer/performance-category-renderer.js b/report/renderer/performance-category-renderer.js index 014bdd6a02fc..c9df9977fcb7 100644 --- a/report/renderer/performance-category-renderer.js +++ b/report/renderer/performance-category-renderer.js @@ -206,17 +206,19 @@ export class PerformanceCategoryRenderer extends CategoryRenderer { metricsBoxesEl.appendChild(this._renderMetric(item)); }); - const descriptionEl = this.dom.find('.lh-category-header__description', element); - const estValuesEl = this.dom.createChildOf(descriptionEl, 'div', 'lh-metrics__disclaimer'); - const disclaimerEl = this.dom.convertMarkdownLinkSnippets(strings.varianceDisclaimer); - estValuesEl.appendChild(disclaimerEl); - - // Add link to score calculator. - const calculatorLink = this.dom.createChildOf(estValuesEl, 'a', 'lh-calclink'); - calculatorLink.target = '_blank'; - calculatorLink.textContent = strings.calculatorLink; - this.dom.safelySetHref(calculatorLink, this._getScoringCalculatorHref(category.auditRefs)); - + // Only add the disclaimer with the score calculator link if the category was rendered with a score gauge. + if (element.querySelector('.lh-gauge__wrapper')) { + const descriptionEl = this.dom.find('.lh-category-header__description', element); + const estValuesEl = this.dom.createChildOf(descriptionEl, 'div', 'lh-metrics__disclaimer'); + const disclaimerEl = this.dom.convertMarkdownLinkSnippets(strings.varianceDisclaimer); + estValuesEl.appendChild(disclaimerEl); + + // Add link to score calculator. + const calculatorLink = this.dom.createChildOf(estValuesEl, 'a', 'lh-calclink'); + calculatorLink.target = '_blank'; + calculatorLink.textContent = strings.calculatorLink; + this.dom.safelySetHref(calculatorLink, this._getScoringCalculatorHref(category.auditRefs)); + } metricsGroupEl.classList.add('lh-audit-group--metrics'); element.appendChild(metricsGroupEl); diff --git a/report/test/renderer/performance-category-renderer-test.js b/report/test/renderer/performance-category-renderer-test.js index 0ad0281407db..42a17099efca 100644 --- a/report/test/renderer/performance-category-renderer-test.js +++ b/report/test/renderer/performance-category-renderer-test.js @@ -107,6 +107,17 @@ describe('PerfCategoryRenderer', () => { assert.strictEqual(new URL(calcLink.href).hostname, 'googlechrome.github.io'); }); + it('does not render disclaimer if there is no category gauge', () => { + // Timespan mode uses a category fraction instead of a gauge. + const categoryDOM = renderer.render( + category, + sampleResults.categoryGroups, + {gatherMode: 'timespan'} + ); + const disclaimerEl = categoryDOM.querySelector('.lh-metrics__disclaimer'); + assert.ok(!disclaimerEl); + }); + it('ignores hidden audits', () => { const categoryDOM = renderer.render(category, sampleResults.categoryGroups); From a3a6aaba3876aba3f49414e540b303ad2f53f4d4 Mon Sep 17 00:00:00 2001 From: Connor Clark Date: Wed, 4 May 2022 14:00:15 -0700 Subject: [PATCH 05/33] tests: rebaseline webtests (#13963) --- .../lighthouse/lighthouse-block-url-expected.txt | 4 ++-- .../lighthouse-clear-data-warning-expected.txt | 4 ++-- .../lighthouse-emulate-run-expected.txt | 4 ++-- .../lighthouse/lighthouse-flags-run-expected.txt | 4 ++-- .../lighthouse/lighthouse-i18n-run-expected.txt | 4 ++-- .../lighthouse-limited-run-expected.txt | 4 ++-- .../lighthouse-prevent-run-expected.txt | 16 ++++++++-------- ...lighthouse-successful-navigation-expected.txt | 4 ++-- .../lighthouse-successful-run-expected.txt | 4 ++-- .../lighthouse-view-trace-run-expected.txt | 4 ++-- 10 files changed, 26 insertions(+), 26 deletions(-) diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-block-url-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-block-url-expected.txt index 87e2a025b89e..9904d8b7734c 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-block-url-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-block-url-expected.txt @@ -3,10 +3,10 @@ Tests that Lighthouse block requests specified in DevTools BlockedURLsPane. ========== Lighthouse Start Audit State ========== [x] Performance -[ ] Progressive Web App -[ ] Best practices [ ] Accessibility +[ ] Best practices [ ] SEO +[ ] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-clear-data-warning-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-clear-data-warning-expected.txt index 2a5ad0c958aa..58d63c60044d 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-clear-data-warning-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-clear-data-warning-expected.txt @@ -3,10 +3,10 @@ Tests that Lighthouse panel displays a warning when important data may affect pe ========== Lighthouse Start Audit State ========== [x] Performance -[ ] Progressive Web App -[ ] Best practices [ ] Accessibility +[ ] Best practices [ ] SEO +[ ] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-emulate-run-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-emulate-run-expected.txt index bf70421146fd..e3c21aa05e35 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-emulate-run-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-emulate-run-expected.txt @@ -3,10 +3,10 @@ Tests that mobile emulation works. ========== Lighthouse Start Audit State ========== [x] Performance -[x] Progressive Web App -[x] Best practices [x] Accessibility +[x] Best practices [x] SEO +[x] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-flags-run-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-flags-run-expected.txt index c6c79b4a8e4c..d2e976e49d70 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-flags-run-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-flags-run-expected.txt @@ -3,10 +3,10 @@ Tests that lighthouse panel passes flags. ========== Lighthouse Start Audit State ========== [x] Performance -[x] Progressive Web App -[x] Best practices [x] Accessibility +[x] Best practices [x] SEO +[x] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-i18n-run-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-i18n-run-expected.txt index dc3f16612162..f7cc847c5c4b 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-i18n-run-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-i18n-run-expected.txt @@ -3,10 +3,10 @@ Tests that Lighthouse report is translated. ========== Lighthouse Start Audit State ========== [x] Performance -[ ] Progressive Web App -[ ] Best practices [ ] Accessibility +[ ] Best practices [ ] SEO +[ ] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-limited-run-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-limited-run-expected.txt index ea5ff4a5e466..fcb68be028e8 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-limited-run-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-limited-run-expected.txt @@ -3,10 +3,10 @@ Tests that audits panel works when only the pwa category is selected. ========== Lighthouse Start Audit State ========== [ ] Performance -[x] Progressive Web App -[ ] Best practices [ ] Accessibility +[ ] Best practices [ ] SEO +[x] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-prevent-run-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-prevent-run-expected.txt index eed89838432f..a043596faea0 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-prevent-run-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-prevent-run-expected.txt @@ -6,10 +6,10 @@ Tests that audits panel prevents run of unauditable pages. ========== Lighthouse Start Audit State ========== [ ] Performance -[ ] Progressive Web App -[ ] Best practices [ ] Accessibility +[ ] Best practices [ ] SEO +[ ] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage @@ -22,10 +22,10 @@ Generate report: disabled visible ========== Lighthouse Start Audit State ========== [x] Performance -[ ] Progressive Web App -[ ] Best practices [ ] Accessibility +[ ] Best practices [ ] SEO +[ ] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage @@ -37,10 +37,10 @@ Generate report: enabled visible ========== Lighthouse Start Audit State ========== [x] Performance -[ ] Progressive Web App -[ ] Best practices [ ] Accessibility +[ ] Best practices [ ] SEO +[ ] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage @@ -53,10 +53,10 @@ URL: about:blank ========== Lighthouse Start Audit State ========== [x] Performance -[ ] Progressive Web App -[ ] Best practices [ ] Accessibility +[ ] Best practices [ ] SEO +[ ] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-navigation-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-navigation-expected.txt index f86145ab0f0b..e4fd2b087e26 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-navigation-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-navigation-expected.txt @@ -3,10 +3,10 @@ Tests that navigation mode works correctly. ========== Lighthouse Start Audit State ========== [x] Performance -[x] Progressive Web App -[x] Best practices [x] Accessibility +[x] Best practices [x] SEO +[x] Progressive Web App [x] Publisher Ads [ ] Legacy navigation [x] Clear storage diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt index 68cf33afc720..917fb7fb95b6 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt @@ -3,10 +3,10 @@ Tests that audits panel works. ========== Lighthouse Start Audit State ========== [x] Performance -[x] Progressive Web App -[x] Best practices [x] Accessibility +[x] Best practices [x] SEO +[x] Progressive Web App [x] Publisher Ads [x] Legacy navigation [x] Clear storage diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-view-trace-run-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-view-trace-run-expected.txt index f6e9c25820f0..20470c9c3c0b 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-view-trace-run-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-view-trace-run-expected.txt @@ -3,10 +3,10 @@ Tests that audits panel renders View Trace button. ========== Lighthouse Start Audit State ========== [x] Performance -[ ] Progressive Web App -[ ] Best practices [ ] Accessibility +[ ] Best practices [ ] SEO +[ ] Progressive Web App [ ] Publisher Ads [x] Legacy navigation [x] Clear storage From 6e39d457dd7c1612630d9716a48b373b7c3d3540 Mon Sep 17 00:00:00 2001 From: Connor Clark Date: Fri, 22 Apr 2022 13:16:50 -0700 Subject: [PATCH 06/33] tests(smoke): support full chrome version for pruning (#13896) --- lighthouse-cli/test/smokehouse/readme.md | 9 ++-- .../test/smokehouse/report-assert.js | 25 ++++++---- .../test-definitions/byte-efficiency.js | 2 +- .../test-definitions/csp-block-all.js | 2 +- .../test-definitions/dobetterweb.js | 3 +- .../test-definitions/issues-mixed-content.js | 2 +- .../test-definitions/offline-sw-broken.js | 2 +- .../perf-diagnostics-animations.js | 2 +- .../test-definitions/perf-frame-metrics.js | 2 +- .../test-definitions/perf-trace-elements.js | 2 +- .../test/smokehouse/version-check-test.js | 45 +++++++++++++++++ .../test/smokehouse/version-check.js | 48 +++++++++++++++++++ lighthouse-core/audits/deprecations.js | 4 ++ types/smokehouse.d.ts | 2 +- 14 files changed, 127 insertions(+), 23 deletions(-) create mode 100644 lighthouse-cli/test/smokehouse/version-check-test.js create mode 100644 lighthouse-cli/test/smokehouse/version-check.js diff --git a/lighthouse-cli/test/smokehouse/readme.md b/lighthouse-cli/test/smokehouse/readme.md index ea3283277158..88035b7c79da 100644 --- a/lighthouse-cli/test/smokehouse/readme.md +++ b/lighthouse-cli/test/smokehouse/readme.md @@ -82,7 +82,8 @@ Arrays can be asserted to not match any elements using the special `_excludes` p ### Special environment checks -If an expectation requires a minimum version of Chromium, use `_minChromiumMilestone: xx` to conditionally ignore that entire object in the expectation. +If an expectation requires a minimum version of Chromium, use `_minChromiumVersion: xx.x.x.x` to conditionally ignore that entire object in the expectation. +Can be as specific as you like (`_minChromiumVersion: xx` works too). **Examples**: ```js @@ -90,7 +91,7 @@ If an expectation requires a minimum version of Chromium, use `_minChromiumMiles artifacts: { InspectorIssues: { // Mixed Content issues weren't added to the protocol until M84. - _minChromiumMilestone: 84, // The entire `InspectorIssues` is ignored for older Chrome. + _minChromiumVersion: '84', // The entire `InspectorIssues` is ignored for older Chrome. mixedContent: [ { resourceType: 'Image', @@ -111,8 +112,8 @@ If an expectation requires a minimum version of Chromium, use `_minChromiumMiles All pruning checks: -- `_minChromiumMilestone` -- `_maxChromiumMilestone` +- `_minChromiumVersion` +- `_maxChromiumVersion` - `_legacyOnly` - `_fraggleRockOnly` - `_skipInBundled` diff --git a/lighthouse-cli/test/smokehouse/report-assert.js b/lighthouse-cli/test/smokehouse/report-assert.js index cf6bec2955fa..e429529a25e1 100644 --- a/lighthouse-cli/test/smokehouse/report-assert.js +++ b/lighthouse-cli/test/smokehouse/report-assert.js @@ -14,6 +14,7 @@ import _ from 'lodash'; import log from 'lighthouse-logger'; import {LocalConsole} from './lib/local-console.js'; +import {chromiumVersionCheck} from './version-check.js'; const {cloneDeep} = _; @@ -228,22 +229,26 @@ function pruneExpectations(localConsole, lhr, expected, reportOptions) { /** * Lazily compute the Chrome version because some reports are explicitly asserting error conditions. - * @returns {number} + * @returns {string} */ - function getChromeVersion() { + function getChromeVersionString() { const userAgent = lhr.environment.hostUserAgent; - const userAgentMatch = /Chrome\/(\d+)/.exec(userAgent); // Chrome/85.0.4174.0 + const userAgentMatch = /Chrome\/([\d.]+)/.exec(userAgent); // Chrome/85.0.4174.0 if (!userAgentMatch) throw new Error('Could not get chrome version.'); - return Number(userAgentMatch[1]); + const versionString = userAgentMatch[1]; + if (versionString.split('.').length !== 4) throw new Error(`unexpected ua: ${userAgent}`); + return versionString; } /** * @param {*} obj */ function failsChromeVersionCheck(obj) { - if (obj._minChromiumMilestone && getChromeVersion() < obj._minChromiumMilestone) return true; - if (obj._maxChromiumMilestone && getChromeVersion() > obj._maxChromiumMilestone) return true; - return false; + return !chromiumVersionCheck({ + version: getChromeVersionString(), + min: obj._minChromiumVersion, + max: obj._maxChromiumVersion, + }); } /** @@ -272,7 +277,7 @@ function pruneExpectations(localConsole, lhr, expected, reportOptions) { localConsole.log([ `[${key}] failed chrome version check, pruning expectation:`, JSON.stringify(value, null, 2), - `Actual Chromium version: ${getChromeVersion()}`, + `Actual Chromium version: ${getChromeVersionString()}`, ].join(' ')); remove(key); } else if (value._legacyOnly && isFraggleRock) { @@ -308,8 +313,8 @@ function pruneExpectations(localConsole, lhr, expected, reportOptions) { delete obj._legacyOnly; delete obj._fraggleRockOnly; delete obj._skipInBundled; - delete obj._minChromiumMilestone; - delete obj._maxChromiumMilestone; + delete obj._minChromiumVersion; + delete obj._maxChromiumVersion; delete obj._runner; } diff --git a/lighthouse-cli/test/smokehouse/test-definitions/byte-efficiency.js b/lighthouse-cli/test/smokehouse/test-definitions/byte-efficiency.js index 71c5f5adc706..e5895209385d 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/byte-efficiency.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/byte-efficiency.js @@ -202,7 +202,7 @@ const expectations = { 'unused-javascript': { // ScriptParsedEvent.embedderName wasn't added to the protocol until M86. // https://chromiumdash.appspot.com/commit/52ed57138d0b83e8afd9de25e60655c6ace7527c - _minChromiumMilestone: 86, + _minChromiumVersion: '86', score: '<1', details: { // the specific ms value here is not meaningful for this smoketest diff --git a/lighthouse-cli/test/smokehouse/test-definitions/csp-block-all.js b/lighthouse-cli/test/smokehouse/test-definitions/csp-block-all.js index 9cbee86ce7cc..adaecf3d5369 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/csp-block-all.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/csp-block-all.js @@ -28,7 +28,7 @@ const blockAllExceptInlineScriptCsp = headersParam([[ */ const expectations = { artifacts: { - _minChromiumMilestone: 92, + _minChromiumVersion: '92', RobotsTxt: { status: 200, }, diff --git a/lighthouse-cli/test/smokehouse/test-definitions/dobetterweb.js b/lighthouse-cli/test/smokehouse/test-definitions/dobetterweb.js index fab2fcc12fe0..bec90ec128ff 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/dobetterweb.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/dobetterweb.js @@ -202,7 +202,7 @@ const expectations = { finalUrl: 'http://localhost:10200/dobetterweb/dbw_tester.html', audits: { 'errors-in-console': { - _minChromiumMilestone: 95, + _minChromiumVersion: '95', score: 0, details: { items: { @@ -322,6 +322,7 @@ const expectations = { }, }, { + _maxChromiumVersion: '103.0.5017.0', value: /Synchronous XMLHttpRequest on the main thread is deprecated/, source: { type: 'source-location', diff --git a/lighthouse-cli/test/smokehouse/test-definitions/issues-mixed-content.js b/lighthouse-cli/test/smokehouse/test-definitions/issues-mixed-content.js index 9648daf05c16..5c6f766ef4cf 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/issues-mixed-content.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/issues-mixed-content.js @@ -14,7 +14,7 @@ const expectations = { InspectorIssues: { mixedContentIssue: [ { - _minChromiumMilestone: 88, // We went from Warning to AutoUpgrade in https://chromium-review.googlesource.com/c/chromium/src/+/2480817 + _minChromiumVersion: '88', // We went from Warning to AutoUpgrade in https://chromium-review.googlesource.com/c/chromium/src/+/2480817 resourceType: 'Image', resolutionStatus: 'MixedContentAutomaticallyUpgraded', insecureURL: 'http://www.mixedcontentexamples.com/Content/Test/steveholt.jpg', diff --git a/lighthouse-cli/test/smokehouse/test-definitions/offline-sw-broken.js b/lighthouse-cli/test/smokehouse/test-definitions/offline-sw-broken.js index 1a1d2d5476aa..fe8b83d6c8f9 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/offline-sw-broken.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/offline-sw-broken.js @@ -55,7 +55,7 @@ const expectations = { artifacts: { InstallabilityErrors: { // COMPAT: `warn-not-offline-capable` occurs in m89 but may be cherry-picked out of m90. - _minChromiumMilestone: 91, + _minChromiumVersion: '91', errors: { length: 1, // 0: { diff --git a/lighthouse-cli/test/smokehouse/test-definitions/perf-diagnostics-animations.js b/lighthouse-cli/test/smokehouse/test-definitions/perf-diagnostics-animations.js index 2a23d73d4a73..f03587f34cdb 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/perf-diagnostics-animations.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/perf-diagnostics-animations.js @@ -24,7 +24,7 @@ const expectations = { 'non-composited-animations': { // Requires compositor failure reasons to be in the trace // https://chromiumdash.appspot.com/commit/995baabedf9e70d16deafc4bc37a2b215a9b8ec9 - _minChromiumMilestone: 86, + _minChromiumVersion: '86', score: null, displayValue: '1 animated element found', details: { diff --git a/lighthouse-cli/test/smokehouse/test-definitions/perf-frame-metrics.js b/lighthouse-cli/test/smokehouse/test-definitions/perf-frame-metrics.js index ae45e5eb098f..f59d062e0b35 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/perf-frame-metrics.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/perf-frame-metrics.js @@ -72,7 +72,7 @@ const expectations = { // // Weighted score on emulated mobile bug fixed in m92: // https://chromium.googlesource.com/chromium/src/+/042fbfb4cc6a675da0dff4bf3fc08622af42422b - _minChromiumMilestone: 92, + _minChromiumVersion: '92', firstContentfulPaint: '>5000', firstContentfulPaintAllFrames: '<5000', largestContentfulPaint: '>5000', diff --git a/lighthouse-cli/test/smokehouse/test-definitions/perf-trace-elements.js b/lighthouse-cli/test/smokehouse/test-definitions/perf-trace-elements.js index 5ea0dc9344f9..ec7d03e72e3f 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/perf-trace-elements.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/perf-trace-elements.js @@ -111,7 +111,7 @@ const expectations = { // Requires compositor failure reasons to be in the trace // for `failureReasonsMask` and `unsupportedProperties` // https://chromiumdash.appspot.com/commit/995baabedf9e70d16deafc4bc37a2b215a9b8ec9 - _minChromiumMilestone: 86, + _minChromiumVersion: '86', traceEventType: 'animation', node: { selector: 'body > div#animate-me', diff --git a/lighthouse-cli/test/smokehouse/version-check-test.js b/lighthouse-cli/test/smokehouse/version-check-test.js new file mode 100644 index 000000000000..d73963ea6c3a --- /dev/null +++ b/lighthouse-cli/test/smokehouse/version-check-test.js @@ -0,0 +1,45 @@ +/** + * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ + +import {chromiumVersionCheck, compareVersions} from './version-check.js'; + +/* eslint-env jest */ + +describe('version check', () => { + it('compareVersions', async () => { + expect(compareVersions([100, 0, 0, 0], [100, 0, 0, 0])).toBe(0); + expect(compareVersions([101, 0, 0, 0], [100, 0, 0, 0])).toBe(1); + expect(compareVersions([99, 0, 0, 0], [100, 0, 0, 0])).toBe(-1); + + expect(compareVersions([100, 0, 10, 0], [100, 0, 10, 0])).toBe(0); + expect(compareVersions([100, 0, 11, 0], [100, 0, 10, 0])).toBe(1); + expect(compareVersions([100, 0, 9, 0], [100, 0, 10, 0])).toBe(-1); + + expect(compareVersions([100, 0, 0, 0], [100])).toBe(0); + expect(compareVersions([100, 0, 0, 1], [100])).toBe(1); + expect(compareVersions([99, 0, 0, 0], [100])).toBe(-1); + }); + + it('chromiumVersionCheck', async () => { + expect(chromiumVersionCheck({version: '100'})).toBe(true); + expect(chromiumVersionCheck({version: '100', min: '100'})).toBe(true); + expect(chromiumVersionCheck({version: '100', max: '100'})).toBe(true); + expect(chromiumVersionCheck({version: '100', min: '101'})).toBe(false); + expect(chromiumVersionCheck({version: '100', max: '99'})).toBe(false); + + expect(chromiumVersionCheck({version: '100.0.2331.3'})).toBe(true); + expect(chromiumVersionCheck({version: '100.0.2331.3', min: '100.0.2331.3'})).toBe(true); + expect(chromiumVersionCheck({version: '100.0.2331.3', min: '100.0.0.0'})).toBe(true); + expect(chromiumVersionCheck({version: '100.0.2331.3', max: '100.0.3333.3'})).toBe(true); + expect(chromiumVersionCheck({version: '100.0.2331.3', min: '100.0.2331.2'})).toBe(true); + expect(chromiumVersionCheck({version: '100.0.2331.3', max: '99'})).toBe(false); + + expect(chromiumVersionCheck({ + version: '100.0.2331.3', min: '100.0.2331.0', max: '100.0.2331.10'})).toBe(true); + expect(chromiumVersionCheck({ + version: '100.3.2331.3', min: '100.0.2331.0', max: '100.0.2331.10'})).toBe(false); + }); +}); diff --git a/lighthouse-cli/test/smokehouse/version-check.js b/lighthouse-cli/test/smokehouse/version-check.js new file mode 100644 index 000000000000..9340527bc8dd --- /dev/null +++ b/lighthouse-cli/test/smokehouse/version-check.js @@ -0,0 +1,48 @@ +/** + * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ + +/** + * @fileoverview Compares chromium version strings: 103.0.5017.0 + */ + +/** + * @param {string} versionString + * @return {number[]} + */ +function parseVersion(versionString) { + const versionParts = versionString.split('.'); + return versionParts.map(Number); +} + +/** + * @param {number[]} versionA + * @param {number[]} versionB + */ +function compareVersions(versionA, versionB) { + for (let i = 0; i < versionA.length; i++) { + if ((versionA[i] ?? 0) > (versionB[i] ?? 0)) return 1; + if ((versionA[i] ?? 0) < (versionB[i] ?? 0)) return -1; + } + return 0; +} + +/** + * Returns false if fails check. + * @param {{version: string, min?: string, max?: string}} opts + */ +function chromiumVersionCheck(opts) { + const version = parseVersion(opts.version); + const min = opts.min && parseVersion(opts.min); + const max = opts.max && parseVersion(opts.max); + if (min && compareVersions(version, min) === -1) return false; + if (max && compareVersions(version, max) === 1) return false; + return true; +} + +export { + chromiumVersionCheck, + compareVersions, +}; diff --git a/lighthouse-core/audits/deprecations.js b/lighthouse-core/audits/deprecations.js index 944d84a76630..eed079389a13 100644 --- a/lighthouse-core/audits/deprecations.js +++ b/lighthouse-core/audits/deprecations.js @@ -64,6 +64,10 @@ class Deprecations extends Audit { let deprecations; if (artifacts.InspectorIssues.deprecationIssue.length) { deprecations = artifacts.InspectorIssues.deprecationIssue + // TODO: translate these strings. + // see https://github.com/GoogleChrome/lighthouse/issues/13895 + // @ts-expect-error: .type hasn't released to npm yet + .filter(deprecation => !deprecation.type || deprecation.type === 'Untranslated') .map(deprecation => { const {url, lineNumber, columnNumber} = deprecation.sourceCodeLocation; const bundle = bundles.find(bundle => bundle.script.src === url); diff --git a/types/smokehouse.d.ts b/types/smokehouse.d.ts index a60c5e3aa5a2..aaacae9856a0 100644 --- a/types/smokehouse.d.ts +++ b/types/smokehouse.d.ts @@ -27,7 +27,7 @@ declare global { export type ExpectedRunnerResult = { lhr: ExpectedLHR, - artifacts?: Partial> + artifacts?: Partial> networkRequests?: {length: number, _legacyOnly?: boolean, _fraggleRockOnly?: boolean}; } From 2e4c0d3c87f3c43fb9b4cf993463cec5376f8a93 Mon Sep 17 00:00:00 2001 From: Connor Clark Date: Thu, 5 May 2022 09:28:32 -0700 Subject: [PATCH 07/33] core(trace): add PrePaint event, renamed from UpdateLayerTree (#13950) --- lighthouse-core/lib/tracehouse/task-groups.js | 1 + 1 file changed, 1 insertion(+) diff --git a/lighthouse-core/lib/tracehouse/task-groups.js b/lighthouse-core/lib/tracehouse/task-groups.js index 3593ffbf1310..72bc92176066 100644 --- a/lighthouse-core/lib/tracehouse/task-groups.js +++ b/lighthouse-core/lib/tracehouse/task-groups.js @@ -50,6 +50,7 @@ const taskGroups = { 'UpdateLayer', 'UpdateLayerTree', 'CompositeLayers', + 'PrePaint', // New name for UpdateLayerTree: https://crrev.com/c/3519012 ], }, scriptParseCompile: { From 67100c435372ce7d5714d95571256fa387a874ac Mon Sep 17 00:00:00 2001 From: Adam Raine <6752989+adamraine@users.noreply.github.com> Date: Thu, 14 Apr 2022 12:42:08 -0400 Subject: [PATCH 08/33] core(trace-processor): ignore `navigationStart` with falsy document url (#13848) --- lighthouse-core/lib/tracehouse/trace-processor.js | 15 ++++++++++----- lighthouse-core/test/create-test-trace.js | 2 +- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/lighthouse-core/lib/tracehouse/trace-processor.js b/lighthouse-core/lib/tracehouse/trace-processor.js index 0ab02fee827d..9c3c5bb0d616 100644 --- a/lighthouse-core/lib/tracehouse/trace-processor.js +++ b/lighthouse-core/lib/tracehouse/trace-processor.js @@ -82,11 +82,15 @@ class TraceProcessor { * Returns true if the event is a navigation start event of a document whose URL seems valid. * * @param {LH.TraceEvent} event + * @return {boolean} */ static _isNavigationStartOfInterest(event) { - return event.name === 'navigationStart' && - (!event.args.data || !event.args.data.documentLoaderURL || - ACCEPTABLE_NAVIGATION_URL_REGEX.test(event.args.data.documentLoaderURL)); + if (event.name !== 'navigationStart') return false; + // COMPAT: support pre-m67 test traces before `args.data` added to all navStart events. + // TODO: remove next line when old test traces (e.g. progressive-app-m60.json) are updated. + if (event.args.data?.documentLoaderURL === undefined) return true; + if (!event.args.data?.documentLoaderURL) return false; + return ACCEPTABLE_NAVIGATION_URL_REGEX.test(event.args.data.documentLoaderURL); } /** @@ -462,8 +466,9 @@ class TraceProcessor { // If we can't find either TracingStarted event, then we'll fallback to the first navStart that // looks like it was loading the main frame with a real URL. Because the schema for this event // has changed across Chrome versions, we'll be extra defensive about finding this case. - const navStartEvt = events.find(e => Boolean(e.name === 'navigationStart' && - e.args?.data?.isLoadingMainFrame && e.args.data.documentLoaderURL)); + const navStartEvt = events.find(e => + this._isNavigationStartOfInterest(e) && e.args.data?.isLoadingMainFrame + ); // Find the first resource that was requested and make sure it agrees on the id. const firstResourceSendEvt = events.find(e => e.name === 'ResourceSendRequest'); // We know that these properties exist if we found the events, but TSC doesn't. diff --git a/lighthouse-core/test/create-test-trace.js b/lighthouse-core/test/create-test-trace.js index 3b901029d48e..7b10510b1fe8 100644 --- a/lighthouse-core/test/create-test-trace.js +++ b/lighthouse-core/test/create-test-trace.js @@ -81,7 +81,7 @@ function createTestTrace(options) { cat: 'blink.user_timing', args: { frame: rootFrame, - data: {documentLoaderURL: ''}, + data: {documentLoaderURL: 'https://example.com/'}, }, }, { name: 'TracingStartedInBrowser', From 308d15e61121ea33aa99099333447c224bb89efd Mon Sep 17 00:00:00 2001 From: Brendan Kenny Date: Tue, 26 Apr 2022 14:54:09 -0500 Subject: [PATCH 09/33] core(trace): use tracing-started event for frame tree info (#13913) --- .../lib/tracehouse/trace-processor.js | 38 ++++++++++++++----- .../metrics/cumulative-layout-shift-test.js | 1 - .../reports/sample-flow-result.json | 24 ++++++------ .../lib/tracehouse/trace-processor-test.js | 34 +++++++++++++++-- types/artifacts.d.ts | 1 + 5 files changed, 73 insertions(+), 25 deletions(-) diff --git a/lighthouse-core/lib/tracehouse/trace-processor.js b/lighthouse-core/lib/tracehouse/trace-processor.js index 9c3c5bb0d616..434bab1f16aa 100644 --- a/lighthouse-core/lib/tracehouse/trace-processor.js +++ b/lighthouse-core/lib/tracehouse/trace-processor.js @@ -612,39 +612,59 @@ class TraceProcessor { // Find the inspected frame const mainFrameIds = this.findMainFrameIds(keyEvents); - const frames = keyEvents + /** @type {Map} */ + const framesById = new Map(); + + // Begin collection of frame tree information with TracingStartedInBrowser, + // which should be present even without navigations. + const tracingStartedFrames = keyEvents + .find(e => e.name === 'TracingStartedInBrowser')?.args?.data?.frames; + if (tracingStartedFrames) { + for (const frame of tracingStartedFrames) { + framesById.set(frame.frame, { + id: frame.frame, + url: frame.url, + parent: frame.parent, + }); + } + } + + // Update known frames if FrameCommittedInBrowser events come in, typically + // with updated `url`, as well as pid, etc. Some traces (like timespans) may + // not have any committed frames. + keyEvents .filter(/** @return {evt is FrameCommittedEvent} */ evt => { return Boolean( evt.name === 'FrameCommittedInBrowser' && evt.args.data?.frame && evt.args.data.url ); - }) - .map(evt => { - return { + }).forEach(evt => { + framesById.set(evt.args.data.frame, { id: evt.args.data.frame, url: evt.args.data.url, parent: evt.args.data.parent, - }; + }); }); + const frames = [...framesById.values()]; const frameIdToRootFrameId = this.resolveRootFrames(frames); // Filter to just events matching the main frame ID, just to make sure. const frameEvents = keyEvents.filter(e => e.args.frame === mainFrameIds.frameId); // Filter to just events matching the main frame ID or any child frame IDs. - // In practice, there should always be FrameCommittedInBrowser events to define the frame tree. - // Unfortunately, many test traces do not include FrameCommittedInBrowser events due to minification. - // This ensures there is always a minimal frame tree and events so those tests don't fail. let frameTreeEvents = []; if (frameIdToRootFrameId.has(mainFrameIds.frameId)) { frameTreeEvents = keyEvents.filter(e => { return e.args.frame && frameIdToRootFrameId.get(e.args.frame) === mainFrameIds.frameId; }); } else { + // In practice, there should always be TracingStartedInBrowser/FrameCommittedInBrowser events to + // define the frame tree. Unfortunately, many test traces do not that frame info due to minification. + // This ensures there is always a minimal frame tree and events so those tests don't fail. log.warn( 'trace-of-tab', - 'frameTreeEvents may be incomplete, make sure the trace has FrameCommittedInBrowser events' + 'frameTreeEvents may be incomplete, make sure the trace has frame events' ); frameIdToRootFrameId.set(mainFrameIds.frameId, mainFrameIds.frameId); frameTreeEvents = frameEvents; diff --git a/lighthouse-core/test/computed/metrics/cumulative-layout-shift-test.js b/lighthouse-core/test/computed/metrics/cumulative-layout-shift-test.js index 4ac4835a489d..5bbf1b1d2d8b 100644 --- a/lighthouse-core/test/computed/metrics/cumulative-layout-shift-test.js +++ b/lighthouse-core/test/computed/metrics/cumulative-layout-shift-test.js @@ -304,7 +304,6 @@ describe('Metrics: CLS', () => { const cat = 'loading,rail,devtools.timeline'; trace.traceEvents.push( /* eslint-disable max-len */ - {name: 'FrameCommittedInBrowser', cat, args: {data: {frame: mainFrame, url: 'https://example.com'}}}, {name: 'FrameCommittedInBrowser', cat, args: {data: {frame: childFrame, parent: mainFrame, url: 'https://frame.com'}}}, {name: 'FrameCommittedInBrowser', cat, args: {data: {frame: otherMainFrame, url: 'https://example.com'}}}, {name: 'LayoutShift', cat, args: {frame: mainFrame, data: {had_recent_input: false, score: 1, weighted_score_delta: 1, is_main_frame: true}}}, diff --git a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json index df862f533ffe..429847d20d74 100644 --- a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json +++ b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json @@ -7997,7 +7997,7 @@ "description": "Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. [Learn more](https://web.dev/bootup-time/).", "score": 1, "scoreDisplayMode": "numeric", - "numericValue": 397.00499999999965, + "numericValue": 383.5219999999999, "numericUnit": "millisecond", "displayValue": "0.4 s", "details": { @@ -8029,26 +8029,26 @@ ], "items": [ { - "url": "Unattributable", - "total": 321.11799999999914, - "scripting": 24.528999999999996, + "url": "https://www.mikescerealshack.co/", + "total": 455.9500000000001, + "scripting": 193.52499999999992, "scriptParseCompile": 0 }, { "url": "https://www.mikescerealshack.co/_next/static/chunks/framework.9d524150d48315f49e80.js", - "total": 283.2019999999998, - "scripting": 186.7769999999998, + "total": 192.43299999999994, + "scripting": 176.82499999999996, "scriptParseCompile": 0 }, { - "url": "https://www.mikescerealshack.co/_next/static/chunks/1aeab0175d4c4d823d7a78205bceb5dd9cd36d32.a629f28ec97ae6e480bf.js", - "total": 190.22199999999992, - "scripting": 185.6989999999999, + "url": "Unattributable", + "total": 135.34700000000004, + "scripting": 13.171999999999992, "scriptParseCompile": 0 } ], "summary": { - "wastedMs": 397.00499999999965 + "wastedMs": 383.5219999999999 } } }, @@ -8705,7 +8705,7 @@ ], "items": [ { - "url": "https://www.mikescerealshack.co/_next/static/chunks/1aeab0175d4c4d823d7a78205bceb5dd9cd36d32.a629f28ec97ae6e480bf.js", + "url": "https://www.mikescerealshack.co/", "duration": 194.901, "startTime": 2256.773 } @@ -10503,7 +10503,7 @@ }, { "values": { - "timeInMs": 397.00499999999965 + "timeInMs": 383.5219999999999 }, "path": "audits[bootup-time].displayValue" } diff --git a/lighthouse-core/test/lib/tracehouse/trace-processor-test.js b/lighthouse-core/test/lib/tracehouse/trace-processor-test.js index 50c1695f7841..f92fc0e25494 100644 --- a/lighthouse-core/test/lib/tracehouse/trace-processor-test.js +++ b/lighthouse-core/test/lib/tracehouse/trace-processor-test.js @@ -210,7 +210,6 @@ describe('TraceProcessor', () => { const cat = 'loading,rail,devtools.timeline'; testTrace.traceEvents.push( /* eslint-disable max-len */ - {name: 'FrameCommittedInBrowser', cat, args: {data: {frame: mainFrame, url: 'https://example.com'}}}, {name: 'FrameCommittedInBrowser', cat, args: {data: {frame: childFrame, parent: mainFrame, url: 'https://frame.com'}}}, {name: 'FrameCommittedInBrowser', cat, args: {data: {frame: otherMainFrame, url: 'https://example.com'}}}, {name: 'Event1', cat, args: {frame: mainFrame}}, @@ -251,6 +250,37 @@ describe('TraceProcessor', () => { 'Event1', ]); }); + + it('frameTreeEvents included even if no FrameCommittedInBrowser events', () => { + const testTrace = createTestTrace({timeOrigin: 0, traceEnd: 2000}); + testTrace.traceEvents = testTrace.traceEvents + .filter(e => e.name !== 'FrameCommittedInBrowser'); + + const mainFrame = testTrace.traceEvents[0].args.frame; + const childFrame = 'CHILDFRAME'; + const otherMainFrame = 'ANOTHERTAB'; + const cat = 'loading,rail,devtools.timeline'; + + testTrace.traceEvents.find(e => e.name === 'TracingStartedInBrowser').args.data.frames.push( + {frame: childFrame, parent: mainFrame, url: 'https://frame.com'}, + {frame: otherMainFrame, url: 'https://example.com'} + ); + + testTrace.traceEvents.push( + {name: 'Event1', cat, args: {frame: mainFrame}}, + {name: 'Event2', cat, args: {frame: childFrame}}, + {name: 'Event3', cat, args: {frame: otherMainFrame}} + ); + const trace = TraceProcessor.processTrace(testTrace); + expect(trace.frameTreeEvents.map(e => e.name)).toEqual([ + 'navigationStart', + 'domContentLoadedEventEnd', + 'firstContentfulPaint', + 'firstMeaningfulPaint', + 'Event1', + 'Event2', + ]); + }); }); describe('getMainThreadTopLevelEvents', () => { @@ -639,7 +669,6 @@ Object { testTrace.traceEvents.push( /* eslint-disable max-len */ - {name: 'FrameCommittedInBrowser', cat, args: {data: {frame: mainFrame, url: 'https://example.com'}}, ts: 900, duration: 10}, {name: 'FrameCommittedInBrowser', cat, args: {data: {frame: childFrame, parent: mainFrame, url: 'https://frame.com'}}, ts: 910, duration: 10}, {name: 'firstContentfulPaint', cat, args: {frame: childFrame}, ts: 1000, duration: 10}, {name: 'firstContentfulPaint', cat, args: {frame: mainFrame}, ts: 1100, duration: 10} @@ -658,7 +687,6 @@ Object { const cat = 'loading,rail,devtools.timeline'; testTrace.traceEvents.push( /* eslint-disable max-len */ - {name: 'FrameCommittedInBrowser', cat, args: {data: {frame: mainFrame, url: 'https://example.com'}}, ts: 900, duration: 10}, {name: 'FrameCommittedInBrowser', cat, args: {data: {frame: childFrame, parent: mainFrame, url: 'https://frame.com'}}, ts: 910, duration: 10}, {name: 'largestContentfulPaint::Candidate', cat, args: {data: {size: 300}, frame: mainFrame}, ts: 1000, duration: 10}, {name: 'largestContentfulPaint::Candidate', cat, args: {data: {size: 100}, frame: childFrame}, ts: 1100, duration: 10}, diff --git a/types/artifacts.d.ts b/types/artifacts.d.ts index fb2377f64f6c..100afcbb5fba 100644 --- a/types/artifacts.d.ts +++ b/types/artifacts.d.ts @@ -923,6 +923,7 @@ export interface TraceEvent { documentLoaderURL?: string; frames?: { frame: string; + url: string; parent?: string; processId?: number; }[]; From 6c559d532046b6402e63edd219f00b97f3b27f95 Mon Sep 17 00:00:00 2001 From: Brendan Kenny Date: Thu, 28 Apr 2022 16:42:14 -0500 Subject: [PATCH 10/33] tests: update create-test-trace utility (#13942) --- lighthouse-core/test/audits/redirects-test.js | 3 +- .../metrics/cumulative-layout-shift-test.js | 2 +- lighthouse-core/test/create-test-trace.js | 52 ++++++++++--------- .../lib/tracehouse/trace-processor-test.js | 14 ++--- 4 files changed, 37 insertions(+), 34 deletions(-) diff --git a/lighthouse-core/test/audits/redirects-test.js b/lighthouse-core/test/audits/redirects-test.js index de263bb92437..eabdd8051d38 100644 --- a/lighthouse-core/test/audits/redirects-test.js +++ b/lighthouse-core/test/audits/redirects-test.js @@ -107,10 +107,11 @@ const FAILING_CLIENTSIDE = [ describe('Performance: Redirects audit', () => { const mockArtifacts = (networkRecords, finalUrl) => { const devtoolsLog = networkRecordsToDevtoolsLog(networkRecords); + const frameUrl = networkRecords[0].url; return { GatherContext: {gatherMode: 'navigation'}, - traces: {defaultPass: createTestTrace({traceEnd: 5000})}, + traces: {defaultPass: createTestTrace({frameUrl, traceEnd: 5000})}, devtoolsLogs: {defaultPass: devtoolsLog}, URL: {finalUrl}, }; diff --git a/lighthouse-core/test/computed/metrics/cumulative-layout-shift-test.js b/lighthouse-core/test/computed/metrics/cumulative-layout-shift-test.js index 5bbf1b1d2d8b..88a2ea742a3b 100644 --- a/lighthouse-core/test/computed/metrics/cumulative-layout-shift-test.js +++ b/lighthouse-core/test/computed/metrics/cumulative-layout-shift-test.js @@ -298,7 +298,7 @@ describe('Metrics: CLS', () => { it('ignores layout shift data from other tabs', async () => { const trace = createTestTrace({timeOrigin: 0, traceEnd: 2000}); - const mainFrame = trace.traceEvents[0].args.frame; + const mainFrame = trace.traceEvents.find(e => e.name === 'navigationStart').args.frame; const childFrame = 'CHILDFRAME'; const otherMainFrame = 'ANOTHERTABOPEN'; const cat = 'loading,rail,devtools.timeline'; diff --git a/lighthouse-core/test/create-test-trace.js b/lighthouse-core/test/create-test-trace.js index 7b10510b1fe8..db21ae345f7e 100644 --- a/lighthouse-core/test/create-test-trace.js +++ b/lighthouse-core/test/create-test-trace.js @@ -7,14 +7,16 @@ const pid = 1111; const tid = 222; +const browserPid = 13725; const rootFrame = '3EFC2700D7BC3F4734CAF2F726EFB78C'; -const frameUrl = 'https://example.com/'; +const defaultUrl = 'https://example.com/'; /** @typedef {{ts: number, duration: number, children?: Array}} TopLevelTaskDef */ /** @typedef {{ts: number, duration: number, url: string | undefined}} ChildTaskDef */ /** @typedef {{frame: string}} ChildFrame */ /** * @typedef TraceOptions + * @property {string} [frameUrl] * @property {number} [timeOrigin] * @property {number} [largestContentfulPaint] * @property {number} [traceEnd] @@ -33,11 +35,8 @@ function getTopLevelTask({ts, duration}) { pid, tid, ph: 'X', - cat: 'disabled-by-default-lighthouse', - args: { - src_file: '../../third_party/blink/renderer/core/fake_runner.cc', - src_func: 'FakeRunnerFinished', - }, + cat: 'disabled-by-default-devtools.timeline', + args: {}, }; } @@ -52,12 +51,11 @@ function getChildTask({ts, duration, url}) { pid, tid, ph: 'X', - cat: 'disabled-by-default-lighthouse', + cat: 'devtools.timeline', args: { - src_file: '../../third_party/blink/renderer/core/fake_runner.cc', - src_func: 'FakeRunnerFinished', data: { url, + functionName: 'fakeFunction', }, }, }; @@ -70,23 +68,13 @@ function getChildTask({ts, duration, url}) { * @param {TraceOptions} options */ function createTestTrace(options) { + const frameUrl = options.frameUrl ?? defaultUrl; const timeOrigin = (options.timeOrigin || 0) * 1000; const traceEvents = [{ - name: 'navigationStart', - ts: timeOrigin, - pid, - tid, - ph: 'R', - cat: 'blink.user_timing', - args: { - frame: rootFrame, - data: {documentLoaderURL: 'https://example.com/'}, - }, - }, { name: 'TracingStartedInBrowser', ts: timeOrigin, - pid, + pid: browserPid, tid, ph: 'I', cat: 'disabled-by-default-devtools.timeline', @@ -94,10 +82,24 @@ function createTestTrace(options) { data: { frameTreeNodeId: 6, persistentIds: true, - frames: [{frame: rootFrame, url: frameUrl, name: '', processId: pid}], + frames: [{frame: rootFrame, url: 'about:blank', name: '', processId: pid}], }, }, s: 't', + }, { + name: 'navigationStart', + ts: timeOrigin, + pid, + tid, + ph: 'R', + cat: 'blink.user_timing', + args: { + frame: rootFrame, + data: { + documentLoaderURL: frameUrl, + isLoadingMainFrame: true, + }, + }, }, { // Needed to identify main thread for TracingStartedInBrowser. name: 'thread_name', @@ -111,7 +113,7 @@ function createTestTrace(options) { // Used for identifying frame tree. name: 'FrameCommittedInBrowser', ts: timeOrigin, - pid, + pid: browserPid, tid, ph: 'I', cat: 'disabled-by-default-devtools.timeline', @@ -149,7 +151,7 @@ function createTestTrace(options) { traceEvents.push({ name: 'FrameCommittedInBrowser', ts: timeOrigin + 20, - pid, + pid: browserPid, tid, ph: 'I', cat: 'disabled-by-default-devtools.timeline', @@ -174,7 +176,7 @@ function createTestTrace(options) { tid, ph: 'R', cat: 'loading,rail,devtools.timeline', - args: {frame: rootFrame, data: {size: 50}}, + args: {frame: rootFrame, isMainFrame: true, data: {size: 50}}, }); } diff --git a/lighthouse-core/test/lib/tracehouse/trace-processor-test.js b/lighthouse-core/test/lib/tracehouse/trace-processor-test.js index f92fc0e25494..70ba35e5382c 100644 --- a/lighthouse-core/test/lib/tracehouse/trace-processor-test.js +++ b/lighthouse-core/test/lib/tracehouse/trace-processor-test.js @@ -204,7 +204,7 @@ describe('TraceProcessor', () => { describe('.processTrace() - frameTreeEvents', () => { it('frameTreeEvents excludes other frame trees', () => { const testTrace = createTestTrace({timeOrigin: 0, traceEnd: 2000}); - const mainFrame = testTrace.traceEvents[0].args.frame; + const mainFrame = testTrace.traceEvents.find(e => e.name === 'navigationStart').args.frame; const childFrame = 'CHILDFRAME'; const otherMainFrame = 'ANOTHERTAB'; const cat = 'loading,rail,devtools.timeline'; @@ -230,7 +230,7 @@ describe('TraceProcessor', () => { it('frameTreeEvents includes main frame events if no FrameCommittedInBrowser found', () => { const testTrace = createTestTrace({timeOrigin: 0, traceEnd: 2000}); - const mainFrame = testTrace.traceEvents[0].args.frame; + const mainFrame = testTrace.traceEvents.find(e => e.name === 'navigationStart').args.frame; const childFrame = 'CHILDFRAME'; const otherMainFrame = 'ANOTHERTAB'; const cat = 'loading,rail,devtools.timeline'; @@ -256,7 +256,7 @@ describe('TraceProcessor', () => { testTrace.traceEvents = testTrace.traceEvents .filter(e => e.name !== 'FrameCommittedInBrowser'); - const mainFrame = testTrace.traceEvents[0].args.frame; + const mainFrame = testTrace.traceEvents.find(e => e.name === 'navigationStart').args.frame; const childFrame = 'CHILDFRAME'; const otherMainFrame = 'ANOTHERTAB'; const cat = 'loading,rail,devtools.timeline'; @@ -566,7 +566,7 @@ Object { it('uses latest candidate', () => { const testTrace = createTestTrace({timeOrigin: 0, traceEnd: 2000}); - const frame = testTrace.traceEvents[0].args.frame; + const frame = testTrace.traceEvents.find(e => e.name === 'navigationStart').args.frame; const args = {frame, data: {size: 50}}; const cat = 'loading,rail,devtools.timeline'; testTrace.traceEvents.push( @@ -590,7 +590,7 @@ Object { it('invalidates if last event is ::Invalidate', () => { const testTrace = createTestTrace({timeOrigin: 0, traceEnd: 2000}); - const frame = testTrace.traceEvents[0].args.frame; + const frame = testTrace.traceEvents.find(e => e.name === 'navigationStart').args.frame; const args = {frame}; const cat = 'loading,rail,devtools.timeline'; testTrace.traceEvents.push( @@ -659,7 +659,7 @@ Object { it('finds FCP from all frames', () => { const testTrace = createTestTrace({timeOrigin: 0, traceEnd: 2000}); - const mainFrame = testTrace.traceEvents[0].args.frame; + const mainFrame = testTrace.traceEvents.find(e => e.name === 'navigationStart').args.frame; const childFrame = 'CHILDFRAME'; const cat = 'loading,rail,devtools.timeline'; @@ -682,7 +682,7 @@ Object { it('finds LCP from all frames', () => { const testTrace = createTestTrace({timeOrigin: 0, traceEnd: 2000}); - const mainFrame = testTrace.traceEvents[0].args.frame; + const mainFrame = testTrace.traceEvents.find(e => e.name === 'navigationStart').args.frame; const childFrame = 'CHILDFRAME'; const cat = 'loading,rail,devtools.timeline'; testTrace.traceEvents.push( From 13753eabed41aa9d51a0c62e95dc9ef406096317 Mon Sep 17 00:00:00 2001 From: Adam Raine <6752989+adamraine@users.noreply.github.com> Date: Mon, 4 Apr 2022 16:27:32 -0400 Subject: [PATCH 11/33] deps(axe-core): upgrade to 4.4.1 (#13814) --- package.json | 2 +- .../__snapshots__/report-renderer-axe-test.js.snap | 2 +- yarn.lock | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 67e25f510d59..bec2cc6f671c 100644 --- a/package.json +++ b/package.json @@ -181,7 +181,7 @@ }, "dependencies": { "@sentry/node": "^6.17.4", - "axe-core": "4.3.5", + "axe-core": "4.4.1", "chrome-launcher": "^0.15.0", "configstore": "^5.0.1", "csp_evaluator": "1.1.0", diff --git a/report/test/renderer/__snapshots__/report-renderer-axe-test.js.snap b/report/test/renderer/__snapshots__/report-renderer-axe-test.js.snap index c6c1fc89d2e4..bd1884ad4653 100644 --- a/report/test/renderer/__snapshots__/report-renderer-axe-test.js.snap +++ b/report/test/renderer/__snapshots__/report-renderer-axe-test.js.snap @@ -5,7 +5,7 @@ Array [ Object { "description": "Ensures every id attribute value is unique", "help": "id attribute value must be unique", - "helpUrl": "https://dequeuniversity.com/rules/axe/4.3/duplicate-id?application=axeAPI", + "helpUrl": "https://dequeuniversity.com/rules/axe/4.4/duplicate-id?application=axeAPI", "id": "duplicate-id", "impact": "minor", "nodes": Array [ diff --git a/yarn.lock b/yarn.lock index c22eca41c124..c0a447f2178b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2173,10 +2173,10 @@ aws4@^1.8.0: resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== -axe-core@4.3.5: - version "4.3.5" - resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.3.5.tgz#78d6911ba317a8262bfee292aeafcc1e04b49cc5" - integrity sha512-WKTW1+xAzhMS5dJsxWkliixlO/PqC4VhmO9T4juNYcaTg9jzWiJsou6m5pxWYGfigWbwzJWeFY6z47a+4neRXA== +axe-core@4.4.1: + version "4.4.1" + resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.4.1.tgz#7dbdc25989298f9ad006645cd396782443757413" + integrity sha512-gd1kmb21kwNuWr6BQz8fv6GNECPBnUasepcoLbekws23NVBLODdsClRZ+bQ8+9Uomf3Sm3+Vwn0oYG9NvwnJCw== babel-jest@^27.2.0: version "27.2.0" From b3ab2e79235354bf768af9b8223c995b1ffe6727 Mon Sep 17 00:00:00 2001 From: Connor Clark Date: Mon, 28 Mar 2022 14:16:46 -0700 Subject: [PATCH 12/33] tests: upgrade devtools web tests deps, use python3 (#13782) --- .github/workflows/devtools.yml | 2 +- .../test/chromium-web-tests/README.md | 11 ++++------- .../test/chromium-web-tests/blink-tools.patch | 19 +++++++++++++++---- .../download-blink-tools.sh | 4 ++-- .../chromium-web-tests/web-test-server.sh | 7 ++++++- 5 files changed, 28 insertions(+), 15 deletions(-) diff --git a/.github/workflows/devtools.yml b/.github/workflows/devtools.yml index 73739fa17ab3..eaff36dffb47 100644 --- a/.github/workflows/devtools.yml +++ b/.github/workflows/devtools.yml @@ -105,7 +105,7 @@ jobs: run: bash $GITHUB_WORKSPACE/lighthouse/lighthouse-core/test/chromium-web-tests/download-content-shell.sh - name: Install python deps - run: pip install six requests + run: python3 -m pip install six requests - name: Run Web Tests run: bash $GITHUB_WORKSPACE/lighthouse/lighthouse-core/test/chromium-web-tests/run-web-tests.sh diff --git a/lighthouse-core/test/chromium-web-tests/README.md b/lighthouse-core/test/chromium-web-tests/README.md index 6b83e5b564db..a131bcd86e82 100644 --- a/lighthouse-core/test/chromium-web-tests/README.md +++ b/lighthouse-core/test/chromium-web-tests/README.md @@ -21,15 +21,12 @@ SKIP_DOWNLOADS=1 yarn test-devtools ### Prerequistes
- Install `requests` - - Ensure you have `requests` module available globally on your python 2.7 install. New Macs do not come with pip for python 2.7 which is deprecated, so you might have to install that too. + Install python dependencies + Ensure you have these modules available globally on your python 3.x install: ```sh - curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py - python get-pip.py - pip -m pip install requests + python3 -m pip install requests six ```
@@ -108,7 +105,7 @@ yarn run-devtools http://example.com #### How to modify blink-tools.patch? -Simply make your changes in `.tmp/chromium-web-tests/blink_tools`, and run: `git -C .tmp/chromium-web-tests/blink_tools diff > lighthouse-core/test/chromium-web-tests/blink-tools.patch` +Simply make your changes in `.tmp/chromium-web-tests/blink_tools/latest`, and run: `git -C .tmp/chromium-web-tests/blink_tools/latest diff > lighthouse-core/test/chromium-web-tests/blink-tools.patch` #### How does the python module `typ` get added to python sys path? diff --git a/lighthouse-core/test/chromium-web-tests/blink-tools.patch b/lighthouse-core/test/chromium-web-tests/blink-tools.patch index a793b1c082cf..5ea0ac348771 100644 --- a/lighthouse-core/test/chromium-web-tests/blink-tools.patch +++ b/lighthouse-core/test/chromium-web-tests/blink-tools.patch @@ -1,8 +1,8 @@ diff --git a/third_party/blink/tools/blinkpy/web_tests/controllers/manager.py b/third_party/blink/tools/blinkpy/web_tests/controllers/manager.py -index 693a95d..7890234 100644 +index 4323c8c..23ae146 100644 --- a/third_party/blink/tools/blinkpy/web_tests/controllers/manager.py +++ b/third_party/blink/tools/blinkpy/web_tests/controllers/manager.py -@@ -452,9 +452,9 @@ class Manager(object): +@@ -485,9 +485,9 @@ class Manager(object): if (self._port.requires_http_server() or any(self._is_http_test(test) for test in tests_to_run)): self._printer.write_update('Starting HTTP server ...') @@ -16,10 +16,21 @@ index 693a95d..7890234 100644 if any(self._is_websocket_test(test) for test in tests_to_run): diff --git a/third_party/blink/tools/blinkpy/web_tests/port/base.py b/third_party/blink/tools/blinkpy/web_tests/port/base.py -index 6f5b188..0ae630e 100644 +index 8f5ff1a..b7f0ae5 100644 --- a/third_party/blink/tools/blinkpy/web_tests/port/base.py +++ b/third_party/blink/tools/blinkpy/web_tests/port/base.py -@@ -495,15 +495,15 @@ class Port(object): +@@ -63,8 +63,8 @@ from blinkpy.web_tests.port.factory import PortFactory + from blinkpy.web_tests.servers import apache_http + from blinkpy.web_tests.servers import pywebsocket + from blinkpy.web_tests.servers import wptserve +-from blinkpy.web_tests.skia_gold import blink_skia_gold_properties as sgp +-from blinkpy.web_tests.skia_gold import blink_skia_gold_session_manager as sgsm ++# from blinkpy.web_tests.skia_gold import blink_skia_gold_properties as sgp ++# from blinkpy.web_tests.skia_gold import blink_skia_gold_session_manager as sgsm + + _log = logging.getLogger(__name__) + +@@ -541,15 +541,15 @@ class Port(object): self.get_option('configuration')): return exit_codes.UNEXPECTED_ERROR_EXIT_STATUS diff --git a/lighthouse-core/test/chromium-web-tests/download-blink-tools.sh b/lighthouse-core/test/chromium-web-tests/download-blink-tools.sh index d411ebfb0566..6271c2ecca25 100644 --- a/lighthouse-core/test/chromium-web-tests/download-blink-tools.sh +++ b/lighthouse-core/test/chromium-web-tests/download-blink-tools.sh @@ -13,9 +13,9 @@ set -euo pipefail SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" # https://chromium.googlesource.com/chromium/src/ -commit_chromium="4ffbceb9e46813c0041c27d52fbcd180348ae073" +commit_chromium="e1c3b88f73fcbff831485c0ca37f877bd22b7a02" # https://chromium.googlesource.com/catapult/ -commit_catapult="370c3d98a6db53222e9f36a4491a3757bb93e61a" +commit_catapult="c2b4e773a8d77586ddea18b1962a3e02d19e682f" VERSIONED_DIR="$BLINK_TOOLS_PATH/$commit_chromium$commit_catapult" diff --git a/lighthouse-core/test/chromium-web-tests/web-test-server.sh b/lighthouse-core/test/chromium-web-tests/web-test-server.sh index c0e5ef340e83..73042a34b798 100644 --- a/lighthouse-core/test/chromium-web-tests/web-test-server.sh +++ b/lighthouse-core/test/chromium-web-tests/web-test-server.sh @@ -8,6 +8,11 @@ set -euo pipefail +if ! type -P python3; then + echo "python3 could not be found" + exit 1 +fi + # Get newest folder latest_content_shell_dir=$(ls -t "$LH_ROOT/.tmp/chromium-web-tests/content-shells/" | head -n1) export latest_content_shell="$LH_ROOT/.tmp/chromium-web-tests/content-shells/$latest_content_shell_dir" @@ -49,7 +54,7 @@ set +e # Print the python command. set -x -python \ +python3 \ "$BLINK_TOOLS_PATH/latest/third_party/blink/tools/run_web_tests.py" \ --layout-tests-directory="$DEVTOOLS_PATH/test/webtests" \ --build-directory="$latest_content_shell/out" \ From 95aba6d3048dada1808bc50a51a2de4acb0f2d2c Mon Sep 17 00:00:00 2001 From: Adam Raine <6752989+adamraine@users.noreply.github.com> Date: Wed, 13 Apr 2022 14:20:26 -0400 Subject: [PATCH 13/33] core(installability-errors): add url scheme error (#13846) --- .../audits/installable-manifest.js | 16 +++++++++ .../test/audits/installable-manifest-test.js | 33 +++++++++++++++++++ shared/localization/locales/en-US.json | 3 ++ shared/localization/locales/en-XL.json | 3 ++ .../installability-errors-test.js | 1 + 5 files changed, 56 insertions(+) diff --git a/lighthouse-core/audits/installable-manifest.js b/lighthouse-core/audits/installable-manifest.js index 0572ca97abc8..447cd5f19669 100644 --- a/lighthouse-core/audits/installable-manifest.js +++ b/lighthouse-core/audits/installable-manifest.js @@ -97,6 +97,11 @@ const UIStrings = { 'protocol-timeout': `Lighthouse could not determine if there was a service worker. Please try with a newer version of Chrome.`, /** Message logged when the web app has been uninstalled o desktop, signalling that the install banner state is being reset. */ 'pipeline-restarted': 'PWA has been uninstalled and installability checks resetting.', + /** + * @description Error message explaining that the URL of the manifest uses a scheme that is not supported on Android. + * @example {data:} scheme + */ + 'scheme-not-supported-for-webapk': 'The manifest URL scheme ({scheme}) is not supported on Android.', }; /* eslint-enable max-len */ @@ -156,6 +161,17 @@ class InstallableManifest extends Audit { // @ts-expect-error errorIds from protocol should match up against the strings dict const matchingString = UIStrings[err.errorId]; + if (err.errorId === 'scheme-not-supported-for-webapk') { + // If there was no manifest, then there will be at lest one other installability error. + // We can ignore this error if that's the case. + const manifestUrl = artifacts.WebAppManifest?.url; + if (!manifestUrl) continue; + + const scheme = new URL(manifestUrl).protocol; + i18nErrors.push(str_(matchingString, {scheme})); + continue; + } + // Handle an errorId we don't recognize. if (matchingString === undefined) { i18nErrors.push(str_(UIStrings.noErrorId, {errorId: err.errorId})); diff --git a/lighthouse-core/test/audits/installable-manifest-test.js b/lighthouse-core/test/audits/installable-manifest-test.js index b77cc427bf82..ca68edc3b42a 100644 --- a/lighthouse-core/test/audits/installable-manifest-test.js +++ b/lighthouse-core/test/audits/installable-manifest-test.js @@ -192,6 +192,39 @@ describe('PWA: webapp install banner audit', () => { assert.strictEqual(result.score, 1); }); }); + + it('adds scheme to invalid scheme error message', async () => { + const artifacts = generateMockArtifacts(); + artifacts.WebAppManifest.url = 'data:application/json;base64,AAAAAAAAAA'; + artifacts.InstallabilityErrors.errors.push({ + errorId: 'scheme-not-supported-for-webapk', + errorArguments: [], + }); + const context = generateMockAuditContext(); + + const result = await InstallableManifestAudit.audit(artifacts, context); + expect(result.score).toEqual(0); + expect(result.details.items[0].reason).toBeDisplayString( + 'The manifest URL scheme (data:) is not supported on Android.' + ); + }); + + it('ignores invalid scheme error if there was no manifest url', async () => { + const artifacts = generateMockArtifacts(); + artifacts.WebAppManifest = undefined; + artifacts.InstallabilityErrors.errors.push( + {errorId: 'no-manifest', errorArguments: []}, + {errorId: 'scheme-not-supported-for-webapk', errorArguments: []} + ); + const context = generateMockAuditContext(); + + const result = await InstallableManifestAudit.audit(artifacts, context); + expect(result.score).toEqual(0); + expect(result.details.items).toHaveLength(1); + expect(result.details.items[0].reason).toBeDisplayString( + 'Page has no manifest URL' + ); + }); }); describe('warnings', () => { diff --git a/shared/localization/locales/en-US.json b/shared/localization/locales/en-US.json index 9a407772a9ae..7424d9667570 100644 --- a/shared/localization/locales/en-US.json +++ b/shared/localization/locales/en-US.json @@ -1067,6 +1067,9 @@ "lighthouse-core/audits/installable-manifest.js | protocol-timeout": { "message": "Lighthouse could not determine if there was a service worker. Please try with a newer version of Chrome." }, + "lighthouse-core/audits/installable-manifest.js | scheme-not-supported-for-webapk": { + "message": "The manifest URL scheme ({scheme}) is not supported on Android." + }, "lighthouse-core/audits/installable-manifest.js | start-url-not-valid": { "message": "Manifest start URL is not valid" }, diff --git a/shared/localization/locales/en-XL.json b/shared/localization/locales/en-XL.json index 8a7093befc5c..63f7e2e64092 100644 --- a/shared/localization/locales/en-XL.json +++ b/shared/localization/locales/en-XL.json @@ -1067,6 +1067,9 @@ "lighthouse-core/audits/installable-manifest.js | protocol-timeout": { "message": "L̂íĝh́t̂h́ôúŝé ĉóûĺd̂ ńôt́ d̂ét̂ér̂ḿîńê íf̂ t́ĥér̂é ŵáŝ á ŝér̂v́îćê ẃôŕk̂ér̂. Ṕl̂éâśê t́r̂ý ŵít̂h́ â ńêẃêŕ v̂ér̂śîón̂ óf̂ Ćĥŕôḿê." }, + "lighthouse-core/audits/installable-manifest.js | scheme-not-supported-for-webapk": { + "message": "T̂h́ê ḿâńîf́êśt̂ ÚR̂Ĺ ŝćĥém̂é ({scheme}) îś n̂ót̂ śûṕp̂ór̂t́êd́ ôń Âńd̂ŕôíd̂." + }, "lighthouse-core/audits/installable-manifest.js | start-url-not-valid": { "message": "M̂án̂íf̂éŝt́ ŝt́âŕt̂ ÚR̂Ĺ îś n̂ót̂ v́âĺîd́" }, diff --git a/third-party/chromium-synchronization/installability-errors-test.js b/third-party/chromium-synchronization/installability-errors-test.js index 2da218ccb40b..28d533dbccb9 100644 --- a/third-party/chromium-synchronization/installability-errors-test.js +++ b/third-party/chromium-synchronization/installability-errors-test.js @@ -69,6 +69,7 @@ Array [ "platform-not-supported-on-android", "prefer-related-applications", "prefer-related-applications-only-beta-stable", + "scheme-not-supported-for-webapk", "start-url-not-valid", "url-not-supported-for-webapk", "warn-not-offline-capable", From f88fd0a7becb7783222bbcc9608ee07fc0dec00c Mon Sep 17 00:00:00 2001 From: Adam Raine <6752989+adamraine@users.noreply.github.com> Date: Wed, 23 Mar 2022 19:37:41 -0400 Subject: [PATCH 14/33] core(installable-manifest): always run `InstallabilityErrors` in legacy mode (#13622) --- .github/workflows/smoke.yml | 2 +- .../test-definitions/offline-online-only.js | 2 +- .../test-definitions/pwa-chromestatus.js | 2 +- .../audits/installable-manifest.js | 17 +++++++---- lighthouse-core/gather/gather-runner.js | 6 ++-- .../test/audits/installable-manifest-test.js | 3 +- .../reports/sample-flow-result.json | 30 ++++++++----------- .../test/results/artifacts/artifacts.json | 7 ++++- lighthouse-core/test/results/sample_v2.json | 11 ++++--- .../lighthouse-successful-run-expected.txt | 1 + 10 files changed, 44 insertions(+), 37 deletions(-) diff --git a/.github/workflows/smoke.yml b/.github/workflows/smoke.yml index dac4dfcfe262..d31509f0198b 100644 --- a/.github/workflows/smoke.yml +++ b/.github/workflows/smoke.yml @@ -123,7 +123,7 @@ jobs: - run: sudo apt-get install xvfb - name: yarn smoke --fraggle-rock - run: xvfb-run --auto-servernum yarn smoke --debug --fraggle-rock -j=1 --retries=2 --invert-match pwa offline + run: xvfb-run --auto-servernum yarn smoke --debug --fraggle-rock -j=1 --retries=2 # Fail if any changes were written to source files. - run: git diff --exit-code diff --git a/lighthouse-cli/test/smokehouse/test-definitions/offline-online-only.js b/lighthouse-cli/test/smokehouse/test-definitions/offline-online-only.js index 251da0de0b97..541eb5c4e3b1 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/offline-online-only.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/offline-online-only.js @@ -68,7 +68,7 @@ const expectations = { }, 'installable-manifest': { score: 0, - details: {items: [{reason: 'No manifest was fetched'}]}, + details: {items: [{reason: 'Page has no manifest URL'}]}, }, 'splash-screen': { score: 0, diff --git a/lighthouse-cli/test/smokehouse/test-definitions/pwa-chromestatus.js b/lighthouse-cli/test/smokehouse/test-definitions/pwa-chromestatus.js index 45b9355217a2..a1c69982a6ad 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/pwa-chromestatus.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/pwa-chromestatus.js @@ -30,7 +30,7 @@ const expectations = { }, 'installable-manifest': { score: 0, - details: {items: [{reason: 'No manifest was fetched'}]}, + details: {items: [{reason: 'Page has no manifest URL'}]}, }, 'splash-screen': { score: 0, diff --git a/lighthouse-core/audits/installable-manifest.js b/lighthouse-core/audits/installable-manifest.js index 447cd5f19669..271785454d19 100644 --- a/lighthouse-core/audits/installable-manifest.js +++ b/lighthouse-core/audits/installable-manifest.js @@ -130,7 +130,7 @@ class InstallableManifest extends Audit { failureTitle: str_(UIStrings.failureTitle), description: str_(UIStrings.description), supportedModes: ['navigation'], - requiredArtifacts: ['URL', 'WebAppManifest', 'InstallabilityErrors'], + requiredArtifacts: ['WebAppManifest', 'InstallabilityErrors'], }; } @@ -211,7 +211,6 @@ class InstallableManifest extends Audit { * */ static async audit(artifacts, context) { - const manifestValues = await ManifestValues.request(artifacts, context); const {i18nErrors, warnings} = InstallableManifest.getInstallabilityErrors(artifacts); const manifestUrl = artifacts.WebAppManifest ? artifacts.WebAppManifest.url : null; @@ -226,10 +225,16 @@ class InstallableManifest extends Audit { const errorReasons = i18nErrors.map(reason => { return {reason}; }); - /** DevTools InstallabilityErrors does not emit an error unless there is a manifest, so include manifestValues's error */ - if (manifestValues.isParseFailure) { - errorReasons.push({ - reason: manifestValues.parseFailureReason}); + + // If InstallabilityErrors is empty, double check ManifestValues to make sure nothing was missed. + // InstallabilityErrors can be empty erroneously in our DevTools web tests. + if (!errorReasons.length) { + const manifestValues = await ManifestValues.request(artifacts, context); + if (manifestValues.isParseFailure) { + errorReasons.push({ + reason: manifestValues.parseFailureReason, + }); + } } // Include the detailed pass/fail checklist as a diagnostic. diff --git a/lighthouse-core/gather/gather-runner.js b/lighthouse-core/gather/gather-runner.js index 35bf56808eaf..759ee033d45e 100644 --- a/lighthouse-core/gather/gather-runner.js +++ b/lighthouse-core/gather/gather-runner.js @@ -438,10 +438,8 @@ class GatherRunner { } try { - if (baseArtifacts.WebAppManifest) { - baseArtifacts.InstallabilityErrors = await InstallabilityErrors.getInstallabilityErrors( - passContext.driver.defaultSession); - } + baseArtifacts.InstallabilityErrors = await InstallabilityErrors.getInstallabilityErrors( + passContext.driver.defaultSession); } catch (err) { log.error('GatherRunner InstallabilityErrors', err); baseArtifacts.InstallabilityErrors = { diff --git a/lighthouse-core/test/audits/installable-manifest-test.js b/lighthouse-core/test/audits/installable-manifest-test.js index ca68edc3b42a..b1baf482ebfd 100644 --- a/lighthouse-core/test/audits/installable-manifest-test.js +++ b/lighthouse-core/test/audits/installable-manifest-test.js @@ -59,11 +59,12 @@ describe('PWA: webapp install banner audit', () => { it('fails with a non-parsable manifest', () => { const artifacts = generateMockArtifacts('{,:}'); + artifacts.InstallabilityErrors.errors.push({errorId: 'manifest-empty', errorArguments: []}); const context = generateMockAuditContext(); return InstallableManifestAudit.audit(artifacts, context).then(result => { assert.strictEqual(result.score, 0); const items = result.details.items; - assert.ok(items[0].reason.includes('failed to parse as valid JSON')); + expect(items[0].reason).toBeDisplayString(/could not be parsed/); }); }); diff --git a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json index 429847d20d74..3d4ee10841d6 100644 --- a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json +++ b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json @@ -362,9 +362,9 @@ "description": "Service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. With proper service worker and manifest implementations, browsers can proactively prompt users to add your app to their homescreen, which can lead to higher engagement. [Learn more](https://web.dev/installable-manifest/).", "score": 0, "scoreDisplayMode": "binary", - "numericValue": 2, + "numericValue": 1, "numericUnit": "element", - "displayValue": "2 reasons", + "displayValue": "1 reason", "warnings": [], "details": { "type": "table", @@ -378,9 +378,6 @@ "items": [ { "reason": "Page has no manifest URL" - }, - { - "reason": "No manifest was fetched" } ], "debugData": { @@ -5202,19 +5199,19 @@ }, { "startTime": 72, - "name": "lh:computed:ManifestValues", + "name": "lh:audit:apple-touch-icon", "duration": 1, "entryType": "measure" }, { "startTime": 73, - "name": "lh:audit:apple-touch-icon", + "name": "lh:audit:splash-screen", "duration": 1, "entryType": "measure" }, { "startTime": 74, - "name": "lh:audit:splash-screen", + "name": "lh:computed:ManifestValues", "duration": 1, "entryType": "measure" }, @@ -6418,7 +6415,7 @@ "lighthouse-core/audits/installable-manifest.js | displayValue": [ { "values": { - "itemCount": 2 + "itemCount": 1 }, "path": "audits[installable-manifest].displayValue" } @@ -16063,9 +16060,9 @@ "description": "Service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. With proper service worker and manifest implementations, browsers can proactively prompt users to add your app to their homescreen, which can lead to higher engagement. [Learn more](https://web.dev/installable-manifest/).", "score": 0, "scoreDisplayMode": "binary", - "numericValue": 2, + "numericValue": 1, "numericUnit": "element", - "displayValue": "2 reasons", + "displayValue": "1 reason", "warnings": [], "details": { "type": "table", @@ -16079,9 +16076,6 @@ "items": [ { "reason": "Page has no manifest URL" - }, - { - "reason": "No manifest was fetched" } ], "debugData": { @@ -20890,19 +20884,19 @@ }, { "startTime": 70, - "name": "lh:computed:ManifestValues", + "name": "lh:audit:apple-touch-icon", "duration": 1, "entryType": "measure" }, { "startTime": 71, - "name": "lh:audit:apple-touch-icon", + "name": "lh:audit:splash-screen", "duration": 1, "entryType": "measure" }, { "startTime": 72, - "name": "lh:audit:splash-screen", + "name": "lh:computed:ManifestValues", "duration": 1, "entryType": "measure" }, @@ -22102,7 +22096,7 @@ "lighthouse-core/audits/installable-manifest.js | displayValue": [ { "values": { - "itemCount": 2 + "itemCount": 1 }, "path": "audits[installable-manifest].displayValue" } diff --git a/lighthouse-core/test/results/artifacts/artifacts.json b/lighthouse-core/test/results/artifacts/artifacts.json index ef999f6b06ae..c30e6767f790 100644 --- a/lighthouse-core/test/results/artifacts/artifacts.json +++ b/lighthouse-core/test/results/artifacts/artifacts.json @@ -7,7 +7,12 @@ "BenchmarkIndex": 1549, "WebAppManifest": null, "InstallabilityErrors": { - "errors": [] + "errors": [ + { + "errorId": "no-manifest", + "errorArguments": [] + } + ] }, "Stacks": [ { diff --git a/lighthouse-core/test/results/sample_v2.json b/lighthouse-core/test/results/sample_v2.json index 37e02e0414bd..6cdf59f61697 100644 --- a/lighthouse-core/test/results/sample_v2.json +++ b/lighthouse-core/test/results/sample_v2.json @@ -799,7 +799,7 @@ ], "items": [ { - "reason": "No manifest was fetched" + "reason": "Page has no manifest URL" } ], "debugData": { @@ -7773,19 +7773,19 @@ }, { "startTime": 0, - "name": "lh:computed:ManifestValues", + "name": "lh:audit:apple-touch-icon", "duration": 100, "entryType": "measure" }, { "startTime": 0, - "name": "lh:audit:apple-touch-icon", + "name": "lh:audit:splash-screen", "duration": 100, "entryType": "measure" }, { "startTime": 0, - "name": "lh:audit:splash-screen", + "name": "lh:computed:ManifestValues", "duration": 100, "entryType": "measure" }, @@ -9020,6 +9020,9 @@ "lighthouse-core/audits/installable-manifest.js | columnValue": [ "audits[installable-manifest].details.headings[0].text" ], + "lighthouse-core/audits/installable-manifest.js | no-manifest": [ + "audits[installable-manifest].details.items[0].reason" + ], "lighthouse-core/audits/apple-touch-icon.js | failureTitle": [ "audits[apple-touch-icon].title" ], diff --git a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt index 917fb7fb95b6..83260b71d9b4 100644 --- a/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt +++ b/third-party/chromium-webtests/webtests/http/tests/devtools/lighthouse/lighthouse-successful-run-expected.txt @@ -128,6 +128,7 @@ Gathering: SourceMaps Gathering: FullPageScreenshot Populate base artifacts Get webapp manifest +Get webapp installability errors Collect stacks Running offlinePass pass Resetting state with about:blank From b450bf45a4535c2b3dcd5c9be5130ee8d4d10792 Mon Sep 17 00:00:00 2001 From: Brendan Kenny Date: Fri, 6 May 2022 13:18:15 -0500 Subject: [PATCH 15/33] core: extract BootupTime task summary methods (#13971) --- lighthouse-core/audits/bootup-time.js | 72 +-------- lighthouse-core/audits/long-tasks.js | 6 +- lighthouse-core/audits/third-party-summary.js | 6 +- .../lib/tracehouse/task-summary.js | 87 ++++++++++ .../test/lib/tracehouse/task-summary-test.js | 152 ++++++++++++++++++ tsconfig.json | 1 + 6 files changed, 248 insertions(+), 76 deletions(-) create mode 100644 lighthouse-core/lib/tracehouse/task-summary.js create mode 100644 lighthouse-core/test/lib/tracehouse/task-summary-test.js diff --git a/lighthouse-core/audits/bootup-time.js b/lighthouse-core/audits/bootup-time.js index af99e0cbd9b9..e08c17e8f1bc 100644 --- a/lighthouse-core/audits/bootup-time.js +++ b/lighthouse-core/audits/bootup-time.js @@ -6,11 +6,11 @@ 'use strict'; const Audit = require('./audit.js'); -const NetworkRequest = require('../lib/network-request.js'); const {taskGroups} = require('../lib/tracehouse/task-groups.js'); const i18n = require('../lib/i18n/i18n.js'); const NetworkRecords = require('../computed/network-records.js'); const MainThreadTasks = require('../computed/main-thread-tasks.js'); +const {getExecutionTimingsByURL} = require('../lib/tracehouse/task-summary.js'); const UIStrings = { /** Title of a diagnostic audit that provides detail on the time spent executing javascript files during the load. This descriptive title is shown to users when the amount is acceptable and no user action is required. */ @@ -34,18 +34,6 @@ const UIStrings = { const str_ = i18n.createMessageInstanceIdFn(__filename, UIStrings); -// These trace events, when not triggered by a script inside a particular task, are just general Chrome overhead. -const BROWSER_TASK_NAMES_SET = new Set([ - 'CpuProfiler::StartProfiling', -]); - -// These trace events, when not triggered by a script inside a particular task, are GC Chrome overhead. -const BROWSER_GC_TASK_NAMES_SET = new Set([ - 'V8.GCCompactor', - 'MajorGC', - 'MinorGC', -]); - class BootupTime extends Audit { /** * @return {LH.Audit.Meta} @@ -74,61 +62,6 @@ class BootupTime extends Audit { }; } - /** - * @param {LH.Artifacts.NetworkRequest[]} records - */ - static getJavaScriptURLs(records) { - /** @type {Set} */ - const urls = new Set(); - for (const record of records) { - if (record.resourceType === NetworkRequest.TYPES.Script) { - urls.add(record.url); - } - } - - return urls; - } - - /** - * @param {LH.Artifacts.TaskNode} task - * @param {Set} jsURLs - * @return {string} - */ - static getAttributableURLForTask(task, jsURLs) { - const jsURL = task.attributableURLs.find(url => jsURLs.has(url)); - const fallbackURL = task.attributableURLs[0]; - let attributableURL = jsURL || fallbackURL; - // If we can't find what URL was responsible for this execution, attribute it to the root page - // or Chrome depending on the type of work. - if (!attributableURL || attributableURL === 'about:blank') { - if (BROWSER_TASK_NAMES_SET.has(task.event.name)) attributableURL = 'Browser'; - else if (BROWSER_GC_TASK_NAMES_SET.has(task.event.name)) attributableURL = 'Browser GC'; - else attributableURL = 'Unattributable'; - } - - return attributableURL; - } - - /** - * @param {LH.Artifacts.TaskNode[]} tasks - * @param {Set} jsURLs - * @return {Map>} - */ - static getExecutionTimingsByURL(tasks, jsURLs) { - /** @type {Map>} */ - const result = new Map(); - - for (const task of tasks) { - const attributableURL = BootupTime.getAttributableURLForTask(task, jsURLs); - const timingByGroupId = result.get(attributableURL) || {}; - const originalTime = timingByGroupId[task.group.id] || 0; - timingByGroupId[task.group.id] = originalTime + task.selfTime; - result.set(attributableURL, timingByGroupId); - } - - return result; - } - /** * @param {LH.Artifacts} artifacts * @param {LH.Audit.Context} context @@ -143,8 +76,7 @@ class BootupTime extends Audit { const multiplier = settings.throttlingMethod === 'simulate' ? settings.throttling.cpuSlowdownMultiplier : 1; - const jsURLs = BootupTime.getJavaScriptURLs(networkRecords); - const executionTimings = BootupTime.getExecutionTimingsByURL(tasks, jsURLs); + const executionTimings = getExecutionTimingsByURL(tasks, networkRecords); let hadExcessiveChromeExtension = false; let totalBootupTime = 0; diff --git a/lighthouse-core/audits/long-tasks.js b/lighthouse-core/audits/long-tasks.js index 973bc7773aba..454f7299d85b 100644 --- a/lighthouse-core/audits/long-tasks.js +++ b/lighthouse-core/audits/long-tasks.js @@ -9,9 +9,9 @@ const Audit = require('./audit.js'); const NetworkRecords = require('../computed/network-records.js'); const i18n = require('../lib/i18n/i18n.js'); const MainThreadTasks = require('../computed/main-thread-tasks.js'); -const BootupTime = require('./bootup-time.js'); const PageDependencyGraph = require('../computed/page-dependency-graph.js'); const LoadSimulator = require('../computed/load-simulator.js'); +const {getJavaScriptURLs, getAttributableURLForTask} = require('../lib/tracehouse/task-summary.js'); /** We don't always have timing data for short tasks, if we're missing timing data. Treat it as though it were 0ms. */ const DEFAULT_TIMING = {startTime: 0, endTime: 0, duration: 0}; @@ -77,7 +77,7 @@ class LongTasks extends Audit { } } - const jsURLs = BootupTime.getJavaScriptURLs(networkRecords); + const jsURLs = getJavaScriptURLs(networkRecords); // Only consider up to 20 long, top-level (no parent) tasks that have an explicit endTime const longtasks = tasks .map(t => { @@ -90,7 +90,7 @@ class LongTasks extends Audit { // TODO(beytoven): Add start time that matches with the simulated throttling const results = longtasks.map(task => ({ - url: BootupTime.getAttributableURLForTask(task, jsURLs), + url: getAttributableURLForTask(task, jsURLs), duration: task.duration, startTime: task.startTime, })); diff --git a/lighthouse-core/audits/third-party-summary.js b/lighthouse-core/audits/third-party-summary.js index 6c8f6283e3ed..c7089d168020 100644 --- a/lighthouse-core/audits/third-party-summary.js +++ b/lighthouse-core/audits/third-party-summary.js @@ -6,11 +6,11 @@ 'use strict'; const Audit = require('./audit.js'); -const BootupTime = require('./bootup-time.js'); const i18n = require('../lib/i18n/i18n.js'); const thirdPartyWeb = require('../lib/third-party-web.js'); const NetworkRecords = require('../computed/network-records.js'); const MainThreadTasks = require('../computed/main-thread-tasks.js'); +const {getJavaScriptURLs, getAttributableURLForTask} = require('../lib/tracehouse/task-summary.js'); const UIStrings = { /** Title of a diagnostic audit that provides details about the code on a web page that the user doesn't control (referred to as "third-party code"). This descriptive title is shown to users when the amount is acceptable and no user action is required. */ @@ -98,10 +98,10 @@ class ThirdPartySummary extends Audit { byURL.set(request.url, urlSummary); } - const jsURLs = BootupTime.getJavaScriptURLs(networkRecords); + const jsURLs = getJavaScriptURLs(networkRecords); for (const task of mainThreadTasks) { - const attributableURL = BootupTime.getAttributableURLForTask(task, jsURLs); + const attributableURL = getAttributableURLForTask(task, jsURLs); const urlSummary = byURL.get(attributableURL) || {...defaultSummary}; const taskDuration = task.selfTime * cpuMultiplier; diff --git a/lighthouse-core/lib/tracehouse/task-summary.js b/lighthouse-core/lib/tracehouse/task-summary.js new file mode 100644 index 000000000000..d457606eb549 --- /dev/null +++ b/lighthouse-core/lib/tracehouse/task-summary.js @@ -0,0 +1,87 @@ +/** + * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ +'use strict'; + +/** + * @fileoverview Utility functions for grouping and summarizing tasks. + */ + +const NetworkRequest = require('../network-request.js'); + +// These trace events, when not triggered by a script inside a particular task, are just general Chrome overhead. +const BROWSER_TASK_NAMES_SET = new Set([ + 'CpuProfiler::StartProfiling', +]); + +// These trace events, when not triggered by a script inside a particular task, are GC Chrome overhead. +const BROWSER_GC_TASK_NAMES_SET = new Set([ + 'V8.GCCompactor', + 'MajorGC', + 'MinorGC', +]); + +/** + * @param {LH.Artifacts.NetworkRequest[]} records + */ +function getJavaScriptURLs(records) { + /** @type {Set} */ + const urls = new Set(); + for (const record of records) { + if (record.resourceType === NetworkRequest.TYPES.Script) { + urls.add(record.url); + } + } + + return urls; +} + +/** + * @param {LH.Artifacts.TaskNode} task + * @param {Set} jsURLs + * @return {string} + */ +function getAttributableURLForTask(task, jsURLs) { + const jsURL = task.attributableURLs.find(url => jsURLs.has(url)); + const fallbackURL = task.attributableURLs[0]; + let attributableURL = jsURL || fallbackURL; + // If we can't find what URL was responsible for this execution, attribute it to the root page + // or Chrome depending on the type of work. + if (!attributableURL || attributableURL === 'about:blank') { + if (BROWSER_TASK_NAMES_SET.has(task.event.name)) attributableURL = 'Browser'; + else if (BROWSER_GC_TASK_NAMES_SET.has(task.event.name)) attributableURL = 'Browser GC'; + else attributableURL = 'Unattributable'; + } + + return attributableURL; +} + +/** + * @param {LH.Artifacts.TaskNode[]} tasks + * @param {Array} networkRecords + * @return {Map>} + */ +function getExecutionTimingsByURL(tasks, networkRecords) { + const jsURLs = getJavaScriptURLs(networkRecords); + + /** @type {Map>} */ + const result = new Map(); + + for (const task of tasks) { + const attributableURL = getAttributableURLForTask(task, jsURLs); + const timingByGroupId = result.get(attributableURL) || {}; + const originalTime = timingByGroupId[task.group.id] || 0; + timingByGroupId[task.group.id] = originalTime + task.selfTime; + result.set(attributableURL, timingByGroupId); + } + + return result; +} + +module.exports = { + getJavaScriptURLs, + getAttributableURLForTask, + getExecutionTimingsByURL, +}; diff --git a/lighthouse-core/test/lib/tracehouse/task-summary-test.js b/lighthouse-core/test/lib/tracehouse/task-summary-test.js new file mode 100644 index 000000000000..8ceaf0efe3dc --- /dev/null +++ b/lighthouse-core/test/lib/tracehouse/task-summary-test.js @@ -0,0 +1,152 @@ +/** + * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ + +/* eslint-env jest */ + +import { + getJavaScriptURLs, + getAttributableURLForTask, + getExecutionTimingsByURL, +} from '../../../lib/tracehouse/task-summary.js'; +import NetworkRecorder from '../../../lib/network-recorder.js'; +import MainThreadTasks from '../../../lib/tracehouse/main-thread-tasks.js'; +import ampTrace from '../../fixtures/traces/amp-m86.trace.json'; +import ampDevtoolsLog from '../../fixtures/traces/amp-m86.devtoolslog.json'; +import TraceProcessor from '../../../lib/tracehouse/trace-processor.js'; +import networkRecordsToDevtoolsLog from '../../network-records-to-devtools-log.js'; +import {taskGroups} from '../../../lib/tracehouse/task-groups.js'; + +function getTasks(trace) { + const {mainThreadEvents, frames, timestamps} = TraceProcessor.processTrace(trace); + return MainThreadTasks.getMainThreadTasks(mainThreadEvents, frames, timestamps.traceEnd); +} + +describe('Task Summaries', () => { + describe('getJavaScriptURLs', () => { + it('returns no URLs for no records', () => { + const urls = getJavaScriptURLs([]); + expect(urls).toEqual(new Set()); + }); + + it('returns the script URLs from a set of network records', () => { + const records = NetworkRecorder.recordsFromLogs(ampDevtoolsLog); + const urls = getJavaScriptURLs(records); + for (const url of urls) { + expect(url).toMatch(/^https:\/\/cdn.ampproject.org.*js$/); + } + expect(urls.size).toEqual(13); + }); + }); + + describe('getAttributableURLForTask', () => { + const networkRecords = NetworkRecorder.recordsFromLogs(ampDevtoolsLog); + const jsUrls = getJavaScriptURLs(networkRecords); + const tasks = getTasks(ampTrace); + // The exact task doesn't matter. + const attributableTask = tasks.find(task => task.attributableURLs.length > 1); + const clonableTask = {...attributableTask, parent: undefined, children: []}; + const knownJsUrl = 'https://cdn.ampproject.org/v0/amp-auto-ads-0.1.js'; + + it('gets an attributable URL', () => { + const url = getAttributableURLForTask(attributableTask, jsUrls); + expect(url).toEqual(knownJsUrl); + }); + + it('uses a script URL even if not the first attributable URL', () => { + const clonedTask = JSON.parse(JSON.stringify(clonableTask)); + clonedTask.attributableURLs = [ + 'https://something.com', + 'https://something.com/scripty.js', + knownJsUrl, + ]; + const url = getAttributableURLForTask(clonedTask, jsUrls); + expect(url).toEqual(knownJsUrl); + }); + + it('falls back to the first attributable URL if none of the script URLs are known', () => { + const clonedTask = JSON.parse(JSON.stringify(clonableTask)); + clonedTask.attributableURLs = [ + 'https://something.com/page.html', + 'https://something.com/scripty.js', + 'https://example.com/another-script.js', + ]; + const url = getAttributableURLForTask(clonedTask, jsUrls); + expect(url).toEqual('https://something.com/page.html'); + }); + + it('falls back to more specific browser tasks if no attributable URLs', () => { + const clonedTask = JSON.parse(JSON.stringify(clonableTask)); + clonedTask.attributableURLs = []; + clonedTask.event.name = 'CpuProfiler::StartProfiling'; + const url = getAttributableURLForTask(clonedTask, jsUrls); + expect(url).toEqual('Browser'); + }); + + it('falls back to more specific browser tasks if no attributable URLs', () => { + const clonedTask = JSON.parse(JSON.stringify(clonableTask)); + clonedTask.attributableURLs = []; + clonedTask.event.name = 'V8.GCCompactor'; + const url = getAttributableURLForTask(clonedTask, jsUrls); + expect(url).toEqual('Browser GC'); + }); + + it('falls back to "Unattributable" for a generic task if no attributable URLs', () => { + const clonedTask = JSON.parse(JSON.stringify(clonableTask)); + clonedTask.attributableURLs = []; + const url = getAttributableURLForTask(clonedTask, jsUrls); + expect(url).toEqual('Unattributable'); + }); + + it('falls back to "Unattributable" for a generic task if attributed to about:blank', () => { + const clonedTask = JSON.parse(JSON.stringify(clonableTask)); + clonedTask.attributableURLs = ['about:blank']; + const url = getAttributableURLForTask(clonedTask, jsUrls); + expect(url).toEqual('Unattributable'); + }); + }); + + describe('getExecutionTimingsByURL', () => { + const devtoolsLog = networkRecordsToDevtoolsLog([ + {url: 'https://example.com'}, + {url: 'https://example.com/script.js'}, + ]); + const networkRecords = NetworkRecorder.recordsFromLogs(devtoolsLog); + const tasks = [{ + attributableURLs: [ + 'https://example.com/script.js', + ], + selfTime: 2, + group: taskGroups.styleLayout, + }, { + attributableURLs: [ + 'https://example.com', + 'https://someother.com/unknown-script.js', + ], + selfTime: 3, + group: taskGroups.paintCompositeRender, + }, { + attributableURLs: [], + selfTime: 5, + group: taskGroups.scriptEvaluation, + event: {name: 'MajorGC'}, + }, { + attributableURLs: [], + selfTime: 7, + group: taskGroups.garbageCollection, + event: {name: 'RunTask'}, + }]; + + it('summarizes tasks', () => { + const timings = getExecutionTimingsByURL(tasks, networkRecords); + expect(timings).toEqual(new Map([ + ['https://example.com/script.js', {styleLayout: 2}], + ['https://example.com', {paintCompositeRender: 3}], + ['Browser GC', {scriptEvaluation: 5}], + ['Unattributable', {garbageCollection: 7}], + ])); + }); + }); +}); diff --git a/tsconfig.json b/tsconfig.json index 93c40c3acc05..42952e5d6577 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -99,6 +99,7 @@ "lighthouse-core/test/lib/timing-trace-saver-test.js", "lighthouse-core/test/lib/tracehouse/cpu-profile-model-test.js", "lighthouse-core/test/lib/tracehouse/main-thread-tasks-test.js", + "lighthouse-core/test/lib/tracehouse/task-summary-test.js", "lighthouse-core/test/lib/tracehouse/trace-processor-test.js", "lighthouse-core/test/lib/traces/pwmetrics-events-test.js", "lighthouse-core/test/lib/url-shim-test.js", From 784f17bb297805dbdc6aeb164dd25b20dd3b8429 Mon Sep 17 00:00:00 2001 From: Brendan Kenny Date: Mon, 9 May 2022 15:33:14 -0500 Subject: [PATCH 16/33] core(responsiveness): use new EventTiming trace event format (#13979) --- .../experimental-interaction-to-next-paint.js | 6 +- .../computed/metrics/responsiveness.js | 99 +- ...rimental-interaction-to-next-paint-test.js | 6 +- .../computed/metrics/responsiveness-test.js | 248 +++- .../reports/sample-flow-result.json | 23 +- .../timespan-responsiveness-m103.trace.json | 1081 +++++++++-------- types/artifacts.d.ts | 18 + 7 files changed, 947 insertions(+), 534 deletions(-) diff --git a/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js b/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js index 1e23e3717ba1..700d5201cf93 100644 --- a/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js +++ b/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js @@ -63,14 +63,14 @@ class ExperimentalInteractionToNextPaint extends Audit { const trace = artifacts.traces[Audit.DEFAULT_PASS]; const metricData = {trace, settings}; - const responsivenessEvent = await ComputedResponsivenes.request(metricData, context); + const interactionEvent = await ComputedResponsivenes.request(metricData, context); // TODO: include the no-interaction state in the report instead of using n/a. - if (responsivenessEvent === null) { + if (interactionEvent === null) { return {score: null, notApplicable: true}; } - const timing = responsivenessEvent.args.data.maxDuration; + const timing = interactionEvent.args.data.duration; return { score: Audit.computeLogNormalScore({p10: context.options.p10, median: context.options.median}, diff --git a/lighthouse-core/computed/metrics/responsiveness.js b/lighthouse-core/computed/metrics/responsiveness.js index 97a283c7d06e..4a312b0efc0f 100644 --- a/lighthouse-core/computed/metrics/responsiveness.js +++ b/lighthouse-core/computed/metrics/responsiveness.js @@ -12,9 +12,34 @@ */ /** @typedef {LH.Trace.CompleteEvent & {name: 'Responsiveness.Renderer.UserInteraction', args: {frame: string, data: {interactionType: 'drag'|'keyboard'|'tapOrClick', maxDuration: number}}}} ResponsivenessEvent */ +/** @typedef {'keydown'|'keypress'|'keyup'|'mousedown'|'mouseup'|'pointerdown'|'pointerup'|'click'} EventTimingType */ +/** + * @typedef EventTimingData + * @property {string} frame + * @property {number} timeStamp The time of user interaction (in ms from navStart). + * @property {number} processingStart The start of interaction handling (in ms from navStart). + * @property {number} processingEnd The end of interaction handling (in ms from navStart). + * @property {number} duration The time from user interaction to browser paint (in ms). + * @property {EventTimingType} type + * @property {number} nodeId + * @property {number} interactionId + */ +/** @typedef {LH.Trace.AsyncEvent & {name: 'EventTiming', args: {data: EventTimingData}}} EventTimingEvent */ + const makeComputedArtifact = require('../computed-artifact.js'); const ProcessedTrace = require('../processed-trace.js'); +const LHError = require('../../lib/lh-error.js'); + +const KEYBOARD_EVENTS = new Set(['keydown', 'keypress', 'keyup']); +const CLICK_TAP_DRAG_EVENTS = new Set([ + 'mousedown', 'mouseup', 'pointerdown', 'pointerup', 'click']); +/** A map of Responsiveness `interactionType` to matching EventTiming `type`s. */ +const interactionTypeToType = { + keyboard: KEYBOARD_EVENTS, + tapOrClick: CLICK_TAP_DRAG_EVENTS, + drag: CLICK_TAP_DRAG_EVENTS, +}; class Responsiveness { /** @@ -42,20 +67,84 @@ class Responsiveness { return responsivenessEvents[index]; } + /** + * Finds the interaction event that was probably the responsivenessEvent.maxDuration + * source. + * Note that (presumably due to rounding to ms), the interaction duration may not + * be the same value as `maxDuration`, just the closest value. Function will throw + * if the closest match is off by more than 4ms. + * TODO: this doesn't try to match inputs to interactions and break ties if more than + * one interaction had this duration by returning the first found. + * @param {ResponsivenessEvent} responsivenessEvent + * @param {LH.Trace} trace + * @return {EventTimingEvent} + */ + static findInteractionEvent(responsivenessEvent, {traceEvents}) { + const candidates = traceEvents.filter(/** @return {evt is EventTimingEvent} */ evt => { + // Examine only beginning/instant EventTiming events. + return evt.name === 'EventTiming' && evt.ph !== 'e'; + }); + + if (candidates.length && !candidates[0].args.data.frame) { + // Full EventTiming data added in https://crrev.com/c/3632661 + throw new LHError( + LHError.errors.UNSUPPORTED_OLD_CHROME, + {featureName: 'detailed EventTiming trace events'} + ); + } + + const {maxDuration, interactionType} = responsivenessEvent.args.data; + let bestMatchEvent; + let minDurationDiff = Number.POSITIVE_INFINITY; + for (const candidate of candidates) { + // Must be from same frame. + if (candidate.args.data.frame !== responsivenessEvent.args.frame) continue; + + // TODO(bckenny): must be in same navigation as well. + + const {type, duration} = candidate.args.data; + // Discard if type is incompatible with responsiveness interactionType. + const matchingTypes = interactionTypeToType[interactionType]; + if (!matchingTypes) { + throw new Error(`unexpected responsiveness interactionType '${interactionType}'`); + } + if (!matchingTypes.has(type)) continue; + + const durationDiff = Math.abs(duration - maxDuration); + if (durationDiff < minDurationDiff) { + bestMatchEvent = candidate; + minDurationDiff = durationDiff; + } + } + + if (!bestMatchEvent) { + throw new Error(`no interaction event found for responsiveness type '${interactionType}'`); + } + // TODO: seems to regularly happen up to 3ms and as high as 4. Allow for up to 5ms to be sure. + if (minDurationDiff > 5) { + throw new Error(`no interaction event found within 5ms of responsiveness maxDuration (max: ${maxDuration}, closest ${bestMatchEvent.args.data.duration})`); // eslint-disable-line max-len + } + + return bestMatchEvent; + } + /** * @param {{trace: LH.Trace, settings: Immutable}} data * @param {LH.Artifacts.ComputedContext} context - * @return {Promise} + * @return {Promise} */ static async compute_(data, context) { - if (data.settings.throttlingMethod === 'simulate') { + const {settings, trace} = data; + if (settings.throttlingMethod === 'simulate') { throw new Error('Responsiveness currently unsupported by simulated throttling'); } - const processedTrace = await ProcessedTrace.request(data.trace, context); - const event = Responsiveness.getHighPercentileResponsiveness(processedTrace); + const processedTrace = await ProcessedTrace.request(trace, context); + const responsivenessEvent = Responsiveness.getHighPercentileResponsiveness(processedTrace); + if (!responsivenessEvent) return null; - return JSON.parse(JSON.stringify(event)); + const interactionEvent = Responsiveness.findInteractionEvent(responsivenessEvent, trace); + return JSON.parse(JSON.stringify(interactionEvent)); } } diff --git a/lighthouse-core/test/audits/metrics/experimental-interaction-to-next-paint-test.js b/lighthouse-core/test/audits/metrics/experimental-interaction-to-next-paint-test.js index 53c000f3d8e5..e5f4247768cf 100644 --- a/lighthouse-core/test/audits/metrics/experimental-interaction-to-next-paint-test.js +++ b/lighthouse-core/test/audits/metrics/experimental-interaction-to-next-paint-test.js @@ -33,10 +33,10 @@ describe('Interaction to Next Paint', () => { const {artifacts, context} = getTestData(); const result = await ExperimentalInteractionToNextPaint.audit(artifacts, context); expect(result).toEqual({ - score: 0.63, - numericValue: 392, + score: 0.66, + numericValue: 368, numericUnit: 'millisecond', - displayValue: expect.toBeDisplayString('390 ms'), + displayValue: expect.toBeDisplayString('370 ms'), }); }); diff --git a/lighthouse-core/test/computed/metrics/responsiveness-test.js b/lighthouse-core/test/computed/metrics/responsiveness-test.js index 38b194043c25..06e79b2e9dc8 100644 --- a/lighthouse-core/test/computed/metrics/responsiveness-test.js +++ b/lighthouse-core/test/computed/metrics/responsiveness-test.js @@ -35,9 +35,10 @@ function makeTrace(interactionEventsData) { const navigationStartEvt = trace.traceEvents.find(e => e.name === 'navigationStart'); assert(navigationStartEvt?.args?.frame); const mainFrameId = navigationStartEvt.args.frame; + const {pid, tid} = navigationStartEvt; /** @type {Array} */ - const interactionEvents = interactionEventsData.map(data => { + const interactionEvents = interactionEventsData.flatMap((data, index) => { const { maxDuration, ts, @@ -45,24 +46,49 @@ function makeTrace(interactionEventsData) { inChildFrame = false, } = data; - return { + const frame = inChildFrame ? childFrameId : mainFrameId; + const interactionTimeStamp = (ts - navigationStartEvt.ts) / 1000; + + return [{ name: 'Responsiveness.Renderer.UserInteraction', cat: 'devtools.timeline', ph: 'X', - pid: 1111, - tid: 222, + pid, + tid, ts: ts, tts: ts, dur: 14, tdur: 14, args: { - frame: inChildFrame ? childFrameId : mainFrameId, + frame, data: { interactionType, maxDuration, }, }, - }; + }, { + // TODO(bckenny): dynamically add all events for an interaction. + name: 'EventTiming', + cat: 'devtools.timeline', + ph: 'b', + pid, + tid, + ts: ts, + id: `0x${(415583518 + index).toString(16)}`, + scope: 'devtools.timeline', + args: { + data: { + frame, + timeStamp: interactionTimeStamp, + processingStart: interactionTimeStamp + Math.floor(maxDuration / 3), + processingEnd: interactionTimeStamp + Math.floor(2 * maxDuration / 3), + duration: maxDuration, + nodeId: 1, + type: interactionType === 'keyboard' ? 'keydown' : 'pointerup', + interactionId: 1, + }, + }, + }]; }); trace.traceEvents.push(...interactionEvents); @@ -103,7 +129,7 @@ describe('Metric: Responsiveness', () => { const context = {computedCache: new Map()}; const event = await Responsiveness.request(metricInputData, context); - assert.equal(event.args.data.maxDuration, expectedTiming, `error at ${eventCount} events`); + assert.equal(event.args.data.duration, expectedTiming, `error at ${eventCount} events`); } }); @@ -119,7 +145,7 @@ describe('Metric: Responsiveness', () => { } const trace = makeTrace(interactionEvents); - // Ensure the target high-percentile event is where it's expected. + // Ensure the high-percentile responsiveness event is where it's expected. const targetEvent = trace.traceEvents.find(evt => { return evt.name === 'Responsiveness.Renderer.UserInteraction' && evt.args.data?.maxDuration === 49; @@ -132,18 +158,205 @@ describe('Metric: Responsiveness', () => { }; const context = {computedCache: new Map()}; const event = await Responsiveness.request(metricInputData, context); - expect(event.args.data).toMatchObject({maxDuration: 49}); + expect(event.args.data).toMatchObject({duration: 49, frame: childFrameId}); }); - it('should throw on attempting with a simulated timespan', async () => { + it('throws on attempting with a simulated timespan', async () => { const metricInputData = { trace: makeTrace([]), settings: {throttlingMethod: 'simulate'}, }; - expect(Responsiveness.request(metricInputData, {computedCache: new Map()})) + await expect(Responsiveness.request(metricInputData, {computedCache: new Map()})) .rejects.toThrow(); }); + it('throws if there are Responsiveness events but no EventTiming events', async () => { + const interactionEvents = [{ + ts: 500, + maxDuration: 200, + }]; + const trace = makeTrace(interactionEvents); + trace.traceEvents = trace.traceEvents.filter(e => e.name !== 'EventTiming'); + + const metricInputData = { + trace, + settings: {throttlingMethod: 'provided'}, + }; + await expect(Responsiveness.request(metricInputData, {computedCache: new Map()})) + .rejects.toThrow(`no interaction event found for responsiveness type 'keyboard'`); + }); + + it('throws if there are Responsiveness events but no EventTiming of matching type', async () => { + const trace = makeTrace([{ + ts: 500, + maxDuration: 200, + }]); + const interactionEvents = trace.traceEvents.filter(e => e.name === 'EventTiming'); + assert(interactionEvents.length > 0); + for (const event of interactionEvents) { + event.args.data.type = 'pointerdown'; + } + + const metricInputData = { + trace, + settings: {throttlingMethod: 'provided'}, + }; + await expect(Responsiveness.request(metricInputData, {computedCache: new Map()})) + .rejects.toThrow(`no interaction event found for responsiveness type 'keyboard'`); + }); + + it('throws if there are no EventTiming events within 5ms of maxDuration', async () => { + const trace = makeTrace([{ + ts: 500, + maxDuration: 200, + }]); + const interactionEvents = trace.traceEvents.filter(e => e.name === 'EventTiming'); + assert(interactionEvents.length > 0); + for (const event of interactionEvents) { + event.args.data.duration = 500; + } + + const metricInputData = { + trace, + settings: {throttlingMethod: 'provided'}, + }; + await expect(Responsiveness.request(metricInputData, {computedCache: new Map()})) + .rejects.toThrow('no interaction event found within 5ms of responsiveness maxDuration (max: 200, closest 500)'); // eslint-disable-line max-len + }); + + it('throws if responsiveness event is of unexpected interactionType', async () => { + const interactionEvents = [{ + ts: 500, + maxDuration: 200, + interactionType: 'brainWave', + }]; + + const metricInputData = { + trace: makeTrace(interactionEvents), + settings: {throttlingMethod: 'provided'}, + }; + await expect(Responsiveness.request(metricInputData, {computedCache: new Map()})) + .rejects.toThrow(`unexpected responsiveness interactionType 'brainWave'`); + }); + + it('throws an OLD_CHROME error if provided with the old trace event format', async () => { + const interactionEvents = [{ + ts: 500, + maxDuration: 200, + }]; + const trace = makeTrace(interactionEvents); + for (const event of trace.traceEvents) { + if (event.name !== 'EventTiming') continue; + event.args.data = {}; + } + + const metricInputData = { + trace, + settings: {throttlingMethod: 'provided'}, + }; + await expect(Responsiveness.request(metricInputData, {computedCache: new Map()})) + .rejects.toThrow('UNSUPPORTED_OLD_CHROME'); + }); + + it('only finds interaction events from the same frame as the responsiveness event', async () => { + const maxDuration = 200; + const interactionEvents = [{ + ts: 500, + maxDuration, + }]; + const trace = makeTrace(interactionEvents); + const interactionEvent = trace.traceEvents.find(e => { + return e.name === 'EventTiming' && e.args.data.duration === maxDuration; + }); + assert(interactionEvent); + const clonedInteractionEvent = JSON.parse(JSON.stringify(interactionEvent)); + + // Move original event to another frame. + interactionEvent.args.data.frame = 'ANEWFRAMEID'; + + // Make clonedEvent 1ms different in duration so it wouldn't be selected over original. + clonedInteractionEvent.args.data.duration += 1; + clonedInteractionEvent.args.data.nodeId = 55; + trace.traceEvents.push(clonedInteractionEvent); + + const metricInputData = { + trace, + settings: {throttlingMethod: 'provided'}, + }; + const event = await Responsiveness.request(metricInputData, {computedCache: new Map()}); + expect(event.args.data).toMatchObject({ + duration: maxDuration + 1, + nodeId: 55, + }); + }); + + it('only finds interaction events of types compatible with responsiveness event', async () => { + const maxDuration = 200; + const interactionEvents = [{ + ts: 500, + maxDuration, + }]; + const trace = makeTrace(interactionEvents); + const interactionEvent = trace.traceEvents.find(e => { + return e.name === 'EventTiming' && e.args.data.duration === maxDuration; + }); + assert(interactionEvent); + const clonedInteractionEvent = JSON.parse(JSON.stringify(interactionEvent)); + + // Make original event a mouse event. + interactionEvent.args.data.type = 'mousedown'; + + // Make clonedEvent 1ms different in duration so it wouldn't be selected over original. + clonedInteractionEvent.args.data.duration += 1; + clonedInteractionEvent.args.data.nodeId = 55; + trace.traceEvents.push(clonedInteractionEvent); + + const metricInputData = { + trace, + settings: {throttlingMethod: 'provided'}, + }; + const event = await Responsiveness.request(metricInputData, {computedCache: new Map()}); + expect(event.args.data).toMatchObject({ + duration: maxDuration + 1, + nodeId: 55, + }); + }); + + it('selects the closest interaction duration to responsiveness maxDuration', async () => { + const maxDuration = 200; + const interactionEvents = [{ + ts: 500, + maxDuration, + }]; + const trace = makeTrace(interactionEvents); + const interactionEvent = trace.traceEvents.find(e => { + return e.name === 'EventTiming' && e.args.data.duration === maxDuration; + }); + assert(interactionEvent); + const clonedInteractionEvent = JSON.parse(JSON.stringify(interactionEvent)); + + // Invalidate original event. + interactionEvent.args.data.type = 'notApplicable'; + + // Closest is maxDuration - 1. + for (const offset of [-4, -2, -1, 2, 3]) { + const newClone = JSON.parse(JSON.stringify(clonedInteractionEvent)); + newClone.args.data.duration = maxDuration + offset; + newClone.args.data.nodeId = offset; + trace.traceEvents.push(newClone); + } + + const metricInputData = { + trace, + settings: {throttlingMethod: 'provided'}, + }; + const event = await Responsiveness.request(metricInputData, {computedCache: new Map()}); + expect(event.args.data).toMatchObject({ + duration: maxDuration - 1, + nodeId: -1, + }); + }); + it('evaluates from a real trace', async () => { const metricInputData = { trace: interactionTrace, @@ -151,7 +364,18 @@ describe('Metric: Responsiveness', () => { }; const context = {computedCache: new Map()}; const event = await Responsiveness.request(metricInputData, context); - expect(event.args.data).toMatchObject({maxDuration: 392}); + expect(event).toMatchObject({ + name: 'EventTiming', + ts: 633282566296, + args: { + data: { + timeStamp: 5646, + duration: 368, + frame: '2F500B02691F5A39562731E977A0202C', + type: 'mousedown', + }, + }, + }); }); it('evaluates from a real trace with no interaction events', async () => { diff --git a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json index 3d4ee10841d6..f56570574135 100644 --- a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json +++ b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json @@ -9383,11 +9383,9 @@ "id": "experimental-interaction-to-next-paint", "title": "Interaction to Next Paint", "description": "Interaction to Next Paint measures page responsiveness, how long it takes the page to visibly respond to user input. [Learn more](https://web.dev/inp/).", - "score": 1, - "scoreDisplayMode": "numeric", - "numericValue": 53, - "numericUnit": "millisecond", - "displayValue": "50 ms" + "score": null, + "scoreDisplayMode": "error", + "errorMessage": "This version of Chrome is too old to support 'detailed EventTiming trace events'. Use a newer version to see full results." } }, "configSettings": { @@ -10388,12 +10386,6 @@ "timeInMs": 533.3879999999999 }, "path": "audits[network-server-latency].displayValue" - }, - { - "values": { - "timeInMs": 53 - }, - "path": "audits[experimental-interaction-to-next-paint].displayValue" } ], "lighthouse-core/lib/i18n/i18n.js | cumulativeLayoutShiftMetric": [ @@ -10778,6 +10770,15 @@ "lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js | description": [ "audits[experimental-interaction-to-next-paint].description" ], + "lighthouse-core/lib/lh-error.js | oldChromeDoesNotSupportFeature": [ + { + "values": { + "errorCode": "UNSUPPORTED_OLD_CHROME", + "featureName": "detailed EventTiming trace events" + }, + "path": "audits[experimental-interaction-to-next-paint].errorMessage" + } + ], "lighthouse-core/config/default-config.js | performanceCategoryTitle": [ "categories.performance.title" ], diff --git a/lighthouse-core/test/fixtures/traces/timespan-responsiveness-m103.trace.json b/lighthouse-core/test/fixtures/traces/timespan-responsiveness-m103.trace.json index 0b32b88a6970..946644117565 100644 --- a/lighthouse-core/test/fixtures/traces/timespan-responsiveness-m103.trace.json +++ b/lighthouse-core/test/fixtures/traces/timespan-responsiveness-m103.trace.json @@ -1,505 +1,586 @@ { "traceEvents": [ {"args":{"name":"swapper"},"cat":"__metadata","name":"thread_name","ph":"M","pid":0,"tid":0,"ts":0}, - {"args":{"name":"CrRendererMain"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":259,"ts":0}, - {"args":{"name":"CrBrowserMain"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":259,"ts":0}, - {"args":{"name":"Compositor"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":43011,"ts":0}, - {"args":{"name":"NetworkService"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":55299,"ts":0}, - {"args":{"name":"StackSamplingProfiler"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":11523,"ts":0}, - {"args":{"name":"Chrome_DevToolsHandlerThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":130051,"ts":0}, - {"args":{"name":"VizCompositorThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":34563,"ts":0}, - {"args":{"name":"Chrome_IOThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":31235,"ts":0}, - {"args":{"name":"CrGpuMain"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":259,"ts":0}, - {"args":{"name":"Chrome_ChildIOThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":15363,"ts":0}, - {"args":{"name":"Chrome_ChildIOThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":36611,"ts":0}, - {"args":{"name":"StackSamplingProfiler"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":11015,"ts":0}, - {"args":{"name":"CompositorTileWorker4"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":41731,"ts":0}, - {"args":{"name":"CompositorTileWorker1"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":23299,"ts":0}, - {"args":{"name":"ThreadPoolBackgroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":37891,"ts":0}, - {"args":{"name":"ThreadPoolServiceThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":34819,"ts":0}, - {"args":{"name":"ThreadPoolServiceThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":13571,"ts":0}, - {"args":{"name":"ThreadPoolServiceThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":27151,"ts":0}, - {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":33283,"ts":0}, - {"args":{"name":"CompositorTileWorker2"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":23555,"ts":0}, - {"args":{"name":"PowerSaveBlocker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":154627,"ts":0}, - {"args":{"name":"CompositorTileWorker3"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":23811,"ts":0}, - {"args":{"name":"MemoryInfra"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":45059,"ts":0}, - {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":15875,"ts":0}, - {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":13827,"ts":0}, - {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":33027,"ts":0}, - {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":9735,"ts":0}, - {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6693,"tid":128515,"ts":0}, - {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6724,"tid":27395,"ts":0}, - {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":6728,"tid":32519,"ts":0}, - {"args":{"name":"Renderer"},"cat":"__metadata","name":"process_name","ph":"M","pid":6728,"tid":0,"ts":0}, - {"args":{"name":"Browser"},"cat":"__metadata","name":"process_name","ph":"M","pid":6693,"tid":0,"ts":0}, - {"args":{"name":"GPU Process"},"cat":"__metadata","name":"process_name","ph":"M","pid":6724,"tid":0,"ts":0}, - {"args":{"uptime":"9"},"cat":"__metadata","name":"process_uptime_seconds","ph":"M","pid":6728,"tid":0,"ts":0}, - {"args":{"uptime":"10"},"cat":"__metadata","name":"process_uptime_seconds","ph":"M","pid":6693,"tid":0,"ts":0}, - {"args":{"uptime":"9"},"cat":"__metadata","name":"process_uptime_seconds","ph":"M","pid":6724,"tid":0,"ts":0}, - {"args":{"data":{"frameTreeNodeId":2,"frames":[{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","name":"","processId":6728,"url":"http://localhost:8080/parent.html"},{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","name":"","parent":"B9F558A7E7EF74FD8D4B8B64CC7A803C","processId":6728,"url":"http://localhost:10200/events.html"}],"persistentIds":true}},"cat":"disabled-by-default-devtools.timeline","name":"TracingStartedInBrowser","ph":"I","pid":6693,"s":"t","tid":259,"ts":218690473956,"tts":886782}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2036,"name":"RunTask","ph":"X","pid":6728,"tdur":1934,"tid":259,"ts":218690478990,"tts":1326090}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1956,"name":"EvaluateScript","ph":"X","pid":6728,"tdur":1853,"tid":259,"ts":218690479020,"tts":1326121}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":1349,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":1298,"tid":259,"ts":218690479605,"tts":1326653}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2664,"name":"RunTask","ph":"X","pid":6728,"tdur":2654,"tid":259,"ts":218690482729,"tts":1329447}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":58,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":58,"tid":259,"ts":218690484793,"tts":1331500}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":3895,"name":"RunTask","ph":"X","pid":6728,"tdur":3870,"tid":259,"ts":218690487883,"tts":1333972}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":32,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":30,"tid":259,"ts":218690491700,"tts":1337766}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2244,"name":"RunTask","ph":"X","pid":6728,"tdur":2244,"tid":259,"ts":218690494080,"tts":1339815}, - {"args":{"data":{"columnNumber":59,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":19,"scriptId":"26","url":"__puppeteer_evaluation_script__"}},"cat":"devtools.timeline","dur":706,"name":"FunctionCall","ph":"X","pid":6728,"tdur":114,"tid":259,"ts":218690494903,"tts":1341231}, - {"args":{"microtask_count":3},"cat":"v8.execute","dur":58,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":57,"tid":259,"ts":218690496251,"tts":1341987}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1072,"name":"RunTask","ph":"X","pid":6728,"tdur":1073,"tid":259,"ts":218690497655,"tts":1343074}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2803,"name":"RunTask","ph":"X","pid":6728,"tdur":2790,"tid":259,"ts":218690500533,"tts":1345709}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218690500655,"tts":1345877}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218690501959,"tts":1347126}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218690502352,"tts":1347517}, - {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":25,"name":"EventDispatch","ph":"X","pid":6728,"tdur":22,"tid":259,"ts":218690502473,"tts":1347639}, - {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":734,"name":"EventDispatch","ph":"X","pid":6728,"tdur":731,"tid":259,"ts":218690502502,"tts":1347668}, - {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218690503245,"tts":1348409}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":10735,"name":"RunTask","ph":"X","pid":6728,"tdur":10646,"tid":259,"ts":218690503355,"tts":1348518}, - {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":17,"name":"EventDispatch","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218690508395,"tts":1353552}, - {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":19,"name":"EventDispatch","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218690509305,"tts":1354460}, - {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690509332,"tts":1354482}, - {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690509372,"tts":1354520}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":52707,"name":"RunTask","ph":"X","pid":6728,"tdur":52083,"tid":259,"ts":218690514132,"tts":1359206}, - {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":25689,"name":"EventDispatch","ph":"X","pid":6728,"tdur":25095,"tid":259,"ts":218690515437,"tts":1360514}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":24400,"name":"FunctionCall","ph":"X","pid":6728,"tdur":23848,"tid":259,"ts":218690516706,"tts":1361742}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":6,"url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218690541066,"tts":1385572}, - {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":21749,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21719,"tid":259,"ts":218690541148,"tts":1385633}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21674,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21640,"tid":259,"ts":218690541202,"tts":1385691}, - {"args":{"data":{"type":"selectstart"}},"cat":"devtools.timeline","dur":601,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690564403,"tts":1409455}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":168884,"name":"RunTask","ph":"X","pid":6728,"tdur":168527,"tid":259,"ts":218690566930,"tts":1411350}, - {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":21171,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21122,"tid":259,"ts":218690567975,"tts":1412397}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21126,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21075,"tid":259,"ts":218690567996,"tts":1412421}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":6,"url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218690589099,"tts":1433479}, - {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":21601,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21015,"tid":259,"ts":218690589177,"tts":1434058}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20927,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20843,"tid":259,"ts":218690589701,"tts":1434080}, - {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20822,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20785,"tid":259,"ts":218690610825,"tts":1455122}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20758,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20718,"tid":259,"ts":218690610845,"tts":1455145}, - {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":7,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218690631624,"tts":1475886}, - {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218690631642,"tts":1475902}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20076,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20066,"tid":259,"ts":218690632999,"tts":1477258}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":19929,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19905,"tid":259,"ts":218690653770,"tts":1498027}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20194,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20157,"tid":259,"ts":218690673740,"tts":1517981}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20324,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20260,"tid":259,"ts":218690693981,"tts":1538193}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20036,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20007,"tid":259,"ts":218690714346,"tts":1558500}, - {"args":{"data":{"cancelable":true,"duration":32,"interactionId":0,"processingEnd":2767,"processingStart":2767,"timeStamp":2759,"type":"pointerover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":6,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218690736549,"tts":1580612}, - {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218690736558,"tts":1580622}, - {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":5,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690736998,"tts":1581062}, - {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218690737007,"tts":1581070}, - {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":4,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690737013,"tts":1581077}, - {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690737024,"tts":1581087}, - {"args":{"data":{"cancelable":false,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690737031,"tts":1581094}, - {"args":{"data":{"cancelable":true,"duration":32,"interactionId":0,"processingEnd":2768,"processingStart":2768,"timeStamp":2759,"type":"mouseover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":4,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690737038,"tts":1581102}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1047,"name":"RunTask","ph":"X","pid":6728,"tdur":1043,"tid":259,"ts":218690751219,"tts":1592598}, - {"args":{"data":{"cancelable":true,"duration":240,"interactionId":0,"processingEnd":2821,"processingStart":2800,"timeStamp":2770,"type":"mousedown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":7,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218690751773,"tts":1593148}, - {"args":{"data":{"cancelable":true,"duration":240,"interactionId":3981,"processingEnd":2800,"processingStart":2774,"timeStamp":2770,"type":"pointerdown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":4,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218690751810,"tts":1593186}, - {"args":{"data":{"cancelable":true,"duration":184,"interactionId":3981,"processingEnd":2848,"processingStart":2827,"timeStamp":2824,"type":"pointerup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":4,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218690752159,"tts":1593534}, - {"args":{"data":{"cancelable":true,"duration":184,"interactionId":0,"processingEnd":2869,"processingStart":2848,"timeStamp":2824,"type":"mouseup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218690752166,"tts":1593541}, - {"args":{"data":{"interactionType":"tapOrClick","maxDuration":237,"totalDuration":237},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":22,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":23,"tid":259,"ts":218690752223,"tts":1593598}, - {"args":{"data":{"cancelable":true,"duration":184,"interactionId":3981,"processingEnd":2890,"processingStart":2869,"timeStamp":2824,"type":"click"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218690752249,"tts":1593624}, - {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218690889383,"tts":899894}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1376,"name":"RunTask","ph":"X","pid":6728,"tdur":1376,"tid":259,"ts":218691243667,"tts":1969193}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":45,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":45,"tid":259,"ts":218691244970,"tts":1970496}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1430,"name":"RunTask","ph":"X","pid":6728,"tdur":1419,"tid":259,"ts":218691245855,"tts":1971289}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":19,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":18,"tid":259,"ts":218691246967,"tts":1972390}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1045,"name":"RunTask","ph":"X","pid":6728,"tdur":1045,"tid":259,"ts":218691247460,"tts":1972882}, - {"args":{"data":{"columnNumber":59,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":19,"scriptId":"30","url":"__puppeteer_evaluation_script__"}},"cat":"devtools.timeline","dur":58,"name":"FunctionCall","ph":"X","pid":6728,"tdur":53,"tid":259,"ts":218691248111,"tts":1973539}, - {"args":{"microtask_count":3},"cat":"v8.execute","dur":37,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":36,"tid":259,"ts":218691248459,"tts":1973882}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2631,"name":"RunTask","ph":"X","pid":6728,"tdur":2569,"tid":259,"ts":218691252306,"tts":1977072}, - {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":11,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218691252995,"tts":1977764}, - {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691253029,"tts":1977795}, - {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691253043,"tts":1977809}, - {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691253054,"tts":1977820}, - {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691253061,"tts":1977827}, - {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691253067,"tts":1977833}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":46034,"name":"RunTask","ph":"X","pid":6728,"tdur":45907,"tid":259,"ts":218691254949,"tts":1979653}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691255802,"tts":1980508}, - {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":21222,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21113,"tid":259,"ts":218691255831,"tts":1980537}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21142,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21037,"tid":259,"ts":218691255855,"tts":1980566}, - {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":22009,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21987,"tid":259,"ts":218691277084,"tts":2001682}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21272,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21244,"tid":259,"ts":218691277802,"tts":2002406}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691299807,"tts":2024385}, - {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":11,"name":"EventDispatch","ph":"X","pid":6728,"tdur":10,"tid":259,"ts":218691300463,"tts":2025041}, - {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691300477,"tts":2025054}, - {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691300483,"tts":2025060}, - {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691300831,"tts":2025409}, - {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691300839,"tts":2025416}, - {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691300844,"tts":2025421}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"pointerout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":5,"name":"EventTiming","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218691301696,"tts":2026273}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691301704,"tts":2026280}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691301709,"tts":2026285}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"pointerover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691301881,"tts":2026457}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691301886,"tts":2026463}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"mouseout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691301891,"tts":2026467}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":3512,"processingStart":3512,"timeStamp":3509,"type":"mouseover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691301895,"tts":2026472}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":167913,"name":"RunTask","ph":"X","pid":6728,"tdur":167305,"tid":259,"ts":218691301904,"tts":2026481}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691302292,"tts":2026870}, - {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":20846,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20759,"tid":259,"ts":218691302312,"tts":2026889}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20811,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20718,"tid":259,"ts":218691302329,"tts":2026911}, - {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":20956,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20932,"tid":259,"ts":218691323175,"tts":2047666}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20924,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20896,"tid":259,"ts":218691323190,"tts":2047685}, - {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20984,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20934,"tid":259,"ts":218691344160,"tts":2068629}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20933,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20382,"tid":259,"ts":218691344182,"tts":2069151}, - {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218691365136,"tts":2089556}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20106,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20078,"tid":259,"ts":218691366396,"tts":2090819}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20296,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20189,"tid":259,"ts":218691386541,"tts":2110942}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20102,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20011,"tid":259,"ts":218691406880,"tts":2131181}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":19977,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19842,"tid":259,"ts":218691427171,"tts":2151387}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20000,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19973,"tid":259,"ts":218691447594,"tts":2171684}, - {"args":{"data":{"cancelable":true,"duration":216,"interactionId":0,"processingEnd":3558,"processingStart":3536,"timeStamp":3512,"type":"mousedown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":8,"name":"EventTiming","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218691485329,"tts":2206187}, - {"args":{"data":{"cancelable":true,"duration":216,"interactionId":3988,"processingEnd":3536,"processingStart":3514,"timeStamp":3512,"type":"pointerdown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691485786,"tts":2206643}, - {"args":{"data":{"cancelable":true,"duration":168,"interactionId":3988,"processingEnd":3582,"processingStart":3561,"timeStamp":3560,"type":"pointerup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691485796,"tts":2206653}, - {"args":{"data":{"cancelable":true,"duration":168,"interactionId":0,"processingEnd":3603,"processingStart":3582,"timeStamp":3560,"type":"mouseup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691485802,"tts":2206659}, - {"args":{"data":{"interactionType":"tapOrClick","maxDuration":218,"totalDuration":218},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":6,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218691485819,"tts":2206677}, - {"args":{"data":{"cancelable":true,"duration":168,"interactionId":3988,"processingEnd":3624,"processingStart":3603,"timeStamp":3560,"type":"click"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691485828,"tts":2206685}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1667,"name":"RunTask","ph":"X","pid":6728,"tdur":1667,"tid":259,"ts":218691775391,"tts":2428052}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":27,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":27,"tid":259,"ts":218691776985,"tts":2429646}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2402,"name":"RunTask","ph":"X","pid":6728,"tdur":2373,"tid":259,"ts":218691785682,"tts":2436935}, - {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":13,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218691786297,"tts":2437550}, - {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218691786320,"tts":2437569}, - {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691786336,"tts":2437586}, - {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691786344,"tts":2437593}, - {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691786352,"tts":2437601}, - {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691786358,"tts":2437608}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":45401,"name":"RunTask","ph":"X","pid":6728,"tdur":45293,"tid":259,"ts":218691788095,"tts":2439320}, - {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":21356,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21302,"tid":259,"ts":218691788197,"tts":2439423}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21317,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21258,"tid":259,"ts":218691788216,"tts":2439447}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":6,"url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691809507,"tts":2460688}, - {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":21768,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21711,"tid":259,"ts":218691809574,"tts":2460749}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21729,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21669,"tid":259,"ts":218691809592,"tts":2460769}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691832060,"tts":2483179}, - {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218691832072,"tts":2483190}, - {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691832089,"tts":2483207}, - {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691832095,"tts":2483213}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691832735,"tts":2483854}, - {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691832742,"tts":2483861}, - {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691832750,"tts":2483867}, - {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691832755,"tts":2483872}, - {"args":{"data":{"type":"selectstart"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691833420,"tts":2484539}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"pointerout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":5,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691834168,"tts":2485286}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691834176,"tts":2485293}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"pointerover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":8,"name":"EventTiming","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218691834181,"tts":2485298}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218691834192,"tts":2485308}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691834196,"tts":2485314}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"mouseout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691834201,"tts":2485319}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":4045,"processingStart":4045,"timeStamp":4038,"type":"mouseover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218691834206,"tts":2485323}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":171694,"name":"RunTask","ph":"X","pid":6728,"tdur":168398,"tid":259,"ts":218691834216,"tts":2485333}, - {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":21428,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21346,"tid":259,"ts":218691834654,"tts":2485773}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21385,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21301,"tid":259,"ts":218691834671,"tts":2485793}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":6,"url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218691855364,"tts":2506448}, - {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":20815,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20778,"tid":259,"ts":218691856103,"tts":2507142}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20776,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20735,"tid":259,"ts":218691856121,"tts":2507164}, - {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20923,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20857,"tid":259,"ts":218691877343,"tts":2528332}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20841,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20770,"tid":259,"ts":218691877372,"tts":2528365}, - {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218691898239,"tts":2549163}, - {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218691898258,"tts":2549181}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20873,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20453,"tid":259,"ts":218691899672,"tts":2550375}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21949,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20387,"tid":259,"ts":218691920589,"tts":2570879}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20431,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20032,"tid":259,"ts":218691942585,"tts":2591321}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20552,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20213,"tid":259,"ts":218691963058,"tts":2611401}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20219,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20112,"tid":259,"ts":218691983651,"tts":2631663}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2550,"name":"RunTask","ph":"X","pid":6728,"tdur":2456,"tid":259,"ts":218692007034,"tts":2654836}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1523,"name":"RunTask","ph":"X","pid":6728,"tdur":1428,"tid":259,"ts":218692009590,"tts":2657298}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692010581,"tts":2658524}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692010935,"tts":2658553}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1284,"name":"RunTask","ph":"X","pid":6728,"tdur":1280,"tid":259,"ts":218692011122,"tts":2658737}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":7595,"name":"RunTask","ph":"X","pid":6728,"tdur":7481,"tid":259,"ts":218692012743,"tts":2660349}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","nodeId":2}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692012777,"tts":2660386}, - {"args":{"beginData":{"dirtyObjects":22,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","partialLayout":false,"totalObjects":22},"endData":{"layoutRoots":[{"depth":1,"nodeId":2,"quads":[[0,0,1224,0,1224,2176,0,2176]]}]}},"cat":"devtools.timeline","dur":1657,"name":"Layout","ph":"X","pid":6728,"tdur":1598,"tid":259,"ts":218692012830,"tts":2660474}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","nodeId":5}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692015412,"tts":2662993}, - {"args":{"beginData":{"dirtyObjects":23,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","partialLayout":false,"totalObjects":23},"endData":{"layoutRoots":[{"depth":1,"nodeId":5,"quads":[[0,0,1200,0,1200,960,0,960]]}]}},"cat":"devtools.timeline","dur":1531,"name":"Layout","ph":"X","pid":6728,"tdur":1529,"tid":259,"ts":218692015464,"tts":2663046}, - {"args":{"data":{"cancelable":true,"duration":224,"interactionId":0,"processingEnd":4090,"processingStart":4068,"timeStamp":4045,"type":"mousedown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":5,"name":"EventTiming","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218692020419,"tts":2667912}, - {"args":{"data":{"cancelable":true,"duration":224,"interactionId":3995,"processingEnd":4068,"processingStart":4047,"timeStamp":4045,"type":"pointerdown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":9,"name":"EventTiming","ph":"X","pid":6728,"tdur":9,"tid":259,"ts":218692020835,"tts":2668313}, - {"args":{"data":{"cancelable":true,"duration":176,"interactionId":3995,"processingEnd":4115,"processingStart":4093,"timeStamp":4092,"type":"pointerup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218692020851,"tts":2668329}, - {"args":{"data":{"cancelable":true,"duration":176,"interactionId":0,"processingEnd":4135,"processingStart":4115,"timeStamp":4092,"type":"mouseup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":8,"name":"EventTiming","ph":"X","pid":6728,"tdur":9,"tid":259,"ts":218692020858,"tts":2668335}, - {"args":{"data":{"interactionType":"tapOrClick","maxDuration":221,"totalDuration":221},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":28,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":29,"tid":259,"ts":218692020886,"tts":2668363}, - {"args":{"data":{"cancelable":true,"duration":176,"interactionId":3995,"processingEnd":4157,"processingStart":4136,"timeStamp":4092,"type":"click"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218692020918,"tts":2668395}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":4211,"name":"RunTask","ph":"X","pid":6728,"tdur":3614,"tid":259,"ts":218692027401,"tts":2673364}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2074,"name":"RunTask","ph":"X","pid":6728,"tdur":2027,"tid":259,"ts":218692031625,"tts":2676991}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1643,"name":"RunTask","ph":"X","pid":6728,"tdur":1643,"tid":259,"ts":218692033709,"tts":2679028}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":3487,"name":"RunTask","ph":"X","pid":6728,"tdur":3399,"tid":259,"ts":218692035358,"tts":2680677}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1555,"name":"RunTask","ph":"X","pid":6728,"tdur":1554,"tid":259,"ts":218692039275,"tts":2684506}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1454,"name":"RunTask","ph":"X","pid":6728,"tdur":1451,"tid":259,"ts":218692040836,"tts":2686066}, - {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218692119281,"tts":1026203}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1397,"name":"RunTask","ph":"X","pid":6728,"tdur":1316,"tid":259,"ts":218692338095,"tts":2911795}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":54031,"name":"RunTask","ph":"X","pid":6728,"tdur":50716,"tid":259,"ts":218692538543,"tts":3060906}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692538619,"tts":3060989}, - {"args":{"data":{"type":"keydown"}},"cat":"devtools.timeline","dur":21703,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20394,"tid":259,"ts":218692538646,"tts":3061011}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20341,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19036,"tid":259,"ts":218692539559,"tts":3061921}, - {"args":{"data":{"type":"keypress"}},"cat":"devtools.timeline","dur":31619,"name":"EventDispatch","ph":"X","pid":6728,"tdur":29608,"tid":259,"ts":218692560369,"tts":3081427}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20650,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19270,"tid":259,"ts":218692560944,"tts":3081985}, - {"args":{"data":{"type":"beforeinput"}},"cat":"devtools.timeline","dur":10,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218692582471,"tts":3102112}, - {"args":{"data":{"type":"textInput"}},"cat":"devtools.timeline","dur":8919,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8328,"tid":259,"ts":218692583062,"tts":3102702}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692584874,"tts":3104496}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","nodeId":2}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692584975,"tts":3104592}, - {"args":{"beginData":{"dirtyObjects":7,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","partialLayout":false,"totalObjects":23},"endData":{"layoutRoots":[{"depth":1,"nodeId":2,"quads":[[0,0,1224,0,1224,2176,0,2176]]}]}},"cat":"devtools.timeline","dur":1038,"name":"Layout","ph":"X","pid":6728,"tdur":1034,"tid":259,"ts":218692584998,"tts":3104615}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692586644,"tts":3106249}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","nodeId":2}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692587980,"tts":3107516}, - {"args":{"beginData":{"dirtyObjects":5,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","partialLayout":false,"totalObjects":21},"endData":{"layoutRoots":[{"depth":1,"nodeId":2,"quads":[[0,0,1224,0,1224,2176,0,2176]]}]}},"cat":"devtools.timeline","dur":84,"name":"Layout","ph":"X","pid":6728,"tdur":79,"tid":259,"ts":218692588019,"tts":3107556}, - {"args":{"data":{"type":"input"}},"cat":"devtools.timeline","dur":17,"name":"EventDispatch","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218692591907,"tts":3110964}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":44491,"name":"RunTask","ph":"X","pid":6728,"tdur":41491,"tid":259,"ts":218692592594,"tts":3111642}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20072,"name":"FunctionCall","ph":"X","pid":6728,"tdur":18786,"tid":259,"ts":218692593419,"tts":3112474}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20972,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19513,"tid":259,"ts":218692613537,"tts":3131319}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":22078,"name":"RunTask","ph":"X","pid":6728,"tdur":20595,"tid":259,"ts":218692637095,"tts":3153143}, - {"args":{"data":{"type":"keyup"}},"cat":"devtools.timeline","dur":21409,"name":"EventDispatch","ph":"X","pid":6728,"tdur":19932,"tid":259,"ts":218692637737,"tts":3153779}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21362,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19881,"tid":259,"ts":218692637764,"tts":3153810}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":6,"url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218692658942,"tts":3173521}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1733,"name":"RunTask","ph":"X","pid":6728,"tdur":1650,"tid":259,"ts":218692659204,"tts":3173771}, - {"args":{"data":{"type":"selectionchange"}},"cat":"devtools.timeline","dur":24,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218692660972,"tts":3175469}, - {"args":{"data":{"cancelable":true,"duration":56,"interactionId":0,"processingEnd":4841,"processingStart":4841,"timeStamp":4841,"type":"beforeinput"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":6,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218692661664,"tts":3176106}, - {"args":{"data":{"cancelable":false,"duration":56,"interactionId":0,"processingEnd":4850,"processingStart":4850,"timeStamp":4846,"type":"input"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218692661673,"tts":3176116}, - {"args":{"data":{"cancelable":true,"duration":104,"interactionId":0,"processingEnd":4851,"processingStart":4819,"timeStamp":4797,"type":"keypress"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":8,"name":"EventTiming","ph":"X","pid":6728,"tdur":9,"tid":259,"ts":218692661679,"tts":3176121}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":22898,"name":"RunTask","ph":"X","pid":6728,"tdur":21520,"tid":259,"ts":218692661707,"tts":3176149}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20632,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19380,"tid":259,"ts":218692662372,"tts":3176800}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2483,"name":"RunTask","ph":"X","pid":6728,"tdur":2048,"tid":259,"ts":218692685933,"tts":3198913}, - {"args":{"data":{"cancelable":true,"duration":104,"interactionId":4002,"processingEnd":4819,"processingStart":4797,"timeStamp":4797,"type":"keydown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":6,"name":"EventTiming","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218692702699,"tts":3211375}, - {"args":{"data":{"interactionType":"keyboard","maxDuration":101,"totalDuration":149},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":13,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218692702717,"tts":3211393}, - {"args":{"data":{"cancelable":true,"duration":72,"interactionId":4002,"processingEnd":4918,"processingStart":4896,"timeStamp":4876,"type":"keyup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218692702734,"tts":3211410}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1372,"name":"RunTask","ph":"X","pid":6728,"tdur":1158,"tid":259,"ts":218692990213,"tts":3420534}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1315,"name":"EvaluateScript","ph":"X","pid":6728,"tdur":1101,"tid":259,"ts":218692990241,"tts":3420562}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":435,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":415,"tid":259,"ts":218692991117,"tts":3421245}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2205,"name":"RunTask","ph":"X","pid":6728,"tdur":2181,"tid":259,"ts":218692992369,"tts":3422215}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":58,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":58,"tid":259,"ts":218692994017,"tts":3423847}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1277,"name":"RunTask","ph":"X","pid":6728,"tdur":1249,"tid":259,"ts":218692995994,"tts":3425565}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":3009,"name":"RunTask","ph":"X","pid":6728,"tdur":2915,"tid":259,"ts":218692997276,"tts":3426820}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":43,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":38,"tid":259,"ts":218692999698,"tts":3429156}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1061,"name":"RunTask","ph":"X","pid":6728,"tdur":1062,"tid":259,"ts":218693004768,"tts":3433367}, - {"args":{"data":{"columnNumber":59,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":19,"scriptId":"43","url":"__puppeteer_evaluation_script__"}},"cat":"devtools.timeline","dur":580,"name":"FunctionCall","ph":"X","pid":6728,"tdur":574,"tid":259,"ts":218693005171,"tts":3433777}, - {"args":{"microtask_count":3},"cat":"v8.execute","dur":57,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":56,"tid":259,"ts":218693005762,"tts":3434363}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":4987,"name":"RunTask","ph":"X","pid":6728,"tdur":4417,"tid":259,"ts":218693020922,"tts":3445996}, - {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":12,"name":"EventDispatch","ph":"X","pid":6728,"tdur":9,"tid":259,"ts":218693021888,"tts":3446951}, - {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693021919,"tts":3446980}, - {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693021930,"tts":3446990}, - {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693021939,"tts":3446999}, - {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218693022435,"tts":3447439}, - {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":228,"name":"EventDispatch","ph":"X","pid":6728,"tdur":224,"tid":259,"ts":218693023027,"tts":3447875}, - {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693023322,"tts":3448168}, - {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693023331,"tts":3448176}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":103958,"name":"RunTask","ph":"X","pid":6728,"tdur":92280,"tid":259,"ts":218693025921,"tts":3450426}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693026692,"tts":3451198}, - {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":44637,"name":"EventDispatch","ph":"X","pid":6728,"tdur":41013,"tid":259,"ts":218693026723,"tts":3451229}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":44228,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40665,"tid":259,"ts":218693027113,"tts":3451559}, - {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":44765,"name":"EventDispatch","ph":"X","pid":6728,"tdur":39141,"tid":259,"ts":218693072104,"tts":3492782}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":44447,"name":"FunctionCall","ph":"X","pid":6728,"tdur":38859,"tid":259,"ts":218693072377,"tts":3493026}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693118913,"tts":3533899}, - {"args":{"data":{"type":"change"}},"cat":"devtools.timeline","dur":9,"name":"EventDispatch","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218693118956,"tts":3533940}, - {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":35,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21,"tid":259,"ts":218693127333,"tts":3540340}, - {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693127379,"tts":3540373}, - {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693127386,"tts":3540380}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693127472,"tts":3540458}, - {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693128724,"tts":3541595}, - {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":9,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218693128971,"tts":3541840}, - {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693129052,"tts":3541918}, - {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":7,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218693130676,"tts":3543391}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693130687,"tts":3543401}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130692,"tts":3543406}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693130697,"tts":3543411}, - {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130702,"tts":3543417}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130711,"tts":3543425}, - {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"mouseout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":19,"name":"EventTiming","ph":"X","pid":6728,"tdur":18,"tid":259,"ts":218693130715,"tts":3543430}, - {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5280,"processingStart":5280,"timeStamp":5266,"type":"mouseover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130742,"tts":3543456}, - {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5059,"processingStart":5059,"timeStamp":5044,"type":"pointerover"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":8,"name":"EventTiming","ph":"X","pid":6728,"tdur":9,"tid":259,"ts":218693130762,"tts":3543471}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130774,"tts":3543484}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130779,"tts":3543489}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130784,"tts":3543493}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130788,"tts":3543499}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130793,"tts":3543503}, - {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5060,"processingStart":5060,"timeStamp":5044,"type":"mouseover"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693130798,"tts":3543508}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":283742,"name":"RunTask","ph":"X","pid":6728,"tdur":275715,"tid":259,"ts":218693130813,"tts":3543522}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693131846,"tts":3544517}, - {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":44889,"name":"EventDispatch","ph":"X","pid":6728,"tdur":42205,"tid":259,"ts":218693131873,"tts":3544543}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":44850,"name":"FunctionCall","ph":"X","pid":6728,"tdur":42161,"tid":259,"ts":218693131892,"tts":3544567}, - {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":41664,"name":"EventDispatch","ph":"X","pid":6728,"tdur":40920,"tid":259,"ts":218693176907,"tts":3586828}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40691,"name":"FunctionCall","ph":"X","pid":6728,"tdur":39971,"tid":259,"ts":218693177854,"tts":3587752}, - {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":40521,"name":"EventDispatch","ph":"X","pid":6728,"tdur":39636,"tid":259,"ts":218693219028,"tts":3628207}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40472,"name":"FunctionCall","ph":"X","pid":6728,"tdur":39584,"tid":259,"ts":218693219046,"tts":3628229}, - {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218693259541,"tts":3667837}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":29919,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29045,"tid":259,"ts":218693261216,"tts":3669474}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":29952,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29624,"tid":259,"ts":218693291210,"tts":3698603}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":29965,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29263,"tid":259,"ts":218693321461,"tts":3728534}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30171,"name":"FunctionCall","ph":"X","pid":6728,"tdur":28621,"tid":259,"ts":218693351970,"tts":3758346}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30134,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29990,"tid":259,"ts":218693382323,"tts":3787156}, - {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218693414838,"tts":1106006}, - {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218693414849,"tts":1106017}, - {"args":{"data":{"cancelable":true,"duration":392,"interactionId":0,"processingEnd":5153,"processingStart":5109,"timeStamp":5061,"type":"mousedown"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":7,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218693420021,"tts":3823806}, - {"args":{"data":{"cancelable":true,"duration":392,"interactionId":283,"processingEnd":5108,"processingStart":5063,"timeStamp":5061,"type":"pointerdown"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693420037,"tts":3823822}, - {"args":{"data":{"cancelable":true,"duration":288,"interactionId":283,"processingEnd":5213,"processingStart":5168,"timeStamp":5167,"type":"pointerup"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693420046,"tts":3823832}, - {"args":{"data":{"cancelable":true,"duration":288,"interactionId":0,"processingEnd":5255,"processingStart":5213,"timeStamp":5167,"type":"mouseup"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693420052,"tts":3823838}, - {"args":{"data":{"interactionType":"tapOrClick","maxDuration":392,"totalDuration":392},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":7,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218693420065,"tts":3823850}, - {"args":{"data":{"cancelable":true,"duration":288,"interactionId":283,"processingEnd":5296,"processingStart":5256,"timeStamp":5167,"type":"click"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693420075,"tts":3823861}, - {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218693523282,"tts":1108926}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1174,"name":"RunTask","ph":"X","pid":6728,"tdur":1171,"tid":259,"ts":218693718952,"tts":4052194}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":45,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":45,"tid":259,"ts":218693720056,"tts":4053294}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1353,"name":"RunTask","ph":"X","pid":6728,"tdur":1340,"tid":259,"ts":218693720837,"tts":4054064}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":17,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":17,"tid":259,"ts":218693722139,"tts":4055353}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1577,"name":"RunTask","ph":"X","pid":6728,"tdur":1575,"tid":259,"ts":218693722300,"tts":4055446}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2875,"name":"RunTask","ph":"X","pid":6728,"tdur":2811,"tid":259,"ts":218693737654,"tts":4067878}, - {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":612,"name":"EventDispatch","ph":"X","pid":6728,"tdur":610,"tid":259,"ts":218693737828,"tts":4068055}, - {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218693738465,"tts":4068690}, - {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693738488,"tts":4068712}, - {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693738498,"tts":4068722}, - {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693738509,"tts":4068733}, - {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693738516,"tts":4068740}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":85859,"name":"RunTask","ph":"X","pid":6728,"tdur":85478,"tid":259,"ts":218693740542,"tts":4070701}, - {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":40521,"name":"EventDispatch","ph":"X","pid":6728,"tdur":40285,"tid":259,"ts":218693741501,"tts":4071664}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40480,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40239,"tid":259,"ts":218693741523,"tts":4071691}, - {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":40395,"name":"EventDispatch","ph":"X","pid":6728,"tdur":40249,"tid":259,"ts":218693782496,"tts":4112426}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40319,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40171,"tid":259,"ts":218693782553,"tts":4112485}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","stackTrace":[{"columnNumber":47,"functionName":"keepBusy","lineNumber":197,"scriptId":7,"url":"http://localhost:10200/events.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693822841,"tts":4152632}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693824210,"tts":4153995}, - {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218693824223,"tts":4154008}, - {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693824231,"tts":4154015}, - {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693824236,"tts":4154020}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693824329,"tts":4154114}, - {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693824335,"tts":4154120}, - {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693824342,"tts":4154126}, - {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693824969,"tts":4154754}, - {"args":{"data":{"type":"selectstart"}},"cat":"devtools.timeline","dur":640,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218693825170,"tts":4155590}, - {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5774,"timeStamp":5762,"type":"pointerout"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":6,"name":"EventTiming","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218693826959,"tts":4156737}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693826968,"tts":4156746}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693826973,"tts":4156751}, - {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"pointerover"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693826979,"tts":4156756}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693826984,"tts":4156761}, - {"args":{"data":{"cancelable":false,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"pointerenter"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693826988,"tts":4156766}, - {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"mouseout"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693826993,"tts":4156770}, - {"args":{"data":{"cancelable":true,"duration":24,"interactionId":0,"processingEnd":5775,"processingStart":5775,"timeStamp":5762,"type":"mouseover"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218693826998,"tts":4156776}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":281243,"name":"RunTask","ph":"X","pid":6728,"tdur":279603,"tid":259,"ts":218693827424,"tts":4157202}, - {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":41268,"name":"EventDispatch","ph":"X","pid":6728,"tdur":41102,"tid":259,"ts":218693828313,"tts":4158094}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":41227,"name":"FunctionCall","ph":"X","pid":6728,"tdur":41057,"tid":259,"ts":218693828335,"tts":4158119}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","stackTrace":[{"columnNumber":47,"functionName":"keepBusy","lineNumber":197,"scriptId":7,"url":"http://localhost:10200/events.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218693869234,"tts":4199156}, - {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":41004,"name":"EventDispatch","ph":"X","pid":6728,"tdur":40926,"tid":259,"ts":218693869603,"tts":4199219}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40969,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40886,"tid":259,"ts":218693869619,"tts":4199239}, - {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":40617,"name":"EventDispatch","ph":"X","pid":6728,"tdur":39761,"tid":259,"ts":218693910632,"tts":4240171}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40565,"name":"FunctionCall","ph":"X","pid":6728,"tdur":39705,"tid":259,"ts":218693910649,"tts":4240191}, - {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":7,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218693951234,"tts":4279918}, - {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218693951244,"tts":4279927}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30452,"name":"FunctionCall","ph":"X","pid":6728,"tdur":30276,"tid":259,"ts":218693952927,"tts":4281663}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30520,"name":"FunctionCall","ph":"X","pid":6728,"tdur":30467,"tid":259,"ts":218693983542,"tts":4312110}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30943,"name":"FunctionCall","ph":"X","pid":6728,"tdur":30852,"tid":259,"ts":218694014110,"tts":4342633}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":29952,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29888,"tid":259,"ts":218694045103,"tts":4373543}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30038,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29917,"tid":259,"ts":218694075906,"tts":4404290}, - {"args":{"data":{"type":"selectionchange"}},"cat":"devtools.timeline","dur":11,"name":"EventDispatch","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218694108737,"tts":4436850}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1225,"name":"RunTask","ph":"X","pid":6728,"tdur":1216,"tid":259,"ts":218694108840,"tts":4436950}, - {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218694110356,"tts":1117458}, - {"args":{"data":{"cancelable":true,"duration":376,"interactionId":0,"processingEnd":5859,"processingStart":5819,"timeStamp":5776,"type":"mousedown"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":11,"name":"EventTiming","ph":"X","pid":6728,"tdur":10,"tid":259,"ts":218694120963,"tts":4446667}, - {"args":{"data":{"cancelable":true,"duration":376,"interactionId":290,"processingEnd":5819,"processingStart":5778,"timeStamp":5776,"type":"pointerdown"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218694120988,"tts":4446691}, - {"args":{"data":{"cancelable":true,"duration":288,"interactionId":290,"processingEnd":5906,"processingStart":5865,"timeStamp":5863,"type":"pointerup"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218694120998,"tts":4446702}, - {"args":{"data":{"cancelable":true,"duration":288,"interactionId":0,"processingEnd":5947,"processingStart":5906,"timeStamp":5863,"type":"mouseup"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218694121004,"tts":4446708}, - {"args":{"data":{"interactionType":"tapOrClick","maxDuration":372,"totalDuration":372},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":8,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218694121021,"tts":4446725}, - {"args":{"data":{"cancelable":true,"duration":288,"interactionId":290,"processingEnd":5988,"processingStart":5947,"timeStamp":5863,"type":"click"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218694121032,"tts":4446735}, - {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218694225416,"tts":1119084}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":85561,"name":"RunTask","ph":"X","pid":6728,"tdur":85443,"tid":259,"ts":218694618137,"tts":4827314}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694618180,"tts":4827361}, - {"args":{"data":{"type":"keydown"}},"cat":"devtools.timeline","dur":41170,"name":"EventDispatch","ph":"X","pid":6728,"tdur":41133,"tid":259,"ts":218694618199,"tts":4827378}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40763,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40721,"tid":259,"ts":218694618582,"tts":4827766}, - {"args":{"data":{"type":"keypress"}},"cat":"devtools.timeline","dur":44037,"name":"EventDispatch","ph":"X","pid":6728,"tdur":43953,"tid":259,"ts":218694659630,"tts":4868773}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40621,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40531,"tid":259,"ts":218694659648,"tts":4868796}, - {"args":{"data":{"type":"beforeinput"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218694700725,"tts":4909785}, - {"args":{"data":{"type":"textInput"}},"cat":"devtools.timeline","dur":2337,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2339,"tid":259,"ts":218694700744,"tts":4909803}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694701432,"tts":4910492}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","nodeId":5}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694701458,"tts":4910518}, - {"args":{"beginData":{"dirtyObjects":6,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","partialLayout":false,"totalObjects":24},"endData":{"layoutRoots":[{"depth":1,"nodeId":5,"quads":[[0,0,1200,0,1200,960,0,960]]}]}},"cat":"devtools.timeline","dur":226,"name":"Layout","ph":"X","pid":6728,"tdur":225,"tid":259,"ts":218694701675,"tts":4910737}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694702370,"tts":4911430}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","nodeId":5}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694702610,"tts":4911670}, - {"args":{"beginData":{"dirtyObjects":4,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","partialLayout":false,"totalObjects":22},"endData":{"layoutRoots":[{"depth":1,"nodeId":5,"quads":[[0,0,1200,0,1200,960,0,960]]}]}},"cat":"devtools.timeline","dur":54,"name":"Layout","ph":"X","pid":6728,"tdur":53,"tid":259,"ts":218694702901,"tts":4911962}, - {"args":{"data":{"type":"input"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218694703053,"tts":4912114}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":63666,"name":"RunTask","ph":"X","pid":6728,"tdur":63412,"tid":259,"ts":218694703715,"tts":4912773}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30072,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29969,"tid":259,"ts":218694704659,"tts":4913724}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30253,"name":"FunctionCall","ph":"X","pid":6728,"tdur":30167,"tid":259,"ts":218694734869,"tts":4943837}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":41264,"name":"RunTask","ph":"X","pid":6728,"tdur":41209,"tid":259,"ts":218694767552,"tts":4976350}, - {"args":{"data":{"type":"keyup"}},"cat":"devtools.timeline","dur":41211,"name":"EventDispatch","ph":"X","pid":6728,"tdur":41155,"tid":259,"ts":218694767580,"tts":4976380}, - {"args":{"data":{"columnNumber":21,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40934,"name":"FunctionCall","ph":"X","pid":6728,"tdur":40873,"tid":259,"ts":218694767601,"tts":4976405}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57","stackTrace":[{"columnNumber":47,"functionName":"keepBusy","lineNumber":197,"scriptId":7,"url":"http://localhost:10200/events.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218694808508,"tts":5017259}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1255,"name":"RunTask","ph":"X","pid":6728,"tdur":1255,"tid":259,"ts":218694808837,"tts":5017581}, - {"args":{"data":{"type":"selectionchange"}},"cat":"devtools.timeline","dur":11,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218694810103,"tts":5018853}, - {"args":{"data":{"cancelable":true,"duration":72,"interactionId":0,"processingEnd":6737,"processingStart":6737,"timeStamp":6737,"type":"beforeinput"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":5,"name":"EventTiming","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218694810567,"tts":5019310}, - {"args":{"data":{"cancelable":false,"duration":64,"interactionId":0,"processingEnd":6740,"processingStart":6740,"timeStamp":6739,"type":"input"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218694810575,"tts":5019318}, - {"args":{"data":{"cancelable":true,"duration":152,"interactionId":0,"processingEnd":6740,"processingStart":6696,"timeStamp":6654,"type":"keypress"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218694810580,"tts":5019323}, - {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218694810636,"tts":1124264}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":31780,"name":"RunTask","ph":"X","pid":6728,"tdur":31695,"tid":259,"ts":218694810934,"tts":5019678}, - {"args":{"data":{"columnNumber":29,"frame":"FBAEB842210C35C0A4F7E7171D00DD57","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30044,"name":"FunctionCall","ph":"X","pid":6728,"tdur":29963,"tid":259,"ts":218694811038,"tts":5019787}, - {"args":{"data":{"cancelable":true,"duration":152,"interactionId":297,"processingEnd":6696,"processingStart":6655,"timeStamp":6654,"type":"keydown"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":7,"name":"EventTiming","ph":"X","pid":6728,"tdur":7,"tid":259,"ts":218694855393,"tts":5061261}, - {"args":{"data":{"interactionType":"keyboard","maxDuration":151,"totalDuration":226},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":7,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218694855412,"tts":5061280}, - {"args":{"data":{"cancelable":true,"duration":112,"interactionId":297,"processingEnd":6845,"processingStart":6804,"timeStamp":6769,"type":"keyup"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218694855422,"tts":5061289}, - {"args":{"data":{"durationInMilliseconds":392,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":6693,"s":"t","tid":259,"ts":218694958140,"tts":1125911}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1357,"name":"RunTask","ph":"X","pid":6728,"tdur":1357,"tid":259,"ts":218695149825,"tts":5286179}, - {"args":{"microtask_count":1},"cat":"v8.execute","dur":14,"name":"RunMicrotasks","ph":"X","pid":6728,"tdur":13,"tid":259,"ts":218695151139,"tts":5287494}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":3936,"name":"RunTask","ph":"X","pid":6728,"tdur":3809,"tid":259,"ts":218695155922,"tts":5291772}, - {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":17,"name":"EventDispatch","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218695156787,"tts":5292628}, - {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218695156978,"tts":5292815}, - {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218695157013,"tts":5292851}, - {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695157027,"tts":5292864}, - {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695157039,"tts":5292876}, - {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218695157339,"tts":5293175}, - {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":5,"tid":259,"ts":218695157347,"tts":5293183}, - {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":20,"name":"EventDispatch","ph":"X","pid":6728,"tdur":13,"tid":259,"ts":218695157393,"tts":5293208}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":45737,"name":"RunTask","ph":"X","pid":6728,"tdur":45681,"tid":259,"ts":218695159871,"tts":5295594}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218695160512,"tts":5296238}, - {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":20805,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20772,"tid":259,"ts":218695160539,"tts":5296264}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20761,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20723,"tid":259,"ts":218695160563,"tts":5296292}, - {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":21399,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21372,"tid":259,"ts":218695181360,"tts":5317053}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21079,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21048,"tid":259,"ts":218695181375,"tts":5317072}, - {"args":{"data":{"frame":"FBAEB842210C35C0A4F7E7171D00DD57"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218695203603,"tts":5339270}, - {"args":{"data":{"type":"change"}},"cat":"devtools.timeline","dur":7,"name":"EventDispatch","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218695203615,"tts":5339282}, - {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":13,"name":"EventDispatch","ph":"X","pid":6728,"tdur":12,"tid":259,"ts":218695204656,"tts":5340324}, - {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695204672,"tts":5340339}, - {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695204682,"tts":5340349}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218695204715,"tts":5340382}, - {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218695204750,"tts":5340417}, - {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695204757,"tts":5340423}, - {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695204762,"tts":5340428}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7193,"processingStart":7193,"timeStamp":7190,"type":"pointerout"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":12,"name":"EventTiming","ph":"X","pid":6728,"tdur":11,"tid":259,"ts":218695205671,"tts":5341338}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695205686,"tts":5341352}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695205691,"tts":5341357}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205696,"tts":5341362}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205701,"tts":5341368}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"pointerleave"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205705,"tts":5341372}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7194,"processingStart":7194,"timeStamp":7190,"type":"mouseout"},"frame":"FBAEB842210C35C0A4F7E7171D00DD57"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205710,"tts":5341377}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"pointerout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205717,"tts":5341383}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"pointerleave"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695205721,"tts":5341387}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"pointerover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205726,"tts":5341392}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695205731,"tts":5341397}, - {"args":{"data":{"cancelable":false,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"pointerenter"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":2,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695205736,"tts":5341402}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"mouseout"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":753,"name":"EventTiming","ph":"X","pid":6728,"tdur":745,"tid":259,"ts":218695205740,"tts":5341409}, - {"args":{"data":{"cancelable":true,"duration":8,"interactionId":0,"processingEnd":7416,"processingStart":7416,"timeStamp":7412,"type":"mouseover"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695206501,"tts":5342163}, - {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":168690,"name":"RunTask","ph":"X","pid":6728,"tdur":168336,"tid":259,"ts":218695206536,"tts":5342197}, - {"args":{"data":{"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":6728,"s":"t","tid":259,"ts":218695206697,"tts":5342362}, - {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":20352,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20314,"tid":259,"ts":218695207456,"tts":5343114}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20311,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20268,"tid":259,"ts":218695207480,"tts":5343142}, - {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":21572,"name":"EventDispatch","ph":"X","pid":6728,"tdur":21549,"tid":259,"ts":218695227824,"tts":5363445}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21531,"name":"FunctionCall","ph":"X","pid":6728,"tdur":21504,"tid":259,"ts":218695227837,"tts":5363462}, - {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20806,"name":"EventDispatch","ph":"X","pid":6728,"tdur":20763,"tid":259,"ts":218695249422,"tts":5385021}, - {"args":{"data":{"columnNumber":23,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20759,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20711,"tid":259,"ts":218695249442,"tts":5385046}, - {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695270220,"tts":5405778}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":19937,"name":"FunctionCall","ph":"X","pid":6728,"tdur":19907,"tid":259,"ts":218695271615,"tts":5407174}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20145,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20122,"tid":259,"ts":218695292155,"tts":5427692}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20074,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20000,"tid":259,"ts":218695312340,"tts":5447860}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20421,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20300,"tid":259,"ts":218695332468,"tts":5467922}, - {"args":{"data":{"columnNumber":31,"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20345,"name":"FunctionCall","ph":"X","pid":6728,"tdur":20313,"tid":259,"ts":218695353108,"tts":5488447}, - {"args":{"data":{"cancelable":true,"duration":224,"interactionId":0,"processingEnd":7461,"processingStart":7440,"timeStamp":7416,"type":"mousedown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":7,"name":"EventTiming","ph":"X","pid":6728,"tdur":6,"tid":259,"ts":218695389475,"tts":5521807}, - {"args":{"data":{"cancelable":true,"duration":224,"interactionId":4009,"processingEnd":7440,"processingStart":7419,"timeStamp":7416,"type":"pointerdown"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":4,"tid":259,"ts":218695389492,"tts":5521823}, - {"args":{"data":{"cancelable":true,"duration":176,"interactionId":4009,"processingEnd":7486,"processingStart":7466,"timeStamp":7465,"type":"pointerup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":2,"tid":259,"ts":218695389501,"tts":5521833}, - {"args":{"data":{"cancelable":true,"duration":176,"interactionId":0,"processingEnd":7508,"processingStart":7486,"timeStamp":7465,"type":"mouseup"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":9,"name":"EventTiming","ph":"X","pid":6728,"tdur":8,"tid":259,"ts":218695389506,"tts":5521838}, - {"args":{"data":{"interactionType":"tapOrClick","maxDuration":220,"totalDuration":220},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":420,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":6728,"tdur":420,"tid":259,"ts":218695389529,"tts":5521861}, - {"args":{"data":{"cancelable":true,"duration":176,"interactionId":4009,"processingEnd":7529,"processingStart":7508,"timeStamp":7465,"type":"click"},"frame":"B9F558A7E7EF74FD8D4B8B64CC7A803C"},"cat":"devtools.timeline","dur":3,"name":"EventTiming","ph":"X","pid":6728,"tdur":3,"tid":259,"ts":218695389953,"tts":5522284}, - {"args":{"sync_id":"__lighthouseTimespanStart__"},"cat":"__metadata","name":"clock_sync","ph":"c","pid":6693,"tid":259,"ts":218690474893,"tts":887163}, - {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218690475029}, - {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218691016974}, - {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218691801075}, - {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218692351614}, - {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218693035617}, - {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218693752986}, - {"args":{"snapshot":"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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH//2Q=="},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218694336891}, - {"args":{"snapshot":"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IQ0dXBUwYbRtmhekjFXSLZUW6fzAtWP05i7dOU5bfRnSNntR4APduAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/9k="},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218694854064}, - {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":6693,"tid":259,"ts":218695387920}, - {"args":{"number":12},"cat":"__metadata","name":"num_cpus","ph":"M","pid":6693,"tid":128515,"ts":218695682413}, - {"args":{"number":12},"cat":"__metadata","name":"num_cpus","ph":"M","pid":6724,"tid":27395,"ts":218695682426}, - {"args":{"number":12},"cat":"__metadata","name":"num_cpus","ph":"M","pid":6728,"tid":259,"ts":218695682428}, - {"args":{"sort_index":-6},"cat":"__metadata","name":"process_sort_index","ph":"M","pid":6693,"tid":128515,"ts":218695682433}, - {"args":{"sort_index":-1},"cat":"__metadata","name":"process_sort_index","ph":"M","pid":6724,"tid":27395,"ts":218695682437}, - {"args":{"sort_index":-5},"cat":"__metadata","name":"process_sort_index","ph":"M","pid":6728,"tid":259,"ts":218695682481}, - {"args":{"labels":"Subframe: http://localhost:10200/,http://localhost:8080/"},"cat":"__metadata","name":"process_labels","ph":"M","pid":6728,"tid":259,"ts":218695682483}, - {"args":{"sort_index":-1},"cat":"__metadata","name":"thread_sort_index","ph":"M","pid":6728,"tid":259,"ts":218695682486} + {"args":{"name":"CrRendererMain"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":259,"ts":0}, + {"args":{"name":"CrBrowserMain"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10896,"tid":259,"ts":0}, + {"args":{"name":"Compositor"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":43011,"ts":0}, + {"args":{"name":"NetworkService"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10896,"tid":56835,"ts":0}, + {"args":{"name":"Chrome_DevToolsHandlerThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10896,"tid":88323,"ts":0}, + {"args":{"name":"VizCompositorThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10909,"tid":34051,"ts":0}, + {"args":{"name":"CrGpuMain"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10909,"tid":259,"ts":0}, + {"args":{"name":"Chrome_IOThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10896,"tid":31751,"ts":0}, + {"args":{"name":"Chrome_ChildIOThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":13315,"ts":0}, + {"args":{"name":"StackSamplingProfiler"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10896,"tid":11523,"ts":0}, + {"args":{"name":"Chrome_ChildIOThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10909,"tid":36099,"ts":0}, + {"args":{"name":"StackSamplingProfiler"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10909,"tid":21507,"ts":0}, + {"args":{"name":"CompositorTileWorker1"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":41219,"ts":0}, + {"args":{"name":"ThreadPoolServiceThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10896,"tid":28163,"ts":0}, + {"args":{"name":"CompositorTileWorker3"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":40707,"ts":0}, + {"args":{"name":"ThreadPoolBackgroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10909,"tid":26883,"ts":0}, + {"args":{"name":"ThreadPoolServiceThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10909,"tid":26127,"ts":0}, + {"args":{"name":"ThreadPoolServiceThread"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":12291,"ts":0}, + {"args":{"name":"CompositorTileWorker2"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":22275,"ts":0}, + {"args":{"name":"CompositorTileWorker4"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":39939,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":18435,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":30471,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":30723,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":19715,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":28931,"ts":0}, + {"args":{"name":"MemoryInfra"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10896,"tid":86019,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10896,"tid":79107,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10909,"tid":26627,"ts":0}, + {"args":{"name":"ThreadPoolForegroundWorker"},"cat":"__metadata","name":"thread_name","ph":"M","pid":10914,"tid":86795,"ts":0}, + {"args":{"name":"Renderer"},"cat":"__metadata","name":"process_name","ph":"M","pid":10914,"tid":0,"ts":0}, + {"args":{"name":"Browser"},"cat":"__metadata","name":"process_name","ph":"M","pid":10896,"tid":0,"ts":0}, + {"args":{"name":"GPU Process"},"cat":"__metadata","name":"process_name","ph":"M","pid":10909,"tid":0,"ts":0}, + {"args":{"uptime":"8"},"cat":"__metadata","name":"process_uptime_seconds","ph":"M","pid":10914,"tid":0,"ts":0}, + {"args":{"uptime":"9"},"cat":"__metadata","name":"process_uptime_seconds","ph":"M","pid":10896,"tid":0,"ts":0}, + {"args":{"uptime":"8"},"cat":"__metadata","name":"process_uptime_seconds","ph":"M","pid":10909,"tid":0,"ts":0}, + {"args":{"data":{"frameTreeNodeId":2,"frames":[{"frame":"56422801179A59202754455F17E4DE45","name":"","processId":10914,"url":"http://localhost:8080/parent.html"},{"frame":"2F500B02691F5A39562731E977A0202C","name":"","parent":"56422801179A59202754455F17E4DE45","processId":10914,"url":"http://localhost:10200/events.html"}],"persistentIds":true}},"cat":"disabled-by-default-devtools.timeline","name":"TracingStartedInBrowser","ph":"I","pid":10896,"s":"t","tid":259,"ts":633279452945,"tts":605737}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1342,"name":"RunTask","ph":"X","pid":10914,"tdur":1341,"tid":259,"ts":633279455268,"tts":1237173}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":716,"name":"EvaluateScript","ph":"X","pid":10914,"tdur":717,"tid":259,"ts":633279455283,"tts":1237187}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":109,"name":"RunMicrotasks","ph":"X","pid":10914,"tdur":108,"tid":259,"ts":633279455885,"tts":1237790}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1163,"name":"RunTask","ph":"X","pid":10914,"tdur":1163,"tid":259,"ts":633279456613,"tts":1238518}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":30,"name":"RunMicrotasks","ph":"X","pid":10914,"tdur":30,"tid":259,"ts":633279457107,"tts":1239011}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1857,"name":"RunTask","ph":"X","pid":10914,"tdur":1857,"tid":259,"ts":633279457780,"tts":1239684}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":15,"name":"RunMicrotasks","ph":"X","pid":10914,"tdur":14,"tid":259,"ts":633279459600,"tts":1241505}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1183,"name":"RunTask","ph":"X","pid":10914,"tdur":1186,"tid":259,"ts":633279459642,"tts":1241546}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1402,"name":"RunTask","ph":"X","pid":10914,"tdur":1403,"tid":259,"ts":633279464272,"tts":1245930}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633279464544,"tts":1246392}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633279465172,"tts":1246832}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633279465534,"tts":1247193}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":18,"name":"EventDispatch","ph":"X","pid":10914,"tdur":17,"tid":259,"ts":633279465618,"tts":1247277}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633279465638,"tts":1247297}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633279465643,"tts":1247302}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":6140,"name":"RunTask","ph":"X","pid":10914,"tdur":6044,"tid":259,"ts":633279465686,"tts":1247344}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":264,"name":"EventDispatch","ph":"X","pid":10914,"tdur":260,"tid":259,"ts":633279468032,"tts":1249689}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633279468400,"tts":1250054}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633279468411,"tts":1250064}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633279468434,"tts":1250087}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":47397,"name":"RunTask","ph":"X","pid":10914,"tdur":47329,"tid":259,"ts":633279471858,"tts":1253420}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":23112,"name":"EventDispatch","ph":"X","pid":10914,"tdur":23106,"tid":259,"ts":633279473022,"tts":1254587}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":22536,"name":"FunctionCall","ph":"X","pid":10914,"tdur":22525,"tid":259,"ts":633279473581,"tts":1255151}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":"6","url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633279496094,"tts":1277663}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":20192,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20131,"tid":259,"ts":633279496150,"tts":1277709}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20134,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20069,"tid":259,"ts":633279496191,"tts":1277754}, + {"args":{"data":{"type":"selectstart"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633279517518,"tts":1299018}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":165836,"name":"RunTask","ph":"X","pid":10914,"tdur":165640,"tid":259,"ts":633279519294,"tts":1300788}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":20271,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20250,"tid":259,"ts":633279519923,"tts":1301418}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20243,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20218,"tid":259,"ts":633279519937,"tts":1301436}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":"6","url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633279540161,"tts":1321642}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":20936,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20922,"tid":259,"ts":633279540215,"tts":1321690}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20913,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20896,"tid":259,"ts":633279540226,"tts":1321704}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20315,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20293,"tid":259,"ts":633279561178,"tts":1342640}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20279,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20256,"tid":259,"ts":633279561190,"tts":1342653}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633279581481,"tts":1362922}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633279581488,"tts":1362929}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20308,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20285,"tid":259,"ts":633279582431,"tts":1363874}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20066,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20048,"tid":259,"ts":633279602762,"tts":1384184}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20094,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20046,"tid":259,"ts":633279622914,"tts":1404321}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20200,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20169,"tid":259,"ts":633279643031,"tts":1424392}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20402,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20397,"tid":259,"ts":633279663310,"tts":1444643}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":227,"totalDuration":227},"frame":"56422801179A59202754455F17E4DE45"},"cat":"devtools.timeline","dur":12,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":10914,"tdur":12,"tid":259,"ts":633279713435,"tts":1488781}, + {"args":{"data":{"durationInMilliseconds":244,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":10896,"s":"t","tid":259,"ts":633279838417,"tts":615415}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1024,"name":"RunTask","ph":"X","pid":10914,"tdur":1025,"tid":259,"ts":633280187458,"tts":1849925}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":811,"name":"RunMicrotasks","ph":"X","pid":10914,"tdur":811,"tid":259,"ts":633280187645,"tts":1850113}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1199,"name":"RunTask","ph":"X","pid":10914,"tdur":1198,"tid":259,"ts":633280189134,"tts":1851491}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":67,"name":"RunMicrotasks","ph":"X","pid":10914,"tdur":66,"tid":259,"ts":633280190246,"tts":1852603}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1021,"name":"RunTask","ph":"X","pid":10914,"tdur":997,"tid":259,"ts":633280191181,"tts":1853537}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2328,"name":"RunTask","ph":"X","pid":10914,"tdur":2302,"tid":259,"ts":633280195973,"tts":1857558}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":24,"name":"EventDispatch","ph":"X","pid":10914,"tdur":22,"tid":259,"ts":633280196148,"tts":1857735}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633280196832,"tts":1858418}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633280196842,"tts":1858428}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633280196852,"tts":1858437}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280196859,"tts":1858445}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280196864,"tts":1858449}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":43659,"name":"RunTask","ph":"X","pid":10914,"tdur":43586,"tid":259,"ts":633280198310,"tts":1859869}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633280198380,"tts":1859941}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":20936,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20888,"tid":259,"ts":633280198421,"tts":1859981}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20356,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20304,"tid":259,"ts":633280198985,"tts":1860550}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":20768,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20740,"tid":259,"ts":633280219369,"tts":1880883}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20742,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20711,"tid":259,"ts":633280219382,"tts":1880898}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633280240822,"tts":1902309}, + {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":9,"name":"EventDispatch","ph":"X","pid":10914,"tdur":7,"tid":259,"ts":633280240841,"tts":1902328}, + {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633280240853,"tts":1902338}, + {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280240858,"tts":1902343}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633280241527,"tts":1903013}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280241534,"tts":1903019}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280241538,"tts":1903024}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":165200,"name":"RunTask","ph":"X","pid":10914,"tdur":164993,"tid":259,"ts":633280242065,"tts":1903551}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633280242743,"tts":1904227}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":20911,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20901,"tid":259,"ts":633280242763,"tts":1904247}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20630,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20617,"tid":259,"ts":633280242775,"tts":1904261}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":20042,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20040,"tid":259,"ts":633280263683,"tts":1925158}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20021,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20019,"tid":259,"ts":633280263693,"tts":1925169}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20082,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20042,"tid":259,"ts":633280283734,"tts":1945208}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20055,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20013,"tid":259,"ts":633280283743,"tts":1945219}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633280303810,"tts":1965245}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20635,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20627,"tid":259,"ts":633280304499,"tts":1965936}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20147,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20142,"tid":259,"ts":633280325156,"tts":1986588}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20006,"name":"FunctionCall","ph":"X","pid":10914,"tdur":19937,"tid":259,"ts":633280345325,"tts":2006754}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":19964,"name":"FunctionCall","ph":"X","pid":10914,"tdur":19938,"tid":259,"ts":633280365351,"tts":2026714}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20288,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20281,"tid":259,"ts":633280385331,"tts":2046670}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":212,"totalDuration":212},"frame":"56422801179A59202754455F17E4DE45"},"cat":"devtools.timeline","dur":28,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":10914,"tdur":28,"tid":259,"ts":633280413426,"tts":2073873}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1719,"name":"RunTask","ph":"X","pid":10914,"tdur":1719,"tid":259,"ts":633280711128,"tts":2300338}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":228,"name":"RunMicrotasks","ph":"X","pid":10914,"tdur":227,"tid":259,"ts":633280712380,"tts":2301591}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1102,"name":"RunTask","ph":"X","pid":10914,"tdur":1101,"tid":259,"ts":633280713908,"tts":2302900}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":11,"name":"RunMicrotasks","ph":"X","pid":10914,"tdur":11,"tid":259,"ts":633280714959,"tts":2303951}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2304,"name":"RunTask","ph":"X","pid":10914,"tdur":2276,"tid":259,"ts":633280729510,"tts":2315761}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":10914,"tdur":5,"tid":259,"ts":633280729688,"tts":2315941}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":10914,"tdur":5,"tid":259,"ts":633280729702,"tts":2315954}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633280729715,"tts":2315967}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280729722,"tts":2315974}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280729729,"tts":2315981}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633280729735,"tts":2315986}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":43732,"name":"RunTask","ph":"X","pid":10914,"tdur":43598,"tid":259,"ts":633280731823,"tts":2318046}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":21069,"name":"EventDispatch","ph":"X","pid":10914,"tdur":21011,"tid":259,"ts":633280732235,"tts":2318459}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":21017,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20955,"tid":259,"ts":633280732267,"tts":2318495}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":"6","url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633280753266,"tts":2339438}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":20113,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20035,"tid":259,"ts":633280753316,"tts":2339483}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20087,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20006,"tid":259,"ts":633280753329,"tts":2339499}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633280774466,"tts":2360556}, + {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633280774475,"tts":2360565}, + {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280774482,"tts":2360571}, + {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280774493,"tts":2360582}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633280774573,"tts":2360662}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633280774577,"tts":2360666}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280774583,"tts":2360672}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633280774591,"tts":2360679}, + {"args":{"data":{"type":"selectstart"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633280775494,"tts":2361584}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":164217,"name":"RunTask","ph":"X","pid":10914,"tdur":163958,"tid":259,"ts":633280776116,"tts":2362205}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":20336,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20326,"tid":259,"ts":633280776246,"tts":2362335}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20283,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20268,"tid":259,"ts":633280776258,"tts":2362351}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":"6","url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633280796507,"tts":2382592}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":20095,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20092,"tid":259,"ts":633280797145,"tts":2383225}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20071,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20066,"tid":259,"ts":633280797157,"tts":2383239}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20443,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20429,"tid":259,"ts":633280817252,"tts":2403330}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20186,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20171,"tid":259,"ts":633280817263,"tts":2403343}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":6,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633280837682,"tts":2423748}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633280837690,"tts":2423755}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20510,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20469,"tid":259,"ts":633280837936,"tts":2424004}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20047,"name":"FunctionCall","ph":"X","pid":10914,"tdur":19980,"tid":259,"ts":633280858648,"tts":2444679}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20035,"name":"FunctionCall","ph":"X","pid":10914,"tdur":19979,"tid":259,"ts":633280878726,"tts":2464694}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20126,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20086,"tid":259,"ts":633280898786,"tts":2484703}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20200,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20183,"tid":259,"ts":633280918936,"tts":2504816}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":213,"totalDuration":213},"frame":"56422801179A59202754455F17E4DE45"},"cat":"devtools.timeline","dur":6,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":10914,"tdur":6,"tid":259,"ts":633280946754,"tts":2531472}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2035,"name":"RunTask","ph":"X","pid":10914,"tdur":1964,"tid":259,"ts":633281278201,"tts":2782907}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":7009,"name":"RunTask","ph":"X","pid":10914,"tdur":6931,"tid":259,"ts":633281405748,"tts":2872998}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45","nodeId":2}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281405782,"tts":2873033}, + {"args":{"beginData":{"dirtyObjects":22,"frame":"56422801179A59202754455F17E4DE45","partialLayout":false,"totalObjects":22},"endData":{"layoutRoots":[{"depth":1,"nodeId":2,"quads":[[0,0,1224,0,1224,2176,0,2176]]}]}},"cat":"devtools.timeline","dur":1557,"name":"Layout","ph":"X","pid":10914,"tdur":1516,"tid":259,"ts":633281405831,"tts":2873104}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C","nodeId":5}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281407882,"tts":2875111}, + {"args":{"beginData":{"dirtyObjects":23,"frame":"2F500B02691F5A39562731E977A0202C","partialLayout":false,"totalObjects":23},"endData":{"layoutRoots":[{"depth":1,"nodeId":5,"quads":[[0,0,1200,0,1200,960,0,960]]}]}},"cat":"devtools.timeline","dur":891,"name":"Layout","ph":"X","pid":10914,"tdur":892,"tid":259,"ts":633281408220,"tts":2875450}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":6260,"name":"RunTask","ph":"X","pid":10914,"tdur":6147,"tid":259,"ts":633281414032,"tts":2881197}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45","nodeId":2}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281414061,"tts":2881229}, + {"args":{"beginData":{"dirtyObjects":22,"frame":"56422801179A59202754455F17E4DE45","partialLayout":false,"totalObjects":22},"endData":{"layoutRoots":[{"depth":1,"nodeId":2,"quads":[[0,0,1224,0,1224,2176,0,2176]]}]}},"cat":"devtools.timeline","dur":1592,"name":"Layout","ph":"X","pid":10914,"tdur":1593,"tid":259,"ts":633281414110,"tts":2881279}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C","nodeId":5}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281415782,"tts":2882949}, + {"args":{"beginData":{"dirtyObjects":23,"frame":"2F500B02691F5A39562731E977A0202C","partialLayout":false,"totalObjects":23},"endData":{"layoutRoots":[{"depth":1,"nodeId":5,"quads":[[0,0,1200,0,1200,960,0,960]]}]}},"cat":"devtools.timeline","dur":1637,"name":"Layout","ph":"X","pid":10914,"tdur":1638,"tid":259,"ts":633281415821,"tts":2882989}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":3103,"name":"RunTask","ph":"X","pid":10914,"tdur":2955,"tid":259,"ts":633281434814,"tts":2898530}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1008,"name":"RunTask","ph":"X","pid":10914,"tdur":1009,"tid":259,"ts":633281437925,"tts":2901493}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1757,"name":"RunTask","ph":"X","pid":10914,"tdur":1724,"tid":259,"ts":633281438939,"tts":2902507}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":3372,"name":"RunTask","ph":"X","pid":10914,"tdur":3369,"tid":259,"ts":633281440704,"tts":2904240}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1596,"name":"RunTask","ph":"X","pid":10914,"tdur":1579,"tid":259,"ts":633281444100,"tts":2907634}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1695,"name":"RunTask","ph":"X","pid":10914,"tdur":1695,"tid":259,"ts":633281445706,"tts":2909222}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":50444,"name":"RunTask","ph":"X","pid":10914,"tdur":50207,"tid":259,"ts":633281452043,"tts":2915146}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281452120,"tts":2915228}, + {"args":{"data":{"type":"keydown"}},"cat":"devtools.timeline","dur":21903,"name":"EventDispatch","ph":"X","pid":10914,"tdur":21747,"tid":259,"ts":633281452137,"tts":2915241}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20544,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20382,"tid":259,"ts":633281452860,"tts":2915970}, + {"args":{"data":{"type":"keypress"}},"cat":"devtools.timeline","dur":28112,"name":"EventDispatch","ph":"X","pid":10914,"tdur":28029,"tid":259,"ts":633281474054,"tts":2937003}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20220,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20157,"tid":259,"ts":633281474070,"tts":2937022}, + {"args":{"data":{"type":"beforeinput"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":10914,"tdur":7,"tid":259,"ts":633281495495,"tts":2958385}, + {"args":{"data":{"type":"textInput"}},"cat":"devtools.timeline","dur":6591,"name":"EventDispatch","ph":"X","pid":10914,"tdur":6295,"tid":259,"ts":633281495572,"tts":2958734}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281497096,"tts":2959986}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45","nodeId":2}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281497160,"tts":2960050}, + {"args":{"beginData":{"dirtyObjects":7,"frame":"56422801179A59202754455F17E4DE45","partialLayout":false,"totalObjects":23},"endData":{"layoutRoots":[{"depth":1,"nodeId":2,"quads":[[0,0,1224,0,1224,2176,0,2176]]}]}},"cat":"devtools.timeline","dur":621,"name":"Layout","ph":"X","pid":10914,"tdur":622,"tid":259,"ts":633281497173,"tts":2960064}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281498538,"tts":2961422}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45","nodeId":2}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281499381,"tts":2962264}, + {"args":{"beginData":{"dirtyObjects":5,"frame":"56422801179A59202754455F17E4DE45","partialLayout":false,"totalObjects":21},"endData":{"layoutRoots":[{"depth":1,"nodeId":2,"quads":[[0,0,1224,0,1224,2176,0,2176]]}]}},"cat":"devtools.timeline","dur":429,"name":"Layout","ph":"X","pid":10914,"tdur":429,"tid":259,"ts":633281499432,"tts":2962316}, + {"args":{"data":{"type":"input"}},"cat":"devtools.timeline","dur":387,"name":"EventDispatch","ph":"X","pid":10914,"tdur":385,"tid":259,"ts":633281501742,"tts":2964610}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":42846,"name":"RunTask","ph":"X","pid":10914,"tdur":42768,"tid":259,"ts":633281502516,"tts":2965382}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20167,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20156,"tid":259,"ts":633281503305,"tts":2966177}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20618,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20599,"tid":259,"ts":633281523499,"tts":2986364}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":21190,"name":"RunTask","ph":"X","pid":10914,"tdur":21163,"tid":259,"ts":633281545383,"tts":3008171}, + {"args":{"data":{"type":"keyup"}},"cat":"devtools.timeline","dur":20433,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20406,"tid":259,"ts":633281546118,"tts":3008907}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20318,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20285,"tid":259,"ts":633281546215,"tts":3009009}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45","stackTrace":[{"columnNumber":49,"functionName":"keepBusy","lineNumber":80,"scriptId":"6","url":"http://localhost:8080/parent.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281566511,"tts":3029280}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1173,"name":"RunTask","ph":"X","pid":10914,"tdur":1173,"tid":259,"ts":633281566584,"tts":3029345}, + {"args":{"data":{"type":"selectionchange"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633281567767,"tts":3030530}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1313,"name":"RunTask","ph":"X","pid":10914,"tdur":1283,"tid":259,"ts":633281568116,"tts":3030877}, + {"args":{"data":{"durationInMilliseconds":244,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":10896,"s":"t","tid":259,"ts":633281568194,"tts":802279}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":21378,"name":"RunTask","ph":"X","pid":10914,"tdur":21360,"tid":259,"ts":633281581088,"tts":3041510}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":19966,"name":"FunctionCall","ph":"X","pid":10914,"tdur":19938,"tid":259,"ts":633281581167,"tts":3041609}, + {"args":{"data":{"interactionType":"keyboard","maxDuration":97,"totalDuration":153},"frame":"56422801179A59202754455F17E4DE45"},"cat":"devtools.timeline","dur":13,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":10914,"tdur":13,"tid":259,"ts":633281615010,"tts":3072488}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1861,"name":"RunTask","ph":"X","pid":10914,"tdur":1860,"tid":259,"ts":633281878275,"tts":3273535}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":12,"name":"RunMicrotasks","ph":"X","pid":10914,"tdur":11,"tid":259,"ts":633281880105,"tts":3275365}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2959,"name":"RunTask","ph":"X","pid":10914,"tdur":2893,"tid":259,"ts":633281883128,"tts":3278219}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":10914,"tdur":7,"tid":259,"ts":633281883237,"tts":3278329}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633281883254,"tts":3278345}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633281883262,"tts":3278353}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633281883271,"tts":3278362}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633281884285,"tts":3279376}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633281884303,"tts":3279395}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633281884313,"tts":3279404}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633281884320,"tts":3279411}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":88822,"name":"RunTask","ph":"X","pid":10914,"tdur":88679,"tid":259,"ts":633281886096,"tts":3281121}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281886463,"tts":3281490}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":42419,"name":"EventDispatch","ph":"X","pid":10914,"tdur":42348,"tid":259,"ts":633281886483,"tts":3281509}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":42335,"name":"FunctionCall","ph":"X","pid":10914,"tdur":42259,"tid":259,"ts":633281886553,"tts":3281584}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":41510,"name":"EventDispatch","ph":"X","pid":10914,"tdur":41435,"tid":259,"ts":633281928920,"tts":3323876}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":41466,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40976,"tid":259,"ts":633281928950,"tts":3324321}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281971342,"tts":3366225}, + {"args":{"data":{"type":"change"}},"cat":"devtools.timeline","dur":7,"name":"EventDispatch","ph":"X","pid":10914,"tdur":5,"tid":259,"ts":633281971356,"tts":3366238}, + {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":11,"name":"EventDispatch","ph":"X","pid":10914,"tdur":10,"tid":259,"ts":633281973623,"tts":3368507}, + {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633281974223,"tts":3369105}, + {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633281974232,"tts":3369114}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633281974257,"tts":3369139}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633281974298,"tts":3369180}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633281974304,"tts":3369186}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633281974309,"tts":3369190}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":62544,"name":"RunTask","ph":"X","pid":10914,"tdur":62460,"tid":259,"ts":633281975020,"tts":3369901}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30828,"name":"FunctionCall","ph":"X","pid":10914,"tdur":30802,"tid":259,"ts":633281975058,"tts":3369944}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30023,"name":"FunctionCall","ph":"X","pid":10914,"tdur":29990,"tid":259,"ts":633282005914,"tts":3400777}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":123511,"name":"RunTask","ph":"X","pid":10914,"tdur":123434,"tid":259,"ts":633282037580,"tts":3432377}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633282037655,"tts":3432454}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":41029,"name":"EventDispatch","ph":"X","pid":10914,"tdur":40999,"tid":259,"ts":633282037682,"tts":3432480}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":41001,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40969,"tid":259,"ts":633282037696,"tts":3432496}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":41201,"name":"EventDispatch","ph":"X","pid":10914,"tdur":41176,"tid":259,"ts":633282078741,"tts":3473511}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":41167,"name":"FunctionCall","ph":"X","pid":10914,"tdur":41140,"tid":259,"ts":633282078761,"tts":3473533}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":40419,"name":"EventDispatch","ph":"X","pid":10914,"tdur":40393,"tid":259,"ts":633282119968,"tts":3514714}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40384,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40355,"tid":259,"ts":633282119982,"tts":3514731}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633282160381,"tts":3555102}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":91850,"name":"RunTask","ph":"X","pid":10914,"tdur":91708,"tid":259,"ts":633282161975,"tts":3556695}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30392,"name":"FunctionCall","ph":"X","pid":10914,"tdur":30385,"tid":259,"ts":633282162004,"tts":3556729}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30110,"name":"FunctionCall","ph":"X","pid":10914,"tdur":30026,"tid":259,"ts":633282192420,"tts":3587142}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30189,"name":"FunctionCall","ph":"X","pid":10914,"tdur":30159,"tid":259,"ts":633282222555,"tts":3617196}, + {"args":{"data":{"durationInMilliseconds":244,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":10896,"s":"t","tid":259,"ts":633282254462,"tts":823773}, + {"args":{"data":{"durationInMilliseconds":244,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":10896,"s":"t","tid":259,"ts":633282254473,"tts":823784}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":281,"totalDuration":372},"frame":"2F500B02691F5A39562731E977A0202C"},"cat":"devtools.timeline","dur":8,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":10914,"tdur":7,"tid":259,"ts":633282264674,"tts":3657091}, + {"args":{"data":{"durationInMilliseconds":244,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":10896,"s":"t","tid":259,"ts":633282366212,"tts":825403}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1184,"name":"RunTask","ph":"X","pid":10914,"tdur":1183,"tid":259,"ts":633282558777,"tts":3881224}, + {"args":{"microtask_count":1},"cat":"v8.execute","dur":457,"name":"RunMicrotasks","ph":"X","pid":10914,"tdur":457,"tid":259,"ts":633282559317,"tts":3881763}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2508,"name":"RunTask","ph":"X","pid":10914,"tdur":2463,"tid":259,"ts":633282565093,"tts":3887120}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":7,"name":"EventDispatch","ph":"X","pid":10914,"tdur":5,"tid":259,"ts":633282565704,"tts":3887733}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":10914,"tdur":5,"tid":259,"ts":633282565734,"tts":3887761}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633282565747,"tts":3887774}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633282565755,"tts":3887783}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633282565762,"tts":3887790}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633282565768,"tts":3887796}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":85167,"name":"RunTask","ph":"X","pid":10914,"tdur":85095,"tid":259,"ts":633282567610,"tts":3889592}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":40210,"name":"EventDispatch","ph":"X","pid":10914,"tdur":40146,"tid":259,"ts":633282568441,"tts":3890425}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40175,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40019,"tid":259,"ts":633282568458,"tts":3890535}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":40886,"name":"EventDispatch","ph":"X","pid":10914,"tdur":40877,"tid":259,"ts":633282608991,"tts":3930910}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40861,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40848,"tid":259,"ts":633282609006,"tts":3930928}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C","stackTrace":[{"columnNumber":47,"functionName":"keepBusy","lineNumber":197,"scriptId":"7","url":"http://localhost:10200/events.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633282649850,"tts":3971765}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633282650539,"tts":3972450}, + {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633282650552,"tts":3972462}, + {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633282650559,"tts":3972468}, + {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633282650563,"tts":3972473}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633282650638,"tts":3972548}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633282650643,"tts":3972553}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633282650649,"tts":3972558}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633282650654,"tts":3972563}, + {"args":{"data":{"type":"selectstart"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633282651947,"tts":3973857}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":275269,"name":"RunTask","ph":"X","pid":10914,"tdur":274936,"tid":259,"ts":633282653164,"tts":3975073}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":41160,"name":"EventDispatch","ph":"X","pid":10914,"tdur":41100,"tid":259,"ts":633282653269,"tts":3975179}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40887,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40823,"tid":259,"ts":633282653281,"tts":3975194}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C","stackTrace":[{"columnNumber":47,"functionName":"keepBusy","lineNumber":197,"scriptId":"7","url":"http://localhost:10200/events.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633282694147,"tts":4016005}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":40289,"name":"EventDispatch","ph":"X","pid":10914,"tdur":40237,"tid":259,"ts":633282694442,"tts":4016293}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40267,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40214,"tid":259,"ts":633282694452,"tts":4016305}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":40641,"name":"EventDispatch","ph":"X","pid":10914,"tdur":40609,"tid":259,"ts":633282734744,"tts":4056544}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40592,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40559,"tid":259,"ts":633282734754,"tts":4056556}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633282775360,"tts":4097129}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633282775379,"tts":4097149}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30074,"name":"FunctionCall","ph":"X","pid":10914,"tdur":30012,"tid":259,"ts":633282776264,"tts":4098036}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":29983,"name":"FunctionCall","ph":"X","pid":10914,"tdur":29928,"tid":259,"ts":633282806498,"tts":4128212}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30013,"name":"FunctionCall","ph":"X","pid":10914,"tdur":30008,"tid":259,"ts":633282836503,"tts":4158166}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30141,"name":"FunctionCall","ph":"X","pid":10914,"tdur":30137,"tid":259,"ts":633282866537,"tts":4188198}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":29936,"name":"FunctionCall","ph":"X","pid":10914,"tdur":29916,"tid":259,"ts":633282896699,"tts":4218358}, + {"args":{"data":{"type":"selectionchange"}},"cat":"devtools.timeline","dur":31,"name":"EventDispatch","ph":"X","pid":10914,"tdur":28,"tid":259,"ts":633282928465,"tts":4250043}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":1987,"name":"RunTask","ph":"X","pid":10914,"tdur":1956,"tid":259,"ts":633282929359,"tts":4250936}, + {"args":{"data":{"durationInMilliseconds":244,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":10896,"s":"t","tid":259,"ts":633282932393,"tts":829779}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":364,"totalDuration":364},"frame":"2F500B02691F5A39562731E977A0202C"},"cat":"devtools.timeline","dur":14,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":10914,"tdur":13,"tid":259,"ts":633282950100,"tts":4267521}, + {"args":{"data":{"durationInMilliseconds":244,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":10896,"s":"t","tid":259,"ts":633283053737,"tts":831043}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":84287,"name":"RunTask","ph":"X","pid":10914,"tdur":84227,"tid":259,"ts":633283433806,"tts":4636719}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633283433841,"tts":4636758}, + {"args":{"data":{"type":"keydown"}},"cat":"devtools.timeline","dur":40866,"name":"EventDispatch","ph":"X","pid":10914,"tdur":40829,"tid":259,"ts":633283433862,"tts":4636776}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40235,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40193,"tid":259,"ts":633283434474,"tts":4637393}, + {"args":{"data":{"type":"keypress"}},"cat":"devtools.timeline","dur":43332,"name":"EventDispatch","ph":"X","pid":10914,"tdur":43308,"tid":259,"ts":633283474737,"tts":4677614}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40100,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40095,"tid":259,"ts":633283475055,"tts":4677933}, + {"args":{"data":{"type":"beforeinput"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633283515859,"tts":4718733}, + {"args":{"data":{"type":"textInput"}},"cat":"devtools.timeline","dur":1776,"name":"EventDispatch","ph":"X","pid":10914,"tdur":1775,"tid":259,"ts":633283516291,"tts":4719144}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633283516326,"tts":4719180}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C","nodeId":5}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":10914,"s":"t","tid":259,"ts":633283516509,"tts":4719363}, + {"args":{"beginData":{"dirtyObjects":6,"frame":"2F500B02691F5A39562731E977A0202C","partialLayout":false,"totalObjects":24},"endData":{"layoutRoots":[{"depth":1,"nodeId":5,"quads":[[0,0,1200,0,1200,960,0,960]]}]}},"cat":"devtools.timeline","dur":366,"name":"Layout","ph":"X","pid":10914,"tdur":367,"tid":259,"ts":633283516520,"tts":4719374}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633283516924,"tts":4719778}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C","nodeId":5}},"cat":"disabled-by-default-devtools.timeline","name":"InvalidateLayout","ph":"I","pid":10914,"s":"t","tid":259,"ts":633283516983,"tts":4719836}, + {"args":{"beginData":{"dirtyObjects":4,"frame":"2F500B02691F5A39562731E977A0202C","partialLayout":false,"totalObjects":22},"endData":{"layoutRoots":[{"depth":1,"nodeId":5,"quads":[[0,0,1200,0,1200,960,0,960]]}]}},"cat":"devtools.timeline","dur":638,"name":"Layout","ph":"X","pid":10914,"tdur":638,"tid":259,"ts":633283516998,"tts":4719852}, + {"args":{"data":{"type":"input"}},"cat":"devtools.timeline","dur":339,"name":"EventDispatch","ph":"X","pid":10914,"tdur":336,"tid":259,"ts":633283517710,"tts":4720566}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":62808,"name":"RunTask","ph":"X","pid":10914,"tdur":62737,"tid":259,"ts":633283518106,"tts":4720958}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30121,"name":"FunctionCall","ph":"X","pid":10914,"tdur":30107,"tid":259,"ts":633283518871,"tts":4721727}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30042,"name":"FunctionCall","ph":"X","pid":10914,"tdur":30005,"tid":259,"ts":633283549020,"tts":4751867}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":40643,"name":"RunTask","ph":"X","pid":10914,"tdur":40632,"tid":259,"ts":633283580921,"tts":4783702}, + {"args":{"data":{"type":"keyup"}},"cat":"devtools.timeline","dur":40603,"name":"EventDispatch","ph":"X","pid":10914,"tdur":40592,"tid":259,"ts":633283580941,"tts":4783723}, + {"args":{"data":{"columnNumber":21,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"handler","lineNumber":207,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":40571,"name":"FunctionCall","ph":"X","pid":10914,"tdur":40556,"tid":259,"ts":633283580957,"tts":4783742}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C","stackTrace":[{"columnNumber":47,"functionName":"keepBusy","lineNumber":197,"scriptId":"7","url":"http://localhost:10200/events.html"}]}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633283621509,"tts":4824285}, + {"args":{"data":{"type":"selectionchange"}},"cat":"devtools.timeline","dur":219,"name":"EventDispatch","ph":"X","pid":10914,"tdur":214,"tid":259,"ts":633283623006,"tts":4825782}, + {"args":{"data":{"durationInMilliseconds":244,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":10896,"s":"t","tid":259,"ts":633283623583,"tts":836774}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":31724,"name":"RunTask","ph":"X","pid":10914,"tdur":31691,"tid":259,"ts":633283623678,"tts":4826449}, + {"args":{"data":{"columnNumber":29,"frame":"2F500B02691F5A39562731E977A0202C","functionName":"","lineNumber":188,"scriptId":"7","url":"http://localhost:10200/events.html"}},"cat":"devtools.timeline","dur":30292,"name":"FunctionCall","ph":"X","pid":10914,"tdur":29937,"tid":259,"ts":633283623747,"tts":4826873}, + {"args":{"data":{"interactionType":"keyboard","maxDuration":149,"totalDuration":224},"frame":"2F500B02691F5A39562731E977A0202C"},"cat":"devtools.timeline","dur":11,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":10914,"tdur":11,"tid":259,"ts":633283666389,"tts":4866746}, + {"args":{"data":{"durationInMilliseconds":244,"inMainFrame":false,"isAnimated":false,"size":20572,"type":"text"},"main_frame_tree_node_id":2},"cat":"loading","name":"NavStartToLargestContentfulPaint::Candidate::AllFrames::UKM","ph":"I","pid":10896,"s":"t","tid":259,"ts":633283768349,"tts":838056}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":2761,"name":"RunTask","ph":"X","pid":10914,"tdur":2728,"tid":259,"ts":633283967889,"tts":5097183}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":10914,"tdur":5,"tid":259,"ts":633283968559,"tts":5097855}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633283968582,"tts":5097877}, + {"args":{"data":{"type":"pointerout"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633283968606,"tts":5097900}, + {"args":{"data":{"type":"pointerover"}},"cat":"devtools.timeline","dur":4,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633283968614,"tts":5097908}, + {"args":{"data":{"type":"mouseout"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633283968624,"tts":5097918}, + {"args":{"data":{"type":"mouseover"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633283968629,"tts":5097923}, + {"args":{"data":{"type":"pointermove"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633283968637,"tts":5097931}, + {"args":{"data":{"type":"mousemove"}},"cat":"devtools.timeline","dur":353,"name":"EventDispatch","ph":"X","pid":10914,"tdur":349,"tid":259,"ts":633283968642,"tts":5097936}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":44506,"name":"RunTask","ph":"X","pid":10914,"tdur":44467,"tid":259,"ts":633283970796,"tts":5100055}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633283971208,"tts":5100470}, + {"args":{"data":{"type":"pointerdown"}},"cat":"devtools.timeline","dur":20666,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20649,"tid":259,"ts":633283971226,"tts":5100487}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20613,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20603,"tid":259,"ts":633283971242,"tts":5100508}, + {"args":{"data":{"type":"mousedown"}},"cat":"devtools.timeline","dur":20886,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20869,"tid":259,"ts":633283992381,"tts":5121625}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20856,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20834,"tid":259,"ts":633283992396,"tts":5121644}, + {"args":{"data":{"frame":"2F500B02691F5A39562731E977A0202C"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633284013832,"tts":5143060}, + {"args":{"data":{"type":"change"}},"cat":"devtools.timeline","dur":5,"name":"EventDispatch","ph":"X","pid":10914,"tdur":4,"tid":259,"ts":633284014194,"tts":5143421}, + {"args":{"data":{"type":"blur"}},"cat":"devtools.timeline","dur":8,"name":"EventDispatch","ph":"X","pid":10914,"tdur":9,"tid":259,"ts":633284014750,"tts":5143977}, + {"args":{"data":{"type":"focusout"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633284014761,"tts":5143988}, + {"args":{"data":{"type":"DOMFocusOut"}},"cat":"devtools.timeline","dur":2,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633284014766,"tts":5143993}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633284014789,"tts":5144017}, + {"args":{"data":{"type":"focus"}},"cat":"devtools.timeline","dur":10,"name":"EventDispatch","ph":"X","pid":10914,"tdur":6,"tid":259,"ts":633284015165,"tts":5144389}, + {"args":{"data":{"type":"focusin"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":3,"tid":259,"ts":633284015178,"tts":5144399}, + {"args":{"data":{"type":"DOMFocusIn"}},"cat":"devtools.timeline","dur":3,"name":"EventDispatch","ph":"X","pid":10914,"tdur":2,"tid":259,"ts":633284015187,"tts":5144408}, + {"args":{},"cat":"disabled-by-default-devtools.timeline","dur":166328,"name":"RunTask","ph":"X","pid":10914,"tdur":166232,"tid":259,"ts":633284015989,"tts":5145210}, + {"args":{"data":{"frame":"56422801179A59202754455F17E4DE45"}},"cat":"disabled-by-default-devtools.timeline","name":"ScheduleStyleRecalculation","ph":"I","pid":10914,"s":"t","tid":259,"ts":633284016066,"tts":5145287}, + {"args":{"data":{"type":"pointerup"}},"cat":"devtools.timeline","dur":20683,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20681,"tid":259,"ts":633284016082,"tts":5145303}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20659,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20653,"tid":259,"ts":633284016094,"tts":5145319}, + {"args":{"data":{"type":"mouseup"}},"cat":"devtools.timeline","dur":20526,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20523,"tid":259,"ts":633284036774,"tts":5165993}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20507,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20500,"tid":259,"ts":633284036783,"tts":5166005}, + {"args":{"data":{"type":"click"}},"cat":"devtools.timeline","dur":20718,"name":"EventDispatch","ph":"X","pid":10914,"tdur":20707,"tid":259,"ts":633284057308,"tts":5186525}, + {"args":{"data":{"columnNumber":23,"frame":"56422801179A59202754455F17E4DE45","functionName":"handler","lineNumber":83,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20113,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20101,"tid":259,"ts":633284057318,"tts":5186536}, + {"args":{"data":{"type":"DOMActivate"}},"cat":"devtools.timeline","dur":581,"name":"EventDispatch","ph":"X","pid":10914,"tdur":581,"tid":259,"ts":633284077443,"tts":5206649}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20741,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20700,"tid":259,"ts":633284078663,"tts":5207873}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20009,"name":"FunctionCall","ph":"X","pid":10914,"tdur":19992,"tid":259,"ts":633284099429,"tts":5228601}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20260,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20254,"tid":259,"ts":633284119461,"tts":5248620}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20361,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20352,"tid":259,"ts":633284139750,"tts":5268907}, + {"args":{"data":{"columnNumber":31,"frame":"56422801179A59202754455F17E4DE45","functionName":"","lineNumber":71,"scriptId":"6","url":"http://localhost:8080/parent.html"}},"cat":"devtools.timeline","dur":20040,"name":"FunctionCall","ph":"X","pid":10914,"tdur":20025,"tid":259,"ts":633284160131,"tts":5289281}, + {"args":{"data":{"interactionType":"tapOrClick","maxDuration":215,"totalDuration":215},"frame":"56422801179A59202754455F17E4DE45"},"cat":"devtools.timeline","dur":6,"name":"Responsiveness.Renderer.UserInteraction","ph":"X","pid":10914,"tdur":7,"tid":259,"ts":633284200711,"tts":5325791}, + {"args":{"snapshot":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAHyARgDASIAAhEBAxEB/8QAHAABAQACAwEBAAAAAAAAAAAAAAQCBQMGBwgB/8QARhAAAQMDAQMGDAUDAgQHAQAAAAECAwQFERIGITETFEFRUnEHFSIzVFVhkZOi0dIyNXSBsggjkhahNkJi8CQ0cnOCsbPB/8QAGQEBAAMBAQAAAAAAAAAAAAAAAAECBAMF/8QAIhEBAAIBBQACAwEAAAAAAAAAAAECAwQREiExImEFMvCx/9oADAMBAAIRAxEAPwD6pBpNo9oEstZZ6fxfWVi3GrSl1U7NSQZTzj+pqdKm3bUQuc1rZo1c7OERyZXAHIDCSWONUSSRjVXhqVEOt7UbZUez1z2dpJ4Jaht7q0ooZoXNVrHrvTVv4ceGeAHZwYNmifI6NkjHSN/E1HIqp3oGzROc9rZGK5n4kRyZb39QGYMYpGSsR8T2vavS1coYrPEjntWWPLPxJqTye/qA5AYNmid+GVi5TO5ycOsxbUQOa1zZo1a7c1UcmF7gOUGpve0VqslFDV3GsijhmnjpolR2dcj3I1rUxx3r+28z2iv1t2ds810vFXHTUUSIqvcv4lXgiJ0qq7kRANmDqtBtrQ1e3FfsysMsVRSUcdbzh7m8lJG9URMLnOcr09RWzaVi7ZT2B1BWMbDRpVrXuaiU65cjeT1Z/Fvzj2KBvwYRzRSK5I5GOVu9Ua5FwYsqYHsc9k0TmN4uR6KiAcoCKioiouUUAAAAAAAAAAAAAAAAAAAAAAAAAeV+Gmjq6jaLwdzUdJUztpb5HNUPhic/k4UxqVyom5M493sPHdndm7tSXCyVzbPcoqyLbSSd8vN5Ec2gVI8dG6P8W7vPrYAeK/1Ec2btB4OXVkKy063dWzMbGr1ezSiq3Sm9yew6TarFeIKnZqVtruEdpTbae4UcDoH5paDg1VbjyG5Xcin0FtJsnado6y21V1hlkntsvLUrmTOZyb+1uXjuN8B8vbMQ7RO2y2aqaS0Xe36ZbvDLy9PI50bpWOWHlZlTEia1RUXg1ETeZ0NhulV4HrnFb7TfaXb6C3SUVWr2PYydvOmyPXVuSR726sKiqu9UPp4AefeCGkZHR3KthS5xx1z4pnU9XSc1ZBIkaNc2NnFPwpleCrvRV3nnPgq2WrrhI6h2ziu7bvC+vpq5q0mmCqjnXPKPmVcPTKJpxvavBMbz6HAHzXFsdtjB4GtoqNlK/wAcW3Va7esaYmqaRtTykjs/9TVVuOlGL2jh2m2fkrbLYJbdRXuojqtoaSrqoJbe6BlPGkKtma1ib0bnRq6FXemej6aAHyzX7OVjbDc40sVY+ho9u0rYIEo3ORtCrk3xsx+DCLuRP2PS/wCoW0z3zwSMZa7VPNJHU0szKZkGZI2I9M4YnDCcUQ9bAHzFt9YJLztHtfWU2z1dyLtloYLcjqNzdFQj26WsREwjkRU9qJnhvI79ab1V3a8Tpa7nJznYiGkR/NpPLrEWFVbw/H5K7/YfVIA+SFs1XZqO9zSU13tNvk2MgjqaingeirVN0q9FzhFd0LlU3Ku82+wrdn7lbds6qZZblU1Vop432W2000EzWRsYxzo3yNaqq5zUVdKY68n0jfbRQ3601Fsu1O2poahESSJyqiLhUVN6b0VFRFz7DhtthoaCtWsjSeasWPkUnqZ3zPazOdKK5Vwmd6444TIHJs2yOPZ21sggnpoW0sTWQzrmSNqMTDX/APUibl9psQAAAAAAAAAAAAAAAAAAAAAAAAAJKuuSnmbE2J8j1bqXComEzjpJI73HKuIo0euVbhsrF3pxTiT36WKKtRtQ9zGy07mIrUVV47+HDidCk2ejkSnxdI4HQNVjeb0bo9Scnoy5U3qq8V7twHpKXNyqqJSvVWrhcPbuX3n6+708FBV1lZqp4aRFdKrk1YREzndnO5TzdLKsNxSogu0qNlqYZJmIyRqMYyFI3MamFVUdpRcKu5cLndg7hPHTXiy3iiWdYWVbVjR6sXdliJnC8S1NptHLxW8zFZ4+ua0bbWC6xyyUtejYYmLI+WaN0TEanFdT0RN2Uzv6TfU1TBVRcpSzRTR5VNcbkcmU4plDzmDYrTT3dk16ietdb5KBjWQcmyFr0VFcjUX2qu7pKKzZeaetgqYb1HTrE5yo1Ekfqa5kyK1yucqr5UqO39hqdB21NcVcm2Gd6/31H+OWntltTfNG0/33Lvjq2larkdUwIrZEhVFkTc9cYb3rlN3HeftVV01Ika1VRDAkj0jYsj0bqcvBqZ4r7DziHYfQ2JfH72zshbE6ZjXI56okSI9crvc3kdy9Cvcb1tmYlptlEtfCnNZ1qHu0vej3YdjGtyqiZdnGV6txnd3YmXi2Pp21DLjRugdI2FsiTtVqyLjDEXONS5TCcd6FFHV09bAk1HUQ1EKqrUkiej2qqLhUynUqKn7HSodl4m2Blp8ZtSPxlBWRtbqakTGPY5ImOzqRMs3Kq5TVhNyIhPR+D+spuRj8bI6mjSRqwqx2Ho+oSZcrqyq7tOV616wO9zV1JDVR001VBHUyb2ROkRHu7k4rwUoPNYfBxXtpIY5b/I6pjpEpUrEYvLZRmnXlXcUXKobODYmeKZJmXDkpEfC9qs1uRuhXK5vludlHasYXhhMKioioHdwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaC8U81TcayOmdIydbevJOZIrF16lxvRU6cHC+a9pM6Kkj/ALcb3RxufvR6IqKjnK5c4w5U6VVW56TsE9NBUK1aiCKVW5062I7GeOM9yHF4uofQ6b4TfoBrbPJeHVjY7ijEiRivc7QiLngjdyqnWuc9CdZvCXxdQ+h03wm/QeLqH0Om+E36AVAl8XUPodN8Jv0Hi6h9DpvhN+gFQJfF1D6HTfCb9B4uofQ6b4TfoB+3H/y7P/ei/wD0aUkzbfRtc1zaSnRzVRUVI25RU4LwKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6zt3tvaNh6Kmq78tUymqJeRY+GB0iI/oRccM9HcUWXaijut3qLYymuFLWQRNncyrpXRIrFXCK1V3O3p0Hl39WWZNhrTBFqWd1ziejWN1O0tzl2OpMoazbm6toPB1tZbKS71F0vmJa+O5Uyqx7EdMzQzUxEw5cr5Ld2GgfQRoKXa21VO2dXstG+ZLxS0yVckbolRvJqqIio7gu9yHzVtE2qgdtdFSXi/LHFs9R3CmxcKhdVaqNy5F1ZVfK/Bw3pu3JjLanlbhtNeLzWVFwiqn7FwvpaqnkkidJXaWOaxFYqanK7Pkb+7cB9ZHX9rdrrXsn4tW8unjZcKptHA9kSvasrs6WrjhnC+4+fKOu2wr9rIKHay91tjrW22gnt0zoZZNb26XStaxiojnuXLXI5FVU3Gg2kqK64VTJ9oZrlJtHDttEjqZ7pVjio2sdpc2L8KN6nImcZ371A+pNrdq7bspDQzXhZ2Q1lSykjkjiV6JI9cNR2OGev2G+PkrbCeqr6m7TX+a4uv0G2MDYqVZJVjjoWuVWObEnkacb9WM56d52y1XLaCr272k5W71FJfqK6zSUdE+CWRKyjWLTFG3foSPKalXG5d6qB7VctrLZbtrLTs5VunZcro2R1LiJVY/Q1XOTVwRUROn2G/PlTwfyJPt74KK+qqbjVXdUuC3d1TJLIsU7mSNRHNdlI1yqJhETdg7z4bKy6p4Q7Db57nUWrZ+poZ2MrGJKscdUudLncmqKrkTGnK4yoHuQPAbvYdo2+ELZ6NLhcq617S2xtPWzo+Wn5vLGjHSTNjz/ac9qbk3YVy9RFZKq8VHhHv0F2vdXbayiun9mlfDNIlTQLHoSNmHaUZjLlfjKL5SqB9FktBcKS4NmdQ1EdQ2GV0Ejo3ZRr2/ibnrTpPlPwe1dzS8eD+oqLpeZZKy5V1JXMnq5nM5DekbXNVcInlZReOcb9yY9M/pUiipthK+leyojuEdfMlSyXX5PlLp/FuReOcb+voA9D2o26sOzVoqLlcapzqOmqko5307Fl5KVURdLkTh+JPeX7UbR0GzNkddbly60rXsZ/ZidI7L3I1PJT2qfKl7o6al8E+3Vtijq0uibUSJyKrK5eRSVuhcLlOGd/FUTpwVbSV9wt9u8IFDb7nd3Q090oJLcq1Uz3YdjldLlVVVMZz0bvYgH1wxyPY1zeDkyh+nyb4QKuuSu8JVbbrreGy0E1tltbIayZGJI5GcsrWI7Dt+vKYVE38DZ7ZXdtx8JN8tsm18VIr7jQyQVMlykpW09MjFWWFrWqirqRyb27lzvcioB9Pg/GIjWNRqqrUTCZXP+5+gAAAAAAAAAAAAAAAAAAAAABUReKH5pTqQjqrg2CrbTNgnmlcxZMRom5ucdKoY+MJPV1b7mfcBdhOpD9wnUhB4wk9XVvuZ9w8YSerq33M+4C/CdQwmc4TJB4wk9XVvuZ9w8YSerq33M+4C/CdSDCZzjeQeMJPV1b7mfcPGEnq6t9zPuAvwnUgVEXihB4wk9XVvuZ9w8YSerq33M+4C8YTOcbyDxhJ6urfcz7h4wk9XVvuZ9wF+E6kCJjgQeMJPV1b7mfcPGEnq6t9zPuAvwnUh+aU6kIfGEnq6t9zPuHjCT1dW+5n3AXaU6kOk3fwZbP3eoub6+OSWK5S8rUxuRjtS4RMI5W62phqbkVMdGDtHjCT1dW+5n3DxhJ6urfcz7gLmNaxjWMREa1MIidCH6QeMJPV1b7mfcPGEnq6t9zPuAvBB4wk9XVvuZ9w8YSerq33M+4C8EHjCT1dW+5n3DxhJ6urfcz7gLwQeMJPV1b7mfcPGEnq6t9zPuAvBB4wk9XVvuZ9w8YSerq33M+4C8EHjCT1dW+5n3DxhJ6urfcz7gLwQeMJPV1b7mfcPGEnq6t9zPuAvBB4wk9XVvuZ9w8YSerq33M+4C8ECXB+d9vrETrVGbvmAHE9FTaZjuhaNyJ/mhHSVFe97kdOqplceSn0L3/8QxfpX/zactNAjcrjpAxWV8EDpaibTGxNTnOwiInWp4d4Q/6gKS01c9Hs4yOt0t085cuE1dKtTG9EOxf1E3+roNlILZaF1VVxl5JUZvVWoqZb/uh4NYvBatwpJJLrWNgmcuWtibq0969JaJrXuy0Um3jutq/qPuSLTx11sp5GKqI6Rjl1468cD3OkrJ9prJHdNnr49rZY10IxkasR3ty1V3d58rs8E0sTHtddo2uVdztCLu6M5U9N/ptmrbDe77YbrLG2COFtQxzlwi+UiZT2Ki/7EcqT4m2O1fXoWxdLtwy+JJtJeWy0bXOatOkMaa0xucjkai4yejmtp6+gqZ4ubVUErnKulGPRVXuNkQoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADGbzT+5QJvNP7lAEEmfH8ap6K/+bTqNHtdcqKWRl3oWTwo5dM1Mul2nOEVWO93H9jt8n56z9K/+TTxe51dQxKpi1kCJqVqyI5UVOOVzvzxTyuno6SJnZMRuw8Ll2tt/uGzSWmpa6aOpeskWFa9q4Rcuavd/udct1VTurOSne6GV7vJWZG4dv685T9zGBkD6uiVd3Jo+VVRyr0onFes1s+ytBU1rah3XndIupyr0JvKZIiYiZbMEbfq7Lep6ehjY6SqfvX8DJEx71XCGg2mkoKCaC6XV744ainSJOTVXZVHdKpx4obDaDZyiqJaKolc1iswiMeq6VVP34nW/CjHAtvoKKmczS3y9CLwznfjqyUx1iZiHXP1SZl7R4K9vNlbg222e2sVLi5qtykGlF0ou9V7kPWD488AcDmeE60KqJu5TON+PIU+wzTavHqHmRO/YACqQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGM3mn9ygTeaf3KAIZfz1n6V/8mnzRdYnU15ldLDzlWvfI1rUXTqVy4bhFTO7rPpaX88Z+lf8AyafPXMa7ntXI6BalOUVF8hWuxlcY6F/2PS/HUrabTaGTVWtEREOobTXmsms0bXU7KVkE7FkjhymW6uKr0kV4S4JcKd9ocsyva5Ws5TSu/G9F68L/ALHYNr6OpqaSKWKnmWPe2VGtVcs4L+6cf2NClFNDQ/30kilomKut0blarercmVThw38DTq9PGavx9jxXSZ5w2+Xkp5H32qkjpKuSd7HSMZqm3aXK5E3Y4rjK59hb4QmQwVlFUNYjnJiKRFTKPRrk4+9SzY61zVuK+WKqSOGVVjY9HO1OxxVV37s8De3vZCa4LRy1yywsmflrUiVy6OOf3wi/uebXBwxTa0dz426jPGTJFa+Q7P4C4bRNemvjt0LKlsfKRTIio5q4wvvz1HvZ4t4MbS2yXGNtM9ytdG9up8StXCZVN6/97js99rp6BLckUrmNmic90kqzS8o9FZiJNLso52py53/h4LvM3Ga+oh6EDyKXa6rht7ZPFdVLUJybnMbLKiuRajklRrc9DUVc53ZbuXJ2WzXLxjHVubBVUslJOkTtU73IrsoqY60Vqtd3PQJd4B5f4SNoLradpGtp7jNTUUVM2Xm8cKOdUOy5NLXK1URdzc54IuTlh2vuVNWU7KyVrmJbKeqcxyNar5Xctqau7Vv0RpuTydWpdxpy6W2PFXLM9WZseprkyWxRHdXpYPOH+EKqqadI6a2sp6xWufmSZXRorKlI1artHBWI5+rG5Ogt2f20q6+7wUdRbZInVKteiSO0rC1Y2OVnDy1RXLnguFRe7M0u9A6BNtNc2XulibIj6Ka5SUqIyJFerEdE1FRF/E1FWRHKi5TKO3o1Sar2xulHtNcKeVmqgpro+BqoxqI6FtA2bGd7s8qrm6sY3Y4gekA86b4R5JdTW2lY9VPyjJHTqqMfmJFa9NHkoiy8d+dC7kJKLwiXCntLpay2rV1LKZKly6uQRf7SOVjU0rlyO4p0am8QPUAaKzXqe501ySSkSmnpHLH5EiyNcunOWu0pn/vOOBHe7o+js9XU2yvSoqIqWWXTqbJpc1iq1VRP+rCfuB2kHni7fS0Sua+mbWxtiWV0rZ0ym78KIxqou9OvKZ/YmXbu6SrO6OhbHCtZDGx2rU6OPXE16q1Wplq5kw/PHdjdkD0wHSJdrqie1WmvSJtuinuTaaVJXI9OS0qqqqqiaV3Ii9SoqHHdfCE2iZWSRWx0kEOnk5ZJuSa/KtwrlVvko5HZau/KIucYA72Dz2v8Ib4VuDoaGCVKGZ8SsZWIrpcNkXemhVaiqzcvTnvQ2mz22Xje+pbHUcUEjYVkevOUcuUXGGt0ork9u7uA7cAAAAAAAAAAMZvNP7lAm80/uUARO/P4/wBM/wDm01Me1kDKGGtrYkpqZ75Y1cr9WlzJkiTo6XL+xtnfn8f6Z/8ANp11lz2UdSyurGUlOsznLLFI1FVV5RUXKJuyqpnHFeIG0btTbpre6spFkqIkljhRWMVEcr1RGqirxTencSbM7b2q/wANAkDpY6uqgjmWndG7VGj2akzu4LhcLw3HElw2PpqF1Ix9CylekdTyTGKrV1K1zHIiJ0q5ipjrQ4bbXbD0L21NuktcKwxYSWFqIjY2M603aUam7o3LgCiLbm2tRW1rJ4Z/7i6GRPlTSx0iZ1I3HCF646kOaTbexxrIj6l6cm7TJ/ad5H4d6pjKJ5bfeTS/6QSlrKzm1HJHSoiTKyBXK3lNSYwiZ38o/wDzXPEjmsuyU8iXCmdFFFSY1xQMajZNeEblFarl1bkTSqZ4bwOwP2jtrqCnqHSP5Gqm5qxVjcmXqqpjOOCrwXgudx1ix7WWWvtdHKytuEMskMbnUyxIrolexrmtXyN+UciNX/m6C2guuyFxtds5RtHHG1rKiGGZvmHKxr+PBFRHt6elDb2W3bP1EEFVaaOjWOFdEb44sadOExw6MInswBDQ3W1188cNLcquSSSFZ2ojG72IqpnOndnS7GeOCS2XSwPjcjKyenbyLrhLG+NrE0o1kr1crW8USWNy78+V3naYLTb6eoZPBRwRysi5FrmMRFRmVXT3b196nFBYbVT6+Rt9MxHxLA7Eab2KiIrV9mGtTuROoDSO28tUHjFK9lXTLQ5fNmB7kZGmrDlVEwmdDt2c7u43VtvlDcqisipJHOdS45RysVG71cm5V3Lva73HAuylhdFLG600asmajZEWNF1omcIvX+J3vU47LstQWmommgdPI6SVZsSK1Eaqo5NyNRM7nKm/K8N+4D9t+1dsuNzbb6N88lU5nK45B6NRmlHI5XYwiKipjfxXHHJrqTb60S0VDLOs0c9VE2RsLInSLqVGKrEVEwqpyrPfnoXG/orNbaGfl6Sighm0cnrYxEXTu8nPVuTd7CePZmyRpGkdrpGpGiIzEaeSiYxjq/C33J1ASQbZWWelramGokfT0lJz2WRsL1TksKuU3b1wi7uJxJtzZFlSJZalsnZdTSIuUc9qpvTeqLE/cm/yTFmxFsio7xSwSVEMFzp3Ur2R6GpFGrdOGYb0JuTVqwbNuzloTk1W30znsVqo9WJnKasL87/8l6wOO1bTWy61KQUE/KyrGsqIicWouP8A73excouFTBqbd4QLVVWyhq52VMTq1GLBEyJ0rnK9rXNZ5Kfi0vauPbx3KdgpLJbKSfl6ahp4psKmtrERcLjO/wBuE9xwwbN2WBsDYbZSMbBo5JGxoiM0Y046saUx3IBhV7SW6lqJIZHTOkY9Yl0ROcivRnKKzOMZRnlY6kXqU1bPCDYZFhWKaZ0Ur3sSVYnNamjlNS5djdmJ6bulDdz2K11FRLPNQU75pXI971YmXORMIq+3G7PUTu2VsLmo1bRRaUVzkTkk3K7Xlf35R/8AkvWBPFthbZno2BtVI7MOU5BzVRJVw1cLjqX/ABUmh8IFgmp4p2VFRyc0ayRaqaRqyIjWuXSiply6XtXCb/KTGV3G3/09aOVSXxdTcojUaj9CZwioqJn2KiKcTdlrExkDWWmja2DdEjY0TRuam7q3Man/AMUAki21s0syxNlnR+7GqBzcosiRoqZThqXGfYpjtZdqSnkkp6mgSsSkpH3KTU5G6GM3eT1uVFdu3bs5XeXrszZFka9bXSa2qiovJplMOVyfMqr3lNTZ7dVMiZUUcMrY2LGxHtzhq4y3u3Ju9gGkjvVpt+zV3vdqo383puVfK1IXRLI5irqwipv36uCYzkmTarZ6C4zVKRuZVSrE1XJA/W9z15NMpjra1ud/DfuQ7BJYrZIydj6OJ0U7HsljVPIej3anZbwXKrk11w2MtFXVU87IVpXxP1rzdrG8ou/8Sq1V6Xb0VF3rvAkoduaKr5LTDLHljVl1tcixuc6FEbw3oqTtXPD/APnDUeEazQJUSq2qdSQ0vOeWbC7Dk0q5E4Y3twqb+nHQpvP9M2ZEfydupo3OajdbI0RUxpxju5NmP/SnURWvYmyUNBzSSlZWM06FdUsYqq3s4a1ExvXo6VAxve2dDZ7k6kqoKnMUMdTO9rNSRxvSZUXCZVVTkH5QqptqLfPHUKx7nSQQPqXsa1c6Gvc3KZx0scVVdgtNZJylVb6aZ/JJBqexFXk0RyI3uw9/+S9ZnT2S2U+rkKGnj1MdGulib2uXLk7lVVVQNZDtnZ5msWKSZ6OmbTZbEqo2RyuRGqqbkXU1zV9qY6UzyJtbbG2ugr5lnhgrdSw6olVVx14zvXoTivvKW7N2ZsaxttlKjFekmnk0xqTg7HX7TKfZ60Tw08U1tpXxU6uWJqxpiPUqKuOrKonuA11BtjbbjXW6mtyyzOq3Ki5YrFiTTKqK5FTpWF6J3HZTVUuztnpKmGopbbSxTw+beyNEVv4uH+Tv8l6zagYzeaf3KBN5p/coAid+fx/pn/zaaSXZnZZz3a44kdnK/wDi3oupHK7P4s6sqqZ44XTw3G5m/O2/pH/yaa+skraSOnqaVXSM5KNvJOXyXOVUbhOnOFz+wGkdsdZEnkWG6yRUz+btSBtU7DWQ6NLUXVlPN8U3+Uu82Uezey0TmrAkcOGPjRIq17E0O4twj0TCdCf8uV04yfsdx2gk0q2lp0iV70dI9itRqI7CbtWcYyuTe2epmrLdDU1MXIvlTUkfS1OjIGmgsWzMFLVU0TadsVVG2KVEqXZVrVVWoi6stwqqqYwZNsuzjaCWiasSQScnlEq3I5OTdqYjXatTUa7emFTB2MAdMm2Q2WWljip5FgfCxzIJG18irEqtY3O9+FwkUeEXP4faudns3Q2yw0MVNT3DlGxs5NvKVKuRG5VcI1XKnTx443Z3HYABNz+j9Lp/iJ9Rz+j9Lp/iJ9SkATc/o/S6f4ifUc/o/S6f4ifUpAE3P6P0un+In1HP6P0un+In1KQBNz+j9Lp/iJ9Rz+j9Lp/iJ9SkATc/o/S6f4ifUc/o/S6f4ifUpAE3P6P0un+In1HP6P0un+In1KQBNz+j9Lp/iJ9Rz+j9Lp/iJ9SkATc/o/S6f4ifUc/o/S6f4ifUpAE3P6P0un+In1HP6P0un+In1KQBNz+j9Lp/iJ9Rz+j9Lp/iJ9SkATc/o/S6f4ifUc/o/S6f4ifUpAE3P6P0un+In1HP6P0un+In1KQBNz+j9Lp/iJ9Rz+j9Lp/iJ9SkAcHLxTwyLDKyRETCqxyLj3A42+drP2/iAON/59H+mf8Azac6UVOiYSPCdSKqHA78/j/TP/m0vAn5lB2PmUcyg7HzKUACfmUHY+ZRzKDsfMpQAJ+ZQdj5lHMoOx8ylAAn5lB2PmUcyg7HzKUACfmUHY+ZRzKDsfMpQAJ+ZQdj5lHMoOx8ylAAn5lB2PmUcyg7HzKUACfmUHY+ZRzKDsfMpQAJ+ZQdj5lHMoOx8ylAAn5lB2PmUcyg7HzKUACfmUHY+ZRzKDsfMpQAJ+ZQdj5lHMoOx8ylAAn5lB2PmUcyg7HzKUACfmUHY+ZRzKDsfMpQAJ+ZQdj5lHMoOx8ylAAn5lB2PmUcyg7HzKUADh5GOGGRI26cplfaDkm80/uUARO/P4/0z/5tLyB35/H+mf8AzaXgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABjN5p/coE3mn9ygCJ35/H+mf8AzaXkDvz+P9M/+bS8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMZvNP7lAm80/uUARO/P4/0z/5tLyB35/H+mf/ADaXgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABjN5p/coE3mn9ygCJ35/H+mf/ADaXkDvz+P8ATP8A5tLwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxm80/uUCbzT+5QBE78/j/AEz/AObS8gd+fx/pn/zaXgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABjN5p/coE3mn9ygCJ35/H+mf/NpeQO/P4/0z/wCbS8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMZvNP7lAm80/uUAQv8A+IYv0r/5tNga5/8AxDD+lf8AzabEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMZvNP7lAm80/uUAa5zl/1NG3oSjcvzt+hszgdSxrWJVZckqR8nuXdjOTl0L23AZAx0L23DQvbcBkDHQvbcNC9twGQMdC9tw0L23AZAx0L23DQvbcBkDHQvbcNC9twGQMdC9tw0L23AZAx0L23DQvbcBkDHQvbcNC9twGQMdC9tw0L23AZAx0L23DQvbcBkDHQvbcNC9twGQMdC9tw0L23AZAx0L23DQvbcBkDHQvbcNC9twGQMdC9tw0L23AZAx0L23DQvbcAm80/uUH4seUVFe7CgDMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH/2Q=="},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":10896,"tid":259,"ts":633279453356}, + {"args":{"sync_id":"__lighthouseTimespanStart__"},"cat":"__metadata","name":"clock_sync","ph":"c","pid":10896,"tid":259,"ts":633279453551,"tts":605971}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":10896,"tid":259,"ts":633279995045}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":10896,"tid":259,"ts":633280745780}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":10896,"tid":259,"ts":633281296319}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":10896,"tid":259,"ts":633281896907}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":10896,"tid":259,"ts":633282580910}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":10896,"tid":259,"ts":633283164815}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":10896,"tid":259,"ts":633283665305}, + {"args":{"snapshot":"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"},"cat":"disabled-by-default-devtools.screenshot","id":"0x1","name":"Screenshot","ph":"O","pid":10896,"tid":259,"ts":633284182478}, + {"args":{"number":12},"cat":"__metadata","name":"num_cpus","ph":"M","pid":10896,"tid":79107,"ts":633284486694}, + {"args":{"number":12},"cat":"__metadata","name":"num_cpus","ph":"M","pid":10909,"tid":26627,"ts":633284486698}, + {"args":{"number":12},"cat":"__metadata","name":"num_cpus","ph":"M","pid":10914,"tid":259,"ts":633284486703}, + {"args":{"sort_index":-6},"cat":"__metadata","name":"process_sort_index","ph":"M","pid":10896,"tid":79107,"ts":633284486711}, + {"args":{"sort_index":-1},"cat":"__metadata","name":"process_sort_index","ph":"M","pid":10909,"tid":26627,"ts":633284486712}, + {"args":{"sort_index":-5},"cat":"__metadata","name":"process_sort_index","ph":"M","pid":10914,"tid":259,"ts":633284486721}, + {"args":{"labels":"Subframe: http://localhost:10200/,http://localhost:8080/"},"cat":"__metadata","name":"process_labels","ph":"M","pid":10914,"tid":259,"ts":633284486736}, + {"args":{"sort_index":-1},"cat":"__metadata","name":"thread_sort_index","ph":"M","pid":10914,"tid":259,"ts":633284486738}, + {"args":{"data":{"cancelable":true,"duration":40,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":2610,"processingStart":2610,"timeStamp":2606,"type":"pointerover"}},"cat":"devtools.timeline","id":"0xdc35fd65","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279464240}, + {"args":{"data":{"cancelable":false,"duration":40,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":2610,"processingStart":2610,"timeStamp":2606,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279464240}, + {"args":{"data":{"cancelable":false,"duration":40,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":2610,"processingStart":2610,"timeStamp":2606,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279464240}, + {"args":{"data":{"cancelable":false,"duration":40,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":2610,"processingStart":2610,"timeStamp":2606,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279464240}, + {"args":{"data":{"cancelable":false,"duration":40,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":2610,"processingStart":2610,"timeStamp":2606,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279464240}, + {"args":{"data":{"cancelable":false,"duration":40,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":2610,"processingStart":2610,"timeStamp":2606,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279464240}, + {"args":{"data":{"cancelable":false,"duration":40,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":2610,"processingStart":2610,"timeStamp":2606,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279464240}, + {"args":{"data":{"cancelable":true,"duration":40,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":2610,"processingStart":2610,"timeStamp":2606,"type":"mouseover"}},"cat":"devtools.timeline","id":"0xde58987b","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279464240}, + {"args":{"data":{"cancelable":true,"duration":224,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":2658,"processingStart":2638,"timeStamp":2612,"type":"mousedown"}},"cat":"devtools.timeline","id":"0x160687bd","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279470040}, + {"args":{"data":{"cancelable":true,"duration":224,"frame":"56422801179A59202754455F17E4DE45","interactionId":4942,"nodeId":3,"processingEnd":2638,"processingStart":2615,"timeStamp":2612,"type":"pointerdown"}},"cat":"devtools.timeline","id":"0x125d4f90","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279470040}, + {"args":{},"cat":"devtools.timeline","id":"0xde58987b","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279504240}, + {"args":{},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279504240}, + {"args":{},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279504240}, + {"args":{},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279504240}, + {"args":{},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279504240}, + {"args":{},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279504240}, + {"args":{},"cat":"devtools.timeline","id":"0xddea3f31","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279504240}, + {"args":{},"cat":"devtools.timeline","id":"0xdc35fd65","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279504240}, + {"args":{"data":{"cancelable":true,"duration":176,"frame":"56422801179A59202754455F17E4DE45","interactionId":4942,"nodeId":3,"processingEnd":2682,"processingStart":2662,"timeStamp":2660,"type":"pointerup"}},"cat":"devtools.timeline","id":"0xaad7fa24","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279518240}, + {"args":{"data":{"cancelable":true,"duration":176,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":2703,"processingStart":2682,"timeStamp":2660,"type":"mouseup"}},"cat":"devtools.timeline","id":"0xb0c8c27a","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279518240}, + {"args":{"data":{"cancelable":true,"duration":176,"frame":"56422801179A59202754455F17E4DE45","interactionId":4942,"nodeId":3,"processingEnd":2723,"processingStart":2703,"timeStamp":2660,"type":"click"}},"cat":"devtools.timeline","id":"0xb40bc186","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279518240}, + {"args":{},"cat":"devtools.timeline","id":"0x125d4f90","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279694040}, + {"args":{},"cat":"devtools.timeline","id":"0x160687bd","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279694040}, + {"args":{},"cat":"devtools.timeline","id":"0xb40bc186","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279694240}, + {"args":{},"cat":"devtools.timeline","id":"0xb0c8c27a","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279694240}, + {"args":{},"cat":"devtools.timeline","id":"0xaad7fa24","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633279694240}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":3338,"processingStart":3338,"timeStamp":3334,"type":"pointerout"}},"cat":"devtools.timeline","id":"0x6b956f0c","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280192740}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":3338,"processingStart":3338,"timeStamp":3334,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x69d17448","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280192740}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":3338,"processingStart":3338,"timeStamp":3334,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x69d17448","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280192740}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":20,"processingEnd":3338,"processingStart":3338,"timeStamp":3334,"type":"pointerover"}},"cat":"devtools.timeline","id":"0x69fba955","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280192740}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":3338,"processingStart":3338,"timeStamp":3334,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0x6bafeb21","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280192740}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":3338,"processingStart":3338,"timeStamp":3334,"type":"mouseout"}},"cat":"devtools.timeline","id":"0x55bc6352","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280192740}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":20,"processingEnd":3338,"processingStart":3338,"timeStamp":3334,"type":"mouseover"}},"cat":"devtools.timeline","id":"0x6c1e446b","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280192740}, + {"args":{"data":{"cancelable":true,"duration":216,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":20,"processingEnd":3382,"processingStart":3361,"timeStamp":3339,"type":"mousedown"}},"cat":"devtools.timeline","id":"0xdcf96ffd","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280197339}, + {"args":{"data":{"cancelable":true,"duration":216,"frame":"56422801179A59202754455F17E4DE45","interactionId":4949,"nodeId":20,"processingEnd":3361,"processingStart":3340,"timeStamp":3339,"type":"pointerdown"}},"cat":"devtools.timeline","id":"0xd95037d0","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280197339}, + {"args":{},"cat":"devtools.timeline","id":"0x6c1e446b","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280200839}, + {"args":{},"cat":"devtools.timeline","id":"0x55bc6352","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280200839}, + {"args":{},"cat":"devtools.timeline","id":"0x6bafeb21","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280200839}, + {"args":{},"cat":"devtools.timeline","id":"0x69fba955","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280200839}, + {"args":{},"cat":"devtools.timeline","id":"0x69d17448","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280200839}, + {"args":{},"cat":"devtools.timeline","id":"0x69d17448","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280200839}, + {"args":{},"cat":"devtools.timeline","id":"0x6b956f0c","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280200839}, + {"args":{"data":{"cancelable":true,"duration":168,"frame":"56422801179A59202754455F17E4DE45","interactionId":4949,"nodeId":20,"processingEnd":3405,"processingStart":3384,"timeStamp":3384,"type":"pointerup"}},"cat":"devtools.timeline","id":"0x1118f05f","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280242140}, + {"args":{"data":{"cancelable":true,"duration":168,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":20,"processingEnd":3425,"processingStart":3405,"timeStamp":3384,"type":"mouseup"}},"cat":"devtools.timeline","id":"0x1709b8b5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280242140}, + {"args":{"data":{"cancelable":true,"duration":168,"frame":"56422801179A59202754455F17E4DE45","interactionId":4949,"nodeId":20,"processingEnd":3445,"processingStart":3425,"timeStamp":3384,"type":"click"}},"cat":"devtools.timeline","id":"0x1a4cb7c1","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280242140}, + {"args":{},"cat":"devtools.timeline","id":"0x1a4cb7c1","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280410140}, + {"args":{},"cat":"devtools.timeline","id":"0x1709b8b5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280410140}, + {"args":{},"cat":"devtools.timeline","id":"0x1118f05f","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280410140}, + {"args":{},"cat":"devtools.timeline","id":"0xd95037d0","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280413339}, + {"args":{},"cat":"devtools.timeline","id":"0xdcf96ffd","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280413339}, + {"args":{"data":{"cancelable":true,"duration":16,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":20,"processingEnd":3871,"processingStart":3871,"timeStamp":3860,"type":"pointerout"}},"cat":"devtools.timeline","id":"0x34618c0b","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280718640}, + {"args":{"data":{"cancelable":false,"duration":16,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":3871,"processingStart":3871,"timeStamp":3860,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x329d9147","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280718640}, + {"args":{"data":{"cancelable":true,"duration":16,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":3871,"processingStart":3871,"timeStamp":3860,"type":"pointerover"}},"cat":"devtools.timeline","id":"0x32c7c654","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280718640}, + {"args":{"data":{"cancelable":false,"duration":16,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":3871,"processingStart":3871,"timeStamp":3860,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0x347c0820","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280718640}, + {"args":{"data":{"cancelable":false,"duration":16,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":3871,"processingStart":3871,"timeStamp":3860,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0x347c0820","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280718640}, + {"args":{"data":{"cancelable":true,"duration":16,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":20,"processingEnd":3871,"processingStart":3871,"timeStamp":3860,"type":"mouseout"}},"cat":"devtools.timeline","id":"0x1e888051","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280718640}, + {"args":{"data":{"cancelable":true,"duration":16,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":3871,"processingStart":3871,"timeStamp":3860,"type":"mouseover"}},"cat":"devtools.timeline","id":"0x34ea616a","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280718640}, + {"args":{"data":{"cancelable":true,"duration":216,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":3915,"processingStart":3895,"timeStamp":3872,"type":"mousedown"}},"cat":"devtools.timeline","id":"0x1798695b","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280730540}, + {"args":{"data":{"cancelable":true,"duration":216,"frame":"56422801179A59202754455F17E4DE45","interactionId":4956,"nodeId":3,"processingEnd":3895,"processingStart":3874,"timeStamp":3872,"type":"pointerdown"}},"cat":"devtools.timeline","id":"0x13ef312e","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280730540}, + {"args":{},"cat":"devtools.timeline","id":"0x34ea616a","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280734640}, + {"args":{},"cat":"devtools.timeline","id":"0x1e888051","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280734640}, + {"args":{},"cat":"devtools.timeline","id":"0x347c0820","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280734640}, + {"args":{},"cat":"devtools.timeline","id":"0x347c0820","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280734640}, + {"args":{},"cat":"devtools.timeline","id":"0x32c7c654","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280734640}, + {"args":{},"cat":"devtools.timeline","id":"0x329d9147","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280734640}, + {"args":{},"cat":"devtools.timeline","id":"0x34618c0b","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280734640}, + {"args":{"data":{"cancelable":true,"duration":168,"frame":"56422801179A59202754455F17E4DE45","interactionId":4956,"nodeId":3,"processingEnd":3938,"processingStart":3918,"timeStamp":3918,"type":"pointerup"}},"cat":"devtools.timeline","id":"0x160a5823","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280776040}, + {"args":{"data":{"cancelable":true,"duration":168,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":3959,"processingStart":3939,"timeStamp":3918,"type":"mouseup"}},"cat":"devtools.timeline","id":"0x1bfb2079","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280776040}, + {"args":{"data":{"cancelable":true,"duration":168,"frame":"56422801179A59202754455F17E4DE45","interactionId":4956,"nodeId":3,"processingEnd":3979,"processingStart":3959,"timeStamp":3918,"type":"click"}},"cat":"devtools.timeline","id":"0x1f3e1f85","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280776040}, + {"args":{},"cat":"devtools.timeline","id":"0x1f3e1f85","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280944040}, + {"args":{},"cat":"devtools.timeline","id":"0x1bfb2079","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280944040}, + {"args":{},"cat":"devtools.timeline","id":"0x160a5823","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280944040}, + {"args":{},"cat":"devtools.timeline","id":"0x13ef312e","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280946540}, + {"args":{},"cat":"devtools.timeline","id":"0x1798695b","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633280946540}, + {"args":{"data":{"cancelable":true,"duration":96,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":4644,"processingStart":4616,"timeStamp":4593,"type":"keypress"}},"cat":"devtools.timeline","id":"0x1a02d2b1","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281451540}, + {"args":{"data":{"cancelable":true,"duration":96,"frame":"56422801179A59202754455F17E4DE45","interactionId":4963,"nodeId":3,"processingEnd":4616,"processingStart":4594,"timeStamp":4593,"type":"keydown"}},"cat":"devtools.timeline","id":"0x93452fb","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281451540}, + {"args":{"data":{"cancelable":true,"duration":56,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":4637,"processingStart":4637,"timeStamp":4637,"type":"beforeinput"}},"cat":"devtools.timeline","id":"0x861e4b6b","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281495540}, + {"args":{"data":{"cancelable":false,"duration":48,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":4644,"processingStart":4643,"timeStamp":4641,"type":"input"}},"cat":"devtools.timeline","id":"0x26864626","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281499040}, + {"args":{"data":{"cancelable":true,"duration":80,"frame":"56422801179A59202754455F17E4DE45","interactionId":4963,"nodeId":3,"processingEnd":4708,"processingStart":4688,"timeStamp":4666,"type":"keyup"}},"cat":"devtools.timeline","id":"0x434841fa","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281524040}, + {"args":{},"cat":"devtools.timeline","id":"0x26864626","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281547040}, + {"args":{},"cat":"devtools.timeline","id":"0x93452fb","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281547540}, + {"args":{},"cat":"devtools.timeline","id":"0x1a02d2b1","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281547540}, + {"args":{},"cat":"devtools.timeline","id":"0x861e4b6b","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281551540}, + {"args":{},"cat":"devtools.timeline","id":"0x434841fa","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281604040}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":6,"processingEnd":4964,"processingStart":4963,"timeStamp":4962,"type":"pointerover"}},"cat":"devtools.timeline","id":"0x8578d19","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882696}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":4964,"processingStart":4964,"timeStamp":4962,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xa0bcee5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882696}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":4964,"processingStart":4964,"timeStamp":4962,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xa0bcee5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882696}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":4964,"processingStart":4964,"timeStamp":4962,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xa0bcee5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882696}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":4964,"processingStart":4964,"timeStamp":4962,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xa0bcee5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882696}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":4964,"processingStart":4964,"timeStamp":4962,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0xa0bcee5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882696}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":6,"processingEnd":4964,"processingStart":4964,"timeStamp":4962,"type":"mouseover"}},"cat":"devtools.timeline","id":"0xa7a282f","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882696}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":5025,"processingStart":5025,"timeStamp":5024,"type":"pointerout"}},"cat":"devtools.timeline","id":"0x13dc7987","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882740}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":5025,"processingStart":5025,"timeStamp":5024,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x12187ec3","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882740}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":5025,"processingStart":5025,"timeStamp":5024,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x12187ec3","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882740}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":5025,"processingStart":5025,"timeStamp":5024,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x12187ec3","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882740}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":4,"processingEnd":5025,"processingStart":5025,"timeStamp":5024,"type":"pointerover"}},"cat":"devtools.timeline","id":"0x1242b3d0","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882740}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":5025,"processingStart":5025,"timeStamp":5024,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0x13f6f59c","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882740}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":3,"processingEnd":5025,"processingStart":5025,"timeStamp":5024,"type":"mouseout"}},"cat":"devtools.timeline","id":"0xfe036dcd","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882740}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":4,"processingEnd":5025,"processingStart":5025,"timeStamp":5024,"type":"mouseover"}},"cat":"devtools.timeline","id":"0x14654ee6","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281882740}, + {"args":{"data":{"cancelable":true,"duration":160,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":6,"processingEnd":5050,"processingStart":5008,"timeStamp":4964,"type":"mousedown"}},"cat":"devtools.timeline","id":"0xd9afc530","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281884796}, + {"args":{"data":{"cancelable":true,"duration":160,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":2261,"nodeId":6,"processingEnd":5008,"processingStart":4966,"timeStamp":4964,"type":"pointerdown"}},"cat":"devtools.timeline","id":"0xd6068d03","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281884796}, + {"args":{},"cat":"devtools.timeline","id":"0xa7a282f","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890696}, + {"args":{},"cat":"devtools.timeline","id":"0xa0bcee5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890696}, + {"args":{},"cat":"devtools.timeline","id":"0xa0bcee5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890696}, + {"args":{},"cat":"devtools.timeline","id":"0xa0bcee5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890696}, + {"args":{},"cat":"devtools.timeline","id":"0xa0bcee5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890696}, + {"args":{},"cat":"devtools.timeline","id":"0xa0bcee5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890696}, + {"args":{},"cat":"devtools.timeline","id":"0x8578d19","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890696}, + {"args":{},"cat":"devtools.timeline","id":"0x14654ee6","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890740}, + {"args":{},"cat":"devtools.timeline","id":"0xfe036dcd","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890740}, + {"args":{},"cat":"devtools.timeline","id":"0x13f6f59c","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890740}, + {"args":{},"cat":"devtools.timeline","id":"0x1242b3d0","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890740}, + {"args":{},"cat":"devtools.timeline","id":"0x12187ec3","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890740}, + {"args":{},"cat":"devtools.timeline","id":"0x12187ec3","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890740}, + {"args":{},"cat":"devtools.timeline","id":"0x12187ec3","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890740}, + {"args":{},"cat":"devtools.timeline","id":"0x13dc7987","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281890740}, + {"args":{"data":{"cancelable":true,"duration":280,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":2261,"nodeId":6,"processingEnd":5158,"processingStart":5117,"timeStamp":5055,"type":"pointerup"}},"cat":"devtools.timeline","id":"0x5b87ea15","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281975396}, + {"args":{"data":{"cancelable":true,"duration":280,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":6,"processingEnd":5199,"processingStart":5158,"timeStamp":5055,"type":"mouseup"}},"cat":"devtools.timeline","id":"0x6178b26b","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281975396}, + {"args":{"data":{"cancelable":true,"duration":280,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":2261,"nodeId":6,"processingEnd":5240,"processingStart":5199,"timeStamp":5055,"type":"click"}},"cat":"devtools.timeline","id":"0x64bbb177","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633281975396}, + {"args":{},"cat":"devtools.timeline","id":"0xd6068d03","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282044796}, + {"args":{},"cat":"devtools.timeline","id":"0xd9afc530","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282044796}, + {"args":{},"cat":"devtools.timeline","id":"0x64bbb177","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282255396}, + {"args":{},"cat":"devtools.timeline","id":"0x6178b26b","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282255396}, + {"args":{},"cat":"devtools.timeline","id":"0x5b87ea15","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282255396}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":6,"processingEnd":5645,"processingStart":5645,"timeStamp":5644,"type":"pointerout"}},"cat":"devtools.timeline","id":"0x3a42be41","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282564296}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":5645,"processingStart":5645,"timeStamp":5644,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x387ec37d","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282564296}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":5645,"processingStart":5645,"timeStamp":5644,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x387ec37d","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282564296}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":10,"processingEnd":5645,"processingStart":5645,"timeStamp":5644,"type":"pointerover"}},"cat":"devtools.timeline","id":"0x38a8f88a","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282564296}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":5645,"processingStart":5645,"timeStamp":5644,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0x3a5d3a56","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282564296}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":5645,"processingStart":5645,"timeStamp":5644,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0x3a5d3a56","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282564296}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":6,"processingEnd":5645,"processingStart":5645,"timeStamp":5644,"type":"mouseout"}},"cat":"devtools.timeline","id":"0x2469b287","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282564296}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":10,"processingEnd":5645,"processingStart":5645,"timeStamp":5644,"type":"mouseover"}},"cat":"devtools.timeline","id":"0x3acb93a0","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282564296}, + {"args":{"data":{"cancelable":true,"duration":368,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":10,"processingEnd":5729,"processingStart":5688,"timeStamp":5646,"type":"mousedown"}},"cat":"devtools.timeline","id":"0x5573f3a8","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282566296}, + {"args":{"data":{"cancelable":true,"duration":368,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":2268,"nodeId":10,"processingEnd":5688,"processingStart":5648,"timeStamp":5646,"type":"pointerdown"}},"cat":"devtools.timeline","id":"0x51cabb7b","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282566296}, + {"args":{},"cat":"devtools.timeline","id":"0x3acb93a0","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282572296}, + {"args":{},"cat":"devtools.timeline","id":"0x2469b287","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282572296}, + {"args":{},"cat":"devtools.timeline","id":"0x3a5d3a56","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282572296}, + {"args":{},"cat":"devtools.timeline","id":"0x3a5d3a56","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282572296}, + {"args":{},"cat":"devtools.timeline","id":"0x38a8f88a","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282572296}, + {"args":{},"cat":"devtools.timeline","id":"0x387ec37d","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282572296}, + {"args":{},"cat":"devtools.timeline","id":"0x387ec37d","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282572296}, + {"args":{},"cat":"devtools.timeline","id":"0x3a42be41","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282572296}, + {"args":{"data":{"cancelable":true,"duration":280,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":2268,"nodeId":10,"processingEnd":5774,"processingStart":5733,"timeStamp":5732,"type":"pointerup"}},"cat":"devtools.timeline","id":"0x7c281503","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282652596}, + {"args":{"data":{"cancelable":true,"duration":280,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":10,"processingEnd":5814,"processingStart":5774,"timeStamp":5732,"type":"mouseup"}},"cat":"devtools.timeline","id":"0x8218dd59","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282652596}, + {"args":{"data":{"cancelable":true,"duration":280,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":2268,"nodeId":10,"processingEnd":5855,"processingStart":5814,"timeStamp":5732,"type":"click"}},"cat":"devtools.timeline","id":"0x855bdc65","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282652596}, + {"args":{},"cat":"devtools.timeline","id":"0x855bdc65","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282932596}, + {"args":{},"cat":"devtools.timeline","id":"0x8218dd59","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282932596}, + {"args":{},"cat":"devtools.timeline","id":"0x7c281503","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282932596}, + {"args":{},"cat":"devtools.timeline","id":"0x51cabb7b","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282934296}, + {"args":{},"cat":"devtools.timeline","id":"0x5573f3a8","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633282934296}, + {"args":{"data":{"cancelable":true,"duration":152,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":10,"processingEnd":6597,"processingStart":6554,"timeStamp":6513,"type":"keypress"}},"cat":"devtools.timeline","id":"0x38c6e282","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283433296}, + {"args":{"data":{"cancelable":true,"duration":152,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":2275,"nodeId":10,"processingEnd":6554,"processingStart":6513,"timeStamp":6513,"type":"keydown"}},"cat":"devtools.timeline","id":"0x27f862cc","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283433296}, + {"args":{"data":{"cancelable":true,"duration":64,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":10,"processingEnd":6595,"processingStart":6595,"timeStamp":6595,"type":"beforeinput"}},"cat":"devtools.timeline","id":"0x45b5a020","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283515896}, + {"args":{"data":{"cancelable":false,"duration":64,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":10,"processingEnd":6597,"processingStart":6597,"timeStamp":6596,"type":"input"}},"cat":"devtools.timeline","id":"0xfe809b4a","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283516896}, + {"args":{"data":{"cancelable":true,"duration":112,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":2275,"nodeId":10,"processingEnd":6701,"processingStart":6660,"timeStamp":6625,"type":"keyup"}},"cat":"devtools.timeline","id":"0xaada4137","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283546096}, + {"args":{},"cat":"devtools.timeline","id":"0x45b5a020","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283579896}, + {"args":{},"cat":"devtools.timeline","id":"0xfe809b4a","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283580896}, + {"args":{},"cat":"devtools.timeline","id":"0x27f862cc","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283585296}, + {"args":{},"cat":"devtools.timeline","id":"0x38c6e282","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283585296}, + {"args":{},"cat":"devtools.timeline","id":"0xaada4137","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283658096}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":10,"processingEnd":7048,"processingStart":7048,"timeStamp":7047,"type":"pointerout"}},"cat":"devtools.timeline","id":"0x17416a99","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967596}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":7048,"processingStart":7048,"timeStamp":7047,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x157d6fd5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967596}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":7048,"processingStart":7048,"timeStamp":7047,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x157d6fd5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967596}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":7048,"processingStart":7048,"timeStamp":7047,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x157d6fd5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967596}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":7048,"processingStart":7048,"timeStamp":7047,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x157d6fd5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967596}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":0,"processingEnd":7048,"processingStart":7048,"timeStamp":7047,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x157d6fd5","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967596}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"2F500B02691F5A39562731E977A0202C","interactionId":0,"nodeId":10,"processingEnd":7048,"processingStart":7048,"timeStamp":7047,"type":"mouseout"}},"cat":"devtools.timeline","id":"0x1685edf","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967596}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":4,"processingEnd":7110,"processingStart":7110,"timeStamp":7109,"type":"pointerout"}},"cat":"devtools.timeline","id":"0x4d1c0039","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967640}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":7110,"processingStart":7110,"timeStamp":7109,"type":"pointerleave"}},"cat":"devtools.timeline","id":"0x4b580575","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967640}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":20,"processingEnd":7110,"processingStart":7110,"timeStamp":7109,"type":"pointerover"}},"cat":"devtools.timeline","id":"0x4b823a82","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967640}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":7110,"processingStart":7110,"timeStamp":7109,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0x4d367c4e","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967640}, + {"args":{"data":{"cancelable":false,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":0,"processingEnd":7110,"processingStart":7110,"timeStamp":7109,"type":"pointerenter"}},"cat":"devtools.timeline","id":"0x4d367c4e","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967640}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":4,"processingEnd":7110,"processingStart":7110,"timeStamp":7109,"type":"mouseout"}},"cat":"devtools.timeline","id":"0x3742f47f","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967640}, + {"args":{"data":{"cancelable":true,"duration":8,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":20,"processingEnd":7110,"processingStart":7110,"timeStamp":7109,"type":"mouseover"}},"cat":"devtools.timeline","id":"0x4da4d598","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283967640}, + {"args":{"data":{"cancelable":true,"duration":216,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":20,"processingEnd":7155,"processingStart":7134,"timeStamp":7111,"type":"mousedown"}},"cat":"devtools.timeline","id":"0x88cad80c","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283969540}, + {"args":{"data":{"cancelable":true,"duration":216,"frame":"56422801179A59202754455F17E4DE45","interactionId":4970,"nodeId":20,"processingEnd":7134,"processingStart":7113,"timeStamp":7111,"type":"pointerdown"}},"cat":"devtools.timeline","id":"0x85219fdf","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283969540}, + {"args":{},"cat":"devtools.timeline","id":"0x1685edf","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975596}, + {"args":{},"cat":"devtools.timeline","id":"0x157d6fd5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975596}, + {"args":{},"cat":"devtools.timeline","id":"0x157d6fd5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975596}, + {"args":{},"cat":"devtools.timeline","id":"0x157d6fd5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975596}, + {"args":{},"cat":"devtools.timeline","id":"0x157d6fd5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975596}, + {"args":{},"cat":"devtools.timeline","id":"0x157d6fd5","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975596}, + {"args":{},"cat":"devtools.timeline","id":"0x17416a99","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975596}, + {"args":{},"cat":"devtools.timeline","id":"0x4da4d598","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975640}, + {"args":{},"cat":"devtools.timeline","id":"0x3742f47f","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975640}, + {"args":{},"cat":"devtools.timeline","id":"0x4d367c4e","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975640}, + {"args":{},"cat":"devtools.timeline","id":"0x4d367c4e","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975640}, + {"args":{},"cat":"devtools.timeline","id":"0x4b823a82","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975640}, + {"args":{},"cat":"devtools.timeline","id":"0x4b580575","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975640}, + {"args":{},"cat":"devtools.timeline","id":"0x4d1c0039","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633283975640}, + {"args":{"data":{"cancelable":true,"duration":168,"frame":"56422801179A59202754455F17E4DE45","interactionId":4970,"nodeId":20,"processingEnd":7178,"processingStart":7158,"timeStamp":7157,"type":"pointerup"}},"cat":"devtools.timeline","id":"0x78b343c1","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633284015839}, + {"args":{"data":{"cancelable":true,"duration":168,"frame":"56422801179A59202754455F17E4DE45","interactionId":0,"nodeId":20,"processingEnd":7199,"processingStart":7178,"timeStamp":7157,"type":"mouseup"}},"cat":"devtools.timeline","id":"0x7ea40c17","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633284015839}, + {"args":{"data":{"cancelable":true,"duration":168,"frame":"56422801179A59202754455F17E4DE45","interactionId":4970,"nodeId":20,"processingEnd":7220,"processingStart":7199,"timeStamp":7157,"type":"click"}},"cat":"devtools.timeline","id":"0x81e70b23","name":"EventTiming","ph":"b","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633284015839}, + {"args":{},"cat":"devtools.timeline","id":"0x81e70b23","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633284183839}, + {"args":{},"cat":"devtools.timeline","id":"0x7ea40c17","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633284183839}, + {"args":{},"cat":"devtools.timeline","id":"0x78b343c1","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633284183839}, + {"args":{},"cat":"devtools.timeline","id":"0x85219fdf","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633284185540}, + {"args":{},"cat":"devtools.timeline","id":"0x88cad80c","name":"EventTiming","ph":"e","pid":10914,"scope":"devtools.timeline","tid":259,"ts":633284185540} ] } \ No newline at end of file diff --git a/types/artifacts.d.ts b/types/artifacts.d.ts index 100afcbb5fba..f4d4761d1a75 100644 --- a/types/artifacts.d.ts +++ b/types/artifacts.d.ts @@ -963,6 +963,7 @@ export interface TraceEvent { /** Responsiveness data. */ interactionType?: 'drag'|'keyboard'|'tapOrClick'; maxDuration?: number; + type?: string; }; frame?: string; name?: string; @@ -996,6 +997,23 @@ declare module Trace { tdur: number; tts: number; } + + /** + * Base event of a `ph: 'b'|'e'|'n'` async event. Extend with `name`, `args`, and + * more specific `ph` (if needed). + */ + interface AsyncEvent { + ph: 'b'|'e'|'n'; + cat: string; + pid: number; + tid: number; + ts: number; + id: string; + scope?: string; + // TODO(bckenny): No dur on these. Sort out optional `dur` on trace events. + /** @deprecated there is no `dur` on async events. */ + dur: number; + } } /** From af4c70d0a6782a18b40da666d2e3a5451abfaa8f Mon Sep 17 00:00:00 2001 From: Adam Raine <6752989+adamraine@users.noreply.github.com> Date: Mon, 9 May 2022 13:55:13 -0400 Subject: [PATCH 17/33] core(css-usage): fetch stylesheet contents immediately after discovery (#13887) --- lighthouse-core/gather/gatherers/css-usage.js | 93 ++++++++++++------- .../fixtures/fraggle-rock/css-change/end.css | 3 + .../fixtures/fraggle-rock/css-change/end.html | 13 +++ .../fraggle-rock/css-change/start.css | 3 + .../fraggle-rock/css-change/start.html | 15 +++ .../scenarios/cross-origin-test-pptr.js | 40 ++++++++ .../fraggle-rock/scenarios/pptr-test-utils.js | 8 ++ .../test/gather/gatherers/css-usage-test.js | 8 +- 8 files changed, 146 insertions(+), 37 deletions(-) create mode 100644 lighthouse-core/test/fixtures/fraggle-rock/css-change/end.css create mode 100644 lighthouse-core/test/fixtures/fraggle-rock/css-change/end.html create mode 100644 lighthouse-core/test/fixtures/fraggle-rock/css-change/start.css create mode 100644 lighthouse-core/test/fixtures/fraggle-rock/css-change/start.html create mode 100644 lighthouse-core/test/fraggle-rock/scenarios/cross-origin-test-pptr.js diff --git a/lighthouse-core/gather/gatherers/css-usage.js b/lighthouse-core/gather/gatherers/css-usage.js index 4802c64d7eab..bd131d311cfd 100644 --- a/lighthouse-core/gather/gatherers/css-usage.js +++ b/lighthouse-core/gather/gatherers/css-usage.js @@ -5,7 +5,9 @@ */ 'use strict'; +const log = require('lighthouse-logger'); const FRGatherer = require('../../fraggle-rock/gather/base-gatherer.js'); +const Sentry = require('../../lib/sentry.js'); /** * @fileoverview Tracks unused CSS rules. @@ -13,21 +15,16 @@ const FRGatherer = require('../../fraggle-rock/gather/base-gatherer.js'); class CSSUsage extends FRGatherer { constructor() { super(); - /** @type {Array} */ - this._stylesheets = []; - /** @param {LH.Crdp.CSS.StyleSheetAddedEvent} sheet */ - this._onStylesheetAdded = sheet => this._stylesheets.push(sheet); - /** @param {LH.Crdp.CSS.StyleSheetRemovedEvent} sheet */ - this._onStylesheetRemoved = sheet => { - // We can't fetch the content of removed stylesheets, so we ignore them completely. - const styleSheetId = sheet.styleSheetId; - this._stylesheets = this._stylesheets.filter(s => s.header.styleSheetId !== styleSheetId); - }; + /** @type {LH.Gatherer.FRProtocolSession|undefined} */ + this._session = undefined; + /** @type {Map>} */ + this._sheetPromises = new Map(); /** * Initialize as undefined so we can assert results are fetched. * @type {LH.Crdp.CSS.RuleUsage[]|undefined} */ this._ruleUsage = undefined; + this._onStylesheetAdded = this._onStylesheetAdded.bind(this); } /** @type {LH.Gatherer.GathererMeta} */ @@ -35,26 +32,49 @@ class CSSUsage extends FRGatherer { supportedModes: ['snapshot', 'timespan', 'navigation'], }; + /** + * @param {LH.Crdp.CSS.StyleSheetAddedEvent} event + */ + async _onStylesheetAdded(event) { + if (!this._session) throw new Error('Session not initialized'); + const styleSheetId = event.header.styleSheetId; + const sheetPromise = this._session.sendCommand('CSS.getStyleSheetText', {styleSheetId}) + .then(content => ({ + header: event.header, + content: content.text, + })) + .catch(/** @param {Error} err */ (err) => { + log.warn( + 'CSSUsage', + `Error fetching content of stylesheet with URL "${event.header.sourceURL}"` + ); + Sentry.captureException(err, { + tags: { + gatherer: this.name, + }, + extra: { + url: event.header.sourceURL, + }, + level: 'error', + }); + return err; + }); + this._sheetPromises.set(styleSheetId, sheetPromise); + } + /** * @param {LH.Gatherer.FRTransitionalContext} context */ async startCSSUsageTracking(context) { const session = context.driver.defaultSession; + this._session = session; session.on('CSS.styleSheetAdded', this._onStylesheetAdded); - session.on('CSS.styleSheetRemoved', this._onStylesheetRemoved); await session.sendCommand('DOM.enable'); await session.sendCommand('CSS.enable'); await session.sendCommand('CSS.startRuleUsageTracking'); } - /** - * @param {LH.Gatherer.FRTransitionalContext} context - */ - async startInstrumentation(context) { - if (context.gatherMode !== 'timespan') return; - await this.startCSSUsageTracking(context); - } /** * @param {LH.Gatherer.FRTransitionalContext} context @@ -64,7 +84,14 @@ class CSSUsage extends FRGatherer { const coverageResponse = await session.sendCommand('CSS.stopRuleUsageTracking'); this._ruleUsage = coverageResponse.ruleUsage; session.off('CSS.styleSheetAdded', this._onStylesheetAdded); - session.off('CSS.styleSheetRemoved', this._onStylesheetRemoved); + } + + /** + * @param {LH.Gatherer.FRTransitionalContext} context + */ + async startInstrumentation(context) { + if (context.gatherMode !== 'timespan') return; + await this.startCSSUsageTracking(context); } /** @@ -93,25 +120,23 @@ class CSSUsage extends FRGatherer { await this.stopCSSUsageTracking(context); } - // Fetch style sheet content in parallel. - const promises = this._stylesheets.map(sheet => { - const styleSheetId = sheet.header.styleSheetId; - return session.sendCommand('CSS.getStyleSheetText', {styleSheetId}).then(content => { - return { - header: sheet.header, - content: content.text, - }; - }); - }); - const styleSheetInfo = await Promise.all(promises); + /** @type {Map} */ + const dedupedStylesheets = new Map(); + const sheets = await Promise.all(this._sheetPromises.values()); + + for (const sheet of sheets) { + // Erroneous sheets will be reported via sentry and the log. + // We can ignore them here without throwing a fatal error. + if (sheet instanceof Error) { + continue; + } + + dedupedStylesheets.set(sheet.content, sheet); + } await session.sendCommand('CSS.disable'); await session.sendCommand('DOM.disable'); - const dedupedStylesheets = new Map(styleSheetInfo.map(sheet => { - return [sheet.content, sheet]; - })); - if (!this._ruleUsage) throw new Error('Issue collecting rule usages'); return { diff --git a/lighthouse-core/test/fixtures/fraggle-rock/css-change/end.css b/lighthouse-core/test/fixtures/fraggle-rock/css-change/end.css new file mode 100644 index 000000000000..a2a037c7e6f2 --- /dev/null +++ b/lighthouse-core/test/fixtures/fraggle-rock/css-change/end.css @@ -0,0 +1,3 @@ +body { + border: 5px solid red; +} diff --git a/lighthouse-core/test/fixtures/fraggle-rock/css-change/end.html b/lighthouse-core/test/fixtures/fraggle-rock/css-change/end.html new file mode 100644 index 000000000000..63e8c76bf440 --- /dev/null +++ b/lighthouse-core/test/fixtures/fraggle-rock/css-change/end.html @@ -0,0 +1,13 @@ + + + + + + + + + + +

Should have different styles than the start page

+ + diff --git a/lighthouse-core/test/fixtures/fraggle-rock/css-change/start.css b/lighthouse-core/test/fixtures/fraggle-rock/css-change/start.css new file mode 100644 index 000000000000..48864ed0de6f --- /dev/null +++ b/lighthouse-core/test/fixtures/fraggle-rock/css-change/start.css @@ -0,0 +1,3 @@ +body { + border: 5px solid black; +} diff --git a/lighthouse-core/test/fixtures/fraggle-rock/css-change/start.html b/lighthouse-core/test/fixtures/fraggle-rock/css-change/start.html new file mode 100644 index 000000000000..07dca7a181f6 --- /dev/null +++ b/lighthouse-core/test/fixtures/fraggle-rock/css-change/start.html @@ -0,0 +1,15 @@ + + + + + + + + + + +

Start page

+

Stylesheets should change after navigating to the next page

+ Next + + diff --git a/lighthouse-core/test/fraggle-rock/scenarios/cross-origin-test-pptr.js b/lighthouse-core/test/fraggle-rock/scenarios/cross-origin-test-pptr.js new file mode 100644 index 000000000000..c9dfd9d4e9ad --- /dev/null +++ b/lighthouse-core/test/fraggle-rock/scenarios/cross-origin-test-pptr.js @@ -0,0 +1,40 @@ +/** + * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ + +import {jest} from '@jest/globals'; + +import * as lighthouse from '../../../fraggle-rock/api.js'; +import {createTestState} from './pptr-test-utils.js'; +import {LH_ROOT} from '../../../../root.js'; + +/* eslint-env jest */ +/* eslint-env browser */ + +jest.setTimeout(90_000); + +describe('Cross origin timespan', () => { + const state = createTestState(); + + state.installSetupAndTeardownHooks(); + + beforeAll(() => { + state.server.baseDir = state.secondaryServer.baseDir = + `${LH_ROOT}/lighthouse-core/test/fixtures/fraggle-rock/css-change`; + }); + + it('should resolve all stylesheets', async () => { + await state.page.goto(`${state.serverBaseUrl}/start.html`, {waitUntil: ['networkidle0']}); + + const timespan = await lighthouse.startTimespan({page: state.page}); + await state.page.goto(`${state.secondaryServerBaseUrl}/end.html`); + const result = await timespan.endTimespan(); + if (!result) throw new Error('Lighthouse did not return a result'); + + // Ensure CSS usage didn't error. + expect(result.artifacts.CSSUsage.stylesheets).toHaveLength(4); + expect(result.lhr.audits['unused-css-rules'].score).not.toBeNull(); + }); +}); diff --git a/lighthouse-core/test/fraggle-rock/scenarios/pptr-test-utils.js b/lighthouse-core/test/fraggle-rock/scenarios/pptr-test-utils.js index e43b4ba29fc2..a2889b3743d1 100644 --- a/lighthouse-core/test/fraggle-rock/scenarios/pptr-test-utils.js +++ b/lighthouse-core/test/fraggle-rock/scenarios/pptr-test-utils.js @@ -31,15 +31,22 @@ export function createTestState() { browser: /** @type {import('puppeteer').Browser} */ (any('browser')), page: /** @type {import('puppeteer').Page} */ (any('page')), server: /** @type {StaticServer} */ (any('server')), + secondaryServer: /** @type {StaticServer} */ (any('server')), serverBaseUrl: '', + secondaryServerBaseUrl: '', installSetupAndTeardownHooks() { beforeAll(async () => { this.server = new Server(); + this.secondaryServer = new Server(); await this.server.listen(0, '127.0.0.1'); + await this.secondaryServer.listen(0, '127.0.0.1'); this.serverBaseUrl = `http://localhost:${this.server.getPort()}`; + this.secondaryServerBaseUrl = `http://localhost:${this.secondaryServer.getPort()}`; this.browser = await puppeteer.launch({ headless: true, + executablePath: process.env.CHROME_PATH, + ignoreDefaultArgs: ['--enable-automation'], }); }); @@ -54,6 +61,7 @@ export function createTestState() { afterAll(async () => { await this.browser.close(); await this.server.close(); + await this.secondaryServer.close(); }); }, }; diff --git a/lighthouse-core/test/gather/gatherers/css-usage-test.js b/lighthouse-core/test/gather/gatherers/css-usage-test.js index eda00c61215f..a748ba70b5fc 100644 --- a/lighthouse-core/test/gather/gatherers/css-usage-test.js +++ b/lighthouse-core/test/gather/gatherers/css-usage-test.js @@ -76,16 +76,18 @@ describe('.getArtifact', () => { }); }); - it('ignores removed stylesheets', async () => { + it('ignores sheet if there was an error fetching content', async () => { const driver = createMockDriver(); driver.defaultSession.on .mockEvent('CSS.styleSheetAdded', {header: {styleSheetId: '1'}}) - .mockEvent('CSS.styleSheetAdded', {header: {styleSheetId: '2'}}) - .mockEvent('CSS.styleSheetRemoved', {styleSheetId: '1'}); + .mockEvent('CSS.styleSheetAdded', {header: {styleSheetId: '2'}}); driver.defaultSession.sendCommand .mockResponse('DOM.enable') .mockResponse('CSS.enable') .mockResponse('CSS.startRuleUsageTracking') + .mockResponse('CSS.getStyleSheetText', () => { + throw new Error('Sheet not found'); + }) .mockResponse('CSS.getStyleSheetText', {text: 'CSS text 2'}) .mockResponse('CSS.stopRuleUsageTracking', { ruleUsage: [ From 041d50bfea8be225ffda9e12d2b3a8e5611a09d8 Mon Sep 17 00:00:00 2001 From: Snyk bot Date: Tue, 19 Apr 2022 19:54:13 +0100 Subject: [PATCH 18/33] deps(snyk): update snyk snapshot (#13823) --- third-party/snyk/snapshot.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/third-party/snyk/snapshot.json b/third-party/snyk/snapshot.json index deb4a96ff3a5..04504dd8b23e 100644 --- a/third-party/snyk/snapshot.json +++ b/third-party/snyk/snapshot.json @@ -116,14 +116,14 @@ {"id":"SNYK-JS-LODASH-1040724","severity":"high","semver":{"vulnerable":["<4.17.21"]}}, {"id":"SNYK-JS-LODASH-1018905","severity":"medium","semver":{"vulnerable":["<4.17.21"]}}, {"id":"SNYK-JS-LODASH-608086","severity":"high","semver":{"vulnerable":["<4.17.17"]}}, - {"id":"SNYK-JS-LODASH-590103","severity":"critical","semver":{"vulnerable":["<4.17.20"]}}, - {"id":"SNYK-JS-LODASH-567746","severity":"medium","semver":{"vulnerable":["<4.17.16"]}}, + {"id":"SNYK-JS-LODASH-567746","severity":"high","semver":{"vulnerable":["<4.17.20"]}}, {"id":"SNYK-JS-LODASH-450202","severity":"high","semver":{"vulnerable":["<4.17.12"]}}, {"id":"SNYK-JS-LODASH-73639","severity":"medium","semver":{"vulnerable":["<4.17.11"]}}, {"id":"SNYK-JS-LODASH-73638","severity":"high","semver":{"vulnerable":["<4.17.11"]}}, {"id":"npm:lodash:20180130","severity":"medium","semver":{"vulnerable":["<4.17.5"]}} ], "moment":[ + {"id":"SNYK-JS-MOMENT-2440688","severity":"high","semver":{"vulnerable":["<2.29.2"]}}, {"id":"npm:moment:20170905","severity":"low","semver":{"vulnerable":["<2.19.3"]}}, {"id":"npm:moment:20161019","severity":"medium","semver":{"vulnerable":["<2.15.2"]}}, {"id":"npm:moment:20160126","severity":"medium","semver":{"vulnerable":["<2.11.2"]}} From 0531e48cec7f1187d08dd2c790125f5031142e36 Mon Sep 17 00:00:00 2001 From: Snyk bot Date: Wed, 20 Apr 2022 18:30:20 +0100 Subject: [PATCH 19/33] deps(snyk): update snyk snapshot (#13880) --- third-party/snyk/snapshot.json | 1 - 1 file changed, 1 deletion(-) diff --git a/third-party/snyk/snapshot.json b/third-party/snyk/snapshot.json index 04504dd8b23e..357a8dd48548 100644 --- a/third-party/snyk/snapshot.json +++ b/third-party/snyk/snapshot.json @@ -160,7 +160,6 @@ {"id":"npm:socket.io:20120323","severity":"medium","semver":{"vulnerable":["<0.9.7"]}} ], "three":[ - {"id":"SNYK-JS-THREE-2359738","severity":"medium","semver":{"vulnerable":["<=0.124.0"]}}, {"id":"SNYK-JS-THREE-1064931","severity":"high","semver":{"vulnerable":["<0.125.0"]}} ], "underscore":[ From 621928a0e6852ccabaa52537dd14d401696cc403 Mon Sep 17 00:00:00 2001 From: Connor Clark Date: Fri, 1 Apr 2022 10:41:46 -0700 Subject: [PATCH 20/33] deps: update to third-party-web 0.15.0 (#13804) --- .../test/audits/third-party-summary-test.js | 2 +- .../reports/sample-flow-result.json | 72 ++++++++++++++++++- package.json | 2 +- yarn.lock | 8 +-- 4 files changed, 76 insertions(+), 8 deletions(-) diff --git a/lighthouse-core/test/audits/third-party-summary-test.js b/lighthouse-core/test/audits/third-party-summary-test.js index 42183b95ff84..6cdbc517e838 100644 --- a/lighthouse-core/test/audits/third-party-summary-test.js +++ b/lighthouse-core/test/audits/third-party-summary-test.js @@ -53,7 +53,7 @@ describe('Third party summary', () => { entity: { text: 'Google Analytics', type: 'link', - url: 'https://www.google.com/analytics/analytics/', + url: 'https://marketingplatform.google.com/about/analytics/', }, mainThreadTime: 95.15599999999999, blockingTime: 0, diff --git a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json index f56570574135..1337ab968843 100644 --- a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json +++ b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json @@ -8624,8 +8624,61 @@ "id": "third-party-summary", "title": "Minimize third-party usage", "description": "Third-party code can significantly impact load performance. Limit the number of redundant third-party providers and try to load third-party code after your page has primarily finished loading. [Learn more](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/).", - "score": null, - "scoreDisplayMode": "notApplicable" + "score": 1, + "scoreDisplayMode": "binary", + "displayValue": "Third-party code blocked the main thread for 0 ms", + "details": { + "type": "table", + "headings": [ + { + "key": "entity", + "itemType": "link", + "text": "Third-Party", + "subItemsHeading": { + "key": "url", + "itemType": "url" + } + }, + { + "key": "transferSize", + "granularity": 1, + "itemType": "bytes", + "text": "Transfer Size", + "subItemsHeading": { + "key": "transferSize" + } + }, + { + "key": "blockingTime", + "granularity": 1, + "itemType": "ms", + "text": "Main-Thread Blocking Time", + "subItemsHeading": { + "key": "blockingTime" + } + } + ], + "items": [ + { + "mainThreadTime": 0, + "blockingTime": 0, + "transferSize": 3888, + "entity": { + "type": "link", + "text": "Algolia", + "url": "https://www.algolia.com/" + }, + "subItems": { + "type": "subitems", + "items": [] + } + } + ], + "summary": { + "wastedBytes": 3888, + "wastedMs": 0 + } + } }, "layout-shift-elements": { "id": "layout-shift-elements", @@ -10555,6 +10608,7 @@ ], "lighthouse-core/lib/i18n/i18n.js | columnTransferSize": [ "audits[resource-summary].details.headings[2].text", + "audits[third-party-summary].details.headings[1].text", "audits[uses-long-cache-ttl].details.headings[2].text", "audits[total-byte-weight].details.headings[1].text" ], @@ -10591,6 +10645,20 @@ "lighthouse-core/audits/third-party-summary.js | description": [ "audits[third-party-summary].description" ], + "lighthouse-core/audits/third-party-summary.js | displayValue": [ + { + "values": { + "timeInMs": 0 + }, + "path": "audits[third-party-summary].displayValue" + } + ], + "lighthouse-core/audits/third-party-summary.js | columnThirdParty": [ + "audits[third-party-summary].details.headings[0].text" + ], + "lighthouse-core/lib/i18n/i18n.js | columnBlockingTime": [ + "audits[third-party-summary].details.headings[2].text" + ], "lighthouse-core/audits/layout-shift-elements.js | title": [ "audits[layout-shift-elements].title" ], diff --git a/package.json b/package.json index bec2cc6f671c..0a00c9be1ec4 100644 --- a/package.json +++ b/package.json @@ -202,7 +202,7 @@ "robots-parser": "^3.0.0", "semver": "^5.3.0", "speedline-core": "^1.4.3", - "third-party-web": "^0.12.7", + "third-party-web": "^0.15.0", "ws": "^7.0.0", "yargs": "^17.3.1", "yargs-parser": "^21.0.0" diff --git a/yarn.lock b/yarn.lock index c0a447f2178b..b884a6b3cb94 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7538,10 +7538,10 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= -third-party-web@^0.12.7: - version "0.12.7" - resolved "https://registry.yarnpkg.com/third-party-web/-/third-party-web-0.12.7.tgz#64445702379abf1a29066d636a965173e4e423c6" - integrity sha512-9d/OfjEOjyeOpnm4F9o0KSK6BI6ytvi9DINSB5h1+jdlCvQlhKpViMSxWpBN9WstdfDQ61BS6NxWqcPCuQCAJg== +third-party-web@^0.15.0: + version "0.15.0" + resolved "https://registry.yarnpkg.com/third-party-web/-/third-party-web-0.15.0.tgz#40790a6394233ecf1d0b8095abde3bfadde67338" + integrity sha512-kv+TVeppmasvDBXHfKCuQ4HNXapsyEXAGVANguzVDJ98xXm88ggtb9B09rVWvwDqapU5VZ4Q4JkCu2viyD/k0w== throat@^6.0.1: version "6.0.1" From 2fa4ad23e38d9df55f660cc9b2e1f41db475b668 Mon Sep 17 00:00:00 2001 From: Adam Raine <6752989+adamraine@users.noreply.github.com> Date: Tue, 19 Apr 2022 18:08:26 -0400 Subject: [PATCH 21/33] deps: upgrade third-party-web (#13873) --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 0a00c9be1ec4..14fff60f0884 100644 --- a/package.json +++ b/package.json @@ -202,7 +202,7 @@ "robots-parser": "^3.0.0", "semver": "^5.3.0", "speedline-core": "^1.4.3", - "third-party-web": "^0.15.0", + "third-party-web": "^0.17.1", "ws": "^7.0.0", "yargs": "^17.3.1", "yargs-parser": "^21.0.0" diff --git a/yarn.lock b/yarn.lock index b884a6b3cb94..961456b2314f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7538,10 +7538,10 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= -third-party-web@^0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/third-party-web/-/third-party-web-0.15.0.tgz#40790a6394233ecf1d0b8095abde3bfadde67338" - integrity sha512-kv+TVeppmasvDBXHfKCuQ4HNXapsyEXAGVANguzVDJ98xXm88ggtb9B09rVWvwDqapU5VZ4Q4JkCu2viyD/k0w== +third-party-web@^0.17.1: + version "0.17.1" + resolved "https://registry.yarnpkg.com/third-party-web/-/third-party-web-0.17.1.tgz#22e03f1ff519a6380bae4594b704b9bb28e15158" + integrity sha512-X9Mha8cVeBwakunlZXkXL6xRzw8VCcDGWqT59EzeTYAJIi8ien3CuufnEGEx4ZUFahumNQdoOwf4H2T9Ca6lBg== throat@^6.0.1: version "6.0.1" From 3546764a16025bc96cd2bc247e750c99b0f501f4 Mon Sep 17 00:00:00 2001 From: Connor Clark Date: Thu, 5 May 2022 13:06:14 -0700 Subject: [PATCH 22/33] deps(js-library-detector): upgrade to 6.5.0 (#13969) --- lighthouse-core/lib/stack-packs.js | 9 ++++----- lighthouse-core/test/lib/stack-packs-test.js | 3 +-- package.json | 2 +- yarn.lock | 8 ++++---- 4 files changed, 10 insertions(+), 12 deletions(-) diff --git a/lighthouse-core/lib/stack-packs.js b/lighthouse-core/lib/stack-packs.js index 69463fe2ecfe..afaaade6f3ff 100644 --- a/lighthouse-core/lib/stack-packs.js +++ b/lighthouse-core/lib/stack-packs.js @@ -19,11 +19,10 @@ const stackPacksToInclude = [ packId: 'wordpress', requiredStacks: ['js:wordpress'], }, - // waiting for https://github.com/johnmichel/Library-Detector-for-Chrome/pull/193 - // { - // packId: 'ezoic', - // requiredStacks: ['js:ezoic'], - // }, + { + packId: 'ezoic', + requiredStacks: ['js:ezoic'], + }, { packId: 'drupal', requiredStacks: ['js:drupal'], diff --git a/lighthouse-core/test/lib/stack-packs-test.js b/lighthouse-core/test/lib/stack-packs-test.js index 9d4ab26b139c..e22607dea2ce 100644 --- a/lighthouse-core/test/lib/stack-packs-test.js +++ b/lighthouse-core/test/lib/stack-packs-test.js @@ -22,8 +22,7 @@ describe('stack-packs lib', () => { const result = lighthouseStackPacksDep .filter(p => !stackPacksLib.stackPacksToInclude.find(p2 => p2.packId === p.id)) .map(p => p.id); - // TODO: waiting for this - expect(result).toEqual(['ezoic']); + expect(result).toEqual([]); }); }); diff --git a/package.json b/package.json index 14fff60f0884..fb02a61cefc3 100644 --- a/package.json +++ b/package.json @@ -190,7 +190,7 @@ "http-link-header": "^0.8.0", "intl-messageformat": "^4.4.0", "jpeg-js": "^0.4.3", - "js-library-detector": "^6.4.0", + "js-library-detector": "^6.5.0", "lighthouse-logger": "^1.3.0", "lighthouse-stack-packs": "^1.7.0", "lodash": "^4.17.21", diff --git a/yarn.lock b/yarn.lock index 961456b2314f..e1ffbdb20040 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5334,10 +5334,10 @@ jpeg-js@^0.4.1: resolved "https://registry.yarnpkg.com/jpeg-js/-/jpeg-js-0.4.1.tgz#937a3ae911eb6427f151760f8123f04c8bfe6ef7" integrity sha512-jA55yJiB5tCXEddos8JBbvW+IMrqY0y1tjjx9KNVtA+QPmu7ND5j0zkKopClpUTsaETL135uOM2XfcYG4XRjmw== -js-library-detector@^6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/js-library-detector/-/js-library-detector-6.4.0.tgz#63e165cb84a4a0a7f7bbf1e97d60623921baae14" - integrity sha512-NB2sYpmgqiTd7PNNhgp6bnEZmjvTUdAbzxABvYXWLpTL/t158T6mPnD8uYNd0FDP73YWyMrTYDvPxqdvCTbv2g== +js-library-detector@^6.5.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/js-library-detector/-/js-library-detector-6.5.0.tgz#96de02e9926a185c2d7a9a6967286d2ba20b5f79" + integrity sha512-Kq7VckJ5kb26kHMAu1sDO8t2qr7M5Uw6Gf7fVGtu1YceoHdqTcobwnB5kStcktusPuPmiCE8PbCaiLzhiBsSAw== js-tokens@^4.0.0: version "4.0.0" From cf91bdd4a284ad1ec88b56b9e1c328bcf0ecf6ef Mon Sep 17 00:00:00 2001 From: Connor Clark Date: Mon, 18 Apr 2022 14:12:09 -0700 Subject: [PATCH 23/33] deps(lighthouse-stack-packs): upgrade to 1.8.1 (#13862) --- lighthouse-core/lib/stack-packs.js | 4 +++ .../scripts/i18n/collect-strings.js | 2 ++ .../reports/sample-flow-result.json | 36 ++++++++++++------- lighthouse-core/test/lib/stack-packs-test.js | 13 +++++++ package.json | 2 +- shared/localization/locales/en-US.json | 29 ++++++++++++--- shared/localization/locales/en-XL.json | 29 ++++++++++++--- yarn.lock | 8 ++--- 8 files changed, 98 insertions(+), 25 deletions(-) diff --git a/lighthouse-core/lib/stack-packs.js b/lighthouse-core/lib/stack-packs.js index afaaade6f3ff..36fb3994248f 100644 --- a/lighthouse-core/lib/stack-packs.js +++ b/lighthouse-core/lib/stack-packs.js @@ -47,6 +47,10 @@ const stackPacksToInclude = [ packId: 'next.js', requiredStacks: ['js:next'], }, + { + packId: 'nuxt', + requiredStacks: ['js:nuxt'], + }, { packId: 'angular', requiredStacks: ['js:@angular/core'], diff --git a/lighthouse-core/scripts/i18n/collect-strings.js b/lighthouse-core/scripts/i18n/collect-strings.js index d3ec21020f1a..a7edea20be5d 100644 --- a/lighthouse-core/scripts/i18n/collect-strings.js +++ b/lighthouse-core/scripts/i18n/collect-strings.js @@ -674,6 +674,8 @@ function resolveMessageCollisions(strings) { 'Name', 'Potential Savings', 'Potential Savings', + 'Use the $MARKDOWN_SNIPPET_0$ component and set the appropriate $MARKDOWN_SNIPPET_1$. $LINK_START_0$Learn more$LINK_END_0$.', + 'Use the $MARKDOWN_SNIPPET_0$ component and set the appropriate $MARKDOWN_SNIPPET_1$. $LINK_START_0$Learn more$LINK_END_0$.', ]); } catch (err) { console.log('The number of duplicate strings has changed. Consider duplicating the `description` to match existing strings so they\'re translated together or update this assertion if they must absolutely be translated separately'); diff --git a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json index 1337ab968843..353cf4d0697f 100644 --- a/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json +++ b/lighthouse-core/test/fixtures/fraggle-rock/reports/sample-flow-result.json @@ -4750,16 +4750,17 @@ "iconDataURL": "data:image/svg+xml,", "descriptions": { "unused-css-rules": "Consider setting up `PurgeCSS` in `Next.js` configuration to remove unused rules from stylesheets. [Learn more](https://purgecss.com/guides/next.html).", - "modern-image-formats": "Use the `Next.js` Image Optimization API to serve modern formats like `WebP` and `AVIF`. [Learn more](https://nextjs.org/docs/api-reference/next/image#acceptable-formats).", - "offscreen-images": "Use the `next/image` component, which defaults to `loading=\"lazy\"`. [Learn more](https://nextjs.org/docs/api-reference/next/image#loading).", + "modern-image-formats": "Use the `next/image` component instead of `` to automatically optimize image format. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", + "offscreen-images": "Use the `next/image` component instead of `` to automatically lazy-load images. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", "render-blocking-resources": "Use the `next/script` component to defer loading of non-critical third-party scripts. [Learn more](https://nextjs.org/docs/basic-features/script).", "unused-javascript": "Use `Webpack Bundle Analyzer` to detect unused JavaScript code. [Learn more](https://github.com/vercel/next.js/tree/canary/packages/next-bundle-analyzer)", "uses-long-cache-ttl": "Configure caching for immutable assets and `Server-side Rendered` (SSR) pages. [Learn more](https://nextjs.org/docs/going-to-production#caching).", - "uses-optimized-images": "Use the `next/image` component instead of `` to optimize images. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", + "uses-optimized-images": "Use the `next/image` component instead of `` to adjust image quality. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", "uses-text-compression": "Enable compression on your Next.js server. [Learn more](https://nextjs.org/docs/api-reference/next.config.js/compression).", "uses-responsive-images": "Use the `next/image` component to set the appropriate `sizes`. [Learn more](https://nextjs.org/docs/api-reference/next/image#sizes).", "user-timings": "Consider using `Next.js Analytics` to measure your app's real-world performance. [Learn more](https://nextjs.org/docs/advanced-features/measuring-performance).", - "preload-lcp-image": "Use the `next/image` component and set \"priority\" to true to preload LCP image. [Learn more](https://nextjs.org/docs/api-reference/next/image#priority)." + "preload-lcp-image": "Use the `next/image` component and set \"priority\" to true to preload LCP image. [Learn more](https://nextjs.org/docs/api-reference/next/image#priority).", + "unsized-images": "Use the `next/image` component to make sure images are always sized appropriately. [Learn more](https://nextjs.org/docs/api-reference/next/image#width)." } } ], @@ -7537,6 +7538,9 @@ ], "node_modules/lighthouse-stack-packs/packs/next.js.js | preload-lcp-image": [ "stackPacks[1].descriptions[preload-lcp-image]" + ], + "node_modules/lighthouse-stack-packs/packs/next.js.js | unsized-images": [ + "stackPacks[1].descriptions[unsized-images]" ] } } @@ -14477,16 +14481,17 @@ "iconDataURL": "data:image/svg+xml,", "descriptions": { "unused-css-rules": "Consider setting up `PurgeCSS` in `Next.js` configuration to remove unused rules from stylesheets. [Learn more](https://purgecss.com/guides/next.html).", - "modern-image-formats": "Use the `Next.js` Image Optimization API to serve modern formats like `WebP` and `AVIF`. [Learn more](https://nextjs.org/docs/api-reference/next/image#acceptable-formats).", - "offscreen-images": "Use the `next/image` component, which defaults to `loading=\"lazy\"`. [Learn more](https://nextjs.org/docs/api-reference/next/image#loading).", + "modern-image-formats": "Use the `next/image` component instead of `` to automatically optimize image format. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", + "offscreen-images": "Use the `next/image` component instead of `` to automatically lazy-load images. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", "render-blocking-resources": "Use the `next/script` component to defer loading of non-critical third-party scripts. [Learn more](https://nextjs.org/docs/basic-features/script).", "unused-javascript": "Use `Webpack Bundle Analyzer` to detect unused JavaScript code. [Learn more](https://github.com/vercel/next.js/tree/canary/packages/next-bundle-analyzer)", "uses-long-cache-ttl": "Configure caching for immutable assets and `Server-side Rendered` (SSR) pages. [Learn more](https://nextjs.org/docs/going-to-production#caching).", - "uses-optimized-images": "Use the `next/image` component instead of `` to optimize images. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", + "uses-optimized-images": "Use the `next/image` component instead of `` to adjust image quality. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", "uses-text-compression": "Enable compression on your Next.js server. [Learn more](https://nextjs.org/docs/api-reference/next.config.js/compression).", "uses-responsive-images": "Use the `next/image` component to set the appropriate `sizes`. [Learn more](https://nextjs.org/docs/api-reference/next/image#sizes).", "user-timings": "Consider using `Next.js Analytics` to measure your app's real-world performance. [Learn more](https://nextjs.org/docs/advanced-features/measuring-performance).", - "preload-lcp-image": "Use the `next/image` component and set \"priority\" to true to preload LCP image. [Learn more](https://nextjs.org/docs/api-reference/next/image#priority)." + "preload-lcp-image": "Use the `next/image` component and set \"priority\" to true to preload LCP image. [Learn more](https://nextjs.org/docs/api-reference/next/image#priority).", + "unsized-images": "Use the `next/image` component to make sure images are always sized appropriately. [Learn more](https://nextjs.org/docs/api-reference/next/image#width)." } } ], @@ -15761,6 +15766,9 @@ ], "node_modules/lighthouse-stack-packs/packs/next.js.js | preload-lcp-image": [ "stackPacks[1].descriptions[preload-lcp-image]" + ], + "node_modules/lighthouse-stack-packs/packs/next.js.js | unsized-images": [ + "stackPacks[1].descriptions[unsized-images]" ] } } @@ -20516,16 +20524,17 @@ "iconDataURL": "data:image/svg+xml,", "descriptions": { "unused-css-rules": "Consider setting up `PurgeCSS` in `Next.js` configuration to remove unused rules from stylesheets. [Learn more](https://purgecss.com/guides/next.html).", - "modern-image-formats": "Use the `Next.js` Image Optimization API to serve modern formats like `WebP` and `AVIF`. [Learn more](https://nextjs.org/docs/api-reference/next/image#acceptable-formats).", - "offscreen-images": "Use the `next/image` component, which defaults to `loading=\"lazy\"`. [Learn more](https://nextjs.org/docs/api-reference/next/image#loading).", + "modern-image-formats": "Use the `next/image` component instead of `` to automatically optimize image format. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", + "offscreen-images": "Use the `next/image` component instead of `` to automatically lazy-load images. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", "render-blocking-resources": "Use the `next/script` component to defer loading of non-critical third-party scripts. [Learn more](https://nextjs.org/docs/basic-features/script).", "unused-javascript": "Use `Webpack Bundle Analyzer` to detect unused JavaScript code. [Learn more](https://github.com/vercel/next.js/tree/canary/packages/next-bundle-analyzer)", "uses-long-cache-ttl": "Configure caching for immutable assets and `Server-side Rendered` (SSR) pages. [Learn more](https://nextjs.org/docs/going-to-production#caching).", - "uses-optimized-images": "Use the `next/image` component instead of `` to optimize images. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", + "uses-optimized-images": "Use the `next/image` component instead of `` to adjust image quality. [Learn more](https://nextjs.org/docs/basic-features/image-optimization).", "uses-text-compression": "Enable compression on your Next.js server. [Learn more](https://nextjs.org/docs/api-reference/next.config.js/compression).", "uses-responsive-images": "Use the `next/image` component to set the appropriate `sizes`. [Learn more](https://nextjs.org/docs/api-reference/next/image#sizes).", "user-timings": "Consider using `Next.js Analytics` to measure your app's real-world performance. [Learn more](https://nextjs.org/docs/advanced-features/measuring-performance).", - "preload-lcp-image": "Use the `next/image` component and set \"priority\" to true to preload LCP image. [Learn more](https://nextjs.org/docs/api-reference/next/image#priority)." + "preload-lcp-image": "Use the `next/image` component and set \"priority\" to true to preload LCP image. [Learn more](https://nextjs.org/docs/api-reference/next/image#priority).", + "unsized-images": "Use the `next/image` component to make sure images are always sized appropriately. [Learn more](https://nextjs.org/docs/api-reference/next/image#width)." } } ], @@ -23301,6 +23310,9 @@ ], "node_modules/lighthouse-stack-packs/packs/next.js.js | preload-lcp-image": [ "stackPacks[1].descriptions[preload-lcp-image]" + ], + "node_modules/lighthouse-stack-packs/packs/next.js.js | unsized-images": [ + "stackPacks[1].descriptions[unsized-images]" ] } } diff --git a/lighthouse-core/test/lib/stack-packs-test.js b/lighthouse-core/test/lib/stack-packs-test.js index e22607dea2ce..9d5e149d4aaf 100644 --- a/lighthouse-core/test/lib/stack-packs-test.js +++ b/lighthouse-core/test/lib/stack-packs-test.js @@ -38,6 +38,7 @@ Array [ "joomla", "magento", "next.js", + "nuxt", "octobercms", "react", "wordpress", @@ -162,6 +163,18 @@ Array [ "uses-responsive-images", "user-timings", "preload-lcp-image", + "unsized-images", + ], + }, + Object { + "id": "nuxt", + "keys": Array [ + "modern-image-formats", + "offscreen-images", + "uses-optimized-images", + "uses-responsive-images", + "preload-lcp-image", + "unsized-images", ], }, Object { diff --git a/package.json b/package.json index fb02a61cefc3..12b50fd5a014 100644 --- a/package.json +++ b/package.json @@ -192,7 +192,7 @@ "jpeg-js": "^0.4.3", "js-library-detector": "^6.5.0", "lighthouse-logger": "^1.3.0", - "lighthouse-stack-packs": "^1.7.0", + "lighthouse-stack-packs": "^1.8.1", "lodash": "^4.17.21", "lookup-closest-locale": "6.2.0", "metaviewport-parser": "0.2.0", diff --git a/shared/localization/locales/en-US.json b/shared/localization/locales/en-US.json index 7424d9667570..1fbf6719bfe5 100644 --- a/shared/localization/locales/en-US.json +++ b/shared/localization/locales/en-US.json @@ -2118,7 +2118,7 @@ "message": "Specify `@font-display` when defining custom fonts in your theme." }, "node_modules/lighthouse-stack-packs/packs/drupal.js | modern-image-formats": { - "message": "Consider installing and configuring [a module to leverage WebP image formats](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=webp&solrsort=iss_project_release_usage+desc&op=Search) in your site. Such modules automatically generate a WebP version of your uploaded images to optimize loading times." + "message": "Consider configuring [WebP image formats with a Convert image style](https://www.drupal.org/docs/core-modules-and-themes/core-modules/image-module/working-with-images#styles) on your site." }, "node_modules/lighthouse-stack-packs/packs/drupal.js | offscreen-images": { "message": "Install [a Drupal module](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=im_vid_3%3A67&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=%22lazy+load%22&solrsort=iss_project_release_usage+desc&op=Search) that can lazy load images. Such modules provide the ability to defer any offscreen images to improve performance." @@ -2274,10 +2274,10 @@ "message": "`` tags can be added by [modifying a themes's layout](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/xml-manage.html)." }, "node_modules/lighthouse-stack-packs/packs/next.js | modern-image-formats": { - "message": "Use the `Next.js` Image Optimization API to serve modern formats like `WebP` and `AVIF`. [Learn more](https://nextjs.org/docs/api-reference/next/image#acceptable-formats)." + "message": "Use the `next/image` component instead of `` to automatically optimize image format. [Learn more](https://nextjs.org/docs/basic-features/image-optimization)." }, "node_modules/lighthouse-stack-packs/packs/next.js | offscreen-images": { - "message": "Use the `next/image` component, which defaults to `loading=\"lazy\"`. [Learn more](https://nextjs.org/docs/api-reference/next/image#loading)." + "message": "Use the `next/image` component instead of `` to automatically lazy-load images. [Learn more](https://nextjs.org/docs/basic-features/image-optimization)." }, "node_modules/lighthouse-stack-packs/packs/next.js | preload-lcp-image": { "message": "Use the `next/image` component and set \"priority\" to true to preload LCP image. [Learn more](https://nextjs.org/docs/api-reference/next/image#priority)." @@ -2285,6 +2285,9 @@ "node_modules/lighthouse-stack-packs/packs/next.js | render-blocking-resources": { "message": "Use the `next/script` component to defer loading of non-critical third-party scripts. [Learn more](https://nextjs.org/docs/basic-features/script)." }, + "node_modules/lighthouse-stack-packs/packs/next.js | unsized-images": { + "message": "Use the `next/image` component to make sure images are always sized appropriately. [Learn more](https://nextjs.org/docs/api-reference/next/image#width)." + }, "node_modules/lighthouse-stack-packs/packs/next.js | unused-css-rules": { "message": "Consider setting up `PurgeCSS` in `Next.js` configuration to remove unused rules from stylesheets. [Learn more](https://purgecss.com/guides/next.html)." }, @@ -2298,7 +2301,7 @@ "message": "Configure caching for immutable assets and `Server-side Rendered` (SSR) pages. [Learn more](https://nextjs.org/docs/going-to-production#caching)." }, "node_modules/lighthouse-stack-packs/packs/next.js | uses-optimized-images": { - "message": "Use the `next/image` component instead of `` to optimize images. [Learn more](https://nextjs.org/docs/basic-features/image-optimization)." + "message": "Use the `next/image` component instead of `` to adjust image quality. [Learn more](https://nextjs.org/docs/basic-features/image-optimization)." }, "node_modules/lighthouse-stack-packs/packs/next.js | uses-responsive-images": { "message": "Use the `next/image` component to set the appropriate `sizes`. [Learn more](https://nextjs.org/docs/api-reference/next/image#sizes)." @@ -2306,6 +2309,24 @@ "node_modules/lighthouse-stack-packs/packs/next.js | uses-text-compression": { "message": "Enable compression on your Next.js server. [Learn more](https://nextjs.org/docs/api-reference/next.config.js/compression)." }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | modern-image-formats": { + "message": "Use the `nuxt/image` component and set `format=\"webp\"`. [Learn more](https://image.nuxtjs.org/components/nuxt-img#format)." + }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | offscreen-images": { + "message": "Use the `nuxt/image` component and set `loading=\"lazy\"` for offscreen images. [Learn more](https://image.nuxtjs.org/components/nuxt-img#loading)." + }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | preload-lcp-image": { + "message": "Use the `nuxt/image` component and specify `preload` for LCP image. [Learn more](https://image.nuxtjs.org/components/nuxt-img#preload)." + }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | unsized-images": { + "message": "Use the `nuxt/image` component and specify explicit `width` and `height`. [Learn more](https://image.nuxtjs.org/components/nuxt-img#width--height)." + }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | uses-optimized-images": { + "message": "Use the `nuxt/image` component and set the appropriate `quality`. [Learn more](https://image.nuxtjs.org/components/nuxt-img#quality)." + }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | uses-responsive-images": { + "message": "Use the `nuxt/image` component and set the appropriate `sizes`. [Learn more](https://image.nuxtjs.org/components/nuxt-img#sizes)." + }, "node_modules/lighthouse-stack-packs/packs/octobercms.js | efficient-animated-content": { "message": "[Replace animated GIFs with video](https://web.dev/replace-gifs-with-videos/) for faster web page loads and consider using modern file formats such as [WebM](https://web.dev/replace-gifs-with-videos/#create-webm-videos) or [AV1](https://developers.google.com/web/updates/2018/09/chrome-70-media-updates#av1-decoder) to improve compression efficiency by greater than 30% over the current state-of-the-art video codec, VP9." }, diff --git a/shared/localization/locales/en-XL.json b/shared/localization/locales/en-XL.json index 63f7e2e64092..f7f90719a24e 100644 --- a/shared/localization/locales/en-XL.json +++ b/shared/localization/locales/en-XL.json @@ -2118,7 +2118,7 @@ "message": "Ŝṕêćîf́ŷ `@font-display` ẃĥén̂ d́êf́îńîńĝ ćûśt̂óm̂ f́ôńt̂ś îń ŷóûŕ t̂h́êḿê." }, "node_modules/lighthouse-stack-packs/packs/drupal.js | modern-image-formats": { - "message": "Ĉón̂śîd́êŕ îńŝt́âĺl̂ín̂ǵ âńd̂ ćôńf̂íĝúr̂ín̂ǵ [â ḿôd́ûĺê t́ô ĺêv́êŕâǵê Ẃêb́P̂ ím̂áĝé f̂ór̂ḿât́ŝ](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=webp&solrsort=iss_project_release_usage+desc&op=Search) ín̂ ýôúr̂ śît́ê. Śûćĥ ḿôd́ûĺêś âút̂óm̂át̂íĉál̂ĺŷ ǵêńêŕât́ê á Ŵéb̂Ṕ v̂ér̂śîón̂ óf̂ ýôúr̂ úp̂ĺôád̂éd̂ ím̂áĝéŝ t́ô óp̂t́îḿîźê ĺôád̂ín̂ǵ t̂ím̂éŝ." + "message": "Ĉón̂śîd́êŕ ĉón̂f́îǵûŕîńĝ [Ẃêb́P̂ ím̂áĝé f̂ór̂ḿât́ŝ ẃît́ĥ á Ĉón̂v́êŕt̂ ím̂áĝé ŝt́ŷĺê](https://www.drupal.org/docs/core-modules-and-themes/core-modules/image-module/working-with-images#styles) ón̂ ýôúr̂ śît́ê." }, "node_modules/lighthouse-stack-packs/packs/drupal.js | offscreen-images": { "message": "Îńŝt́âĺl̂ [á D̂ŕûṕâĺ m̂ód̂úl̂é](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=im_vid_3%3A67&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=%22lazy+load%22&solrsort=iss_project_release_usage+desc&op=Search) t̂h́ât́ ĉán̂ ĺâźŷ ĺôád̂ ím̂áĝéŝ. Śûćĥ ḿôd́ûĺêś p̂ŕôv́îd́ê t́ĥé âb́îĺît́ŷ t́ô d́êf́êŕ âńŷ óf̂f́ŝćr̂éêń îḿâǵêś t̂ó îḿp̂ŕôv́ê ṕêŕf̂ór̂ḿâńĉé." @@ -2274,10 +2274,10 @@ "message": "`` t̂áĝś ĉán̂ b́ê ád̂d́êd́ b̂ý [m̂ód̂íf̂ýîńĝ á t̂h́êḿêś'ŝ ĺâýôút̂](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/xml-manage.html)." }, "node_modules/lighthouse-stack-packs/packs/next.js | modern-image-formats": { - "message": "Ûśê t́ĥé `Next.js` Îḿâǵê Óp̂t́îḿîźât́îón̂ ÁP̂Í t̂ó ŝér̂v́ê ḿôd́êŕn̂ f́ôŕm̂át̂ś l̂ík̂é `WebP` âńd̂ `AVIF`. [Ĺêár̂ń m̂ór̂é](https://nextjs.org/docs/api-reference/next/image#acceptable-formats)." + "message": "Ûśê t́ĥé `next/image` ĉóm̂ṕôńêńt̂ ín̂śt̂éâd́ ôf́ `` t̂ó âút̂óm̂át̂íĉál̂ĺŷ óp̂t́îḿîźê ím̂áĝé f̂ór̂ḿât́. [L̂éâŕn̂ ḿôŕê](https://nextjs.org/docs/basic-features/image-optimization)." }, "node_modules/lighthouse-stack-packs/packs/next.js | offscreen-images": { - "message": "Ûśê t́ĥé `next/image` ĉóm̂ṕôńêńt̂, ẃĥíĉh́ d̂éf̂áûĺt̂ś t̂ó `loading=\"lazy\"`. [L̂éâŕn̂ ḿôŕê](https://nextjs.org/docs/api-reference/next/image#loading)." + "message": "Ûśê t́ĥé `next/image` ĉóm̂ṕôńêńt̂ ín̂śt̂éâd́ ôf́ `` t̂ó âút̂óm̂át̂íĉál̂ĺŷ ĺâźŷ-ĺôád̂ ím̂áĝéŝ. [Ĺêár̂ń m̂ór̂é](https://nextjs.org/docs/basic-features/image-optimization)." }, "node_modules/lighthouse-stack-packs/packs/next.js | preload-lcp-image": { "message": "Ûśê t́ĥé `next/image` ĉóm̂ṕôńêńt̂ án̂d́ ŝét̂ \"ṕr̂íôŕît́ŷ\" t́ô t́r̂úê t́ô ṕr̂él̂óâd́ L̂ĆP̂ ím̂áĝé. [L̂éâŕn̂ ḿôŕê](https://nextjs.org/docs/api-reference/next/image#priority)." @@ -2285,6 +2285,9 @@ "node_modules/lighthouse-stack-packs/packs/next.js | render-blocking-resources": { "message": "Ûśê t́ĥé `next/script` ĉóm̂ṕôńêńt̂ t́ô d́êf́êŕ l̂óâd́îńĝ óf̂ ńôń-ĉŕît́îćâĺ t̂h́îŕd̂-ṕâŕt̂ý ŝćr̂íp̂t́ŝ. [Ĺêár̂ń m̂ór̂é](https://nextjs.org/docs/basic-features/script)." }, + "node_modules/lighthouse-stack-packs/packs/next.js | unsized-images": { + "message": "Ûśê t́ĥé `next/image` ĉóm̂ṕôńêńt̂ t́ô ḿâḱê śûŕê ím̂áĝéŝ ár̂é âĺŵáŷś ŝíẑéd̂ áp̂ṕr̂óp̂ŕîát̂él̂ý. [L̂éâŕn̂ ḿôŕê](https://nextjs.org/docs/api-reference/next/image#width)." + }, "node_modules/lighthouse-stack-packs/packs/next.js | unused-css-rules": { "message": "Ĉón̂śîd́êŕ ŝét̂t́îńĝ úp̂ `PurgeCSS` ín̂ `Next.js` ćôńf̂íĝúr̂át̂íôń t̂ó r̂ém̂óv̂é ûńûśêd́ r̂úl̂éŝ f́r̂óm̂ śt̂ýl̂éŝh́êét̂ś. [L̂éâŕn̂ ḿôŕê](https://purgecss.com/guides/next.html)." }, @@ -2298,7 +2301,7 @@ "message": "Ĉón̂f́îǵûŕê ćâćĥín̂ǵ f̂ór̂ ím̂ḿût́âb́l̂é âśŝét̂ś âńd̂ `Server-side Rendered` (ŚŜŔ) p̂áĝéŝ. [Ĺêár̂ń m̂ór̂é](https://nextjs.org/docs/going-to-production#caching)." }, "node_modules/lighthouse-stack-packs/packs/next.js | uses-optimized-images": { - "message": "Ûśê t́ĥé `next/image` ĉóm̂ṕôńêńt̂ ín̂śt̂éâd́ ôf́ `` t̂ó ôṕt̂ím̂íẑé îḿâǵêś. [L̂éâŕn̂ ḿôŕê](https://nextjs.org/docs/basic-features/image-optimization)." + "message": "Ûśê t́ĥé `next/image` ĉóm̂ṕôńêńt̂ ín̂śt̂éâd́ ôf́ `` t̂ó âd́ĵúŝt́ îḿâǵê q́ûál̂ít̂ý. [L̂éâŕn̂ ḿôŕê](https://nextjs.org/docs/basic-features/image-optimization)." }, "node_modules/lighthouse-stack-packs/packs/next.js | uses-responsive-images": { "message": "Ûśê t́ĥé `next/image` ĉóm̂ṕôńêńt̂ t́ô śêt́ t̂h́ê áp̂ṕr̂óp̂ŕîát̂é `sizes`. [L̂éâŕn̂ ḿôŕê](https://nextjs.org/docs/api-reference/next/image#sizes)." @@ -2306,6 +2309,24 @@ "node_modules/lighthouse-stack-packs/packs/next.js | uses-text-compression": { "message": "Êńâb́l̂é ĉóm̂ṕr̂éŝśîón̂ ón̂ ýôúr̂ Ńêx́t̂.j́ŝ śêŕv̂ér̂. [Ĺêár̂ń m̂ór̂é](https://nextjs.org/docs/api-reference/next.config.js/compression)." }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | modern-image-formats": { + "message": "Ûśê t́ĥé `nuxt/image` ĉóm̂ṕôńêńt̂ án̂d́ ŝét̂ `format=\"webp\"`. [Ĺêár̂ń m̂ór̂é](https://image.nuxtjs.org/components/nuxt-img#format)." + }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | offscreen-images": { + "message": "Ûśê t́ĥé `nuxt/image` ĉóm̂ṕôńêńt̂ án̂d́ ŝét̂ `loading=\"lazy\"` f́ôŕ ôf́f̂śĉŕêén̂ ím̂áĝéŝ. [Ĺêár̂ń m̂ór̂é](https://image.nuxtjs.org/components/nuxt-img#loading)." + }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | preload-lcp-image": { + "message": "Ûśê t́ĥé `nuxt/image` ĉóm̂ṕôńêńt̂ án̂d́ ŝṕêćîf́ŷ `preload` f́ôŕ L̂ĆP̂ ím̂áĝé. [L̂éâŕn̂ ḿôŕê](https://image.nuxtjs.org/components/nuxt-img#preload)." + }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | unsized-images": { + "message": "Ûśê t́ĥé `nuxt/image` ĉóm̂ṕôńêńt̂ án̂d́ ŝṕêćîf́ŷ éx̂ṕl̂íĉít̂ `width` án̂d́ `height`. [L̂éâŕn̂ ḿôŕê](https://image.nuxtjs.org/components/nuxt-img#width--height)." + }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | uses-optimized-images": { + "message": "Ûśê t́ĥé `nuxt/image` ĉóm̂ṕôńêńt̂ án̂d́ ŝét̂ t́ĥé âṕp̂ŕôṕr̂íât́ê `quality`. [Ĺêár̂ń m̂ór̂é](https://image.nuxtjs.org/components/nuxt-img#quality)." + }, + "node_modules/lighthouse-stack-packs/packs/nuxt.js | uses-responsive-images": { + "message": "Ûśê t́ĥé `nuxt/image` ĉóm̂ṕôńêńt̂ án̂d́ ŝét̂ t́ĥé âṕp̂ŕôṕr̂íât́ê `sizes`. [Ĺêár̂ń m̂ór̂é](https://image.nuxtjs.org/components/nuxt-img#sizes)." + }, "node_modules/lighthouse-stack-packs/packs/octobercms.js | efficient-animated-content": { "message": "[R̂ép̂ĺâćê án̂ím̂át̂éd̂ ǴÎF́ŝ ẃît́ĥ v́îd́êó](https://web.dev/replace-gifs-with-videos/) f̂ór̂ f́âśt̂ér̂ ẃêb́ p̂áĝé l̂óâd́ŝ án̂d́ ĉón̂śîd́êŕ ûśîńĝ ḿôd́êŕn̂ f́îĺê f́ôŕm̂át̂ś ŝúĉh́ âś [Ŵéb̂Ḿ](https://web.dev/replace-gifs-with-videos/#create-webm-videos) ôŕ [ÂV́1](https://developers.google.com/web/updates/2018/09/chrome-70-media-updates#av1-decoder) t̂ó îḿp̂ŕôv́ê ćôḿp̂ŕêśŝíôń êf́f̂íĉíêńĉý b̂ý ĝŕêát̂ér̂ t́ĥán̂ 30% óv̂ér̂ t́ĥé ĉúr̂ŕêńt̂ śt̂át̂é-ôf́-t̂h́ê-ár̂t́ v̂íd̂éô ćôd́êć, V̂Ṕ9." }, diff --git a/yarn.lock b/yarn.lock index e1ffbdb20040..be7a98decadc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5628,10 +5628,10 @@ lighthouse-plugin-publisher-ads@^1.5.4: intl-messageformat "^4.1.2" yargs "^16.1.1" -lighthouse-stack-packs@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/lighthouse-stack-packs/-/lighthouse-stack-packs-1.7.0.tgz#b159b68e4f974dbb1bd652957de97864cacb37ac" - integrity sha512-ggLg9V6Hs31Qcn29L2fwKsaQq8L5t+mIv3lNqwd85bc7zFxpMVybK71b4w2OeBLpa0H8gATIi9fxPlP+9moMDA== +lighthouse-stack-packs@^1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/lighthouse-stack-packs/-/lighthouse-stack-packs-1.8.1.tgz#d0772a79f5e7f933109077fb80ccdbd68a43a283" + integrity sha512-LSCu9Ugt9NPvRfBNzAjMDLvYev9r/93OTmbIWt9iXwiCmd999I/zneRTwsFLtlQWGKwNbDHS9vXnU+KpXUb1qg== lines-and-columns@^1.1.6: version "1.2.4" From b92ea8dc81d112d7e38cf9bbf049d52cd8c6a87e Mon Sep 17 00:00:00 2001 From: Connor Clark Date: Wed, 27 Apr 2022 12:39:16 -0700 Subject: [PATCH 24/33] deps(lodash): use individual lodash modules to reduce bundle size (#13914) --- lighthouse-cli/test/smokehouse/frontends/lib.js | 4 +--- lighthouse-cli/test/smokehouse/frontends/smokehouse-bin.js | 4 +--- lighthouse-cli/test/smokehouse/report-assert.js | 4 +--- lighthouse-core/config/config-helpers.js | 2 +- lighthouse-core/fraggle-rock/gather/base-artifacts.js | 4 ++-- lighthouse-core/lib/arbitrary-equality-map.js | 4 ++-- lighthouse-core/runner.js | 2 +- shared/localization/swap-locale.js | 3 ++- 8 files changed, 11 insertions(+), 16 deletions(-) diff --git a/lighthouse-cli/test/smokehouse/frontends/lib.js b/lighthouse-cli/test/smokehouse/frontends/lib.js index 67a523732e2c..a344aeb502d8 100644 --- a/lighthouse-cli/test/smokehouse/frontends/lib.js +++ b/lighthouse-cli/test/smokehouse/frontends/lib.js @@ -13,13 +13,11 @@ /* eslint-disable no-console */ -import _ from 'lodash'; +import cloneDeep from 'lodash/cloneDeep.js'; import smokeTests from '../core-tests.js'; import {runSmokehouse, getShardedDefinitions} from '../smokehouse.js'; -const {cloneDeep} = _; - /** * @param {Smokehouse.SmokehouseLibOptions} options */ diff --git a/lighthouse-cli/test/smokehouse/frontends/smokehouse-bin.js b/lighthouse-cli/test/smokehouse/frontends/smokehouse-bin.js index 7c99745f1065..959b390a9630 100644 --- a/lighthouse-cli/test/smokehouse/frontends/smokehouse-bin.js +++ b/lighthouse-cli/test/smokehouse/frontends/smokehouse-bin.js @@ -17,7 +17,7 @@ import path from 'path'; import fs from 'fs'; import url from 'url'; -import _ from 'lodash'; +import cloneDeep from 'lodash/cloneDeep.js'; import yargs from 'yargs'; import * as yargsHelpers from 'yargs/helpers'; import log from 'lighthouse-logger'; @@ -26,8 +26,6 @@ import {runSmokehouse, getShardedDefinitions} from '../smokehouse.js'; import {updateTestDefnFormat} from './back-compat-util.js'; import {LH_ROOT} from '../../../../root.js'; -const {cloneDeep} = _; - const coreTestDefnsPath = path.join(LH_ROOT, 'lighthouse-cli/test/smokehouse/core-tests.js'); diff --git a/lighthouse-cli/test/smokehouse/report-assert.js b/lighthouse-cli/test/smokehouse/report-assert.js index e429529a25e1..7f2c5233ede4 100644 --- a/lighthouse-cli/test/smokehouse/report-assert.js +++ b/lighthouse-cli/test/smokehouse/report-assert.js @@ -10,14 +10,12 @@ * against the results actually collected from Lighthouse. */ -import _ from 'lodash'; +import cloneDeep from 'lodash/cloneDeep.js'; import log from 'lighthouse-logger'; import {LocalConsole} from './lib/local-console.js'; import {chromiumVersionCheck} from './version-check.js'; -const {cloneDeep} = _; - /** * @typedef Difference * @property {string} path diff --git a/lighthouse-core/config/config-helpers.js b/lighthouse-core/config/config-helpers.js index 2e49f663ad74..090ddb2b5253 100644 --- a/lighthouse-core/config/config-helpers.js +++ b/lighthouse-core/config/config-helpers.js @@ -6,7 +6,7 @@ 'use strict'; const path = require('path'); -const {isEqual: isDeepEqual} = require('lodash'); +const isDeepEqual = require('lodash/isEqual.js'); const constants = require('./constants.js'); const Budget = require('./budget.js'); const ConfigPlugin = require('./config-plugin.js'); diff --git a/lighthouse-core/fraggle-rock/gather/base-artifacts.js b/lighthouse-core/fraggle-rock/gather/base-artifacts.js index 1f6dbd448320..9478e7f394b4 100644 --- a/lighthouse-core/fraggle-rock/gather/base-artifacts.js +++ b/lighthouse-core/fraggle-rock/gather/base-artifacts.js @@ -6,7 +6,7 @@ 'use strict'; const log = require('lighthouse-logger'); -const {isEqual} = require('lodash'); +const isDeepEqual = require('lodash/isEqual.js'); const { getBrowserVersion, getBenchmarkIndex, @@ -58,7 +58,7 @@ function deduplicateWarnings(warnings) { const unique = []; for (const warning of warnings) { - if (unique.some(existing => isEqual(warning, existing))) continue; + if (unique.some(existing => isDeepEqual(warning, existing))) continue; unique.push(warning); } diff --git a/lighthouse-core/lib/arbitrary-equality-map.js b/lighthouse-core/lib/arbitrary-equality-map.js index 8b0c0514adc5..3386153ca2d5 100644 --- a/lighthouse-core/lib/arbitrary-equality-map.js +++ b/lighthouse-core/lib/arbitrary-equality-map.js @@ -5,7 +5,7 @@ */ 'use strict'; -const {isEqual} = require('lodash'); +const isDeepEqual = require('lodash/isEqual.js'); /** * @fileoverview This class is designed to allow maps with arbitrary equality functions. @@ -74,7 +74,7 @@ class ArbitraryEqualityMap { * @return {boolean} */ static deepEquals(objA, objB) { - return isEqual(objA, objB); + return isDeepEqual(objA, objB); } } diff --git a/lighthouse-core/runner.js b/lighthouse-core/runner.js index b062cda53932..c073a0029507 100644 --- a/lighthouse-core/runner.js +++ b/lighthouse-core/runner.js @@ -5,7 +5,7 @@ */ 'use strict'; -const {isEqual: isDeepEqual} = require('lodash'); +const isDeepEqual = require('lodash/isEqual.js'); const Driver = require('./gather/driver.js'); const GatherRunner = require('./gather/gather-runner.js'); const ReportScoring = require('./scoring.js'); diff --git a/shared/localization/swap-locale.js b/shared/localization/swap-locale.js index e390075fcbd2..1a369d6c0f14 100644 --- a/shared/localization/swap-locale.js +++ b/shared/localization/swap-locale.js @@ -5,7 +5,8 @@ */ 'use strict'; -const {set: _set, get: _get} = require('lodash'); +const _set = require('lodash/set.js'); +const _get = require('lodash/get.js'); const format = require('./format.js'); From 4b939092c7e467923e7f4d673a18edfb1371949a Mon Sep 17 00:00:00 2001 From: Connor Clark Date: Tue, 26 Apr 2022 17:09:52 -0700 Subject: [PATCH 25/33] tests(smoke): remove old chrome version checks (#13903) --- .../smokehouse/test-definitions/byte-efficiency.js | 3 --- .../smokehouse/test-definitions/csp-block-all.js | 1 - .../test/smokehouse/test-definitions/dobetterweb.js | 1 - .../test-definitions/issues-mixed-content.js | 1 - .../smokehouse/test-definitions/offline-sw-broken.js | 12 +++--------- .../test-definitions/perf-diagnostics-animations.js | 3 --- .../test-definitions/perf-frame-metrics.js | 6 ------ .../test-definitions/perf-trace-elements.js | 4 ---- 8 files changed, 3 insertions(+), 28 deletions(-) diff --git a/lighthouse-cli/test/smokehouse/test-definitions/byte-efficiency.js b/lighthouse-cli/test/smokehouse/test-definitions/byte-efficiency.js index e5895209385d..82dc0d8ae911 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/byte-efficiency.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/byte-efficiency.js @@ -200,9 +200,6 @@ const expectations = { }, }, 'unused-javascript': { - // ScriptParsedEvent.embedderName wasn't added to the protocol until M86. - // https://chromiumdash.appspot.com/commit/52ed57138d0b83e8afd9de25e60655c6ace7527c - _minChromiumVersion: '86', score: '<1', details: { // the specific ms value here is not meaningful for this smoketest diff --git a/lighthouse-cli/test/smokehouse/test-definitions/csp-block-all.js b/lighthouse-cli/test/smokehouse/test-definitions/csp-block-all.js index adaecf3d5369..93ed31b809c0 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/csp-block-all.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/csp-block-all.js @@ -28,7 +28,6 @@ const blockAllExceptInlineScriptCsp = headersParam([[ */ const expectations = { artifacts: { - _minChromiumVersion: '92', RobotsTxt: { status: 200, }, diff --git a/lighthouse-cli/test/smokehouse/test-definitions/dobetterweb.js b/lighthouse-cli/test/smokehouse/test-definitions/dobetterweb.js index bec90ec128ff..ce90cb5f169a 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/dobetterweb.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/dobetterweb.js @@ -202,7 +202,6 @@ const expectations = { finalUrl: 'http://localhost:10200/dobetterweb/dbw_tester.html', audits: { 'errors-in-console': { - _minChromiumVersion: '95', score: 0, details: { items: { diff --git a/lighthouse-cli/test/smokehouse/test-definitions/issues-mixed-content.js b/lighthouse-cli/test/smokehouse/test-definitions/issues-mixed-content.js index 5c6f766ef4cf..8f258eaccada 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/issues-mixed-content.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/issues-mixed-content.js @@ -14,7 +14,6 @@ const expectations = { InspectorIssues: { mixedContentIssue: [ { - _minChromiumVersion: '88', // We went from Warning to AutoUpgrade in https://chromium-review.googlesource.com/c/chromium/src/+/2480817 resourceType: 'Image', resolutionStatus: 'MixedContentAutomaticallyUpgraded', insecureURL: 'http://www.mixedcontentexamples.com/Content/Test/steveholt.jpg', diff --git a/lighthouse-cli/test/smokehouse/test-definitions/offline-sw-broken.js b/lighthouse-cli/test/smokehouse/test-definitions/offline-sw-broken.js index fe8b83d6c8f9..e5aa8986f6a0 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/offline-sw-broken.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/offline-sw-broken.js @@ -54,17 +54,11 @@ const expectations = { }, artifacts: { InstallabilityErrors: { - // COMPAT: `warn-not-offline-capable` occurs in m89 but may be cherry-picked out of m90. - _minChromiumVersion: '91', - errors: { - length: 1, - // 0: { - // errorId: /warn-not-offline-capable/, - // }, - 0: { + errors: [ + { errorId: /no-icon-available/, }, - }, + ], }, }, }; diff --git a/lighthouse-cli/test/smokehouse/test-definitions/perf-diagnostics-animations.js b/lighthouse-cli/test/smokehouse/test-definitions/perf-diagnostics-animations.js index f03587f34cdb..9202a4ee9c83 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/perf-diagnostics-animations.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/perf-diagnostics-animations.js @@ -22,9 +22,6 @@ const expectations = { finalUrl: 'http://localhost:10200/perf/animations.html', audits: { 'non-composited-animations': { - // Requires compositor failure reasons to be in the trace - // https://chromiumdash.appspot.com/commit/995baabedf9e70d16deafc4bc37a2b215a9b8ec9 - _minChromiumVersion: '86', score: null, displayValue: '1 animated element found', details: { diff --git a/lighthouse-cli/test/smokehouse/test-definitions/perf-frame-metrics.js b/lighthouse-cli/test/smokehouse/test-definitions/perf-frame-metrics.js index f59d062e0b35..daff5fa8d955 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/perf-frame-metrics.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/perf-frame-metrics.js @@ -67,12 +67,6 @@ const expectations = { type: 'debugdata', items: [ { - // Weighted CLS score was added to the trace in m90: - // https://bugs.chromium.org/p/chromium/issues/detail?id=1173139 - // - // Weighted score on emulated mobile bug fixed in m92: - // https://chromium.googlesource.com/chromium/src/+/042fbfb4cc6a675da0dff4bf3fc08622af42422b - _minChromiumVersion: '92', firstContentfulPaint: '>5000', firstContentfulPaintAllFrames: '<5000', largestContentfulPaint: '>5000', diff --git a/lighthouse-cli/test/smokehouse/test-definitions/perf-trace-elements.js b/lighthouse-cli/test/smokehouse/test-definitions/perf-trace-elements.js index ec7d03e72e3f..c17f7565f978 100644 --- a/lighthouse-cli/test/smokehouse/test-definitions/perf-trace-elements.js +++ b/lighthouse-cli/test/smokehouse/test-definitions/perf-trace-elements.js @@ -108,10 +108,6 @@ const expectations = { score: '0.026 +/- 0.01', }, { - // Requires compositor failure reasons to be in the trace - // for `failureReasonsMask` and `unsupportedProperties` - // https://chromiumdash.appspot.com/commit/995baabedf9e70d16deafc4bc37a2b215a9b8ec9 - _minChromiumVersion: '86', traceEventType: 'animation', node: { selector: 'body > div#animate-me', From 700717478471446634b10225dd717e3534e55fdf Mon Sep 17 00:00:00 2001 From: Brendan Kenny Date: Mon, 9 May 2022 19:04:07 -0500 Subject: [PATCH 26/33] report: render notApplicable metrics (#13981) --- .../renderer/performance-category-renderer.js | 2 ++ .../performance-category-renderer-test.js | 20 +++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/report/renderer/performance-category-renderer.js b/report/renderer/performance-category-renderer.js index c9df9977fcb7..2899af854f61 100644 --- a/report/renderer/performance-category-renderer.js +++ b/report/renderer/performance-category-renderer.js @@ -47,6 +47,8 @@ export class PerformanceCategoryRenderer extends CategoryRenderer { valueEl.textContent = 'Error!'; const tooltip = this.dom.createChildOf(descriptionEl, 'span'); tooltip.textContent = audit.result.errorMessage || 'Report error: no metric information'; + } else if (audit.result.scoreDisplayMode === 'notApplicable') { + valueEl.textContent = '--'; } return element; diff --git a/report/test/renderer/performance-category-renderer-test.js b/report/test/renderer/performance-category-renderer-test.js index 42a17099efca..4252a7e5b36f 100644 --- a/report/test/renderer/performance-category-renderer-test.js +++ b/report/test/renderer/performance-category-renderer-test.js @@ -80,6 +80,26 @@ describe('PerfCategoryRenderer', () => { ); }); + it('renders notApplicable metrics with n/a text', () => { + const perfWithNaMetric = JSON.parse(JSON.stringify(category)); + const tbt = perfWithNaMetric.auditRefs.find(audit => audit.id === 'total-blocking-time'); + assert(tbt); + const {id, title, description} = tbt.result; + tbt.result = { + id, + title, + description, + scoreDisplayMode: 'notApplicable', + score: null, + }; + + const perfDom = renderer.render(perfWithNaMetric, sampleResults.categoryGroups); + const tbtElement = perfDom.querySelector('.lh-metric#total-blocking-time'); + assert(tbtElement); + assert.equal(tbtElement.querySelector('.lh-metric__title').textContent, 'Total Blocking Time'); + assert.equal(tbtElement.querySelector('.lh-metric__value').textContent, '--'); + }); + it('does not render metrics section if no metric group audits', () => { // Remove metrics from category const newCategory = JSON.parse(JSON.stringify(category)); From a06d666652c86940f377694e243b874446436447 Mon Sep 17 00:00:00 2001 From: Adam Raine <6752989+adamraine@users.noreply.github.com> Date: Thu, 17 Mar 2022 16:02:27 -0400 Subject: [PATCH 27/33] core: resolve redirected script records (#13751) 9.6.0 note: Added `fakeScript` var to places to make up for the fact that this release does not have "Scripts" refactor. --- .github/workflows/devtools.yml | 2 +- .../test/fixtures/redirects-scripts.html | 15 +++++ .../test/fixtures/unused-javascript.js | 9 +++ lighthouse-cli/test/smokehouse/core-tests.js | 2 + .../test/smokehouse/lighthouse-runners/cli.js | 1 + .../test-definitions/redirects-scripts.js | 66 +++++++++++++++++++ .../byte-efficiency/duplicated-javascript.js | 8 +-- .../byte-efficiency/legacy-javascript.js | 7 +- .../byte-efficiency/unminified-javascript.js | 6 +- .../byte-efficiency/unused-javascript.js | 4 +- lighthouse-core/lib/script-helpers.js | 22 +++++++ 11 files changed, 128 insertions(+), 14 deletions(-) create mode 100644 lighthouse-cli/test/fixtures/redirects-scripts.html create mode 100644 lighthouse-cli/test/fixtures/unused-javascript.js create mode 100644 lighthouse-cli/test/smokehouse/test-definitions/redirects-scripts.js create mode 100644 lighthouse-core/lib/script-helpers.js diff --git a/.github/workflows/devtools.yml b/.github/workflows/devtools.yml index eaff36dffb47..6e1502580641 100644 --- a/.github/workflows/devtools.yml +++ b/.github/workflows/devtools.yml @@ -170,5 +170,5 @@ jobs: # errors-expired-ssl errors-infinite-loop # Disabled because Chrome will follow the redirect first, and Lighthouse will only ever see/run the final URL. # redirects-client-paint-server redirects-multiple-server redirects-single-server redirects-single-client - run: yarn smoke --runner devtools --shard=${{ matrix.smoke-test-shard }}/${{ strategy.job-total }} --retries=2 --invert-match a11y byte-efficiency byte-gzip dbw errors-expired-ssl errors-infinite-loop lantern-idle-callback-short legacy-javascript metrics-tricky-tti metrics-tricky-tti-late-fcp oopif-requests perf-budgets perf-diagnostics-third-party perf-fonts perf-frame-metrics perf-preload perf-trace-elements pwa redirects-client-paint-server redirects-history-push-state redirects-multiple-server redirects-single-server redirects-single-client screenshot seo-passing seo-tap-targets + run: yarn smoke --runner devtools --shard=${{ matrix.smoke-test-shard }}/${{ strategy.job-total }} --retries=2 --invert-match a11y byte-efficiency byte-gzip dbw errors-expired-ssl errors-infinite-loop lantern-idle-callback-short legacy-javascript metrics-tricky-tti metrics-tricky-tti-late-fcp oopif-requests perf-budgets perf-diagnostics-third-party perf-fonts perf-frame-metrics perf-preload perf-trace-elements pwa redirects-client-paint-server redirects-history-push-state redirects-multiple-server redirects-single-server redirects-single-client redirects-scripts screenshot seo-passing seo-tap-targets working-directory: ${{ github.workspace }}/lighthouse diff --git a/lighthouse-cli/test/fixtures/redirects-scripts.html b/lighthouse-cli/test/fixtures/redirects-scripts.html new file mode 100644 index 000000000000..afc3d8faa573 --- /dev/null +++ b/lighthouse-cli/test/fixtures/redirects-scripts.html @@ -0,0 +1,15 @@ + + + + + + + + +

I have a script that redirects

+ + + + diff --git a/lighthouse-cli/test/fixtures/unused-javascript.js b/lighthouse-cli/test/fixtures/unused-javascript.js new file mode 100644 index 000000000000..8238dad10661 --- /dev/null +++ b/lighthouse-cli/test/fixtures/unused-javascript.js @@ -0,0 +1,9 @@ +/** + * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved. + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + */ + +/*eslint-disable*/ + +(()=>{var t={5186:function(t,i){"use strict";var e=this&&this.T||function(t){var i="function"==typeof Symbol&&Symbol.iterator,e=i&&t[i],s=0;if(e)return e.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&s>=t.length&&(t=void 0),{value:t&&t[s++],done:!t}}};throw new TypeError(i?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(i,"R",{value:!0});var s=function(){function t(){}return t.prototype.clone=function(){var t=this,i=new this.constructor;return Object.keys(this).forEach((function(e){var s=t.deepClone(t[e]);void 0!==s&&(i[e]=s)})),i},t.prototype.deepClone=function(t){var i,s,n=typeof t;if("number"===n||"string"===n||"boolean"===n)return t;if(null!==t&&"object"===n){if("function"==typeof t.clone)return t.clone();if(t instanceof Date)return new Date(t.getTime());if(void 0!==t[Symbol.iterator]){var r=[];try{for(var h=e(t),o=h.next();!o.done;o=h.next()){var a=o.value;r.push(this.deepClone(a))}}catch(t){i={error:t}}finally{try{o&&!o.done&&(s=h.return)&&s.call(h)}finally{if(i)throw i.error}}return t instanceof Array?r:new t.constructor(r)}var c={};for(var l in t)t.hasOwnProperty(l)&&(c[l]=this.deepClone(t[l]));return c}},t}();i.Cloneable=s},7061:function(t,i,e){"use strict";var s,n=this&&this.B||(s=function(t,i){return(s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])})(t,i)},function(t,i){function e(){this.constructor=t}s(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)}),r=this&&this.F||function(t,i,e,s){return new(e||(e=Promise))((function(n,r){function h(t){try{a(s.next(t))}catch(t){r(t)}}function o(t){try{a(s.throw(t))}catch(t){r(t)}}function a(t){var i;t.done?n(t.value):(i=t.value,i instanceof e?i:new e((function(t){t(i)}))).then(h,o)}a((s=s.apply(t,i||[])).next())}))},h=this&&this.U||function(t,i){var e,s,n,r,h={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return r={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function o(r){return function(o){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;h;)try{if(e=1,s&&(n=2&r[0]?s.return:r[0]?s.throw||((n=s.return)&&n.call(s),0):s.next)&&!(n=n.call(s,r[1])).done)return n;switch(s=0,n&&(r=[2&r[0],n.value]),r[0]){case 0:case 1:n=r;break;case 4:return h.label++,{value:r[1],done:!1};case 5:h.label++,s=r[1],r=[0];continue;case 7:r=h.ops.pop(),h.trys.pop();continue;default:if(!(n=(n=h.trys).length>0&&n[n.length-1])&&(6===r[0]||2===r[0])){h=0;continue}if(3===r[0]&&(!n||r[1]>n[0]&&r[1]0){var r=e;i.CACHE.has(r)?(s.populate(i.CACHE.get(r)),s.readyPromise=Promise.resolve()):(n+=i.versionedFilename.replace("[VERSION]",r+""),s.readyPromise=s.fetchJson(n))}else i.CACHE.has(i.LATEST_CACHE_KEY)?(s.populate(i.CACHE.get(i.LATEST_CACHE_KEY)),s.readyPromise=Promise.resolve()):(s.isLatest=!0,s.readyPromise=s.fetchJson(n+i.latestFilename))}return s}return n(i,t),Object.defineProperty(i,"baseUrl",{get:function(){return this.baseUrl_},set:function(t){if(/^https?:\/\/vendorlist\.consensu\.org\//.test(t))throw new a.GVLError("Invalid baseUrl! You may not pull directly from vendorlist.consensu.org and must provide your own cache");t.length>0&&"/"!==t[t.length-1]&&(t+="/"),this.baseUrl_=t},enumerable:!0,configurable:!0}),i.emptyLanguageCache=function(t){var e=!1;return void 0===t&&i.LANGUAGE_CACHE.size>0?(i.LANGUAGE_CACHE=new Map,e=!0):"string"==typeof t&&this.consentLanguages.has(t.toUpperCase())&&(i.LANGUAGE_CACHE.delete(t.toUpperCase()),e=!0),e},i.emptyCache=function(t){var e=!1;return Number.isInteger(t)&&t>=0?(i.CACHE.delete(t),e=!0):void 0===t&&(i.CACHE=new Map,e=!0),e},i.prototype.cacheLanguage=function(){i.LANGUAGE_CACHE.has(this.lang_)||i.LANGUAGE_CACHE.set(this.lang_,{purposes:this.purposes,specialPurposes:this.specialPurposes,features:this.features,specialFeatures:this.specialFeatures,stacks:this.stacks})},i.prototype.fetchJson=function(t){return r(this,void 0,void 0,(function(){var i,e;return h(this,(function(s){switch(s.label){case 0:return s.trys.push([0,2,,3]),i=this.populate,[4,c.Json.fetch(t)];case 1:return i.apply(this,[s.sent()]),[3,3];case 2:throw e=s.sent(),new a.GVLError(e.message);case 3:return[2]}}))}))},i.prototype.getJson=function(){return JSON.parse(JSON.stringify({gvlSpecificationVersion:this.gvlSpecificationVersion,vendorListVersion:this.vendorListVersion,tcfPolicyVersion:this.tcfPolicyVersion,lastUpdated:this.lastUpdated,purposes:this.purposes,specialPurposes:this.specialPurposes,features:this.features,specialFeatures:this.specialFeatures,stacks:this.stacks,vendors:this.fullVendorList}))},i.prototype.changeLanguage=function(t){return r(this,void 0,void 0,(function(){var e,s,n,r,o;return h(this,(function(h){switch(h.label){case 0:if(e=t.toUpperCase(),!i.consentLanguages.has(e))return[3,6];if(e===this.lang_)return[3,5];if(this.lang_=e,!i.LANGUAGE_CACHE.has(e))return[3,1];for(n in s=i.LANGUAGE_CACHE.get(e))s.hasOwnProperty(n)&&(this[n]=s[n]);return[3,5];case 1:r=i.baseUrl+i.languageFilename.replace("[LANG]",t),h.label=2;case 2:return h.trys.push([2,4,,5]),[4,this.fetchJson(r)];case 3:return h.sent(),this.cacheLanguage(),[3,5];case 4:throw o=h.sent(),new a.GVLError("unable to load language: "+o.message);case 5:return[3,7];case 6:throw new a.GVLError("unsupported language "+t);case 7:return[2]}}))}))},Object.defineProperty(i.prototype,"language",{get:function(){return this.lang_},enumerable:!0,configurable:!0}),i.prototype.isVendorList=function(t){return void 0!==t&&void 0!==t.vendors},i.prototype.populate=function(t){this.purposes=t.purposes,this.specialPurposes=t.specialPurposes,this.features=t.features,this.specialFeatures=t.specialFeatures,this.stacks=t.stacks,this.isVendorList(t)&&(this.gvlSpecificationVersion=t.gvlSpecificationVersion,this.tcfPolicyVersion=t.tcfPolicyVersion,this.vendorListVersion=t.vendorListVersion,this.lastUpdated=t.lastUpdated,"string"==typeof this.lastUpdated&&(this.lastUpdated=new Date(this.lastUpdated)),this.vendors_=t.vendors,this.fullVendorList=t.vendors,this.mapVendors(),this.isReady_=!0,this.isLatest&&i.CACHE.set(i.LATEST_CACHE_KEY,this.getJson()),i.CACHE.has(this.vendorListVersion)||i.CACHE.set(this.vendorListVersion,this.getJson())),this.cacheLanguage()},i.prototype.mapVendors=function(t){var i=this;this.byPurposeVendorMap={},this.bySpecialPurposeVendorMap={},this.byFeatureVendorMap={},this.bySpecialFeatureVendorMap={},Object.keys(this.purposes).forEach((function(t){i.byPurposeVendorMap[t]={legInt:new Set,consent:new Set,flexible:new Set}})),Object.keys(this.specialPurposes).forEach((function(t){i.bySpecialPurposeVendorMap[t]=new Set})),Object.keys(this.features).forEach((function(t){i.byFeatureVendorMap[t]=new Set})),Object.keys(this.specialFeatures).forEach((function(t){i.bySpecialFeatureVendorMap[t]=new Set})),Array.isArray(t)||(t=Object.keys(this.fullVendorList).map((function(t){return+t}))),this.vendorIds=new Set(t),this.vendors_=t.reduce((function(t,e){var s=i.vendors_[""+e];return s&&void 0===s.deletedDate&&(s.purposes.forEach((function(t){i.byPurposeVendorMap[t+""].consent.add(e)})),s.specialPurposes.forEach((function(t){i.bySpecialPurposeVendorMap[t+""].add(e)})),s.legIntPurposes.forEach((function(t){i.byPurposeVendorMap[t+""].legInt.add(e)})),s.flexiblePurposes&&s.flexiblePurposes.forEach((function(t){i.byPurposeVendorMap[t+""].flexible.add(e)})),s.features.forEach((function(t){i.byFeatureVendorMap[t+""].add(e)})),s.specialFeatures.forEach((function(t){i.bySpecialFeatureVendorMap[t+""].add(e)})),t[e]=s),t}),{})},i.prototype.getFilteredVendors=function(t,i,e,s){var n=this,r=t.charAt(0).toUpperCase()+t.slice(1),h={};return("purpose"===t&&e?this["by"+r+"VendorMap"][i+""][e]:this["by"+(s?"Special":"")+r+"VendorMap"][i+""]).forEach((function(t){h[t+""]=n.vendors[t+""]})),h},i.prototype.getVendorsWithConsentPurpose=function(t){return this.getFilteredVendors("purpose",t,"consent")},i.prototype.getVendorsWithLegIntPurpose=function(t){return this.getFilteredVendors("purpose",t,"legInt")},i.prototype.getVendorsWithFlexiblePurpose=function(t){return this.getFilteredVendors("purpose",t,"flexible")},i.prototype.getVendorsWithSpecialPurpose=function(t){return this.getFilteredVendors("purpose",t,void 0,!0)},i.prototype.getVendorsWithFeature=function(t){return this.getFilteredVendors("feature",t)},i.prototype.getVendorsWithSpecialFeature=function(t){return this.getFilteredVendors("feature",t,void 0,!0)},Object.defineProperty(i.prototype,"vendors",{get:function(){return this.vendors_},enumerable:!0,configurable:!0}),i.prototype.narrowVendorsTo=function(t){this.mapVendors(t)},Object.defineProperty(i.prototype,"isReady",{get:function(){return this.isReady_},enumerable:!0,configurable:!0}),i.prototype.clone=function(){var t=new i(this.getJson());return this.lang_!==i.DEFAULT_LANGUAGE&&t.changeLanguage(this.lang_),t},i.isInstanceOf=function(t){return"object"==typeof t&&"function"==typeof t.narrowVendorsTo},i.LANGUAGE_CACHE=new Map,i.CACHE=new Map,i.LATEST_CACHE_KEY=0,i.DEFAULT_LANGUAGE="EN",i.consentLanguages=new l.ConsentLanguages,i.latestFilename="vendor-list.json",i.versionedFilename="archives/vendor-list-v[VERSION].json",i.languageFilename="purposes-[LANG].json",i}(o.Cloneable);i.GVL=u},6056:(t,i)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var e=function(){function t(){}return t.absCall=function(t,i,e,s){return new Promise((function(n,r){var h=new XMLHttpRequest;h.withCredentials=e,h.addEventListener("load",(function(){if(h.readyState==XMLHttpRequest.DONE)if(h.status>=200&&h.status<300){var t=h.response;if("string"==typeof t)try{t=JSON.parse(t)}catch(t){}n(t)}else r(new Error("HTTP Status: "+h.status+" response type: "+h.responseType))})),h.addEventListener("error",(function(){r(new Error("error"))})),h.addEventListener("abort",(function(){r(new Error("aborted"))})),null===i?h.open("GET",t,!0):h.open("POST",t,!0),h.responseType="json",h.timeout=s,h.ontimeout=function(){r(new Error("Timeout "+s+"ms "+t))},h.send(i)}))},t.post=function(t,i,e,s){return void 0===e&&(e=!1),void 0===s&&(s=0),this.absCall(t,JSON.stringify(i),e,s)},t.fetch=function(t,i,e){return void 0===i&&(i=!1),void 0===e&&(e=0),this.absCall(t,null,i,e)},t}();i.Json=e},6382:function(t,i,e){"use strict";var s,n=this&&this.B||(s=function(t,i){return(s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])})(t,i)},function(t,i){function e(){this.constructor=t}s(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)});Object.defineProperty(i,"R",{value:!0});var r=e(5186),h=e(5458),o=e(7061),a=e(250),c=function(t){function i(i){var e=t.call(this)||this;return e.isServiceSpecific_=!1,e.supportOOB_=!0,e.useNonStandardStacks_=!1,e.purposeOneTreatment_=!1,e.publisherCountryCode_="AA",e.version_=2,e.consentScreen_=0,e.policyVersion_=2,e.consentLanguage_="EN",e.cmpId_=0,e.cmpVersion_=0,e.vendorListVersion_=0,e.numCustomPurposes_=0,e.specialFeatureOptins=new a.Vector,e.purposeConsents=new a.Vector,e.purposeLegitimateInterests=new a.Vector,e.publisherConsents=new a.Vector,e.publisherLegitimateInterests=new a.Vector,e.publisherCustomConsents=new a.Vector,e.publisherCustomLegitimateInterests=new a.Vector,e.vendorConsents=new a.Vector,e.vendorLegitimateInterests=new a.Vector,e.vendorsDisclosed=new a.Vector,e.vendorsAllowed=new a.Vector,e.publisherRestrictions=new a.PurposeRestrictionVector,i&&(e.gvl=i),e.created=new Date,e.updated(),e}return n(i,t),Object.defineProperty(i.prototype,"gvl",{get:function(){return this.gvl_},set:function(t){o.GVL.isInstanceOf(t)||(t=new o.GVL(t)),this.gvl_=t,this.publisherRestrictions.gvl=t},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"cmpId",{get:function(){return this.cmpId_},set:function(t){if(!(Number.isInteger(+t)&&t>1))throw new h.TCModelError("cmpId",t);this.cmpId_=+t},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"cmpVersion",{get:function(){return this.cmpVersion_},set:function(t){if(!(Number.isInteger(+t)&&t>-1))throw new h.TCModelError("cmpVersion",t);this.cmpVersion_=+t},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"consentScreen",{get:function(){return this.consentScreen_},set:function(t){if(!(Number.isInteger(+t)&&t>-1))throw new h.TCModelError("consentScreen",t);this.consentScreen_=+t},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"consentLanguage",{get:function(){return this.consentLanguage_},set:function(t){this.consentLanguage_=t},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"publisherCountryCode",{get:function(){return this.publisherCountryCode_},set:function(t){if(!/^([A-z]){2}$/.test(t))throw new h.TCModelError("publisherCountryCode",t);this.publisherCountryCode_=t.toUpperCase()},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"vendorListVersion",{get:function(){return this.gvl?this.gvl.vendorListVersion:this.vendorListVersion_},set:function(t){if((t=+t>>0)<0)throw new h.TCModelError("vendorListVersion",t);this.vendorListVersion_=t},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"policyVersion",{get:function(){return this.gvl?this.gvl.tcfPolicyVersion:this.policyVersion_},set:function(t){if(this.policyVersion_=parseInt(t,10),this.policyVersion_<0)throw new h.TCModelError("policyVersion",t)},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"version",{get:function(){return this.version_},set:function(t){this.version_=parseInt(t,10)},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"isServiceSpecific",{get:function(){return this.isServiceSpecific_},set:function(t){this.isServiceSpecific_=t},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"useNonStandardStacks",{get:function(){return this.useNonStandardStacks_},set:function(t){this.useNonStandardStacks_=t},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"supportOOB",{get:function(){return this.supportOOB_},set:function(t){this.supportOOB_=t},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"purposeOneTreatment",{get:function(){return this.purposeOneTreatment_},set:function(t){this.purposeOneTreatment_=t},enumerable:!0,configurable:!0}),i.prototype.setAllVendorConsents=function(){this.vendorConsents.set(this.gvl.vendors)},i.prototype.unsetAllVendorConsents=function(){this.vendorConsents.empty()},i.prototype.setAllVendorsDisclosed=function(){this.vendorsDisclosed.set(this.gvl.vendors)},i.prototype.unsetAllVendorsDisclosed=function(){this.vendorsDisclosed.empty()},i.prototype.setAllVendorsAllowed=function(){this.vendorsAllowed.set(this.gvl.vendors)},i.prototype.unsetAllVendorsAllowed=function(){this.vendorsAllowed.empty()},i.prototype.setAllVendorLegitimateInterests=function(){this.vendorLegitimateInterests.set(this.gvl.vendors)},i.prototype.unsetAllVendorLegitimateInterests=function(){this.vendorLegitimateInterests.empty()},i.prototype.setAllPurposeConsents=function(){this.purposeConsents.set(this.gvl.purposes)},i.prototype.unsetAllPurposeConsents=function(){this.purposeConsents.empty()},i.prototype.setAllPurposeLegitimateInterests=function(){this.purposeLegitimateInterests.set(this.gvl.purposes)},i.prototype.unsetAllPurposeLegitimateInterests=function(){this.purposeLegitimateInterests.empty()},i.prototype.setAllSpecialFeatureOptins=function(){this.specialFeatureOptins.set(this.gvl.specialFeatures)},i.prototype.unsetAllSpecialFeatureOptins=function(){this.specialFeatureOptins.empty()},i.prototype.setAll=function(){this.setAllVendorConsents(),this.setAllPurposeLegitimateInterests(),this.setAllSpecialFeatureOptins(),this.setAllPurposeConsents(),this.setAllVendorLegitimateInterests()},i.prototype.unsetAll=function(){this.unsetAllVendorConsents(),this.unsetAllPurposeLegitimateInterests(),this.unsetAllSpecialFeatureOptins(),this.unsetAllPurposeConsents(),this.unsetAllVendorLegitimateInterests()},Object.defineProperty(i.prototype,"numCustomPurposes",{get:function(){var t=this.numCustomPurposes_;if("object"==typeof this.customPurposes){var i=Object.keys(this.customPurposes).sort((function(t,i){return+t-+i}));t=parseInt(i.pop(),10)}return t},set:function(t){if(this.numCustomPurposes_=parseInt(t,10),this.numCustomPurposes_<0)throw new h.TCModelError("numCustomPurposes",t)},enumerable:!0,configurable:!0}),i.prototype.updated=function(){this.lastUpdated=new Date},i.consentLanguages=o.GVL.consentLanguages,i}(r.Cloneable);i.TCModel=c},2381:(t,i,e)=>{"use strict";var s=e(7170),n=e(250),r=e(2082),h=e(6382),o=function(){function t(){}return t.encode=function(t,i){var e,n,r="";return t=s.SemanticPreEncoder.process(t,i),(n=Array.isArray(null===(e=i)||void 0===e?void 0:e.segments)?i.segments:new s.SegmentSequence(t,i)[""+t.version]).forEach((function(i,e){var h="";e{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(5458),n=function(){function t(){}return t.encode=function(t){if(!/^[0-1]+$/.test(t))throw new s.EncodingError("Invalid bitField");var i=t.length%this.LCM;t+=i?"0".repeat(this.LCM-i):"";for(var e="",n=0;n{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(250),n=function(){function t(){}var i,e,n,r,h,o,a,c,l,u,d,p,f,v,g,m,y,b;return i=s.Fields.cmpId,e=s.Fields.cmpVersion,n=s.Fields.consentLanguage,r=s.Fields.consentScreen,h=s.Fields.created,o=s.Fields.isServiceSpecific,a=s.Fields.lastUpdated,c=s.Fields.policyVersion,l=s.Fields.publisherCountryCode,u=s.Fields.publisherLegitimateInterests,d=s.Fields.publisherConsents,p=s.Fields.purposeConsents,f=s.Fields.purposeLegitimateInterests,v=s.Fields.purposeOneTreatment,g=s.Fields.specialFeatureOptins,m=s.Fields.useNonStandardStacks,y=s.Fields.vendorListVersion,b=s.Fields.version,t[i]=12,t[e]=12,t[n]=12,t[r]=6,t[h]=36,t[o]=1,t[a]=36,t[c]=6,t[l]=12,t[u]=24,t[d]=24,t[p]=24,t[f]=24,t[v]=1,t[g]=12,t[m]=1,t[y]=12,t[b]=6,t.anyBoolean=1,t.encodingType=1,t.maxId=16,t.numCustomPurposes=6,t.numEntries=12,t.numRestrictions=12,t.purposeId=6,t.restrictionType=2,t.segmentType=3,t.singleOrRange=1,t.vendorId=16,t}();i.BitLength=n},3858:(t,i,e)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(4479),n=e(2219),r=e(9836),h=e(8780),o=e(5458),a=e(4731),c=e(250),l=function(){function t(){}return t.encode=function(t,i){var e,h=this;try{e=this.fieldSequence[""+t.version][i]}catch(e){throw new o.EncodingError("Unable to encode version: "+t.version+", segment: "+i)}var l="";return i!==c.Segment.CORE&&(l=r.IntEncoder.encode(c.SegmentIDs.KEY_TO_ID[i],n.BitLength.segmentType)),e.forEach((function(e){var s=t[e],c=r.FieldEncoderMap[e],u=n.BitLength[e];void 0===u&&h.isPublisherCustom(e)&&(u=+t[a.Fields.numCustomPurposes]);try{l+=c.encode(s,u)}catch(t){throw new o.EncodingError("Error encoding "+i+"->"+e+": "+t.message)}})),s.Base64Url.encode(l)},t.decode=function(t,i,e){var h=this,l=s.Base64Url.decode(t),u=0;return e===c.Segment.CORE&&(i.version=r.IntEncoder.decode(l.substr(u,n.BitLength[a.Fields.version]),n.BitLength[a.Fields.version])),e!==c.Segment.CORE&&(u+=n.BitLength.segmentType),this.fieldSequence[""+i.version][e].forEach((function(t){var e=r.FieldEncoderMap[t],s=n.BitLength[t];if(void 0===s&&h.isPublisherCustom(t)&&(s=+i[a.Fields.numCustomPurposes]),0!==s){var c=l.substr(u,s);if(e===r.VendorVectorEncoder?i[t]=e.decode(c,i.version):i[t]=e.decode(c,s),Number.isInteger(s))u+=s;else{if(!Number.isInteger(i[t].bitLength))throw new o.DecodingError(t);u+=i[t].bitLength}}})),i},t.isPublisherCustom=function(t){return 0===t.indexOf("publisherCustom")},t.fieldSequence=new h.FieldSequence,t}();i.SegmentEncoder=l},818:(t,i,e)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(5458),n=e(250),r=function(){function t(){}return t.process=function(t,i){var e,n,r=t.gvl;if(!r)throw new s.EncodingError("Unable to encode TCModel without a GVL");if(!r.isReady)throw new s.EncodingError("Unable to encode TCModel tcModel.gvl.readyPromise is not resolved");(t=t.clone()).consentLanguage=r.language.toUpperCase(),(null===(e=i)||void 0===e?void 0:e.version)>0&&(null===(n=i)||void 0===n?void 0:n.version)<=this.processor.length?t.version=i.version:t.version=this.processor.length;var h=t.version-1;if(!this.processor[h])throw new s.EncodingError("Invalid version: "+t.version);return this.processor[h](t,r)},t.processor=[function(t){return t},function(t,i){t.publisherRestrictions.gvl=i,t.purposeLegitimateInterests.unset(1);var e=new Map;return e.set("legIntPurposes",t.vendorLegitimateInterests),e.set("purposes",t.vendorConsents),e.forEach((function(e,s){e.forEach((function(r,h){if(r){var o=i.vendors[h];if(!o||o.deletedDate)e.unset(h);else if(0===o[s].length)if("legIntPurposes"===s&&0===o.purposes.length&&0===o.legIntPurposes.length&&o.specialPurposes.length>0);else if(t.isServiceSpecific)if(0===o.flexiblePurposes.length)e.unset(h);else{for(var a=t.publisherRestrictions.getRestrictions(h),c=!1,l=0,u=a.length;l{"use strict";Object.defineProperty(i,"R",{value:!0});var e=function(){function t(){}return t.encode=function(t){return+t+""},t.decode=function(t){return"1"===t},t}();i.BooleanEncoder=e},3101:(t,i,e)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(2082),n=e(5458),r=function(){function t(){}return t.encode=function(t,i){return s.IntEncoder.encode(Math.round(t.getTime()/100),i)},t.decode=function(t,i){if(i!==t.length)throw new n.DecodingError("invalid bit length");var e=new Date;return e.setTime(100*s.IntEncoder.decode(t,i)),e},t}();i.DateEncoder=r},286:(t,i,e)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(250),n=e(632),r=e(3101),h=e(8937),o=e(2082),a=e(835),c=e(5889),l=e(3283),u=function(){function t(){}var i,e,u,d,p,f,v,g,m,y,b,w,x,S,_,A,P,k,I,T,C,M,E,L,O,R;return i=s.Fields.version,e=s.Fields.created,u=s.Fields.lastUpdated,d=s.Fields.cmpId,p=s.Fields.cmpVersion,f=s.Fields.consentScreen,v=s.Fields.consentLanguage,g=s.Fields.vendorListVersion,m=s.Fields.policyVersion,y=s.Fields.isServiceSpecific,b=s.Fields.useNonStandardStacks,w=s.Fields.specialFeatureOptins,x=s.Fields.purposeConsents,S=s.Fields.purposeLegitimateInterests,_=s.Fields.purposeOneTreatment,A=s.Fields.publisherCountryCode,P=s.Fields.vendorConsents,k=s.Fields.vendorLegitimateInterests,I=s.Fields.publisherRestrictions,T=s.Fields.vendorsDisclosed,C=s.Fields.vendorsAllowed,M=s.Fields.publisherConsents,E=s.Fields.publisherLegitimateInterests,L=s.Fields.numCustomPurposes,O=s.Fields.publisherCustomConsents,R=s.Fields.publisherCustomLegitimateInterests,t[i]=o.IntEncoder,t[e]=r.DateEncoder,t[u]=r.DateEncoder,t[d]=o.IntEncoder,t[p]=o.IntEncoder,t[f]=o.IntEncoder,t[v]=a.LangEncoder,t[g]=o.IntEncoder,t[m]=o.IntEncoder,t[y]=n.BooleanEncoder,t[b]=n.BooleanEncoder,t[w]=h.FixedVectorEncoder,t[x]=h.FixedVectorEncoder,t[S]=h.FixedVectorEncoder,t[_]=n.BooleanEncoder,t[A]=a.LangEncoder,t[P]=l.VendorVectorEncoder,t[k]=l.VendorVectorEncoder,t[I]=c.PurposeRestrictionVectorEncoder,t.segmentType=o.IntEncoder,t[T]=l.VendorVectorEncoder,t[C]=l.VendorVectorEncoder,t[M]=h.FixedVectorEncoder,t[E]=h.FixedVectorEncoder,t[L]=o.IntEncoder,t[O]=h.FixedVectorEncoder,t[R]=h.FixedVectorEncoder,t}();i.FieldEncoderMap=u},8937:(t,i,e)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(632),n=e(5458),r=e(250),h=function(){function t(){}return t.encode=function(t,i){for(var e="",n=1;n<=i;n++)e+=s.BooleanEncoder.encode(t.has(n));return e},t.decode=function(t,i){if(t.length!==i)throw new n.DecodingError("bitfield encoding length mismatch");for(var e=new r.Vector,h=1;h<=i;h++)s.BooleanEncoder.decode(t[h-1])&&e.set(h);return e.bitLength=t.length,e},t}();i.FixedVectorEncoder=h},2082:(t,i,e)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(5458),n=function(){function t(){}return t.encode=function(t,i){var e;if("string"==typeof t&&(t=parseInt(t,10)),(e=t.toString(2)).length>i||t<0)throw new s.EncodingError(t+" too large to encode into "+i);return e.length{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(2082),n=e(5458),r=function(){function t(){}return t.encode=function(t,i){var e=(t=t.toUpperCase()).charCodeAt(0)-65,r=t.charCodeAt(1)-65;if(e<0||e>25||r<0||r>25)throw new n.EncodingError("invalid language code: "+t);if(i%2==1)throw new n.EncodingError("numBits must be even, "+i+" is not valid");return i/=2,s.IntEncoder.encode(e,i)+s.IntEncoder.encode(r,i)},t.decode=function(t,i){if(i!==t.length||t.length%2)throw new n.DecodingError("invalid bit length for language");var e=t.length/2,r=s.IntEncoder.decode(t.slice(0,e),e)+65,h=s.IntEncoder.decode(t.slice(e),e)+65;return String.fromCharCode(r)+String.fromCharCode(h)},t}();i.LangEncoder=r},5889:(t,i,e)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(2219),n=e(632),r=e(5458),h=e(2082),o=e(250),a=function(){function t(){}return t.encode=function(t){var i=h.IntEncoder.encode(t.numRestrictions,s.BitLength.numRestrictions);return t.isEmpty()||t.getRestrictions().forEach((function(e){i+=h.IntEncoder.encode(e.purposeId,s.BitLength.purposeId),i+=h.IntEncoder.encode(e.restrictionType,s.BitLength.restrictionType);for(var r=t.getVendors(e),o=r.length,a=0,c=0,l="",u=function(i){var e=r[i];0===c&&(a++,c=e);var u=r[o-1],d=t.gvl.vendorIds;if(i===o-1||r[i+1]>function(t){for(;++t<=u&&!d.has(t););return t}(e)){var p=!(e===c);l+=n.BooleanEncoder.encode(p),l+=h.IntEncoder.encode(c,s.BitLength.vendorId),p&&(l+=h.IntEncoder.encode(e,s.BitLength.vendorId)),c=0}},d=0;d{"use strict";var e;Object.defineProperty(i,"R",{value:!0}),(e=i.VectorEncodingType||(i.VectorEncodingType={}))[e.FIELD=0]="FIELD",e[e.RANGE=1]="RANGE"},3283:(t,i,e)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(250),n=e(7170),r=e(2082),h=e(632),o=e(8937),a=e(1938),c=e(5458),l=function(){function t(){}return t.encode=function(t){var i,e=[],s=[],o=r.IntEncoder.encode(t.maxId,n.BitLength.maxId),c="",l=n.BitLength.maxId+n.BitLength.encodingType,u=l+t.maxId,d=2*n.BitLength.vendorId+n.BitLength.singleOrRange+n.BitLength.numEntries,p=l+n.BitLength.numEntries;return t.forEach((function(r,o){c+=h.BooleanEncoder.encode(r),(i=t.maxId>d&&p{"use strict";function s(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}Object.defineProperty(i,"R",{value:!0}),s(e(632)),s(e(3101)),s(e(286)),s(e(8937)),s(e(2082)),s(e(835)),s(e(5889)),s(e(1938)),s(e(3283))},7170:(t,i,e)=>{"use strict";function s(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}Object.defineProperty(i,"R",{value:!0}),s(e(4479)),s(e(2219)),s(e(3858)),s(e(818)),s(e(9836)),s(e(8780))},4014:(t,i,e)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(250);i.FieldSequence=function(){var t,i;this[1]=((t={})[s.Segment.CORE]=[s.Fields.version,s.Fields.created,s.Fields.lastUpdated,s.Fields.cmpId,s.Fields.cmpVersion,s.Fields.consentScreen,s.Fields.consentLanguage,s.Fields.vendorListVersion,s.Fields.purposeConsents,s.Fields.vendorConsents],t),this[2]=((i={})[s.Segment.CORE]=[s.Fields.version,s.Fields.created,s.Fields.lastUpdated,s.Fields.cmpId,s.Fields.cmpVersion,s.Fields.consentScreen,s.Fields.consentLanguage,s.Fields.vendorListVersion,s.Fields.policyVersion,s.Fields.isServiceSpecific,s.Fields.useNonStandardStacks,s.Fields.specialFeatureOptins,s.Fields.purposeConsents,s.Fields.purposeLegitimateInterests,s.Fields.purposeOneTreatment,s.Fields.publisherCountryCode,s.Fields.vendorConsents,s.Fields.vendorLegitimateInterests,s.Fields.publisherRestrictions],i[s.Segment.PUBLISHER_TC]=[s.Fields.publisherConsents,s.Fields.publisherLegitimateInterests,s.Fields.numCustomPurposes,s.Fields.publisherCustomConsents,s.Fields.publisherCustomLegitimateInterests],i[s.Segment.VENDORS_ALLOWED]=[s.Fields.vendorsAllowed],i[s.Segment.VENDORS_DISCLOSED]=[s.Fields.vendorsDisclosed],i)}},1333:(t,i,e)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var s=e(250);i.SegmentSequence=function(t,i){if(this[1]=[s.Segment.CORE],this[2]=[s.Segment.CORE],2===t.version)if(t.isServiceSpecific)this[2].push(s.Segment.PUBLISHER_TC);else{var e=!(!i||!i.isForVendors);e&&!0!==t[s.Fields.supportOOB]||this[2].push(s.Segment.VENDORS_DISCLOSED),e&&(t[s.Fields.supportOOB]&&t[s.Fields.vendorsAllowed].size>0&&this[2].push(s.Segment.VENDORS_ALLOWED),this[2].push(s.Segment.PUBLISHER_TC))}}},8780:(t,i,e)=>{"use strict";function s(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}Object.defineProperty(i,"R",{value:!0}),s(e(4014)),s(e(1333))},1265:function(t,i){"use strict";var e,s=this&&this.B||(e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])})(t,i)},function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)});Object.defineProperty(i,"R",{value:!0});var n=function(t){function i(i){var e=t.call(this,i)||this;return e.name="DecodingError",e}return s(i,t),i}(Error);i.DecodingError=n},5181:function(t,i){"use strict";var e,s=this&&this.B||(e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])})(t,i)},function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)});Object.defineProperty(i,"R",{value:!0});var n=function(t){function i(i){var e=t.call(this,i)||this;return e.name="EncodingError",e}return s(i,t),i}(Error);i.EncodingError=n},9565:function(t,i){"use strict";var e,s=this&&this.B||(e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])})(t,i)},function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)});Object.defineProperty(i,"R",{value:!0});var n=function(t){function i(i){var e=t.call(this,i)||this;return e.name="GVLError",e}return s(i,t),i}(Error);i.GVLError=n},9995:function(t,i){"use strict";var e,s=this&&this.B||(e=function(t,i){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])})(t,i)},function(t,i){function s(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(s.prototype=i.prototype,new s)});Object.defineProperty(i,"R",{value:!0});var n=function(t){function i(i,e,s){void 0===s&&(s="");var n=t.call(this,"invalid value "+e+" passed for "+i+" "+s)||this;return n.name="TCModelError",n}return s(i,t),i}(Error);i.TCModelError=n},5458:(t,i,e)=>{"use strict";function s(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}Object.defineProperty(i,"R",{value:!0}),s(e(1265)),s(e(5181)),s(e(9565)),s(e(9995))},5995:function(t,i,e){"use strict";var s,n=this&&this.B||(s=function(t,i){return(s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])})(t,i)},function(t,i){function e(){this.constructor=t}s(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)});Object.defineProperty(i,"R",{value:!0});var r=function(t){function i(){var i=null!==t&&t.apply(this,arguments)||this;return i.root=null,i}return n(i,t),i.prototype.isEmpty=function(){return!this.root},i.prototype.add=function(t){var i,e={value:t,left:null,right:null};if(this.isEmpty())this.root=e;else for(i=this.root;;)if(ti.value))break;if(null===i.right){i.right=e;break}i=i.right}},i.prototype.get=function(){for(var t=[],i=this.root;i;)if(i.left){for(var e=i.left;e.right&&e.right!=i;)e=e.right;e.right==i?(e.right=null,t.push(i.value),i=i.right):(e.right=i,i=i.left)}else t.push(i.value),i=i.right;return t},i.prototype.contains=function(t){for(var i=!1,e=this.root;e;){if(e.value===t){i=!0;break}t>e.value?e=e.right:ti.value)e=i,i=i.right,s="right";else{if(i.left||i.right)if(i.left)if(i.right){var n=this.min(i.right);this.remove(n,i.right),i.value=n}else e?e[s]=i.left:this.root=i.left;else e?e[s]=i.right:this.root=i.right;else e?e[s]=null:this.root=null;i=null}},i}(e(5186).Cloneable);i.BinarySearchTree=r},5301:(t,i)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var e=function(){function t(){}return t.prototype.has=function(i){return t.langSet.has(i)},t.prototype.forEach=function(i){t.langSet.forEach(i)},Object.defineProperty(t.prototype,"size",{get:function(){return t.langSet.size},enumerable:!0,configurable:!0}),t.langSet=new Set(["BG","CA","CS","DA","DE","EL","EN","ES","ET","FI","FR","HR","HU","IT","JA","LT","LV","MT","NL","NO","PL","PT","RO","RU","SK","SL","SV","TR","ZH"]),t}();i.ConsentLanguages=e},4243:(t,i)=>{"use strict";var e;Object.defineProperty(i,"R",{value:!0}),(e=i.DeviceDisclosureStorageAccessType||(i.DeviceDisclosureStorageAccessType={})).COOKIE="cookie",e.WEB="web",e.APP="app"},4731:(t,i)=>{"use strict";Object.defineProperty(i,"R",{value:!0});var e=function(){function t(){}return t.cmpId="cmpId",t.cmpVersion="cmpVersion",t.consentLanguage="consentLanguage",t.consentScreen="consentScreen",t.created="created",t.supportOOB="supportOOB",t.isServiceSpecific="isServiceSpecific",t.lastUpdated="lastUpdated",t.numCustomPurposes="numCustomPurposes",t.policyVersion="policyVersion",t.publisherCountryCode="publisherCountryCode",t.publisherCustomConsents="publisherCustomConsents",t.publisherCustomLegitimateInterests="publisherCustomLegitimateInterests",t.publisherLegitimateInterests="publisherLegitimateInterests",t.publisherConsents="publisherConsents",t.publisherRestrictions="publisherRestrictions",t.purposeConsents="purposeConsents",t.purposeLegitimateInterests="purposeLegitimateInterests",t.purposeOneTreatment="purposeOneTreatment",t.specialFeatureOptins="specialFeatureOptins",t.useNonStandardStacks="useNonStandardStacks",t.vendorConsents="vendorConsents",t.vendorLegitimateInterests="vendorLegitimateInterests",t.vendorListVersion="vendorListVersion",t.vendorsAllowed="vendorsAllowed",t.vendorsDisclosed="vendorsDisclosed",t.version="version",t}();i.Fields=e},4649:function(t,i,e){"use strict";var s,n=this&&this.B||(s=function(t,i){return(s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])})(t,i)},function(t,i){function e(){this.constructor=t}s(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)});Object.defineProperty(i,"R",{value:!0});var r=e(5186),h=e(5458),o=e(2473),a=function(t){function i(i,e){var s=t.call(this)||this;return void 0!==i&&(s.purposeId=i),void 0!==e&&(s.restrictionType=e),s}return n(i,t),i.unHash=function(t){var e=t.split(this.hashSeparator),s=new i;if(2!==e.length)throw new h.TCModelError("hash",t);return s.purposeId=parseInt(e[0],10),s.restrictionType=parseInt(e[1],10),s},Object.defineProperty(i.prototype,"hash",{get:function(){if(!this.isValid())throw new Error("cannot hash invalid PurposeRestriction");return""+this.purposeId+i.hashSeparator+this.restrictionType},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"purposeId",{get:function(){return this.purposeId_},set:function(t){this.purposeId_=t},enumerable:!0,configurable:!0}),i.prototype.isValid=function(){return Number.isInteger(this.purposeId)&&this.purposeId>0&&(this.restrictionType===o.RestrictionType.NOT_ALLOWED||this.restrictionType===o.RestrictionType.REQUIRE_CONSENT||this.restrictionType===o.RestrictionType.REQUIRE_LI)},i.prototype.isSameAs=function(t){return this.purposeId===t.purposeId&&this.restrictionType===t.restrictionType},i.hashSeparator="-",i}(r.Cloneable);i.PurposeRestriction=a},7096:function(t,i,e){"use strict";var s,n=this&&this.B||(s=function(t,i){return(s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])})(t,i)},function(t,i){function e(){this.constructor=t}s(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)}),r=this&&this.T||function(t){var i="function"==typeof Symbol&&Symbol.iterator,e=i&&t[i],s=0;if(e)return e.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&s>=t.length&&(t=void 0),{value:t&&t[s++],done:!t}}};throw new TypeError(i?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(i,"R",{value:!0});var h=e(4649),o=e(5995),a=e(2473),c=function(t){function i(){var i=null!==t&&t.apply(this,arguments)||this;return i.bitLength=0,i.map=new Map,i}return n(i,t),i.prototype.has=function(t){return this.map.has(t)},i.prototype.isOkToHave=function(t,i,e){var s,n=!0;if(null===(s=this.gvl)||void 0===s?void 0:s.vendors){var r=this.gvl.vendors[e];if(r)if(t===a.RestrictionType.NOT_ALLOWED)n=r.legIntPurposes.includes(i)||r.purposes.includes(i);else if(r.flexiblePurposes.length)switch(t){case a.RestrictionType.REQUIRE_CONSENT:n=r.flexiblePurposes.includes(i)&&r.legIntPurposes.includes(i);break;case a.RestrictionType.REQUIRE_LI:n=r.flexiblePurposes.includes(i)&&r.purposes.includes(i)}else n=!1;else n=!1}return n},i.prototype.add=function(t,i){if(this.isOkToHave(i.restrictionType,i.purposeId,t)){var e=i.hash;this.has(e)||(this.map.set(e,new o.BinarySearchTree),this.bitLength=0),this.map.get(e).add(t)}},i.prototype.restrictPurposeToLegalBasis=function(t){for(var i=this.gvl.vendorIds,e=t.hash,s=function(){var t,e,s;try{for(var n=r(i),h=n.next();!h.done;h=n.next())s=h.value}catch(i){t={error:i}}finally{try{h&&!h.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}return s}(),n=1;n<=s;n++)this.has(e)||(this.map.set(e,new o.BinarySearchTree),this.bitLength=0),this.map.get(e).add(n)},i.prototype.getVendors=function(t){var i=[];if(t){var e=t.hash;this.has(e)&&(i=this.map.get(e).get())}else{var s=new Set;this.map.forEach((function(t){t.get().forEach((function(t){s.add(t)}))})),i=Array.from(s)}return i},i.prototype.getRestrictionType=function(t,i){var e;return this.getRestrictions(t).forEach((function(t){t.purposeId===i&&(void 0===e||e>t.restrictionType)&&(e=t.restrictionType)})),e},i.prototype.vendorHasRestriction=function(t,i){for(var e=!1,s=this.getRestrictions(t),n=0;n{"use strict";var e;Object.defineProperty(i,"R",{value:!0}),(e=i.RestrictionType||(i.RestrictionType={}))[e.NOT_ALLOWED=0]="NOT_ALLOWED",e[e.REQUIRE_CONSENT=1]="REQUIRE_CONSENT",e[e.REQUIRE_LI=2]="REQUIRE_LI"},4858:(t,i)=>{"use strict";var e;Object.defineProperty(i,"R",{value:!0}),(e=i.Segment||(i.Segment={})).CORE="core",e.VENDORS_DISCLOSED="vendorsDisclosed",e.VENDORS_ALLOWED="vendorsAllowed",e.PUBLISHER_TC="publisherTC"},6130:(t,i,e)=>{"use strict";var s;Object.defineProperty(i,"R",{value:!0});var n=e(4858),r=function(){function t(){}return t.ID_TO_KEY=[n.Segment.CORE,n.Segment.VENDORS_DISCLOSED,n.Segment.VENDORS_ALLOWED,n.Segment.PUBLISHER_TC],t.KEY_TO_ID=((s={})[n.Segment.CORE]=0,s[n.Segment.VENDORS_DISCLOSED]=1,s[n.Segment.VENDORS_ALLOWED]=2,s[n.Segment.PUBLISHER_TC]=3,s),t}();i.SegmentIDs=r},6315:function(t,i,e){"use strict";var s,n=this&&this.B||(s=function(t,i){return(s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])})(t,i)},function(t,i){function e(){this.constructor=t}s(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)}),r=this&&this.U||function(t,i){var e,s,n,r,h={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return r={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function o(r){return function(o){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;h;)try{if(e=1,s&&(n=2&r[0]?s.return:r[0]?s.throw||((n=s.return)&&n.call(s),0):s.next)&&!(n=n.call(s,r[1])).done)return n;switch(s=0,n&&(r=[2&r[0],n.value]),r[0]){case 0:case 1:n=r;break;case 4:return h.label++,{value:r[1],done:!1};case 5:h.label++,s=r[1],r=[0];continue;case 7:r=h.ops.pop(),h.trys.pop();continue;default:if(!(n=(n=h.trys).length>0&&n[n.length-1])&&(6===r[0]||2===r[0])){h=0;continue}if(3===r[0]&&(!n||r[1]>n[0]&&r[1]0},i.prototype.isSet=function(t){var i=!1;return t instanceof Set&&(i=Array.from(t).every(this.isValidNumber)),i},i.prototype.set=function(t){var i=this;if(Array.isArray(t))t.forEach((function(t){return i.set(t)}));else if(this.isSet(t))this.set(Array.from(t));else if(this.isIntMap(t))this.set(Object.keys(t).map((function(t){return+t})));else{if(!this.isValidNumber(t))throw new o.TCModelError("set()",t,"must be positive integer array, positive integer, Set, or IntMap");this.set_.add(t),this.maxId_=Math.max(this.maxId,t),this.bitLength=0}},i.prototype.empty=function(){this.set_=new Set},i.prototype.forEach=function(t){for(var i=1;i<=this.maxId;i++)t(this.has(i),i)},Object.defineProperty(i.prototype,"size",{get:function(){return this.set_.size},enumerable:!0,configurable:!0}),i.prototype.setAll=function(t){this.set(t)},i}(h.Cloneable);i.Vector=a},250:(t,i,e)=>{"use strict";function s(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}Object.defineProperty(i,"R",{value:!0}),s(e(5995)),s(e(5301)),s(e(4731)),s(e(4649)),s(e(7096)),s(e(4243)),s(e(2473)),s(e(4858)),s(e(6130)),s(e(6315))},4537:t=>{"use strict";t.exports=function(t,i){var e=new Array(arguments.length-1),s=0,n=2,r=!0;for(;n{"use strict";var e=i;e.length=function(t){var i=t.length;if(!i)return 0;for(var e=0;--i%4>1&&"="===t.charAt(i);)++e;return Math.ceil(3*t.length)/4-e};for(var s=new Array(64),n=new Array(123),r=0;r<64;)n[s[r]=r<26?r+65:r<52?r+71:r<62?r-4:r-59|43]=r++;e.encode=function(t,i,e){for(var n,r=null,h=[],o=0,a=0;i>2],n=(3&c)<<4,a=1;break;case 1:h[o++]=s[n|c>>4],n=(15&c)<<2,a=2;break;case 2:h[o++]=s[n|c>>6],h[o++]=s[63&c],a=0}o>8191&&((r||(r=[])).push(String.fromCharCode.apply(String,h)),o=0)}return a&&(h[o++]=s[n],h[o++]=61,1===a&&(h[o++]=61)),r?(o&&r.push(String.fromCharCode.apply(String,h.slice(0,o))),r.join("")):String.fromCharCode.apply(String,h.slice(0,o))};var h="invalid encoding";e.decode=function(t,i,e){for(var s,r=e,o=0,a=0;a1)break;if(void 0===(c=n[c]))throw Error(h);switch(o){case 0:s=c,o=1;break;case 1:i[e++]=s<<2|(48&c)>>4,s=c,o=2;break;case 2:i[e++]=(15&s)<<4|(60&c)>>2,s=c,o=3;break;case 3:i[e++]=(3&s)<<6|c,o=0}}if(1===o)throw Error(h);return e-r},e.test=function(t){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(t)}},5124:t=>{"use strict";function i(t,e){"string"==typeof t&&(e=t,t=void 0);var s=[];function n(t){if("string"!=typeof t){var e=r();if(i.verbose&&console.log("codegen: "+e),e="return "+e,t){for(var h=Object.keys(t),o=new Array(h.length+1),a=new Array(h.length),c=0;c{"use strict";function i(){this.W={}}t.exports=i,i.prototype.on=function(t,i,e){return(this.W[t]||(this.W[t]=[])).push({fn:i,ctx:e||this}),this},i.prototype.off=function(t,i){if(void 0===t)this.W={};else if(void 0===i)this.W[t]=[];else for(var e=this.W[t],s=0;s{"use strict";t.exports=r;var s=e(4537),n=e(7199)("fs");function r(t,i,e){return"function"==typeof i?(e=i,i={}):i||(i={}),e?!i.xhr&&n&&n.readFile?n.readFile(t,(function(s,n){return s&&"undefined"!=typeof XMLHttpRequest?r.xhr(t,i,e):s?e(s):e(null,i.binary?n:n.toString("utf8"))})):r.xhr(t,i,e):s(r,this,t,i)}r.xhr=function(t,i,e){var s=new XMLHttpRequest;s.onreadystatechange=function(){if(4===s.readyState){if(0!==s.status&&200!==s.status)return e(Error("status "+s.status));if(i.binary){var t=s.response;if(!t){t=[];for(var n=0;n{"use strict";function i(t){return"undefined"!=typeof Float32Array?function(){var i=new Float32Array([-0]),e=new Uint8Array(i.buffer),s=128===e[3];function n(t,s,n){i[0]=t,s[n]=e[0],s[n+1]=e[1],s[n+2]=e[2],s[n+3]=e[3]}function r(t,s,n){i[0]=t,s[n]=e[3],s[n+1]=e[2],s[n+2]=e[1],s[n+3]=e[0]}function h(t,s){return e[0]=t[s],e[1]=t[s+1],e[2]=t[s+2],e[3]=t[s+3],i[0]}function o(t,s){return e[3]=t[s],e[2]=t[s+1],e[1]=t[s+2],e[0]=t[s+3],i[0]}t.writeFloatLE=s?n:r,t.writeFloatBE=s?r:n,t.readFloatLE=s?h:o,t.readFloatBE=s?o:h}():function(){function i(t,i,e,s){var n=i<0?1:0;if(n&&(i=-i),0===i)t(1/i>0?0:2147483648,e,s);else if(isNaN(i))t(2143289344,e,s);else if(i>34028234663852886e22)t((n<<31|2139095040)>>>0,e,s);else if(i<11754943508222875e-54)t((n<<31|Math.round(i/1401298464324817e-60))>>>0,e,s);else{var r=Math.floor(Math.log(i)/Math.LN2);t((n<<31|r+127<<23|8388607&Math.round(i*Math.pow(2,-r)*8388608))>>>0,e,s)}}function h(t,i,e){var s=t(i,e),n=2*(s>>31)+1,r=s>>>23&255,h=8388607&s;return 255===r?h?NaN:n*(1/0):0===r?1401298464324817e-60*n*h:n*Math.pow(2,r-150)*(h+8388608)}t.writeFloatLE=i.bind(null,e),t.writeFloatBE=i.bind(null,s),t.readFloatLE=h.bind(null,n),t.readFloatBE=h.bind(null,r)}(),"undefined"!=typeof Float64Array?function(){var i=new Float64Array([-0]),e=new Uint8Array(i.buffer),s=128===e[7];function n(t,s,n){i[0]=t,s[n]=e[0],s[n+1]=e[1],s[n+2]=e[2],s[n+3]=e[3],s[n+4]=e[4],s[n+5]=e[5],s[n+6]=e[6],s[n+7]=e[7]}function r(t,s,n){i[0]=t,s[n]=e[7],s[n+1]=e[6],s[n+2]=e[5],s[n+3]=e[4],s[n+4]=e[3],s[n+5]=e[2],s[n+6]=e[1],s[n+7]=e[0]}function h(t,s){return e[0]=t[s],e[1]=t[s+1],e[2]=t[s+2],e[3]=t[s+3],e[4]=t[s+4],e[5]=t[s+5],e[6]=t[s+6],e[7]=t[s+7],i[0]}function o(t,s){return e[7]=t[s],e[6]=t[s+1],e[5]=t[s+2],e[4]=t[s+3],e[3]=t[s+4],e[2]=t[s+5],e[1]=t[s+6],e[0]=t[s+7],i[0]}t.writeDoubleLE=s?n:r,t.writeDoubleBE=s?r:n,t.readDoubleLE=s?h:o,t.readDoubleBE=s?o:h}():function(){function i(t,i,e,s,n,r){var h=s<0?1:0;if(h&&(s=-s),0===s)t(0,n,r+i),t(1/s>0?0:2147483648,n,r+e);else if(isNaN(s))t(0,n,r+i),t(2146959360,n,r+e);else if(s>17976931348623157e292)t(0,n,r+i),t((h<<31|2146435072)>>>0,n,r+e);else{var o;if(s<22250738585072014e-324)t((o=s/5e-324)>>>0,n,r+i),t((h<<31|o/4294967296)>>>0,n,r+e);else{var a=Math.floor(Math.log(s)/Math.LN2);1024===a&&(a=1023),t(4503599627370496*(o=s*Math.pow(2,-a))>>>0,n,r+i),t((h<<31|a+1023<<20|1048576*o&1048575)>>>0,n,r+e)}}}function h(t,i,e,s,n){var r=t(s,n+i),h=t(s,n+e),o=2*(h>>31)+1,a=h>>>20&2047,c=4294967296*(1048575&h)+r;return 2047===a?c?NaN:o*(1/0):0===a?5e-324*o*c:o*Math.pow(2,a-1075)*(c+4503599627370496)}t.writeDoubleLE=i.bind(null,e,0,4),t.writeDoubleBE=i.bind(null,s,4,0),t.readDoubleLE=h.bind(null,n,0,4),t.readDoubleBE=h.bind(null,r,4,0)}(),t}function e(t,i,e){i[e]=255&t,i[e+1]=t>>>8&255,i[e+2]=t>>>16&255,i[e+3]=t>>>24}function s(t,i,e){i[e]=t>>>24,i[e+1]=t>>>16&255,i[e+2]=t>>>8&255,i[e+3]=255&t}function n(t,i){return(t[i]|t[i+1]<<8|t[i+2]<<16|t[i+3]<<24)>>>0}function r(t,i){return(t[i]<<24|t[i+1]<<16|t[i+2]<<8|t[i+3])>>>0}t.exports=i(i)},7199:t=>{"use strict";function i(t){try{var i=eval("quire".replace(/^/,"re"))(t);if(i&&(i.length||Object.keys(i).length))return i}catch(t){}return null}t.exports=i},8626:(t,i)=>{"use strict";var e=i,s=e.isAbsolute=function(t){return/^(?:\/|\w+:)/.test(t)},n=e.normalize=function(t){var i=(t=t.replace(/\\/g,"/").replace(/\/{2,}/g,"/")).split("/"),e=s(t),n="";e&&(n=i.shift()+"/");for(var r=0;r0&&".."!==i[r-1]?i.splice(--r,2):e?i.splice(r,1):++r:"."===i[r]?i.splice(r,1):++r;return n+i.join("/")};e.resolve=function(t,i,e){return e||(i=n(i)),s(i)?i:(e||(t=n(t)),(t=t.replace(/(?:\/|^)[^/]+$/,"")).length?n(t+"/"+i):i)}},6662:t=>{"use strict";t.exports=function(t,i,e){var s=e||8192,n=s>>>1,r=null,h=s;return function(e){if(e<1||e>n)return t(e);h+e>s&&(r=t(s),h=0);var o=i.call(r,h,h+=e);return 7&h&&(h=1+(7|h)),o}}},4997:(t,i)=>{"use strict";var e=i;e.length=function(t){for(var i=0,e=0,s=0;s191&&s<224?r[h++]=(31&s)<<6|63&t[i++]:s>239&&s<365?(s=((7&s)<<18|(63&t[i++])<<12|(63&t[i++])<<6|63&t[i++])-65536,r[h++]=55296+(s>>10),r[h++]=56320+(1023&s)):r[h++]=(15&s)<<12|(63&t[i++])<<6|63&t[i++],h>8191&&((n||(n=[])).push(String.fromCharCode.apply(String,r)),h=0);return n?(h&&n.push(String.fromCharCode.apply(String,r.slice(0,h))),n.join("")):String.fromCharCode.apply(String,r.slice(0,h))},e.write=function(t,i,e){for(var s,n,r=e,h=0;h>6|192,i[e++]=63&s|128):55296==(64512&s)&&56320==(64512&(n=t.charCodeAt(h+1)))?(s=65536+((1023&s)<<10)+(1023&n),++h,i[e++]=s>>18|240,i[e++]=s>>12&63|128,i[e++]=s>>6&63|128,i[e++]=63&s|128):(i[e++]=s>>12|224,i[e++]=s>>6&63|128,i[e++]=63&s|128);return e-r}},7501:function(t,i,e){var s;t=e.nmd(t),function(n){var r=i,h=(t&&t.exports,"object"==typeof e.g&&e.g);h.global!==h&&h.window;var o=function(t){this.message=t};(o.prototype=new Error).name="InvalidCharacterError";var a=function(t){throw new o(t)},c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",l=/[\t\n\f\r ]/g,u={encode:function(t){t=String(t),/[^\0-\xFF]/.test(t)&&a("The string to be encoded contains characters outside of the Latin1 range.");for(var i,e,s,n,r=t.length%3,h="",o=-1,l=t.length-r;++o>18&63)+c.charAt(n>>12&63)+c.charAt(n>>6&63)+c.charAt(63&n);return 2==r?(i=t.charCodeAt(o)<<8,e=t.charCodeAt(++o),h+=c.charAt((n=i+e)>>10)+c.charAt(n>>4&63)+c.charAt(n<<2&63)+"="):1==r&&(n=t.charCodeAt(o),h+=c.charAt(n>>2)+c.charAt(n<<4&63)+"=="),h},decode:function(t){var i=(t=String(t).replace(l,"")).length;i%4==0&&(i=(t=t.replace(/==?$/,"")).length),(i%4==1||/[^+a-zA-Z0-9/]/.test(t))&&a("Invalid character: the string to be decoded is not correctly encoded.");for(var e,s,n=0,r="",h=-1;++h>(-2*n&6)));return r},version:"0.1.0"};void 0===(s=function(){return u}.call(i,e,i,t))||(t.exports=s)}()},6658:(t,i,e)=>{"use strict";var s=e(3090),n=s.decodeBitsToIds,r=s.decodeFromBase64;t.exports={decodeConsentString:function(t){var i=r(t),e=i.version,s=i.cmpId,h=i.vendorListVersion,o=i.purposeIdBitString,a=i.maxVendorId,c=i.created,l=i.lastUpdated,u=i.isRange,d=i.defaultConsent,p=i.vendorIdBitString,f=i.vendorRangeList,v=i.cmpVersion,g=i.consentScreen,m=i.consentLanguage,y={version:e,cmpId:s,vendorListVersion:h,allowedPurposeIds:n(o),maxVendorId:a,created:c,lastUpdated:l,cmpVersion:v,consentScreen:g,consentLanguage:m};if(u){var b=f.reduce((function(t,i){for(var e=i.isRange,s=i.startVendorId,n=i.endVendorId,r=e?n:s,h=s;h<=r;h+=1)t[h]=!0;return t}),{});y.allowedVendorIds=[];for(var w=1;w<=a;w+=1)(d&&!b[w]||!d&&b[w])&&-1===y.allowedVendorIds.indexOf(w)&&y.allowedVendorIds.push(w)}else y.allowedVendorIds=n(p);return y}}},8462:(t,i,e)=>{"use strict";var s=e(6658).decodeConsentString;t.exports={decodeConsentString:s}},3090:(t,i,e)=>{"use strict";var s=e(7501),n=e(3977),r=n.versionNumBits,h=n.vendorVersionMap;function o(t,i,e){return parseInt(t.substr(i,e),2)}function a(t,i,e){return new Date(100*o(t,i,e))}function c(t){var i=o(t);return String.fromCharCode(i+65).toLowerCase()}function l(t,i,e){var s=t.substr(i,e);return c(s.slice(0,e/2))+c(s.slice(e/2))}function u(t){var i=t.input,e=t.output,s=t.startPosition,n=t.field,r=n.type,h=n.numBits,c=n.decoder,u=n.validator,p=n.listCount;if("function"==typeof u&&!u(e))return{newPosition:s};if("function"==typeof c)return c(i,e,s);var f,v,g="function"==typeof h?h(e):h;switch(r){case"int":return{fieldValue:o(i,s,g)};case"bool":return{fieldValue:(f=i,v=s,1===parseInt(f.substr(v,1),2))};case"date":return{fieldValue:a(i,s,g)};case"bits":return{fieldValue:i.substr(s,g)};case"list":return function(t,i,e,s,n){var r=0;"function"==typeof n?r=n(i):"number"==typeof n&&(r=n);for(var h=e,o=[],a=0;a1&&void 0!==arguments[1]?arguments[1]:"0",e="",s=0;s1&&void 0!==arguments[1]?arguments[1]:h,e=o(t,0,r);if("number"!=typeof e)throw new Error("ConsentString - Unknown version number in the string to decode");if(!h[e])throw new Error("ConsentString - Unsupported version "+e+" in the string to decode");var s=i[e].fields;return d({input:t,fields:s}).decodedObject}(l,i)}}},3977:t=>{"use strict";t.exports={versionNumBits:6,vendorVersionMap:{1:{version:1,metadataFields:["version","created","lastUpdated","cmpId","cmpVersion","consentScreen","vendorListVersion"],fields:[{name:"version",type:"int",numBits:6},{name:"created",type:"date",numBits:36},{name:"lastUpdated",type:"date",numBits:36},{name:"cmpId",type:"int",numBits:12},{name:"cmpVersion",type:"int",numBits:12},{name:"consentScreen",type:"int",numBits:6},{name:"consentLanguage",type:"language",numBits:12},{name:"vendorListVersion",type:"int",numBits:12},{name:"purposeIdBitString",type:"bits",numBits:24},{name:"maxVendorId",type:"int",numBits:16},{name:"isRange",type:"bool",numBits:1},{name:"vendorIdBitString",type:"bits",numBits:function(t){return t.maxVendorId},validator:function(t){return!t.isRange}},{name:"defaultConsent",type:"bool",numBits:1,validator:function(t){return t.isRange}},{name:"numEntries",numBits:12,type:"int",validator:function(t){return t.isRange}},{name:"vendorRangeList",type:"list",listCount:function(t){return t.numEntries},validator:function(t){return t.isRange},fields:[{name:"isRange",type:"bool",numBits:1},{name:"startVendorId",type:"int",numBits:16},{name:"endVendorId",type:"int",numBits:16,validator:function(t){return t.isRange}}]}]}}}},4492:(t,i,e)=>{"use strict";t.exports=e(8836)},3996:(t,i,e)=>{"use strict";var s=i,n=e(7025),r=e(9935);function h(t,i,e,s){if(i.resolvedType)if(i.resolvedType instanceof n){t("switch(d%s){",s);for(var r=i.resolvedType.values,h=Object.keys(r),o=0;o>>0",s,s);break;case"int32":case"sint32":case"sfixed32":t("m%s=d%s|0",s,s);break;case"uint64":a=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":t("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j",s,s,a)('else if(typeof d%s==="string")',s)("m%s=parseInt(d%s,10)",s,s)('else if(typeof d%s==="number")',s)("m%s=d%s",s,s)('else if(typeof d%s==="object")',s)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)",s,s,s,a?"true":"");break;case"bytes":t('if(typeof d%s==="string")',s)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)",s,s,s)("else if(d%s.length)",s)("m%s=d%s",s,s);break;case"string":t("m%s=String(d%s)",s,s);break;case"bool":t("m%s=Boolean(d%s)",s,s)}}return t}function o(t,i,e,s){if(i.resolvedType)i.resolvedType instanceof n?t("d%s=o.enums===String?types[%i].values[m%s]:m%s",s,e,s,s):t("d%s=types[%i].toObject(m%s,o)",s,e,s);else{var r=!1;switch(i.type){case"double":case"float":t("d%s=o.json&&!isFinite(m%s)?String(m%s):m%s",s,s,s,s);break;case"uint64":r=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":t('if(typeof m%s==="number")',s)("d%s=o.longs===String?String(m%s):m%s",s,s,s)("else")("d%s=o.longs===String?util.Long.prototype.toString.call(m%s):o.longs===Number?new util.LongBits(m%s.low>>>0,m%s.high>>>0).toNumber(%s):m%s",s,s,s,s,r?"true":"",s);break;case"bytes":t("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s",s,s,s,s,s);break;default:t("d%s=m%s",s,s)}}return t}s.fromObject=function(t){var i=t.fieldsArray,e=r.codegen(["d"],t.name+"$fromObject")("if(d instanceof this.ctor)")("return d");if(!i.length)return e("return new this.ctor");e("var m=new this.ctor");for(var s=0;s{"use strict";t.exports=function(t){var i=r.codegen(["r","l"],t.name+"$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor"+(t.fieldsArray.filter((function(t){return t.map})).length?",k,value":""))("while(r.pos>>3){");for(var e=0;e>>3){")("case 1: k=r.%s(); break",o.keyType)("case 2:"),void 0===n.basic[a]?i("value=types[%i].decode(r,r.uint32())",e):i("value=r.%s()",a),i("break")("default:")("r.skipType(tag2&7)")("break")("}")("}"),void 0!==n.long[o.keyType]?i('%s[typeof k==="object"?util.longToHash(k):k]=value',c):i("%s[k]=value",c)):o.repeated?(i("if(!(%s&&%s.length))",c,c)("%s=[]",c),void 0!==n.packed[a]&&i("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos{"use strict";t.exports=function(t){for(var i,e=r.codegen(["m","w"],t.name+"$encode")("if(!w)")("w=Writer.create()"),o=t.fieldsArray.slice().sort(r.compareFieldsById),a=0;a>>0,8|n.mapKey[c.keyType],c.keyType),void 0===d?e("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()",l,i):e(".uint32(%i).%s(%s[ks[i]]).ldelim()",16|d,u,i),e("}")("}")):c.repeated?(e("if(%s!=null&&%s.length){",i,i),c.packed&&void 0!==n.packed[u]?e("w.uint32(%i).fork()",(c.id<<3|2)>>>0)("for(var i=0;i<%s.length;++i)",i)("w.%s(%s[i])",u,i)("w.ldelim()"):(e("for(var i=0;i<%s.length;++i)",i),void 0===d?h(e,c,l,i+"[i]"):e("w.uint32(%i).%s(%s[i])",(c.id<<3|d)>>>0,u,i)),e("}")):(c.optional&&e("if(%s!=null&&Object.hasOwnProperty.call(m,%j))",i,c.name),void 0===d?h(e,c,l,i):e("w.uint32(%i).%s(%s)",(c.id<<3|d)>>>0,u,i))}return e("return w")};var s=e(7025),n=e(7063),r=e(9935);function h(t,i,e,s){return i.resolvedType.group?t("types[%i].encode(%s,w.uint32(%i)).uint32(%i)",e,s,(i.id<<3|3)>>>0,(i.id<<3|4)>>>0):t("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()",e,s,(i.id<<3|2)>>>0)}},7025:(t,i,e)=>{"use strict";t.exports=h;var s=e(3243);((h.prototype=Object.create(s.prototype)).constructor=h).className="Enum";var n=e(9313),r=e(9935);function h(t,i,e,n,r){if(s.call(this,t,e),i&&"object"!=typeof i)throw TypeError("values must be an object");if(this.valuesById={},this.values=Object.create(this.valuesById),this.comment=n,this.comments=r||{},this.reserved=void 0,i)for(var h=Object.keys(i),o=0;o{"use strict";t.exports=c;var s=e(3243);((c.prototype=Object.create(s.prototype)).constructor=c).className="Field";var n,r=e(7025),h=e(7063),o=e(9935),a=/^required|optional|repeated$/;function c(t,i,e,n,r,c,l){if(o.isObject(n)?(l=r,c=n,n=r=void 0):o.isObject(r)&&(l=c,c=r,r=void 0),s.call(this,t,c),!o.isInteger(i)||i<0)throw TypeError("id must be a non-negative integer");if(!o.isString(e))throw TypeError("type must be a string");if(void 0!==n&&!a.test(n=n.toString().toLowerCase()))throw TypeError("rule must be a string rule");if(void 0!==r&&!o.isString(r))throw TypeError("extend must be a string");"proto3_optional"===n&&(n="optional"),this.rule=n&&"optional"!==n?n:void 0,this.type=e,this.id=i,this.extend=r||void 0,this.required="required"===n,this.optional=!this.required,this.repeated="repeated"===n,this.map=!1,this.message=null,this.partOf=null,this.typeDefault=null,this.defaultValue=null,this.long=!!o.Long&&void 0!==h.long[e],this.bytes="bytes"===e,this.resolvedType=null,this.extensionField=null,this.declaringField=null,this.K=null,this.comment=l}c.fromJSON=function(t,i){return new c(t,i.id,i.type,i.rule,i.extend,i.options,i.comment)},Object.defineProperty(c.prototype,"packed",{get:function(){return null===this.K&&(this.K=!1!==this.getOption("packed")),this.K}}),c.prototype.setOption=function(t,i,e){return"packed"===t&&(this.K=null),s.prototype.setOption.call(this,t,i,e)},c.prototype.toJSON=function(t){var i=!!t&&Boolean(t.keepComments);return o.toObject(["rule","optional"!==this.rule&&this.rule||void 0,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",i?this.comment:void 0])},c.prototype.resolve=function(){if(this.resolved)return this;if(void 0===(this.typeDefault=h.defaults[this.type])&&(this.resolvedType=(this.declaringField?this.declaringField.parent:this.parent).lookupTypeOrEnum(this.type),this.resolvedType instanceof n?this.typeDefault=null:this.typeDefault=this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]),this.options&&null!=this.options.default&&(this.typeDefault=this.options.default,this.resolvedType instanceof r&&"string"==typeof this.typeDefault&&(this.typeDefault=this.resolvedType.values[this.typeDefault])),this.options&&(!0!==this.options.packed&&(void 0===this.options.packed||!this.resolvedType||this.resolvedType instanceof r)||delete this.options.packed,Object.keys(this.options).length||(this.options=void 0)),this.long)this.typeDefault=o.Long.fromNumber(this.typeDefault,"u"===this.type.charAt(0)),Object.freeze&&Object.freeze(this.typeDefault);else if(this.bytes&&"string"==typeof this.typeDefault){var t;o.base64.test(this.typeDefault)?o.base64.decode(this.typeDefault,t=o.newBuffer(o.base64.length(this.typeDefault)),0):o.utf8.write(this.typeDefault,t=o.newBuffer(o.utf8.length(this.typeDefault)),0),this.typeDefault=t}return this.map?this.defaultValue=o.emptyObject:this.repeated?this.defaultValue=o.emptyArray:this.defaultValue=this.typeDefault,this.parent instanceof n&&(this.parent.ctor.prototype[this.name]=this.defaultValue),s.prototype.resolve.call(this)},c.d=function(t,i,e,s){return"function"==typeof i?i=o.decorateType(i).name:i&&"object"==typeof i&&(i=o.decorateEnum(i).name),function(n,r){o.decorateType(n.constructor).add(new c(r,t,i,e,{default:s}))}},c.tt=function(t){n=t}},8836:(t,i,e)=>{"use strict";var s=t.exports=e(9482);s.build="light",s.load=function(t,i,e){return"function"==typeof i?(e=i,i=new s.Root):i||(i=new s.Root),i.load(t,e)},s.loadSync=function(t,i){return i||(i=new s.Root),i.loadSync(t)},s.encoder=e(4928),s.decoder=e(5305),s.verifier=e(4497),s.converter=e(3996),s.ReflectionObject=e(3243),s.Namespace=e(9313),s.Root=e(9424),s.Enum=e(7025),s.Type=e(7645),s.Field=e(3548),s.OneOf=e(7598),s.MapField=e(6039),s.Service=e(7513),s.Method=e(4429),s.Message=e(8368),s.wrappers=e(1667),s.types=e(7063),s.util=e(9935),s.ReflectionObject.tt(s.Root),s.Namespace.tt(s.Type,s.Service,s.Enum),s.Root.tt(s.Type),s.Field.tt(s.Type)},9482:(t,i,e)=>{"use strict";var s=i;function n(){s.util.tt(),s.Writer.tt(s.BufferWriter),s.Reader.tt(s.BufferReader)}s.build="minimal",s.Writer=e(1173),s.BufferWriter=e(3155),s.Reader=e(1408),s.BufferReader=e(593),s.util=e(9693),s.rpc=e(5994),s.roots=e(5054),s.configure=n,n()},6039:(t,i,e)=>{"use strict";t.exports=h;var s=e(3548);((h.prototype=Object.create(s.prototype)).constructor=h).className="MapField";var n=e(7063),r=e(9935);function h(t,i,e,n,h,o){if(s.call(this,t,i,n,void 0,void 0,h,o),!r.isString(e))throw TypeError("keyType must be a string");this.keyType=e,this.resolvedKeyType=null,this.map=!0}h.fromJSON=function(t,i){return new h(t,i.id,i.keyType,i.type,i.options,i.comment)},h.prototype.toJSON=function(t){var i=!!t&&Boolean(t.keepComments);return r.toObject(["keyType",this.keyType,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",i?this.comment:void 0])},h.prototype.resolve=function(){if(this.resolved)return this;if(void 0===n.mapKey[this.keyType])throw Error("invalid key type: "+this.keyType);return s.prototype.resolve.call(this)},h.d=function(t,i,e){return"function"==typeof e?e=r.decorateType(e).name:e&&"object"==typeof e&&(e=r.decorateEnum(e).name),function(s,n){r.decorateType(s.constructor).add(new h(n,t,i,e))}}},8368:(t,i,e)=>{"use strict";t.exports=n;var s=e(9693);function n(t){if(t)for(var i=Object.keys(t),e=0;e{"use strict";t.exports=r;var s=e(3243);((r.prototype=Object.create(s.prototype)).constructor=r).className="Method";var n=e(9935);function r(t,i,e,r,h,o,a,c,l){if(n.isObject(h)?(a=h,h=o=void 0):n.isObject(o)&&(a=o,o=void 0),void 0!==i&&!n.isString(i))throw TypeError("type must be a string");if(!n.isString(e))throw TypeError("requestType must be a string");if(!n.isString(r))throw TypeError("responseType must be a string");s.call(this,t,a),this.type=i||"rpc",this.requestType=e,this.requestStream=!!h||void 0,this.responseType=r,this.responseStream=!!o||void 0,this.resolvedRequestType=null,this.resolvedResponseType=null,this.comment=c,this.parsedOptions=l}r.fromJSON=function(t,i){return new r(t,i.type,i.requestType,i.responseType,i.requestStream,i.responseStream,i.options,i.comment,i.parsedOptions)},r.prototype.toJSON=function(t){var i=!!t&&Boolean(t.keepComments);return n.toObject(["type","rpc"!==this.type&&this.type||void 0,"requestType",this.requestType,"requestStream",this.requestStream,"responseType",this.responseType,"responseStream",this.responseStream,"options",this.options,"comment",i?this.comment:void 0,"parsedOptions",this.parsedOptions])},r.prototype.resolve=function(){return this.resolved?this:(this.resolvedRequestType=this.parent.lookupType(this.requestType),this.resolvedResponseType=this.parent.lookupType(this.responseType),s.prototype.resolve.call(this))}},9313:(t,i,e)=>{"use strict";t.exports=u;var s=e(3243);((u.prototype=Object.create(s.prototype)).constructor=u).className="Namespace";var n,r,h,o=e(3548),a=e(7598),c=e(9935);function l(t,i){if(t&&t.length){for(var e={},s=0;si)return!0;return!1},u.isReservedName=function(t,i){if(t)for(var e=0;e0;){var s=t.shift();if(e.nested&&e.nested[s]){if(!((e=e.nested[s])instanceof u))throw Error("path conflicts with non-namespace objects")}else e.add(e=new u(s))}return i&&e.addJSON(i),e},u.prototype.resolveAll=function(){for(var t=this.nestedArray,i=0;i-1)return s}else if(s instanceof u&&(s=s.lookup(t.slice(1),i,!0)))return s}else for(var n=0;n{"use strict";t.exports=r,r.className="ReflectionObject";var s,n=e(9935);function r(t,i){if(!n.isString(t))throw TypeError("name must be a string");if(i&&!n.isObject(i))throw TypeError("options must be an object");this.options=i,this.parsedOptions=null,this.name=t,this.parent=null,this.resolved=!1,this.comment=null,this.filename=null}Object.defineProperties(r.prototype,{root:{get:function(){for(var t=this;null!==t.parent;)t=t.parent;return t}},fullName:{get:function(){for(var t=[this.name],i=this.parent;i;)t.unshift(i.name),i=i.parent;return t.join(".")}}}),r.prototype.toJSON=function(){throw Error()},r.prototype.onAdd=function(t){this.parent&&this.parent!==t&&this.parent.remove(this),this.parent=t,this.resolved=!1;var i=t.root;i instanceof s&&i.et(this)},r.prototype.onRemove=function(t){var i=t.root;i instanceof s&&i.st(this),this.parent=null,this.resolved=!1},r.prototype.resolve=function(){return this.resolved||this.root instanceof s&&(this.resolved=!0),this},r.prototype.getOption=function(t){if(this.options)return this.options[t]},r.prototype.setOption=function(t,i,e){return e&&this.options&&void 0!==this.options[t]||((this.options||(this.options={}))[t]=i),this},r.prototype.setParsedOption=function(t,i,e){this.parsedOptions||(this.parsedOptions=[]);var s=this.parsedOptions;if(e){var r=s.find((function(i){return Object.prototype.hasOwnProperty.call(i,t)}));if(r){var h=r[t];n.setProperty(h,e,i)}else(r={})[t]=n.setProperty({},e,i),s.push(r)}else{var o={};o[t]=i,s.push(o)}return this},r.prototype.setOptions=function(t,i){if(t)for(var e=Object.keys(t),s=0;s{"use strict";t.exports=h;var s=e(3243);((h.prototype=Object.create(s.prototype)).constructor=h).className="OneOf";var n=e(3548),r=e(9935);function h(t,i,e,n){if(Array.isArray(i)||(e=i,i=void 0),s.call(this,t,e),void 0!==i&&!Array.isArray(i))throw TypeError("fieldNames must be an Array");this.oneof=i||[],this.fieldsArray=[],this.comment=n}function o(t){if(t.parent)for(var i=0;i-1&&this.oneof.splice(i,1),t.partOf=null,this},h.prototype.onAdd=function(t){s.prototype.onAdd.call(this,t);for(var i=0;i{"use strict";t.exports=a;var s,n=e(9693),r=n.LongBits,h=n.utf8;function o(t,i){return RangeError("index out of range: "+t.pos+" + "+(i||1)+" > "+t.len)}function a(t){this.buf=t,this.pos=0,this.len=t.length}var c,l="undefined"!=typeof Uint8Array?function(t){if(t instanceof Uint8Array||Array.isArray(t))return new a(t);throw Error("illegal buffer")}:function(t){if(Array.isArray(t))return new a(t);throw Error("illegal buffer")},u=function(){return n.Buffer?function(t){return(a.create=function(t){return n.Buffer.isBuffer(t)?new s(t):l(t)})(t)}:l};function d(){var t=new r(0,0),i=0;if(!(this.len-this.pos>4)){for(;i<3;++i){if(this.pos>=this.len)throw o(this);if(t.lo=(t.lo|(127&this.buf[this.pos])<<7*i)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(127&this.buf[this.pos++])<<7*i)>>>0,t}for(;i<4;++i)if(t.lo=(t.lo|(127&this.buf[this.pos])<<7*i)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(127&this.buf[this.pos])<<28)>>>0,t.hi=(t.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return t;if(i=0,this.len-this.pos>4){for(;i<5;++i)if(t.hi=(t.hi|(127&this.buf[this.pos])<<7*i+3)>>>0,this.buf[this.pos++]<128)return t}else for(;i<5;++i){if(this.pos>=this.len)throw o(this);if(t.hi=(t.hi|(127&this.buf[this.pos])<<7*i+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}function p(t,i){return(t[i-4]|t[i-3]<<8|t[i-2]<<16|t[i-1]<<24)>>>0}function f(){if(this.pos+8>this.len)throw o(this,8);return new r(p(this.buf,this.pos+=4),p(this.buf,this.pos+=4))}a.create=u(),a.prototype.nt=n.Array.prototype.subarray||n.Array.prototype.slice,a.prototype.uint32=(c=4294967295,function(){if(c=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return c;if(c=(c|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return c;if(c=(c|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return c;if(c=(c|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return c;if(c=(c|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return c;if((this.pos+=5)>this.len)throw this.pos=this.len,o(this,10);return c}),a.prototype.int32=function(){return 0|this.uint32()},a.prototype.sint32=function(){var t=this.uint32();return t>>>1^-(1&t)|0},a.prototype.bool=function(){return 0!==this.uint32()},a.prototype.fixed32=function(){if(this.pos+4>this.len)throw o(this,4);return p(this.buf,this.pos+=4)},a.prototype.sfixed32=function(){if(this.pos+4>this.len)throw o(this,4);return 0|p(this.buf,this.pos+=4)},a.prototype.float=function(){if(this.pos+4>this.len)throw o(this,4);var t=n.float.readFloatLE(this.buf,this.pos);return this.pos+=4,t},a.prototype.double=function(){if(this.pos+8>this.len)throw o(this,4);var t=n.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,t},a.prototype.bytes=function(){var t=this.uint32(),i=this.pos,e=this.pos+t;if(e>this.len)throw o(this,t);return this.pos+=t,Array.isArray(this.buf)?this.buf.slice(i,e):i===e?new this.buf.constructor(0):this.nt.call(this.buf,i,e)},a.prototype.string=function(){var t=this.bytes();return h.read(t,0,t.length)},a.prototype.skip=function(t){if("number"==typeof t){if(this.pos+t>this.len)throw o(this,t);this.pos+=t}else do{if(this.pos>=this.len)throw o(this)}while(128&this.buf[this.pos++]);return this},a.prototype.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(t=7&this.uint32());)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+t+" at offset "+this.pos)}return this},a.tt=function(t){s=t,a.create=u(),s.tt();var i=n.Long?"toLong":"toNumber";n.merge(a.prototype,{int64:function(){return d.call(this)[i](!1)},uint64:function(){return d.call(this)[i](!0)},sint64:function(){return d.call(this).zzDecode()[i](!1)},fixed64:function(){return f.call(this)[i](!0)},sfixed64:function(){return f.call(this)[i](!1)}})}},593:(t,i,e)=>{"use strict";t.exports=r;var s=e(1408);(r.prototype=Object.create(s.prototype)).constructor=r;var n=e(9693);function r(t){s.call(this,t)}r.tt=function(){n.Buffer&&(r.prototype.nt=n.Buffer.prototype.slice)},r.prototype.string=function(){var t=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+t,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+t,this.len))},r.tt()},9424:(t,i,e)=>{"use strict";t.exports=u;var s=e(9313);((u.prototype=Object.create(s.prototype)).constructor=u).className="Root";var n,r,h,o=e(3548),a=e(7025),c=e(7598),l=e(9935);function u(t){s.call(this,"",t),this.deferred=[],this.files=[]}function d(){}u.fromJSON=function(t,i){return i||(i=new u),t.options&&i.setOptions(t.options),i.addJSON(t.nested)},u.prototype.resolvePath=l.path.resolve,u.prototype.fetch=l.fetch,u.prototype.load=function t(i,e,s){"function"==typeof e&&(s=e,e=void 0);var n=this;if(!s)return l.asPromise(t,n,i,e);var o=s===d;function a(t,i){if(s){var e=s;if(s=null,o)throw t;e(t,i)}}function c(t){var i=t.lastIndexOf("google/protobuf/");if(i>-1){var e=t.substring(i);if(e in h)return e}return null}function u(t,i){try{if(l.isString(i)&&"{"===i.charAt(0)&&(i=JSON.parse(i)),l.isString(i)){r.filename=t;var s,h=r(i,n,e),u=0;if(h.imports)for(;u-1))if(n.files.push(t),t in h)o?u(t,h[t]):(++f,setTimeout((function(){--f,u(t,h[t])})));else if(o){var e;try{e=l.fs.readFileSync(t).toString("utf8")}catch(t){return void(i||a(t))}u(t,e)}else++f,n.fetch(t,(function(e,r){--f,s&&(e?i?f||a(null,n):a(e):u(t,r))}))}var f=0;l.isString(i)&&(i=[i]);for(var v,g=0;g-1&&this.deferred.splice(i,1)}}else if(t instanceof a)p.test(t.name)&&delete t.parent[t.name];else if(t instanceof s){for(var e=0;e{"use strict";t.exports={}},5994:(t,i,e)=>{"use strict";i.Service=e(7948)},7948:(t,i,e)=>{"use strict";t.exports=n;var s=e(9693);function n(t,i,e){if("function"!=typeof t)throw TypeError("rpcImpl must be a function");s.EventEmitter.call(this),this.rpcImpl=t,this.requestDelimited=Boolean(i),this.responseDelimited=Boolean(e)}(n.prototype=Object.create(s.EventEmitter.prototype)).constructor=n,n.prototype.rpcCall=function t(i,e,n,r,h){if(!r)throw TypeError("request must be specified");var o=this;if(!h)return s.asPromise(t,o,i,e,n,r);if(o.rpcImpl)try{return o.rpcImpl(i,e[o.requestDelimited?"encodeDelimited":"encode"](r).finish(),(function(t,e){if(t)return o.emit("error",t,i),h(t);if(null!==e){if(!(e instanceof n))try{e=n[o.responseDelimited?"decodeDelimited":"decode"](e)}catch(t){return o.emit("error",t,i),h(t)}return o.emit("data",e,i),h(null,e)}o.end(!0)}))}catch(t){return o.emit("error",t,i),void setTimeout((function(){h(t)}),0)}else setTimeout((function(){h(Error("already ended"))}),0)},n.prototype.end=function(t){return this.rpcImpl&&(t||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},7513:(t,i,e)=>{"use strict";t.exports=o;var s=e(9313);((o.prototype=Object.create(s.prototype)).constructor=o).className="Service";var n=e(4429),r=e(9935),h=e(5994);function o(t,i){s.call(this,t,i),this.methods={},this.rt=null}function a(t){return t.rt=null,t}o.fromJSON=function(t,i){var e=new o(t,i.options);if(i.methods)for(var s=Object.keys(i.methods),r=0;r{"use strict";t.exports=y;var s=e(9313);((y.prototype=Object.create(s.prototype)).constructor=y).className="Type";var n=e(7025),r=e(7598),h=e(3548),o=e(6039),a=e(7513),c=e(8368),l=e(1408),u=e(1173),d=e(9935),p=e(4928),f=e(5305),v=e(4497),g=e(3996),m=e(1667);function y(t,i){s.call(this,t,i),this.fields={},this.oneofs=void 0,this.extensions=void 0,this.reserved=void 0,this.group=void 0,this.ht=null,this.J=null,this.ot=null,this.ct=null}function b(t){return t.ht=t.J=t.ot=null,delete t.encode,delete t.decode,delete t.verify,t}Object.defineProperties(y.prototype,{fieldsById:{get:function(){if(this.ht)return this.ht;this.ht={};for(var t=Object.keys(this.fields),i=0;i{"use strict";var s=i,n=e(9935),r=["double","float","int32","uint32","sint32","fixed32","sfixed32","int64","uint64","sint64","fixed64","sfixed64","bool","string","bytes"];function h(t,i){var e=0,s={};for(i|=0;e{"use strict";var s,n,r=t.exports=e(9693),h=e(5054);r.codegen=e(5124),r.fetch=e(9054),r.path=e(8626),r.fs=r.inquire("fs"),r.toArray=function(t){if(t){for(var i=Object.keys(t),e=new Array(i.length),s=0;s0)i[n]=t(i[n]||{},e,s);else{var r=i[n];r&&(s=[].concat(r).concat(s)),i[n]=s}return i}(t,i=i.split("."),e)},Object.defineProperty(r,"decorateRoot",{get:function(){return h.decorated||(h.decorated=new(e(9424)))}})},1945:(t,i,e)=>{"use strict";t.exports=n;var s=e(9693);function n(t,i){this.lo=t>>>0,this.hi=i>>>0}var r=n.zero=new n(0,0);r.toNumber=function(){return 0},r.zzEncode=r.zzDecode=function(){return this},r.length=function(){return 1};var h=n.zeroHash="\0\0\0\0\0\0\0\0";n.fromNumber=function(t){if(0===t)return r;var i=t<0;i&&(t=-t);var e=t>>>0,s=(t-e)/4294967296>>>0;return i&&(s=~s>>>0,e=~e>>>0,++e>4294967295&&(e=0,++s>4294967295&&(s=0))),new n(e,s)},n.from=function(t){if("number"==typeof t)return n.fromNumber(t);if(s.isString(t)){if(!s.Long)return n.fromNumber(parseInt(t,10));t=s.Long.fromString(t)}return t.low||t.high?new n(t.low>>>0,t.high>>>0):r},n.prototype.toNumber=function(t){if(!t&&this.hi>>>31){var i=1+~this.lo>>>0,e=~this.hi>>>0;return i||(e=e+1>>>0),-(i+4294967296*e)}return this.lo+4294967296*this.hi},n.prototype.toLong=function(t){return s.Long?new s.Long(0|this.lo,0|this.hi,Boolean(t)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(t)}};var o=String.prototype.charCodeAt;n.fromHash=function(t){return t===h?r:new n((o.call(t,0)|o.call(t,1)<<8|o.call(t,2)<<16|o.call(t,3)<<24)>>>0,(o.call(t,4)|o.call(t,5)<<8|o.call(t,6)<<16|o.call(t,7)<<24)>>>0)},n.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},n.prototype.zzEncode=function(){var t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this},n.prototype.zzDecode=function(){var t=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this},n.prototype.length=function(){var t=this.lo,i=(this.lo>>>28|this.hi<<4)>>>0,e=this.hi>>>24;return 0===e?0===i?t<16384?t<128?1:2:t<2097152?3:4:i<16384?i<128?5:6:i<2097152?7:8:e<128?9:10}},9693:function(t,i,e){"use strict";var s=i;function n(t,i,e){for(var s=Object.keys(i),n=0;n0)},s.Buffer=function(){try{var t=s.inquire("buffer").Buffer;return t.prototype.utf8Write?t:null}catch(t){return null}}(),s.lt=null,s.ut=null,s.newBuffer=function(t){return"number"==typeof t?s.Buffer?s.ut(t):new s.Array(t):s.Buffer?s.lt(t):"undefined"==typeof Uint8Array?t:new Uint8Array(t)},s.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,s.Long=s.global.dcodeIO&&s.global.dcodeIO.Long||s.global.Long||s.inquire("long"),s.key2Re=/^true|false|0|1$/,s.key32Re=/^-?(?:0|[1-9][0-9]*)$/,s.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,s.longToHash=function(t){return t?s.LongBits.from(t).toHash():s.LongBits.zeroHash},s.longFromHash=function(t,i){var e=s.LongBits.fromHash(t);return s.Long?s.Long.fromBits(e.lo,e.hi,i):e.toNumber(Boolean(i))},s.merge=n,s.lcFirst=function(t){return t.charAt(0).toLowerCase()+t.substring(1)},s.newError=r,s.ProtocolError=r("ProtocolError"),s.oneOfGetter=function(t){for(var i={},e=0;e-1;--e)if(1===i[t[e]]&&void 0!==this[t[e]]&&null!==this[t[e]])return t[e]}},s.oneOfSetter=function(t){return function(i){for(var e=0;e{"use strict";t.exports=function(t){var i=n.codegen(["m"],t.name+"$verify")('if(typeof m!=="object"||m===null)')("return%j","object expected"),e=t.oneofsArray,s={};e.length&&i("var p={}");for(var a=0;a{"use strict";var s=i,n=e(8368);s[".google.protobuf.Any"]={fromObject:function(t){if(t&&t["@type"]){var i=t["@type"].substring(t["@type"].lastIndexOf("/")+1),e=this.lookup(i);if(e){var s="."===t["@type"].charAt(0)?t["@type"].substr(1):t["@type"];return-1===s.indexOf("/")&&(s="/"+s),this.create({type_url:s,value:e.encode(e.fromObject(t)).finish()})}}return this.fromObject(t)},toObject:function(t,i){var e="",s="";if(i&&i.json&&t.type_url&&t.value){s=t.type_url.substring(t.type_url.lastIndexOf("/")+1),e=t.type_url.substring(0,t.type_url.lastIndexOf("/")+1);var r=this.lookup(s);r&&(t=r.decode(t.value))}if(!(t instanceof this.ctor)&&t instanceof n){var h=t.$type.toObject(t,i);return""===e&&(e="type.googleapis.com/"),s=e+("."===t.$type.fullName[0]?t.$type.fullName.substr(1):t.$type.fullName),h["@type"]=s,h}return this.toObject(t,i)}}},1173:(t,i,e)=>{"use strict";t.exports=u;var s,n=e(9693),r=n.LongBits,h=n.base64,o=n.utf8;function a(t,i,e){this.fn=t,this.len=i,this.next=void 0,this.val=e}function c(){}function l(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}function u(){this.len=0,this.head=new a(c,0,0),this.tail=this.head,this.states=null}var d=function(){return n.Buffer?function(){return(u.create=function(){return new s})()}:function(){return new u}};function p(t,i,e){i[e]=255&t}function f(t,i){this.len=t,this.next=void 0,this.val=i}function v(t,i,e){for(;t.hi;)i[e++]=127&t.lo|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)i[e++]=127&t.lo|128,t.lo=t.lo>>>7;i[e++]=t.lo}function g(t,i,e){i[e]=255&t,i[e+1]=t>>>8&255,i[e+2]=t>>>16&255,i[e+3]=t>>>24}u.create=d(),u.alloc=function(t){return new n.Array(t)},n.Array!==Array&&(u.alloc=n.pool(u.alloc,n.Array.prototype.subarray)),u.prototype.dt=function(t,i,e){return this.tail=this.tail.next=new a(t,i,e),this.len+=i,this},f.prototype=Object.create(a.prototype),f.prototype.fn=function(t,i,e){for(;t>127;)i[e++]=127&t|128,t>>>=7;i[e]=t},u.prototype.uint32=function(t){return this.len+=(this.tail=this.tail.next=new f((t>>>=0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this},u.prototype.int32=function(t){return t<0?this.dt(v,10,r.fromNumber(t)):this.uint32(t)},u.prototype.sint32=function(t){return this.uint32((t<<1^t>>31)>>>0)},u.prototype.uint64=function(t){var i=r.from(t);return this.dt(v,i.length(),i)},u.prototype.int64=u.prototype.uint64,u.prototype.sint64=function(t){var i=r.from(t).zzEncode();return this.dt(v,i.length(),i)},u.prototype.bool=function(t){return this.dt(p,1,t?1:0)},u.prototype.fixed32=function(t){return this.dt(g,4,t>>>0)},u.prototype.sfixed32=u.prototype.fixed32,u.prototype.fixed64=function(t){var i=r.from(t);return this.dt(g,4,i.lo).dt(g,4,i.hi)},u.prototype.sfixed64=u.prototype.fixed64,u.prototype.float=function(t){return this.dt(n.float.writeFloatLE,4,t)},u.prototype.double=function(t){return this.dt(n.float.writeDoubleLE,8,t)};var m=n.Array.prototype.set?function(t,i,e){i.set(t,e)}:function(t,i,e){for(var s=0;s>>0;if(!i)return this.dt(p,1,0);if(n.isString(t)){var e=u.alloc(i=h.length(t));h.decode(t,e,0),t=e}return this.uint32(i).dt(m,i,t)},u.prototype.string=function(t){var i=o.length(t);return i?this.uint32(i).dt(o.write,i,t):this.dt(p,1,0)},u.prototype.fork=function(){return this.states=new l(this),this.head=this.tail=new a(c,0,0),this.len=0,this},u.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new a(c,0,0),this.len=0),this},u.prototype.ldelim=function(){var t=this.head,i=this.tail,e=this.len;return this.reset().uint32(e),e&&(this.tail.next=t.next,this.tail=i,this.len+=e),this},u.prototype.finish=function(){for(var t=this.head.next,i=this.constructor.alloc(this.len),e=0;t;)t.fn(t.val,i,e),e+=t.len,t=t.next;return i},u.tt=function(t){s=t,u.create=d(),s.tt()}},3155:(t,i,e)=>{"use strict";t.exports=r;var s=e(1173);(r.prototype=Object.create(s.prototype)).constructor=r;var n=e(9693);function r(){s.call(this)}function h(t,i,e){t.length<40?n.utf8.write(t,i,e):i.utf8Write?i.utf8Write(t,e):i.write(t,e)}r.tt=function(){r.alloc=n.ut,r.writeBytesBuffer=n.Buffer&&n.Buffer.prototype instanceof Uint8Array&&"set"===n.Buffer.prototype.set.name?function(t,i,e){i.set(t,e)}:function(t,i,e){if(t.copy)t.copy(i,e,0,t.length);else for(var s=0;s>>0;return this.uint32(i),i&&this.dt(r.writeBytesBuffer,i,t),this},r.prototype.string=function(t){var i=n.Buffer.byteLength(t);return this.uint32(i),i&&this.dt(h,i,t),this},r.tt()},8660:(t,i,e)=>{var s;!function(t){!function(i){var s="object"==typeof e.g?e.g:"object"==typeof self?self:"object"==typeof this?this:Function("return this;")(),n=r(t);function r(t,i){return function(e,s){"function"!=typeof t[e]&&Object.defineProperty(t,e,{configurable:!0,writable:!0,value:s}),i&&i(e,s)}}void 0===s.Reflect?s.Reflect=t:n=r(s.Reflect,n),function(t){var i=Object.prototype.hasOwnProperty,e="function"==typeof Symbol,s=e&&void 0!==Symbol.toPrimitive?Symbol.toPrimitive:"@@toPrimitive",n=e&&void 0!==Symbol.iterator?Symbol.iterator:"@@iterator",r="function"==typeof Object.create,h={__proto__:[]}instanceof Array,o=!r&&!h,a={create:r?function(){return st(Object.create(null))}:h?function(){return st({__proto__:null})}:function(){return st({})},has:o?function(t,e){return i.call(t,e)}:function(t,i){return i in t},get:o?function(t,e){return i.call(t,e)?t[e]:void 0}:function(t,i){return t[i]}},c=Object.getPrototypeOf(Function),l="object"==typeof process&&{DEBUG_MODE:!1}&&"true"==={DEBUG_MODE:!1}.REFLECT_METADATA_USE_MAP_POLYFILL,u=l||"function"!=typeof Map||"function"!=typeof Map.prototype.entries?tt():Map,d=l||"function"!=typeof Set||"function"!=typeof Set.prototype.entries?it():Set,p=new(l||"function"!=typeof WeakMap?et():WeakMap);function f(t,i,e,s){if(B(e)){if(!z(t))throw new TypeError;if(!W(i))throw new TypeError;return A(t,i)}if(!z(t))throw new TypeError;if(!F(i))throw new TypeError;if(!F(s)&&!B(s)&&!D(s))throw new TypeError;return D(s)&&(s=void 0),P(t,i,e=H(e),s)}function v(t,i){function e(e,s){if(!F(e))throw new TypeError;if(!B(s)&&!G(s))throw new TypeError;E(t,i,e,s)}return e}function g(t,i,e,s){if(!F(e))throw new TypeError;return B(s)||(s=H(s)),E(t,i,e,s)}function m(t,i,e){if(!F(i))throw new TypeError;return B(e)||(e=H(e)),I(t,i,e)}function y(t,i,e){if(!F(i))throw new TypeError;return B(e)||(e=H(e)),T(t,i,e)}function b(t,i,e){if(!F(i))throw new TypeError;return B(e)||(e=H(e)),C(t,i,e)}function w(t,i,e){if(!F(i))throw new TypeError;return B(e)||(e=H(e)),M(t,i,e)}function x(t,i){if(!F(t))throw new TypeError;return B(i)||(i=H(i)),L(t,i)}function S(t,i){if(!F(t))throw new TypeError;return B(i)||(i=H(i)),O(t,i)}function _(t,i,e){if(!F(i))throw new TypeError;B(e)||(e=H(e));var s=k(i,e,!1);if(B(s))return!1;if(!s.delete(t))return!1;if(s.size>0)return!0;var n=p.get(i);return n.delete(e),n.size>0||p.delete(i),!0}function A(t,i){for(var e=t.length-1;e>=0;--e){var s=(0,t[e])(i);if(!B(s)&&!D(s)){if(!W(s))throw new TypeError;i=s}}return i}function P(t,i,e,s){for(var n=t.length-1;n>=0;--n){var r=(0,t[n])(i,e,s);if(!B(r)&&!D(r)){if(!F(r))throw new TypeError;s=r}}return s}function k(t,i,e){var s=p.get(t);if(B(s)){if(!e)return;s=new u,p.set(t,s)}var n=s.get(i);if(B(n)){if(!e)return;n=new u,s.set(i,n)}return n}function I(t,i,e){if(T(t,i,e))return!0;var s=Z(i);return!D(s)&&I(t,s,e)}function T(t,i,e){var s=k(i,e,!1);return!B(s)&&U(s.has(t))}function C(t,i,e){if(T(t,i,e))return M(t,i,e);var s=Z(i);return D(s)?void 0:C(t,s,e)}function M(t,i,e){var s=k(i,e,!1);if(!B(s))return s.get(t)}function E(t,i,e,s){k(e,s,!0).set(t,i)}function L(t,i){var e=O(t,i),s=Z(t);if(null===s)return e;var n=L(s,i);if(n.length<=0)return e;if(e.length<=0)return n;for(var r=new d,h=[],o=0,a=e;o=0&&t=this.vt.length?(this.ft=-1,this.vt=i,this.gt=i):this.ft++,{value:e,done:!1}}return{value:void 0,done:!0}},t.prototype.throw=function(t){throw this.ft>=0&&(this.ft=-1,this.vt=i,this.gt=i),t},t.prototype.return=function(t){return this.ft>=0&&(this.ft=-1,this.vt=i,this.gt=i),{value:t,done:!0}},t}();return function(){function i(){this.vt=[],this.gt=[],this.bt=t,this.wt=-2}return Object.defineProperty(i.prototype,"size",{get:function(){return this.vt.length},enumerable:!0,configurable:!0}),i.prototype.has=function(t){return this.xt(t,!1)>=0},i.prototype.get=function(t){var i=this.xt(t,!1);return i>=0?this.gt[i]:void 0},i.prototype.set=function(t,i){var e=this.xt(t,!0);return this.gt[e]=i,this},i.prototype.delete=function(i){var e=this.xt(i,!1);if(e>=0){for(var s=this.vt.length,n=e+1;n{"use strict";e.d(i,{X:()=>n});var s=e(655),n=function(t){function i(i){var e=t.call(this)||this;return e.Pt=i,e}return(0,s.ZT)(i,t),Object.defineProperty(i.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),i.prototype.kt=function(i){var e=t.prototype.kt.call(this,i);return!e.closed&&i.next(this.Pt),e},i.prototype.getValue=function(){var t=this,i=t.hasError,e=t.thrownError,s=t.Pt;if(i)throw e;return this.It(),s},i.prototype.next=function(i){t.prototype.next.call(this,this.Pt=i)},i}(e(6716).x)},1480:(t,i,e)=>{"use strict";e.d(i,{y:()=>u});var s=e(5642),n=e(5720),r=e(6766),h=e(278);function o(t){return 0===t.length?h.y:1===t.length?t[0]:function(i){return t.reduce((function(t,i){return i(t)}),i)}}var a=e(3912),c=e(8474),l=e(8846),u=function(){function t(t){t&&(this.kt=t)}return t.prototype.lift=function(i){var e=new t;return e.source=this,e.operator=i,e},t.prototype.subscribe=function(t,i,e){var r,h=this,o=(r=t)&&r instanceof s.Lv||function(t){return t&&(0,c.m)(t.next)&&(0,c.m)(t.error)&&(0,c.m)(t.complete)}(r)&&(0,n.Nn)(r)?t:new s.Hp(t,i,e);return(0,l.x)((function(){var t=h,i=t.operator,e=t.source;o.add(i?i.call(o,e):e?h.kt(o):h.Tt(o))})),o},t.prototype.Tt=function(t){try{return this.kt(t)}catch(i){t.error(i)}},t.prototype.forEach=function(t,i){var e=this;return new(i=d(i))((function(i,n){var r=new s.Hp({next:function(i){try{t(i)}catch(t){n(t),r.unsubscribe()}},error:n,complete:i});e.subscribe(r)}))},t.prototype.kt=function(t){var i;return null===(i=this.source)||void 0===i?void 0:i.subscribe(t)},t.prototype[r.L]=function(){return this},t.prototype.pipe=function(){for(var t=[],i=0;i{"use strict";e.d(i,{x:()=>c});var s=e(655),n=e(1480),r=e(5720),h=(0,e(1819).d)((function(t){return function(){t(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})),o=e(3699),a=e(8846),c=function(t){function i(){var i=t.call(this)||this;return i.closed=!1,i.observers=[],i.isStopped=!1,i.hasError=!1,i.thrownError=null,i}return(0,s.ZT)(i,t),i.prototype.lift=function(t){var i=new l(this,this);return i.operator=t,i},i.prototype.It=function(){if(this.closed)throw new h},i.prototype.next=function(t){var i=this;(0,a.x)((function(){var e,n;if(i.It(),!i.isStopped){var r=i.observers.slice();try{for(var h=(0,s.XA)(r),o=h.next();!o.done;o=h.next()){o.value.next(t)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(n=h.return)&&n.call(h)}finally{if(e)throw e.error}}}}))},i.prototype.error=function(t){var i=this;(0,a.x)((function(){if(i.It(),!i.isStopped){i.hasError=i.isStopped=!0,i.thrownError=t;for(var e=i.observers;e.length;)e.shift().error(t)}}))},i.prototype.complete=function(){var t=this;(0,a.x)((function(){if(t.It(),!t.isStopped){t.isStopped=!0;for(var i=t.observers;i.length;)i.shift().complete()}}))},i.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=null},Object.defineProperty(i.prototype,"observed",{get:function(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0},enumerable:!1,configurable:!0}),i.prototype.Tt=function(i){return this.It(),t.prototype.Tt.call(this,i)},i.prototype.kt=function(t){return this.It(),this.Ct(t),this.Mt(t)},i.prototype.Mt=function(t){var i=this,e=i.hasError,s=i.isStopped,n=i.observers;return e||s?r.Lc:(n.push(t),new r.w0((function(){return(0,o.P)(n,t)})))},i.prototype.Ct=function(t){var i=this,e=i.hasError,s=i.thrownError,n=i.isStopped;e?t.error(s):n&&t.complete()},i.prototype.asObservable=function(){var t=new n.y;return t.source=this,t},i.create=function(t,i){return new l(t,i)},i}(n.y),l=function(t){function i(i,e){var s=t.call(this)||this;return s.destination=i,s.source=e,s}return(0,s.ZT)(i,t),i.prototype.next=function(t){var i,e;null===(e=null===(i=this.destination)||void 0===i?void 0:i.next)||void 0===e||e.call(i,t)},i.prototype.error=function(t){var i,e;null===(e=null===(i=this.destination)||void 0===i?void 0:i.error)||void 0===e||e.call(i,t)},i.prototype.complete=function(){var t,i;null===(i=null===(t=this.destination)||void 0===t?void 0:t.complete)||void 0===i||i.call(t)},i.prototype.kt=function(t){var i,e;return null!==(e=null===(i=this.source)||void 0===i?void 0:i.subscribe(t))&&void 0!==e?e:r.Lc},i}(c)},5642:(t,i,e)=>{"use strict";e.d(i,{Hp:()=>m,Lv:()=>p});var s=e(655),n=e(8474),r=e(5720),h=e(3912),o=e(5);function a(){}var c=l("C",void 0,void 0);function l(t,i,e){return{kind:t,value:i,error:e}}var u=e(8380),d=e(8846),p=function(t){function i(i){var e=t.call(this)||this;return e.isStopped=!1,i?(e.destination=i,(0,r.Nn)(i)&&i.add(e)):e.destination=w,e}return(0,s.ZT)(i,t),i.create=function(t,i,e){return new m(t,i,e)},i.prototype.next=function(t){this.isStopped?b(function(t){return l("N",t,void 0)}(t),this):this.Et(t)},i.prototype.error=function(t){this.isStopped?b(l("E",void 0,t),this):(this.isStopped=!0,this.Lt(t))},i.prototype.complete=function(){this.isStopped?b(c,this):(this.isStopped=!0,this.Ot())},i.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,t.prototype.unsubscribe.call(this),this.destination=null)},i.prototype.Et=function(t){this.destination.next(t)},i.prototype.Lt=function(t){try{this.destination.error(t)}finally{this.unsubscribe()}},i.prototype.Ot=function(){try{this.destination.complete()}finally{this.unsubscribe()}},i}(r.w0),f=Function.prototype.bind;function v(t,i){return f.call(t,i)}var g=function(){function t(t){this.partialObserver=t}return t.prototype.next=function(t){var i=this.partialObserver;if(i.next)try{i.next(t)}catch(t){y(t)}},t.prototype.error=function(t){var i=this.partialObserver;if(i.error)try{i.error(t)}catch(t){y(t)}else y(t)},t.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(t){y(t)}},t}(),m=function(t){function i(i,e,s){var r,o,a=t.call(this)||this;(0,n.m)(i)||!i?r={next:null!=i?i:void 0,error:null!=e?e:void 0,complete:null!=s?s:void 0}:a&&h.v.useDeprecatedNextContext?((o=Object.create(i)).unsubscribe=function(){return a.unsubscribe()},r={next:i.next&&v(i.next,o),error:i.error&&v(i.error,o),complete:i.complete&&v(i.complete,o)}):r=i;return a.destination=new g(r),a}return(0,s.ZT)(i,t),i}(p);function y(t){h.v.useDeprecatedSynchronousErrorHandling?(0,d.O)(t):(0,o.h)(t)}function b(t,i){var e=h.v.onStoppedNotification;e&&u.z.setTimeout((function(){return e(t,i)}))}var w={closed:!0,next:a,error:function(t){throw t},complete:a}},5720:(t,i,e)=>{"use strict";e.d(i,{Lc:()=>a,w0:()=>o,Nn:()=>c});var s=e(655),n=e(8474),r=(0,e(1819).d)((function(t){return function(i){t(this),this.message=i?i.length+" errors occurred during unsubscription:\n"+i.map((function(t,i){return i+1+") "+t.toString()})).join("\n "):"",this.name="UnsubscriptionError",this.errors=i}})),h=e(3699),o=function(){function t(t){this.initialTeardown=t,this.closed=!1,this.Rt=null,this.Bt=null}var i;return t.prototype.unsubscribe=function(){var t,i,e,h,o;if(!this.closed){this.closed=!0;var a=this.Rt;if(a)if(this.Rt=null,Array.isArray(a))try{for(var c=(0,s.XA)(a),u=c.next();!u.done;u=c.next()){u.value.remove(this)}}catch(i){t={error:i}}finally{try{u&&!u.done&&(i=c.return)&&i.call(c)}finally{if(t)throw t.error}}else a.remove(this);var d=this.initialTeardown;if((0,n.m)(d))try{d()}catch(t){o=t instanceof r?t.errors:[t]}var p=this.Bt;if(p){this.Bt=null;try{for(var f=(0,s.XA)(p),v=f.next();!v.done;v=f.next()){var g=v.value;try{l(g)}catch(t){o=null!=o?o:[],t instanceof r?o=(0,s.ev)((0,s.ev)([],(0,s.CR)(o)),(0,s.CR)(t.errors)):o.push(t)}}}catch(t){e={error:t}}finally{try{v&&!v.done&&(h=f.return)&&h.call(f)}finally{if(e)throw e.error}}}if(o)throw new r(o)}},t.prototype.add=function(i){var e;if(i&&i!==this)if(this.closed)l(i);else{if(i instanceof t){if(i.closed||i.Dt(this))return;i.jt(this)}(this.Bt=null!==(e=this.Bt)&&void 0!==e?e:[]).push(i)}},t.prototype.Dt=function(t){var i=this.Rt;return i===t||Array.isArray(i)&&i.includes(t)},t.prototype.jt=function(t){var i=this.Rt;this.Rt=Array.isArray(i)?(i.push(t),i):i?[i,t]:t},t.prototype.$t=function(t){var i=this.Rt;i===t?this.Rt=null:Array.isArray(i)&&(0,h.P)(i,t)},t.prototype.remove=function(i){var e=this.Bt;e&&(0,h.P)(e,i),i instanceof t&&i.$t(this)},t.EMPTY=((i=new t).closed=!0,i),t}(),a=o.EMPTY;function c(t){return t instanceof o||t&&"closed"in t&&(0,n.m)(t.remove)&&(0,n.m)(t.add)&&(0,n.m)(t.unsubscribe)}function l(t){(0,n.m)(t)?t():t.unsubscribe()}},3912:(t,i,e)=>{"use strict";e.d(i,{v:()=>s});var s={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}},2566:(t,i,e)=>{"use strict";e.d(i,{x:()=>n});var s=e(655);function n(t,i,e,s,n){return new r(t,i,e,s,n)}var r=function(t){function i(i,e,s,n,r,h){var o=t.call(this,i)||this;return o.onFinalize=r,o.shouldUnsubscribe=h,o.Et=e?function(t){try{e(t)}catch(t){i.error(t)}}:t.prototype.Et,o.Lt=n?function(t){try{n(t)}catch(t){i.error(t)}finally{this.unsubscribe()}}:t.prototype.Lt,o.Ot=s?function(){try{s()}catch(t){i.error(t)}finally{this.unsubscribe()}}:t.prototype.Ot,o}return(0,s.ZT)(i,t),i.prototype.unsubscribe=function(){var i;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var e=this.closed;t.prototype.unsubscribe.call(this),!e&&(null===(i=this.onFinalize)||void 0===i||i.call(this))}},i}(e(5642).Lv)},4975:(t,i,e)=>{"use strict";e.d(i,{h:()=>r});var s=e(6798),n=e(2566);function r(t,i){return(0,s.e)((function(e,s){var r=0;e.subscribe((0,n.x)(s,(function(e){return t.call(i,e,r++)&&s.next(e)})))}))}},8380:(t,i,e)=>{"use strict";e.d(i,{z:()=>n});var s=e(655),n={setTimeout:function(){for(var t=[],i=0;i{"use strict";e.d(i,{L:()=>s});var s="function"==typeof Symbol&&Symbol.observable||"@@observable"},3699:(t,i,e)=>{"use strict";function s(t,i){if(t){var e=t.indexOf(i);0<=e&&t.splice(e,1)}}e.d(i,{P:()=>s})},1819:(t,i,e)=>{"use strict";function s(t){var i=t((function(t){Error.call(t),t.stack=(new Error).stack}));return i.prototype=Object.create(Error.prototype),i.prototype.constructor=i,i}e.d(i,{d:()=>s})},8846:(t,i,e)=>{"use strict";e.d(i,{x:()=>r,O:()=>h});var s=e(3912),n=null;function r(t){if(s.v.useDeprecatedSynchronousErrorHandling){var i=!n;if(i&&(n={errorThrown:!1,error:null}),t(),i){var e=n,r=e.errorThrown,h=e.error;if(n=null,r)throw h}}else t()}function h(t){s.v.useDeprecatedSynchronousErrorHandling&&n&&(n.errorThrown=!0,n.error=t)}},278:(t,i,e)=>{"use strict";function s(t){return t}e.d(i,{y:()=>s})},8474:(t,i,e)=>{"use strict";function s(t){return"function"==typeof t}e.d(i,{m:()=>s})},6798:(t,i,e)=>{"use strict";e.d(i,{e:()=>n});var s=e(8474);function n(t){return function(i){if(function(t){return(0,s.m)(null==t?void 0:t.lift)}(i))return i.lift((function(i){try{return t(i,this)}catch(t){this.error(t)}}));throw new TypeError("Unable to lift unknown Observable type")}}},5:(t,i,e)=>{"use strict";e.d(i,{h:()=>r});var s=e(3912),n=e(8380);function r(t){n.z.setTimeout((function(){var i=s.v.onUnhandledError;if(!i)throw t;i(t)}))}},5055:(t,i,e)=>{"use strict";e.d(i,{Zr:()=>s,rl:()=>n,Km:()=>r,n9:()=>h});const s={FullscreenChanged:"fullscreenChanged",PlayerFloatChanged:"playerFloatChanged",FloatingEnterStart:"floatingEnterStart",FloatingEnterStop:"floatingEnterStop",FloatingExitStart:"floatingExitStart",FloatingExitStop:"floatingExitStop"},n={OmidViewabilityThreshold:"OmidViewabilityThreshold"},r=Object.assign(Object.assign(Object.assign(Object.assign({Ready:"ready",Removed:"removed",SetupError:"setupError",IsViewable:"isViewable",SizeChanged:"sizeChanged",BrandingClicked:"brandingClicked",ImpressionPrice:"impressionPrice",ImpressionRevenue:"impressionRevenue"},{Play:"play",Pause:"pause",QualityChanged:"qualityChanged",PlayError:"playError",VolumeChanged:"volumeChanged"}),s),n),{AdClick:"adClick",AdPlay:"adPlay",AdPause:"adPause",AdImpression:"adImpression",AdCompleted25:"adCompleted25",AdCompleted50:"adCompleted50",AdCompleted75:"adCompleted75",AdCompleted100:"adCompleted100",AdSkipped:"adSkipped",AdError:"adError",AdStopped:"adStopped",AdCompanion:"adCompanion"});var h;!function(t){t.SetupError="SetupError",t.NoPlayer="NoPlayer",t.RenderError="RenderError"}(h||(h={}))},2817:(t,i,e)=>{"use strict";var s,n;e.d(i,{lI:()=>s,do:()=>n,Ht:()=>r,bS:()=>h}),function(t){t.Chrome="chrome",t.Firefox="firefox",t.Edge="edge",t.Safari="safari",t.Opera="opera",t.Samsung="samsung",t.Facebook="facebook",t.InternetExplorer="ie"}(s||(s={})),function(t){t.Standard="standard",t.Webkit="webkit",t.Moz="moz",t.Ms="ms",t.O="o"}(n||(n={}));const r=[{name:n.Standard,keys:{fullscreenEnabled:"fullscreenEnabled",fullscreenElement:"fullscreenElement",requestFullscreen:"requestFullscreen",exitFullscreen:"exitFullscreen",fullscreenchange:"fullscreenchange",fullscreenerror:"fullscreenerror"}},{name:n.Webkit,keys:{fullscreenEnabled:"webkitFullscreenEnabled",fullscreenElement:"webkitFullscreenElement",requestFullscreen:"webkitRequestFullscreen",exitFullscreen:"webkitExitFullscreen",fullscreenchange:"webkitfullscreenchange",fullscreenerror:"webkitfullscreenerror"}},{name:n.Webkit,keys:{fullscreenEnabled:"webkitSupportsFullscreen",fullscreenElement:"webkitFullscreenElement",requestFullscreen:"webkitEnterFullscreen",exitFullscreen:"webkitExitFullscreen",fullscreenchange:"webkitfullscreenchange",fullscreenerror:"webkitfullscreenerror"}},{name:n.Moz,keys:{fullscreenEnabled:"mozFullScreenEnabled",fullscreenElement:"mozFullScreenElement",requestFullscreen:"mozRequestFullScreen",exitFullscreen:"mozCancelFullScreen",fullscreenchange:"mozfullscreenchange",fullscreenerror:"mozfullscreenerror"}},{name:n.Ms,keys:{fullscreenEnabled:"msFullscreenEnabled",fullscreenElement:"msFullscreenElement",requestFullscreen:"msRequestFullscreen",exitFullscreen:"msExitFullscreen",fullscreenchange:"MSFullscreenChange",fullscreenerror:"MSFullscreenError"}}];var h;!function(t){t.Self="_self",t.Blank="_blank",t.Parent="_parent",t.Top="_top"}(h||(h={}))},2820:(t,i,e)=>{"use strict";var s,n,r;e.d(i,{Gj:()=>s,s6:()=>n,s_:()=>r,Rq:()=>h,vF:()=>o,Ig:()=>a,Ng:()=>c,iu:()=>l,ed:()=>u,QO:()=>d,Yk:()=>p,_7:()=>f,jG:()=>v,PK:()=>g,hQ:()=>m,sN:()=>b,oV:()=>w,pT:()=>x,Hs:()=>S,mr:()=>_}),function(t){t.Invisible="cnx-mod-invisible",t.HoverStart="cnx-mod-hover-s",t.HoverEnd="cnx-mod-hover",t.HoverBoom="cnx-mod-boom",t.DisplayNone="cnx-mod-display-none",t.Active="cnx-mod-active",t.HideOnVolumeHover="cnx-hide-on-volume-hover",t.HideOnSingleVideo="cnx-hide-on-single-video",t.NoTransition="cnx-mod-no-transition",t.Collapsable="cnx-mod-collapsable",t.HasCustomScrollbar="cnx-mod-scrollbar",t.Show="cnx-mod-show",t.Hide="cnx-mod-hide",t.NoHeight="cnx-mod-no-height",t.OnHold="cnx-mod-onhold",t.ForceLineBreak="cnx-mod-force-line-break",t.HideOnAdOverlay="cnx-mod-ad-overlay-none",t.HideOnPodLoadingScreen="cnx-mod-pod-loading-none"}(s||(s={})),function(t){t.Fullscreen="cnx-in-fullscreen",t.Ad="cnx-in-ad",t.AdOverlayType="cnx-in-ad-overlay",t.AdNonLinearType="cnx-in-ad-nonlinear",t.AdFullSize="cnx-in-ad-full",t.AdShowCard="cnx-ad-show-card",t.ShowControls="cnx-in-show-controls",t.Mobile="cnx-in-mobile",t.Desktop="cnx-in-desktop",t.Muted="cnx-in-mute",t.Collapsed="cnx-in-collapse",t.GalleryPortrait="cnx-in-g-portrait",t.GalleryLandscape="cnx-in-g-landscape",t.ContextController="cnx-context-controller",t.HideUI="cnx-in-hide-ui",t.HideNonLinearAd="cnx-in-hide-non-linear",t.PodLoadingScreen="cnx-in-pod-loading",t.AdShowCountdown="cnx-ad-show-countdown",t.CloseOn="cnx-close-on",t.CloseOff="cnx-close-off",t.CloseHover="cnx-close-hover",t.CloseFloatOn="cnx-close-float-on",t.CloseFloatOff="cnx-close-float-off",t.CloseFloatHover="cnx-close-float-hover",t.UiInView="cnx-ui-in-view"}(n||(n={})),function(t){t.Playing="cnx-is-playing",t.Paused="cnx-is-paused",t.Stopped="cnx-is-stopped",t.Preroll="cnx-is-preroll",t.Postroll="cnx-is-postroll",t.Loading="cnx-is-loading",t.LiveEnded="cnx-live-ended"}(r||(r={}));const h={Xxl:"cnx-bp-xxl-v",Xl:"cnx-bp-xl-v",Lg:"cnx-bp-lg-v",Md:"cnx-bp-md-v",Sm:"cnx-bp-sm-v",Xs:"cnx-bp-xs-v",Xxs:"cnx-bp-xxs-v"},o={Xxl:"cnx-bp-xxl-st",Xl:"cnx-bp-xl-st",Lg:"cnx-bp-lg-st",Md:"cnx-bp-md-st",Sm:"cnx-bp-sm-st",Xs:"cnx-bp-xs-st",Xxs:"cnx-bp-xxs-st"};var a,c,l,u,d,p,f;!function(t){t.Responsive="cnx-size-responsive",t.Fixed="cnx-size-fixed"}(a||(a={})),function(t){t.ClickOption="cnx-cm-item--click",t.ToggleOption="cnx-cm-item--toggle",t.SubmenuOption="cnx-cm-item--submenu",t.ItemIcon="cnx-cm-item__icon",t.ItemTitle="cnx-cm-item__title",t.ItemExtra="cnx-cm-item__extra",t.Items="cnx-cm-items",t.Container="cnx-cm-container"}(c||(c={})),function(t){t.Icons="cnx-color-icon",t.TooltipText="cnx-color-tt-text",t.TooltipBackground="cnx-color-tt-bg",t.AccentColor="cnx-color-accent",t.PrimaryColor="cnx-color-primary",t.SecondaryColor="cnx-color-secondary",t.TitleComponent="cnx-title-component",t.TitleLink="cnx-color-title-link",t.SlideProgressBar="cnx-slides-progress-bar",t.ProgressFill="cnx-progress-fill"}(l||(l={})),function(t){t.InheritTitleFontFamily="cnx-inherit-title-font-family",t.InheritBodyFontFamily="cnx-inherit-body-font-family"}(u||(u={})),function(t){t.Connatix="#0099FF",t.Icons="#FFFFFF",t.PrimaryBackground="#F1F1F1",t.PrimaryForeground="#000000",t.SecondaryBackground="#000000",t.SecondaryForeground="#F1F1F1",t.AccentForeground="#FFFFFF"}(d||(d={})),function(t){t.CaptionContainer="cnx-captions-text-holder"}(p||(p={})),function(t){t.MainClass="cnx-float",t.TransitionClass="cnx-float-transition",t.AlwaysFloating="cnx-always-floating"}(f||(f={}));const v={FadeOutBase:"cnx-fade-out-base",FadeOut:"cnx-fade-out",FadeInBase:"cnx-fade-in-base",FadeIn:"cnx-fade-in"};var g,m,y;!function(t){t.CurrentSlide="cnx-slide-current",t.NextSlide="cnx-slide-next",t.SlideLeft="cnx-slide-left",t.SlideRight="cnx-slide-right"}(g||(g={})),function(t){t.OpacityInTransition="cnx-tooltip-animation-in"}(m||(m={})),function(t){t.Card="cnx-g-card",t.CardSlot="cnx-g-card-slot",t.CardImage="cnx-g-card-image",t.CardText="cnx-g-card-text",t.CardTextContainer="cnx-g-card-text-container",t.CardPlaceholder="cnx-g-card-placeholder",t.CardRail="cnx-g-rail",t.StyleDetailed="cnx-g-style-detailed",t.StyleVisual="cnx-g-style-visual",t.ExploreMore="cnx-g-explore-more",t.FadeOut="cnx-g-fade-out"}(y||(y={}));const b={MainContainer:"cnx-main-container",MainContainerFlex:"cnx-main-container-flex",PlayerWrapper:"cnx-player-wrapper",ImagePlaceholder:"cnx-image-placeholder"},w="cnx-ratio",x="cnx-hide-video",S={Text:"cnx-skip-ad-text",Timer:"cnx-timer-loader",Icon:"cnx-skip-ad-icon",SkipAdButton:"cnx-skip-ad-button",InTimer:"cnx-skip-ad-in-timer"},_={Icon:"cnx-pod-open-new-icon",Button:"cnx-pod-read-more-btn",ButtonContainer:"cnx-pod-read-more-container",Wrapper:"cnx-pod-read-more-wrapper",BackgroundImg:"cnx-pod-loading-background",InfoContainer:"cnx-pod-loading-info",FallbackContainer:"cnx-pod-loading-fallback",SlotCountText:"cnx-pod-slot-count-text"}},45:(t,i,e)=>{"use strict";e.d(i,{g:()=>s,x:()=>n});const s=JSON.parse('{"version":154690,"domainPrefix":"","logToConsole":false,"logToServer":true,"env":"production"}'),n=!0},782:(t,i,e)=>{"use strict";var s,n;e.d(i,{Xh:()=>s,Uh:()=>n,dP:()=>r}),function(t){t.SessionRendered="rendered",t.SessionView="enter_view"}(s||(s={})),function(t){t.UserInteraction="userInteraction",t.GeneralUserInteraction="generalUserInteraction",t.CanStart="canStart",t.Destroy="destroy"}(n||(n={}));const r={StateChanged:"stateChanged"}},5049:(t,i,e)=>{"use strict";e.d(i,{x:()=>s});const s="//securepubads.g.doubleclick.net/tag/js/gpt.js"},2157:(t,i,e)=>{"use strict";e.d(i,{XY:()=>n,f3:()=>r,xs:()=>h,fJ:()=>o,kd:()=>a});var s=e(289);const n=200,r=31,h={[s.ProtoAdType.Video]:2e3,[s.ProtoAdType.Overlay]:1e3,[s.ProtoAdType.Nonlinear]:1e3},o=.5,a="connatix.com"},308:(t,i,e)=>{"use strict";e.d(i,{a:()=>n,M:()=>r});var s=e(289);const n=[s.ProtoDeviceType.Smartphone,s.ProtoDeviceType.Tablet];var r;!function(t){t.Ios="ios",t.Android="android",t.Mac="macos",t.Windows="windows",t.Linux="linux",t.IPadOS="ipados"}(r||(r={}))},7577:(t,i,e)=>{"use strict";e.d(i,{br:()=>s,Fk:()=>n,Kp:()=>r,a8:()=>h,ym:()=>o});const s="https://connatix.com/privacy-policy/",n="v",r="pid",h="sid",o="cid"},9115:(t,i,e)=>{"use strict";e.d(i,{T9:()=>s,p7:()=>n,uD:()=>r,s_:()=>h,Y0:()=>o,ti:()=>a,oG:()=>c});const s=/(\d\d):(\d\d):(\d\d)(\.(\d\d\d))?/,n=36e5,r=6e4,h=1e3,o=60,a=864e5,c=60},9078:(t,i,e)=>{"use strict";var s,n;e.d(i,{zc:()=>s,fI:()=>n,r5:()=>r}),function(t){t.Fullscreen="fullscreen",t.Normal="normal",t.Thumbnail="thumbnail"}(s||(s={})),function(t){t.AdLoaded="AdLoaded",t.AdStarted="AdStarted",t.AdStopped="AdStopped",t.AdSkipped="AdSkipped",t.AdSkippableStateChange="AdSkippableStateChange",t.AdSizeChange="AdSizeChange",t.AdLinearChange="AdLinearChange",t.AdDurationChange="AdDurationChange",t.AdExpandedChange="AdExpandedChange",t.AdRemainingTimeChange="AdRemainingTimeChange",t.AdVolumeChange="AdVolumeChange",t.AdImpression="AdImpression",t.AdVideoStart="AdVideoStart",t.AdVideoFirstQuartile="AdVideoFirstQuartile",t.AdVideoMidpoint="AdVideoMidpoint",t.AdVideoThirdQuartile="AdVideoThirdQuartile",t.AdVideoComplete="AdVideoComplete",t.AdClickThru="AdClickThru",t.AdInteraction="AdInteraction",t.AdUserAcceptInvitation="AdUserAcceptInvitation",t.AdUserMinimize="AdUserMinimize",t.AdUserClose="AdUserClose",t.AdPaused="AdPaused",t.AdPlaying="AdPlaying",t.AdLog="AdLog",t.AdError="AdError"}(n||(n={}));const r="nonLinearCloseClick"},1730:(t,i,e)=>{"use strict";e.d(i,{j:()=>s,e:()=>o});var s,n=e(8423);class r{}r.clientAb0=(0,n.Vm)([50,50]),r.clientAb1=(0,n.Vm)([50,50]);class h{}h.clientAb0=(0,n.Vm)([50,50]),h.clientAb1=(0,n.Vm)([50,50]),function(t){t[t.ElementsABService=0]="ElementsABService",t[t.PlayspaceABService=1]="PlayspaceABService"}(s||(s={}));class o{static get clientAb0(){return this.getABValueForKey("clientAb0")}static get clientAb1(){return this.getABValueForKey("clientAb1")}static getABValueForKey(t){return this.abServiceType===s.PlayspaceABService?h[t]:r[t]}}},5348:(t,i,e)=>{"use strict";e.d(i,{$:()=>h});const s="ats-liveramp-envelope-request";var n=e(289),r=e(8423);class h{static getEnvelopeFromParentAts(t){var i;return(null===(i=h.envelope)||void 0===i?void 0:i.envelope)?Promise.resolve():new Promise((i=>{if(!t.ats)return h.communicateViaPostMessage(t),void i();t.ats.retrieveEnvelope().then((e=>{e?(h.envelope=JSON.parse(e),i()):(h.communicateViaPostMessage(t),i())}))}))}static communicateViaPostMessage(t){h.dispatchEnvelopeRequestEvent(t),h.addEnvelopeListener()}static dispatchEnvelopeRequestEvent(t){try{t.postMessage(s,"*")}catch(i){void 0!==t.contentWindow&&t.contentWindow.postMessage(s,"*")}}static receiveEnvelopeListener(t){t&&t.data&&"ats-liveramp-envelope-result"===t.data.message&&t.data.result&&(h.envelope=JSON.parse(t.data.result),window.removeEventListener("message",h.receiveEnvelopeListener))}static addEnvelopeListener(){window.addEventListener("message",h.receiveEnvelopeListener,!1)}static getEnvelopeWithConsent(t,i){return new Promise(((e,s)=>{i.isConsentConnatix()?h.getEnvelopeFromParentAts(t).then((()=>{var t;(null===(t=h.envelope)||void 0===t?void 0:t.envelope)?e(h.envelope.envelope):setTimeout((()=>s()),500)})):setTimeout((()=>s()),500)}))}static getEnvelope(t,i){(0,r.Up)((()=>h.getEnvelopeWithConsent(t,i))).catch((()=>{}))}static setEnvelopeStatus(t){h.envelopeStatus=t}static getValidEnvelope(){var t;return(null===(t=h.envelope)||void 0===t?void 0:t.envelope)&&h.envelopeStatus===n.LiveRampEnvelopeStatusEnum.Ok?h.envelope.envelope:null}static wasRequestEnhanced(t){var i;return(null===(i=h.envelope)||void 0===i?void 0:i.envelope)&&t===n.LiveRampEnvelopeStatusEnum.Ok}}h.envelope=null,h.envelopeStatus=n.LiveRampEnvelopeStatusEnum.Ok},4280:(t,i,e)=>{"use strict";e.d(i,{_:()=>d});var s=e(5049);const n=["adBanner","banner-search","abc_banner","Banner_Top","ad_container","pub_300x250","pub_300x250m","pub_728x90","text-ad","text_ad","textAd","text-ad-links","text_ads","text-ads","text-ad-links"],r="cnxtestadblock";var h=e(1561),o=e(8423),a=e(7726),c=e(7427),l=e(6515),u=e(4975);class d{static get isBannerBlocked(){return this.Ut}static onAdBlockerDetected(){return this.Nt.asObservable().pipe((0,u.h)((t=>null!==t)))}static detectUsingCSS(t){try{let i=!1;t.document.body.insertAdjacentHTML("beforeend",this.zt());const e=t.document.getElementById(r);return 0!==e.getBoundingClientRect().height&&0!==e.getBoundingClientRect().width||(i=!0),t.document.body.removeChild(e),this.qt(i),i}catch(t){return this.qt(!1),!1}}static detectUsingScript(){return new Promise((t=>{const i=(0,o.pE)(window).topFrame,e=i=>{this.Nt.next(i),this.Nt.complete(),t(i)};i.googletag&&e(!1),(0,h.dZ)({src:s.x},i.document.head,i,(()=>i.googletag&&(0,c.QM)(i.googletag.getVersion())?e(!1):e(!0)),(()=>e(!0)))}))}static qt(t){null!==this.Ut&&this.Ut!==t&&(0,a.n)({message:"AdBlockerDetection_changed_after_new_global",level:a.D.INFO,exception:`${this.Ut}`},{throttle:2,sendMaxLog:!1}),this.Ut=t,this.Ut&&(this.Nt.next(!0),this.Nt.complete())}static zt(){return`
`}}d.Ut=null,d.Nt=new l.X(null)},7417:(t,i,e)=>{"use strict";var s;!function(t){t.prebid="prebid",t.bid="bid",t.win="win",t.impression="impression",t.viewableImpression="viewableImpression",t.postbid="postbid",t.initAd="initAd",t.request="request",t.startAd="startAd"}(s||(s={}))},497:(t,i,e)=>{"use strict";e.d(i,{S:()=>s});class s{}s.MaxLogOverflow=1e3,s.maxLogOverflowCount={},s.logCount={},s.maxLogSent={},s.sessionId="",s.pageFocus=!1,s.playerDestroyed=!1,s.incrementLogCount=t=>{s.logCount[t]?(++s.maxLogOverflowCount[t],++s.logCount[t]):(s.logCount[t]=1,s.maxLogOverflowCount[t]=1)},s.isMaxLog=(t,i)=>!!(s.logCount[t]&&s.logCount[t]>i),s.isMaxLogOverflow=t=>s.maxLogOverflowCount[t]>s.MaxLogOverflow&&(s.maxLogOverflowCount[t]=1,!0),s.setMaxLogSent=t=>{s.maxLogSent[t]=!0},s.isMaxLogSent=t=>!!s.maxLogSent[t]},1886:(t,i,e)=>{"use strict";e.d(i,{f:()=>n});var s=e(7577);class n{static getCidKeyValueObject(){return!!this.customerId&&{[s.ym]:this.customerId}}}n.customerId=null},7910:(t,i,e)=>{"use strict";e.d(i,{X:()=>a});var s=e(308),n=e(8423),r=e(2817),h=e(6615),o=e(7427);class a{constructor(t){this.Wt=t,this.Gt=100,this.Jt=(0,n.pE)(window).topFrame,this.Qt=s.a.indexOf(this.Wt.browser.device)>-1,this.Xt=(0,n.dz)(),this.Yt={browserType:this.Kt(),browserVersion:this.Wt.browser.browserVersion},this.Zt=this.ii(),this.ei=this.pageUrl.substr(0,this.Gt),this.si=(0,h._Y)(this.ei)}Kt(){let t;return Object.keys(r.lI).forEach((i=>{this.Wt.browser.browserType.toLowerCase().includes(r.lI[i])&&(t=r.lI[i])})),t}ii(){let t,i=0;const e=this.Wt.browser.osCode.split("_"),n=e[0].toLowerCase();return Object.keys(s.M).forEach((i=>{n.includes(s.M[i])&&(t=s.M[i])})),t===s.M.IPadOS&&(t=s.M.Ios),e.length>1&&(i=parseFloat(`${e[1]||0}.${e[2]||0}`)),{os:t,osVersion:i}}get device(){return this.Wt.browser.device}get browser(){return this.Yt}get os(){return this.Zt}get geoLocation(){return this.Wt.geoLocation}get pageUrl(){return this.Wt.pageUrl||""}get pageUrlTrunc(){return this.ei}get pageDomain(){return this.si}get isMobile(){return this.Qt}get isInApp(){return(0,o.QM)(this.Wt.bundleID)}get isInAppAndroid(){return this.isInApp&&this.os.os===s.M.Android}get playerId(){return this.Wt.playerId}get appId(){return this.Xt}get bundleID(){return(0,o.QM)(this.Wt.iOSAppID)?this.Wt.iOSAppID:this.Wt.bundleID}get domainURL(){return this.Wt.domainURL}get storeURL(){return this.Wt.storeURL}get explorationMode(){return this.Wt.explorationMode}get appName(){return this.Wt.appName}get appCategories(){return this.Wt.appCategories}get appVersion(){return this.Wt.appVersion}get sdkVersion(){return this.Wt.sdkVersion}get appPrivacyPolicy(){return this.Wt.appPrivacyPolicy}get appIsPaid(){return this.Wt.appIsPaid}get deviceId(){return this.Wt.deviceId}get topWindow(){return this.Jt}get appPageURL(){return this.Wt.appPageURL}get isOVPDomain(){return this.Wt.isOVPDomain}}},1995:(t,i,e)=>{"use strict";e.d(i,{C:()=>s});class s{constructor(){this.ni=!1,this.promise=new Promise(((t,i)=>{this.ri=t,this.oi=i}))}ai(){this.ni||(this.ni=!0)}resolve(t){this.ai(),this.ri(t)}reject(t){this.ai(),this.oi(t)}get isPending(){return!this.ni}}},7754:(t,i,e)=>{"use strict";e.d(i,{P:()=>a});var s,n=e(7427),r=e(289);!function(t){t[t.Desktop=2]="Desktop",t[t.SmartTV=3]="SmartTV",t[t.Smartphone=4]="Smartphone",t[t.Tablet=5]="Tablet",t[t.GameConsole=6]="GameConsole",t[t.Unrecognized=7]="Unrecognized"}(s||(s={}));const h={[r.ProtoDeviceType.Desktop]:s.Desktop,[r.ProtoDeviceType.Smartphone]:s.Smartphone,[r.ProtoDeviceType.Tablet]:s.Tablet,[r.ProtoDeviceType.GameConsole]:s.GameConsole,[r.ProtoDeviceType.SmartTV]:s.SmartTV,[r.ProtoDeviceType.WearableComputer]:s.Unrecognized,[r.ProtoDeviceType.PDA]:s.Unrecognized,[r.ProtoDeviceType.Unrecognized]:s.Unrecognized},o="cnx_fraud_sensor";class a{constructor(t,i,e,s){this.ci=t,this.ui=i,this.di=e,this.pi(s)}addFraudSensorScript(){if(this.ui.getElementById(o))return;const t={id:o,src:this.ci.setupMacros("https://s.srvsynd.com/2/234175/analytics.js?dt=2341751597675869250012&di=[DOMAIN]&ui=[FS_USER_ID]&md=[FS_MEDIA_TYPE]&ap=[FS_DEVICE_IDENT]&sr=[CNX_SUPPLIER_ID]&pp=[PUBLISHER_ID]&ti=[SESSION_ID]&de=[FS_DEVICE_TYPE]&to=[MGTO]&pv=[MGID]")};this.ui.insertScript(t,null,"FraudSensor_script_error")}pi(t){t=(0,n.QM)(t)?t:"00000000-0000-0000-0000-000000000000";const{lookupId:i,lookupResponseCode:e,publisherAdsTxt:s,deviceIdentifier:r}=this.di,o=h[this.di.deviceType];this.ci.setPublisherId(s),this.ci.setUserId(t),this.ci.setFraudSensorMacros({lookupId:i,lookupResponseCode:e,deviceType:o,mediaType:2,deviceIdentifier:r})}}},8804:(t,i,e)=>{"use strict";e.d(i,{a:()=>z});var s=e(289),n=e.n(s),r=e(7726),h=e(8423),o=e(1561),a=e(9446),c=e(7398),l=e(6438),u=e(7910),d=e(6615),p=e(45),f=e(497),v=e(7427),g=e(3030),m=e(5055),y=e(2356),b=e(1730),w=e(7272),x=e(3352),S=e(1580),_=e(3217),A=e(3810),P=e(5880),k=e(782),I=e(2820),T=e(649),C=e(7754),M=e(6284),E=e(3640),L=e(4280),O=e(2645),R=e(6243),B=e(7382),D=e(5732),j=e(4974),F=e(525),$=e(8852),V=e(7577),U=function(t,i,e,s){return new(e||(e=Promise))((function(n,r){function h(t){try{a(s.next(t))}catch(t){r(t)}}function o(t){try{a(s.throw(t))}catch(t){r(t)}}function a(t){var i;t.done?n(t.value):(i=t.value,i instanceof e?i:new e((function(t){t(i)}))).then(h,o)}a((s=s.apply(t,i||[])).next())}))};const N="player_instance",H=",";class z extends P._{constructor(t,i,e,s,n,r,h){super(),this.services=t,this.GLOBAL=i,this.vi=e,this.gi=s,this.mi=n,this.yi=r,this.readyCallback=h,this.bi={},this.wi="",this.xi=100,this.Si=1e3,this.isServerlessMode=!1,this._i=!1,this.Ai=[],this.Pi="{{omidVerificationClient}}",this.ki=[],this.vi&&this.Ii(),L._.detectUsingCSS(this.GLOBAL),this.Ti=(0,o.sw)(this.GLOBAL)}initUrlSuffixer(t){const i=new O.f;if(t.bandwidthLoggingState===s.ProtoBandwidthLoggingEnum.Disabled)return i;const e=this.Ci(t);return i.setUrlParams({domain:F.n.bundleDomain,urlParams:[(0,$.IS)(e,t.playerId)]}),i}Mi(){const t={playerId:this.externalAttributes.playerId,_appSettings:this.externalAttributes._appSettings,settings:{_connatixInternals:this.externalAttributes.settings._connatixInternals,advertising:{},customization:{},rendering:{},plugins:{}}};this.externalAttributes.customParam1&&(t.customParam1=this.externalAttributes.customParam1),this.externalAttributes.customParam2&&(t.customParam2=this.externalAttributes.customParam2),this.externalAttributes.customParam3&&(t.customParam3=this.externalAttributes.customParam3),this.externalAttributes.customParam4&&(t.customParam4=this.externalAttributes.customParam4),this.externalAttributes.customParam5&&(t.customParam5=this.externalAttributes.customParam5),this.externalAttributes.settings.useExternalViewabilityService&&(t.settings.useExternalViewabilityService=this.externalAttributes.settings.useExternalViewabilityService),this.externalAttributes=t}Ei(t){const i=this.GLOBAL.frameElement;if(!(0,o.GF)(i))return;let e=!0;i&&t&&(e=!1),e?(0,o.MV)(i):(0,o.Ho)(i)}Li(t,i){try{return this.Oi(t,i)}catch(t){return null}}Ri(t){let i;try{i=eval(t)}catch(e){i=t.replace(/\[(\d+)]/g,":nth-child($1)")}return i}Bi(t,i){const e=this.Li(t,i);return null===e?new Promise((e=>{setTimeout((()=>{e(this.Bi(t,i))}),this.xi)})):Promise.resolve(e)}Di(t,i){const e=this.Ri(t);return Promise.resolve(this.Bi(e,i))}Oi(t,i){let e;return t.split(/(\.cnxEq\(\d+\))/).filter((t=>t)).forEach((t=>{e=t.includes("cnxEq")?this.ji(e,t):e?e.querySelectorAll(t):(0,o.Wb)(t,i)})),e?(e.hasOwnProperty("length")&&(e=e.length>0?e[0]:null),e):null}ji(t,i){const e=/\d+/g.exec(i),s=parseInt(e[0],10);return s>t.length?(0,g.Sz)(t)[t.length-1]:(0,g.Sz)(t)[s]}Fi(){return this.gi?s.ProtoImplementationType.Amp:s.ProtoImplementationType.Web}$i(t,i){const e=(0,h.pE)(this.GLOBAL);let s;return s=(0,v.$K)(this.externalAttributes.settings.rendering.forceInsertPath)?this.externalAttributes.settings.rendering.forceInsertPath:i.forceInsertPath,new Promise(((n,r)=>{let h=(0,o.G$)(this.wi,this.GLOBAL);if(s||t.tag.parentNode===this.GLOBAL.document.head&&(!e.topChildFrame||i.renderInFrame)){let t,s,r;e.topChildFrame&&(0,o.IV)(e.topChildFrame.frameElement,I.Gj.DisplayNone),t=(0,v.QM)(this.externalAttributes.settings.rendering.containerSelector)?this.externalAttributes.settings.rendering.containerSelector:i.containerSelector,s=(0,v.$K)(this.externalAttributes.settings.rendering.insertPosition)?this.externalAttributes.settings.rendering.insertPosition:i.insertPosition,r=(0,v.$K)(this.externalAttributes.settings.rendering.position)?this.externalAttributes.settings.rendering.position:i.position,this.Di(t,e.topFrame).then((t=>{this.Vi(t,h,s,r),n({insertContainer:h,insertWindow:e.topFrame})}))}else e.topChildFrame&&!i.renderInFrame?(h=(0,o.G$)(this.wi,e.topFrame),e.topChildFrame.frameElement.parentNode.insertBefore(h,e.topChildFrame.frameElement),(0,o.cn)(e.topChildFrame.frameElement,I.Gj.DisplayNone),n({insertContainer:h,insertWindow:e.topFrame})):(t.tag.parentNode.insertBefore(h,t.tag),n({insertContainer:h}))}))}Ui(t,i,e){(0,o.IS)(i,t,e)}Ni(t,i,e){switch(e){case s.ProtoPlayerInsertMode.BeforeContainer:t.parentElement.insertBefore(i,t);break;case s.ProtoPlayerInsertMode.ReplaceContainer:t.parentElement.insertBefore(i,t),(0,o.bX)(t);break;case s.ProtoPlayerInsertMode.HideContainer:t.parentElement.insertBefore(i,t),(0,o.MV)(t);break;case s.ProtoPlayerInsertMode.AfterContainer:t.nextElementSibling?t.parentElement.insertBefore(i,t.nextElementSibling):t.parentElement.appendChild(i)}}Vi(t,i,e,n){e===s.ProtoPlayerInsertMode.WithinContainer?this.Ui(t,i,n):this.Ni(t,i,e)}Hi(t,i=[]){t.lineItems=[...t.lineItems,...i];const e=t.lineItems.length;t.lineItems=(0,g.qy)("advertiserLineItemId",t.lineItems),e!==t.lineItems.length&&(0,r.n)({level:r.D.WARN,message:"Loader_duplicated_adsources",callStack:"_"})}zi(t,i){const e=t.players[i],{playerModel:n,globalDomUtilsService:r,urlSuffixerService:h}=this.bi[i];if(this.qi(t.cookieSyncUrls),this.services.UserManagerService.setGeoLocation(t.geoLocation),f.S.sessionId=e.sessionId,this.Wi.addPlayerSession(e.playerId,e.sessionId),!n)return void this.registerApiError(m.n9.SetupError,"No playlist was provided!");const o=new u.X({iOSAppID:this.vi&&!this.mi?t.iOSAppID:null,browser:t.browser,geoLocation:t.geoLocation,pageUrl:this.pageUrl,playerId:n.playerId,explorationMode:t.explorationMode,bundleID:this.externalAttributes._appSettings.bundleID,domainURL:this.externalAttributes._appSettings.domainURL,storeURL:this.externalAttributes._appSettings.storeURL,appCategories:this.externalAttributes._appSettings.appCategories,appIsPaid:this.externalAttributes._appSettings.appIsPaid,appName:this.externalAttributes._appSettings.appName,appPrivacyPolicy:this.externalAttributes._appSettings.appPrivacyPolicy,appVersion:this.externalAttributes._appSettings.appVersion,sdkVersion:this.externalAttributes._appSettings.sdkVersion,deviceId:this.externalAttributes._appSettings.deviceID,appPageURL:this.externalAttributes._appSettings.appPageURL,isOVPDomain:this.yi}),a=new y.v(r),d=this.getViewabilityService(n,a);L._.detectUsingCSS(n.global);const p=new l.c(n,t.geoLocation,o.pageUrl,o.pageDomain,this.externalAttributes._appSettings,this.Ti,t.publisherNetworkCode),g={services:{GlobalDomUtilsService:r,ViewabilityService:d,TrackingService:this.Gi(n,t,i),ResizeObserver:new c.a(n.global),UserManagerService:this.services.UserManagerService,MacrosService:p,EventsStorageService:this.services.EventsStorageService,PageFocusService:a,InteractionService:new M.k(n.global,o.isMobile),UrlSuffixerService:h},config:o};L._.isBannerBlocked&&g.services.TrackingService.trackSessionAdBlocker(s.ProtoAdBlockDetectionTypeEnum.Banner),g.services.UserManagerService.setPageUrl(g.config.pageUrl);const b=this.Fi();g.services.TrackingService.setImplementationTypeOnMeta(b),n.externalMacros&&g.services.MacrosService.addExtraMacros(n.externalMacros),g.services.UserManagerService.onEvent([w.k.CCPA_INFO_RECEIVED]).then((()=>{g.services.MacrosService.setUsPrivacyString(g.services.UserManagerService.getUsPrivacyString())})),g.services.UserManagerService.onEvent([w.k.CONSENT_DATA_UPDATE]).then((()=>{g.services.TrackingService.updateMetadataModel({userId:g.services.UserManagerService.getTrackableUser()});const t=g.services.UserManagerService.getConsentPayload();if(g.services.TrackingService.hasGdprConsentPayload=(0,v.QM)(t),this.services.UserManagerService.gdprConsentMode===s.ProtoGdprConsentModeEnum.NoConsent||this.vi){const t=n.lineItemSettings.lineItems.filter((t=>(0,v.QM)(t.vendorId))).every((t=>this.services.UserManagerService.isConsent(t.vendorId)));this.services.UserManagerService.gdprConsentMode=t?s.ProtoGdprConsentModeEnum.AllGood:s.ProtoGdprConsentModeEnum.NotAllDemandConsent}}));const x={wasPlayerReloaded:this.Wi.wasPlayerReloaded(e.playerId),wasPlayerInView:this.Wi.getSessionInView(e.playerId)};this.renderer=this.getRendererInstance(n,g,x,this.externalAttributes._appSettings),this.subscribe(k.Xh.SessionView,this.renderer,(()=>{this.Wi.addSessionInView(e.playerId)})),this.subscribe(k.Xh.SessionRendered,this.renderer,(()=>{this.Qi(p,r,g.config)}));const S=Object.assign({configEnums:this.getApiConfigEnums(),configEvents:this.getApiConfigEvents()},this.renderer.getApiMethods());let _=e.customJsCode;if(_){const t=`${N}_${g.config.appId}`;this.GLOBAL[t]=S,_=_.cnx_replaceAll(`"{{${N}}}"`,`window.${t}`)}this.renderer.init((()=>{this.Xi(_)}))?this.registerApiSuccess(S):this.registerApiError(m.n9.RenderError,"Player size under supported value")}Gi(t,i,e){return t.disableTracking?new x.G:new a.e({userManagerService:this.services.UserManagerService,browser:i.browser,geoLocation:i.geoLocation,playerId:t.playerId,userId:this.services.UserManagerService.getTrackableUser(),sessionId:i.players[e].sessionId,pageUrl:this.pageUrl,bundleId:this.externalAttributes._appSettings.bundleID,customParam1:this.externalAttributes.customParam1,customParam2:this.externalAttributes.customParam2,customParam3:this.externalAttributes.customParam3,customParam4:this.externalAttributes.customParam4,customParam5:this.externalAttributes.customParam5,abTestId:i.players[e].abTestId,explorationMode:i.explorationMode,bundleAbId:i.bundleAbId,bundlePart:i.bundlePart})}Xi(t,i={useSafeMode:!0}){if(!t)return;const{global:e,useSafeMode:s}=i,n=e||this.GLOBAL;let r;r=s?`\n (function() {\n "use strict";\n try {\n ${t}\n }catch(e){\n console.warn('---CnxCustomApiError---');\n console.warn(e.message);\n }\n })()\n `:t,(0,o.ML)(n.document.head,n,r.trim())}Ii(){if(this.Pi.includes("{{omidVerificationClient"))return;const t={useSafeMode:!1,global:window};this.Xi(decodeURI(this.Pi),t)}Yi(){const{playerId:t,parseDomain:i}=this.Ki;return this.Zi(t,i).catch((t=>{const i=new Error(t);throw(0,r.n)({callStack:i.stack,level:r.D.CRITICAL,exception:i.message,message:"Prerender_Loader_player_id_call_get_pls"},{throttle:1e3}),this.registerApiError(m.n9.SetupError,"player data call error"),this.te(),i}))}ie(t){return U(this,void 0,void 0,(function*(){const{browser:i,userInformation:e}=t;if(this.services.UserManagerService.setUserInformation(e),this.services.UserManagerService.setBrowserInfo(i),t.hashedPageUrl&&(yield j.k.loadPageInsights({insightsInputType:D.i.Page,id:t.hashedPageUrl})),e&&e.callFraudSensor){const{lookupId:t,lookupResponseCode:s,publisherAdsTxt:n}=e;this.di={lookupId:t,lookupResponseCode:s,publisherAdsTxt:n,deviceType:i.device}}b.e.serverAb0=t.serverAb0,b.e.serverAb1=t.serverAb1,(0,g.BZ)(t.players)?(t.players.length>1&&(this.Mi(),this._i=!0),Object.keys(t.players).forEach((i=>{this.se(t,this.Ki,i)}))):this.registerApiError(m.n9.NoPlayer,`No player available for given player id:${this.Ki.playerId}`),this.te()}))}te(){this.ne(),this.re()}re(){setTimeout((()=>{if(!this._i){const t=this.Ai[0];this.readyCallback&&this.readyCallback(t.apiErrorObj,t.apiConfigObj)}this.he()}))}he(){this.Ai.filter((t=>t.apiErrorObj)).forEach((()=>{this.services.EventsStorageService.emitRenderError()}))}se(t,i,e){const s=t.players[e],{playerModel:n}=this.bi[e];this.Ei(s.renderInFrame),this.zi(t,e),this.ae(n,this.renderer.playerContainer)}Zi(t,i=!1){let e={parseDomain:i,referrer:this.Ti,pageUrl:this.pageUrl,tokens:[t]};e.bundleId=this.externalAttributes._appSettings.bundleID,this.queryParams.cnxLineItemId&&(e.forceLineItemIds=this.queryParams.cnxLineItemId.split(H).filter((t=>(0,v.QM)(t)))),this.queryParams.cnxPlayerId?e.forcePlayerId=this.queryParams.cnxPlayerId:this.externalAttributes.settings._connatixInternals.skipServingRules&&(e.forcePlayerId=t),this.queryParams.cnxExplorationMode&&(e.forceExploration=!0);const{queryJsTargeting:s}=this.externalAttributes.settings;return(0,v.as)(s)&&Object.keys(s).length>0&&(e.queryJsTargeting=(0,h.rM)(s)),e.customParam1=this.externalAttributes.customParam1,e.customParam2=this.externalAttributes.customParam2,e.customParam3=this.externalAttributes.customParam3,e.customParam4=this.externalAttributes.customParam4,e.customParam5=this.externalAttributes.customParam5,e.disableTracking=this.externalAttributes.settings._connatixInternals.disableTracking,e.version=p.g.version,e.es6=p.x,e.userId=this.services.UserManagerService.getForcedTrackableUser(),e.isConsentConnatix=this.services.UserManagerService.isConsentConnatix(),e.clientAb0=b.e.clientAb0,e.clientAb1=b.e.clientAb1,e.implementationType=this.Fi(),e.reloadedPlayers=this.Wi.getCookiePlayersSession(),e=Object.assign(Object.assign({},e),this.getSpecificRequestData()),this.Ki.playerId?this.getPlayerResponse(e,this.Ki.playerId||"serverless"):new Promise(((t,i)=>{this.isServerlessMode=!0,t(this.defaultInitFromProto())}))}ce(){const t=(0,d.Ph)("cnxVideoPosition",this.pageUrl),i=parseInt((0,d.Ph)("cnxStoryPosition",this.pageUrl),10);return{cnxStoryId:(0,d.Ph)("cnxStoryId",this.pageUrl),cnxLineItemId:(0,d.Ph)("cnxLineItemId",this.pageUrl),cnxPlayerId:(0,d.Ph)("cnxPlayerId",this.pageUrl),cnxMediaId:(0,d.Ph)("cnxMediaId",this.pageUrl),cnxPlaylistId:(0,d.Ph)("cnxPlaylistId",this.pageUrl),cnxVideoPosition:t?parseInt(t,10):null,cnxExplorationMode:"true"===(0,d.Ph)("cnxExplorationMode",this.pageUrl),cnxStoryPosition:(0,v.r)(i)?i:null,cnxSkipAdsFlag:"true"===(0,d.Ph)("cnxSkipAdsFlag",this.pageUrl),cnxReloadTime:parseInt((0,d.Ph)("cnxReloadTime",this.pageUrl),10),cnxOverrideLineitems:"true"===(0,d.Ph)("cnxOverrideLineitems",this.pageUrl),cnxIsSeoTraffic:"true"===(0,d.Ph)("cnxIsSeoTraffic",this.pageUrl)}}ae(t,i){const e=this.getDelegateHandler(),s=new S.N(this.GLOBAL,this.services.EventsStorageService,e,t,i);this.yi?L._.isBannerBlocked||this.ki.push(L._.onAdBlockerDetected().subscribe((t=>{t||s.start()}))):s.start()}Qi(t,i,e){if(!this.di)return;const s=this.services.UserManagerService.getTrackableUser();this.di.deviceIdentifier=e.bundleID;const n=new C.P(t,i,this.di,s);this.yi?this.ki.push(L._.onAdBlockerDetected().subscribe((t=>{t||n.addFraudSensorScript()}))):n.addFraudSensorScript()}qi(t){L._.isBannerBlocked||(this.yi?this.ki.push(L._.onAdBlockerDetected().subscribe((i=>{i||this.services.UserManagerService.setThirdPartySyncUrls(t)}))):this.services.UserManagerService.setThirdPartySyncUrls(t))}le(){const t=B.$.getSessionClient(this.GLOBAL);t?this.ue=new _.Z(t,this.services.EventsStorageService,this.externalAttributes._appSettings.sdkVersion):(0,r.n)({message:"OmidSessionClient not found.",level:r.D.CRITICAL})}de(t){const i=()=>new Promise(((i,e)=>{const s=this.pe();t.addCssStylesheetToHead(s,(()=>i()),(t=>e(t)))}));return(0,h.Up)((()=>i())).catch((t=>{throw(0,r.n)({message:"Loader_add_css_link",exception:t,level:r.D.INFO}),new Error(t)}))}Ci(t){return t.bandwidthLoggingState===s.ProtoBandwidthLoggingEnum.Enabled?V.Kp:t.bandwidthLoggingState===s.ProtoBandwidthLoggingEnum.SaaS?V.a8:void 0}setApiHostUrl(t){F.n.apiHostUrl=t}setInappPageUrl(t){(0,v.QM)(t)&&(this.pageUrl=t)}updateQueryParams(){this.queryParams=this.ce()}loadScriptTag(t,i){let e;if(this.externalAttributes=t,i&&(e=this.GLOBAL.document.getElementById(i)),!e)return(0,r.n)({message:"Loader_no_script_id",exception:`${t.playerId}`,level:r.D.WARN}),this.registerApiError(m.n9.SetupError,"Could not locate any script tag ids in the page"),!1;const s=(0,v.as)(t.settings.plugins.adobeAnalyticsSettings);return this.mi&&this.le(),this.Ki={parseDomain:s,playerId:t.playerId,tag:e},!0}insertRenderer(){try{this.Wi=new A.e(this.queryParams.cnxReloadTime),this.Ei();const t=()=>{try{this.Yi().then((t=>{const i=[];t.players.forEach(((e,s)=>{t.players[s].limitClientSideApiUse&&this.Mi();const n=this.$i(this.Ki,e).then((i=>{this.Hi(e,t.lineItems);const n=this.initUrlSuffixer(e),r=this.getPlayerModel(i,t,n,s.toString()),h=new T.m(r.global);return(0,E.u)(r.lineItemSettings.lineItems),this.bi[s]={playerModel:r,globalDomUtilsService:h,urlSuffixerService:n},this.de(h)})).catch((t=>{this.registerApiError(m.n9.SetupError,"rendering error"),(0,r.n)({message:"Loader_send_data_to_renderer",exception:t.message,callStack:t.stack,level:r.D.CRITICAL})}));i.push(n)})),Promise.all(i).then((()=>this.ie(t)))}))}catch(t){(0,r.n)({message:"Prerender_Loader_do_player_call",callStack:t.stack,exception:t.message,level:r.D.WARN},{throttle:1e3})}};this.ne=this.services.UserManagerService.registerPlsCall(t)}catch(t){(0,r.n)({message:"Prerender_Loader_insert_renderer",exception:t.message,callStack:t.stack,level:r.D.CRITICAL})}}findPageUrl(t,i,e=!1){if(t.cnx_page_url)this.pageUrl=t.cnx_page_url;else try{t["cnxAmpAd)"]?this.pageUrl=t.context.sourceUrl||t.context.location.href:this.pageUrl=i||(0,h.lU)((0,h.pE)(this.GLOBAL),this.GLOBAL)}catch(t){}if(!this.pageUrl||0===this.pageUrl.length)return e||(0,r.n)({message:"Prerender_Loader_find_page_url",level:r.D.INFO},{throttle:1e3}),new Promise((e=>{setTimeout((()=>{this.findPageUrl(t,i,!0).then((()=>e()))}),this.Si)}));try{return this.pageUrl=(0,d.sH)(this.pageUrl),Promise.resolve()}catch(t){return(0,r.n)({message:"Loader_find_page_url",exception:t.message,callStack:t.stack,level:r.D.CRITICAL}),Promise.reject()}}registerApiError(t=m.n9.SetupError,i=""){this.Ai.push({apiErrorObj:{type:t,message:i}})}registerApiSuccess(t){this.Ai.push({apiConfigObj:t})}destroy(){this.renderer&&this.renderer.destroy(),(0,R.i)(this.ki)}}},3810:(t,i,e)=>{"use strict";e.d(i,{e:()=>h});var s=e(8423),n=e(7726),r=e(9115);class h{constructor(t){this.RELOAD_TIME=r.ti,this.RELOAD_COOKIES="cnx_player_reload",this.SESSION_IN_VIEW_FLAG="_sessionWasViewed",this.fe={},this.ve={},this.ge={},this.Jt=(0,s.pE)(window).topFrame,this.me(t);try{this.ye()}catch(t){(0,n.n)({message:"PlayerReloader_cookie_fetch_failed",level:n.D.WARN,exception:t})}}wasPlayerReloaded(t){return!!this.fe[t]}addPlayerSession(t,i){this.ve[t]=i}getCookiePlayersSession(){return this.fe}addSessionInView(t){this.ve[t]+=this.SESSION_IN_VIEW_FLAG}getSessionInView(t){return this.ge[t]}me(t){setTimeout((()=>{this.be(),this.Jt.location.reload()}),t||this.RELOAD_TIME)}ye(){decodeURIComponent(this.Jt.document.cookie).split(";").forEach((t=>{const i=t.split("=");i[0].includes(this.RELOAD_COOKIES)&&(this.fe=JSON.parse(i[1]))})),this.xe(),this.Se()}xe(){Object.keys(this.fe).forEach((t=>{const i=this.fe[t].indexOf(this.SESSION_IN_VIEW_FLAG);i>-1&&(this.fe[t]=this.fe[t].substr(0,i),this.ge[t]=!0)}))}Se(){this.Jt.document.cookie=`${this.RELOAD_COOKIES}=; expires = Thu, 01 Jan 1970 00:00:00 GMT; path=/`}be(){Object.keys(this.ge).forEach((t=>{this.ve[t].includes(this.SESSION_IN_VIEW_FLAG)||this.addSessionInView(t)}));const t=new Date;let i=t.getTime();i+=r.Y0*r.s_,t.setTime(i),this.Jt.document.cookie=`${this.RELOAD_COOKIES}=${JSON.stringify(this.ve)}; expires=${t.toUTCString()}; path=/`}}},7593:(t,i,e)=>{"use strict";e.d(i,{t:()=>o});var s=e(8423),n=e(7726),r=e(7427),h=e(158);class o{constructor(t,i){this._e=t,this.Ae=i,this.Pe=(t,i)=>new Promise(((e,s)=>{h.n.sendProtoRequest({ProtoResponse:this._e,endpoint:t,requestType:"GET",logError:!0,timeout:i}).then((t=>{e(t)})).catch((t=>{s(t)}))}))}fetchMetadata(t,i=5,e=!0,n){const h=t=>403===this.ke(t);return new Promise(((o,a)=>{(0,s.Up)((()=>this.Pe(t,n)),i,h).then((i=>{if((0,r.as)(i))return o(i);const e=new Error("invalid metadata");return this.Ie({url:t,metadata:i,e}),a(e)})).catch((i=>{e&&this.Ie({url:t,e:i}),a(i)}))}))}Ie(t){var i;const e=(0,r.QM)(null===(i=t.e)||void 0===i?void 0:i.message)?t.e.message:"";e.includes("XhrUtils_XMLHttpRequest_error")||(0,n.n)({message:"MediaMetadataHandler_fetchMetadata",exception:`${this.Ae}_${e}:${JSON.stringify(t)}`,callStack:t.e&&t.e.stack,level:n.D.CRITICAL})}ke(t){if(t&&t.message){const i=t.message.split("status:")[1];return i?parseInt(i.slice(0,3),10):null}return null}}},5880:(t,i,e)=>{"use strict";e.d(i,{_:()=>n});var s=e(3030);class n{constructor(){this.Te={}}subscribe(t,i,e){this.Te[t]||(this.Te[t]=[]),this.Te[t].push({context:i,func:e})}unsubscribe(t,i,e){this.Te[t]&&(this.Te[t]=this.Te[t].filter((t=>!(t.context===i&&(t.func===e||!e)))))}unsubscribeAll(t){Object.keys(this.Te).forEach((i=>{this.Te[i]=this.Te[i].filter((i=>i.context!==t))}))}publish(t,i,e={payload:void 0}){Object.prototype.hasOwnProperty.call(this.Te,i)&&this.Te[i].forEach((i=>{i.context===t&&i.func(e)}))}relay(t,i,e,n){(0,s.qo)(t).forEach((t=>{this.subscribe(t,i,(i=>{n.publish(e,t,i)}))}))}relayBulk(t,i,e){t.forEach((t=>{this.relay(t.channel,t.source,i,e)}))}}},1580:(t,i,e)=>{"use strict";e.d(i,{N:()=>p});var s,n=e(1561);class r{constructor(t){this.Ce=[],this.Me=t=>{this.Ce.push(t)},this.Ee=t.subscribe(this.Me)}get cachedEvents(){return this.Ce}destroy(){this.Ce=null,this.Ee()}}!function(t){t.AdobeAnalytics="AdobeAnalytics",t.MoatAnalytics="MoatAnalytics"}(s||(s={}));var h=e(7427),o=e(7726),a=e(3030),c=e(8423),l=e(6615),u=e(45),d=e(525);class p{constructor(t,i,e,s,n){this.Le=i,this.Oe=e,this.Re=s,this.Be=n,this.De=[],this.je=t=>{try{this.Fe(t);const i=this.De.find((i=>i.name===t.type));let e;if(i&&!i.started){i.started=!0;const t=i.eventsCacheHandler;e=t.cachedEvents,t.destroy()}const{adobeAnalyticsSettings:s,moatAnalyticsSettings:n,_debugLogging:r}=this.Re.apiConfig.settings.plugins,{secondLevelDomain:h,playerId:o}=this.Re,a={cachedEvents:e,adobeAnalyticsSettings:s,moatAnalyticsSettings:n,_debugLogging:r,secondLevelDomain:h,playerId:o,pageName:this.$e,pageUrl:this.Ue,version:u.g.version,delegateHandlers:this.Oe,playerContainer:this.Be,playerWindow:window};t.getInstance().start(this.Le,a)}catch(t){(0,o.n)({callStack:t.stack,exception:t.message,level:o.D.CRITICAL,message:"PluginsHandler_initPlugin"})}};const r=(0,c.pE)(t);this.Ne=r.topFrame,this.Ue=(0,c.lU)(r,this.Ne),this.Ue=(0,l.sH)(this.Ue),this.$e=(0,l._Y)(this.Ue)}start(){this.He(),this.ze(),this.Ne.cnxPlugins.pluginsHandlers.push(this.je)}He(){let t=[];Array.isArray(this.Ne.cnxPlugins)&&this.Ne.cnxPlugins.length>0&&(t=this.Ne.cnxPlugins,t.forEach((t=>this.je(t)))),(0,h.as)(this.Ne.cnxPlugins)||this.We(t)}ze(){const t=this.Ge();(0,a.BZ)(t)&&this.Je(t)}Qe(t){const i=this.Ne.cnxPlugins.cachedPlugins;if((0,a.BZ)(i))return i.find((i=>i.type===t))}Fe(t){this.Qe(t.type)||this.Ne.cnxPlugins.cachedPlugins.push(t)}We(t){this.Ne.cnxPlugins={cachedPlugins:t,pluginsHandlers:[],push:function(t){this.pluginsHandlers.forEach((i=>{i(t)}))}}}Je(t){t.forEach((t=>{this.Qe(t)||this.De.push({name:t,started:!1,eventsCacheHandler:new r(this.Le)})})),this.De.forEach((({name:t})=>this.Xe(t)))}Ye(t){return Object.values(t).every((t=>(0,h.QM)(t)))}Ge(){const t=[];return this.Re.apiConfig.settings.plugins.adobeAnalyticsSettings&&this.Ye(this.Re.apiConfig.settings.plugins.adobeAnalyticsSettings)&&t.push(s.AdobeAnalytics),this.Re.moatTrackingEnabled&&t.push(s.MoatAnalytics),t}Xe(t){const i={id:`cnx-${t}`,src:""};switch(t){case s.AdobeAnalytics:i.src=d.n.endPoints.assets.plugins.adobeAnalytics;break;case s.MoatAnalytics:i.src=d.n.endPoints.assets.plugins.moatAnalytics}this.Ne.document.getElementById(i.id)||(0,n.dZ)(i,this.Ne.document.head,this.Ne,null,null,!0,"PluginsHandler_unable_to_insert_plugin_script")}}},5874:(t,i,e)=>{"use strict";var s;e.d(i,{Z:()=>n}),function(t){t[t.HoldStart=0]="HoldStart",t[t.HoldEnd=1]="HoldEnd",t[t.TapLeft=2]="TapLeft",t[t.TapRight=3]="TapRight",t[t.SwipeEnd=4]="SwipeEnd",t[t.SwipeMove=5]="SwipeMove",t[t.Scroll=6]="Scroll",t[t.Click=7]="Click"}(s||(s={}));const n=s},3344:(t,i,e)=>{"use strict";e.d(i,{cv:()=>s,jI:()=>n,fi:()=>r,yA:()=>h,Ve:()=>o,sm:()=>a,qZ:()=>c,_f:()=>l,li:()=>u});const s="Connatix";var n,r,h,o,a,c,l,u;!function(t){t.Generic="generic",t.Video="video"}(n||(n={})),function(t){t.Click="click",t.InvitationAccept="invitationAccept"}(r||(r={})),function(t){t.PreRoll="preroll",t.MidRoll="midroll",t.PostRoll="postroll",t.Standalone="standalone"}(h||(h={})),function(t){t.SessionStart="sessionStart",t.SessionError="sessionError",t.SessionFinish="sessionFinish"}(o||(o={})),function(t){t.DefinedByJavascript="definedByJavaScript",t.BeginToRender="beginToRender"}(a||(a={})),function(t){t.DefinedByJavascript="definedByJavaScript",t.Video="video"}(c||(c={})),function(t){t.sessionError="sessionError",t.geometryChange="geometryChange"}(l||(l={})),function(t){t.backgrounded="backgrounded",t.notFound="notFound"}(u||(u={}))},3217:(t,i,e)=>{"use strict";e.d(i,{Z:()=>u});var s,n,r=e(3344),h=e(3121),o=e(4959);!function(t){t.Minimized="minimized",t.Collapsed="collapsed",t.Normal="normal",t.Expanded="expanded",t.Fullscreen="fullscreen"}(s||(s={})),function(t){t.StateChanged="stateChanged"}(n||(n={}));class a{constructor(t){this.mediator=t}computeState(t){const i=this.Ke(t);this.Ze&&this.Ze.name===i||this.mediator.publish(this,n.StateChanged,{payload:{state:i}}),this.Ze={dimensions:t,name:i},this.ts||i!==s.Normal||(this.ts=Object.assign({},this.Ze))}setPlayerState(t){this.Ze&&this.Ze.name===t||this.mediator.publish(this,n.StateChanged,{payload:{state:t}}),this.Ze={name:t},this.ts||t!==s.Normal||(this.ts=Object.assign({},this.Ze))}get currentState(){return this.Ze&&this.Ze.name}Ke(t){if(!this.ts)return s.Normal;const{width:i,height:e}=this.ts.dimensions,n=i*e,r=t.width*t.height;switch(!0){case nr:return s.Collapsed;default:return s.Normal}}}var c=e(5880),l=e(7726);class u extends c._{constructor(t,i,e){super(),this.es=t,this.Le=i,this.ss=new a(this),this.ns=!1,this.rs={[h.Z.AdError]:()=>this.hs(),[h.Z.PlayError]:()=>this.cs(),[h.Z.RenderError]:()=>this.ls(),[h.Z.AdImpression]:()=>this.us(),[h.Z.AdComplete]:()=>this.ds(),[h.Z.AdVideoStart]:({adVideoStartMetadata:t})=>this.ps(t),[h.Z.AdVideoFirstQuartile]:()=>this.vs(),[h.Z.AdVideoMidpoint]:()=>this.gs(),[h.Z.AdVideoThirdQuartile]:()=>this.ys(),[h.Z.AdVideoComplete]:()=>this.bs(),[h.Z.VolumeChange]:({volume:t})=>this.ws(t),[h.Z.AdPause]:()=>this.Ss(),[h.Z.AdPlay]:()=>this._s(),[h.Z.AdSkipped]:()=>this.As(),[h.Z.AdClickThru]:()=>this.Ps(),[h.Z.AdInteraction]:()=>this.ks(),[h.Z.AdLoaded]:({adLoadedMetadata:t})=>this.Is(t),[h.Z.AdStateChange]:({adStateChangedMetadata:t})=>this.Ts(t),[h.Z.PlayerResized]:({playerDimensionsMetadata:t})=>this.Cs(t),[h.Z.OnEnterFullscreen]:()=>this.Es(),[h.Z.PlayerCollapsed]:()=>this.Ls(),[h.Z.PlayerExpanded]:()=>this.Os(),[h.Z.Destroy]:()=>this.unsubscribeAll(this.ss)},this.Rs=t=>{try{const i=this.rs[t.name];if(!i)return;i(t.metadata)}catch(t){(0,l.n)({message:"SessionClientWrapper_omsdk__onEventStorageEvent",exception:t.message,callStack:t.callStack,level:l.D.WARN})}};try{const{AdSession:t,AdEvents:i,MediaEvents:s}=this.es,r=this.Bs(e);this.Ds=new t(r),this.js=new i(this.Ds),this.$s=new s(this.Ds),this.Le.subscribe(this.Rs),this.subscribe(n.StateChanged,this.ss,(({payload:{state:t}})=>{this.Vs(t)})),this.Us()}catch(t){(0,l.n)({message:"SessionClientWrapper_omsdk_classes_init_err",exception:t.message,callStack:t.callStack,level:l.D.WARN})}}hs(){this.Ds.error(r.jI.Video,h.Z.AdError)}cs(){this.Ds.error(r.jI.Video,h.Z.PlayError)}ls(){this.Ds.error(r.jI.Generic,h.Z.RenderError)}Bs(t){const{Partner:i,Context:e}=this.es;return new e(new i(r.cv,t))}us(){this.ns=!0,this.js.impressionOccurred();const t=this.ss.currentState;t!==s.Normal&&this.Vs(t)}ds(){this.ns=!1}ps(t){const{duration:i,mediaPlayerVolume:e}=t;this.$s.start(i,e)}vs(){this.$s.firstQuartile()}gs(){this.$s.midpoint()}ys(){this.$s.thirdQuartile()}bs(){this.$s.complete()}ws(t){this.ns&&this.$s.volumeChange(t)}Ss(){this.$s.pause()}_s(){this.$s.resume()}As(){this.$s.skipped()}Ps(){this.$s.adUserInteraction(r.fi.Click)}ks(){this.$s.adUserInteraction(r.fi.InvitationAccept)}Is(t){const{isSkippable:i,skipOffset:e,isAutoPlay:s}=t,{VastProperties:n}=this.es,r=new n(i,e,s,this.Ns);this.js.loaded(r)}Ts({state:t}){this.Ns=r.yA[o.I[t]]}Vs(t){t&&this.$s.playerStateChange(t)}zs(t){this.ss.computeState(t)}Ws(t){this.ss.setPlayerState(t)}Cs(t){this.zs(t)}Es(){this.Ws(s.Fullscreen)}Ls(){this.Ws(s.Minimized)}Os(){this.Ws(s.Normal)}Us(){this.Ds.registerSessionObserver((t=>{t.type===r.Ve.SessionStart?this.Gs(t):t.type===r.Ve.SessionError&&(0,l.n)({message:"SessionClientWrapper_omsdk_session_error",exception:t.type,callStack:JSON.stringify(t),level:l.D.WARN},{throttle:1,sendMaxLog:!1})}))}Gs(t){t.data.creativeType===r.qZ.DefinedByJavascript&&this.Ds.setCreativeType(r.qZ.Video),t.data.impressionType===r.sm.DefinedByJavascript&&this.Ds.setImpressionType(r.sm.BeginToRender)}}},7382:(t,i,e)=>{"use strict";var s;e.d(i,{$:()=>s}),function(t){const i=["1.3.25-iab3167","1.3.13-iab2343"],e=["1.3.25-iab3167","1.3.13-iab2343"];function s(t,i){if(!t)return null;let e=null;for(let s=0;s{String.prototype.cnx_replaceAll=function(t,i){return this.split(t).join(i)}},3640:(t,i,e)=>{"use strict";e.d(i,{u:()=>u,A:()=>d});var s=e(7593),n=e(289),r=e(525),h=e(7427),o=e(7726);const a=new s.t(n.ProtoAdDomainBlockingResponse,"AdDomainBlockingService");let c;const l=new Map;function u(t){c||(c=new Promise((i=>{const e=t.find((t=>t.blockedDomainsRevisionNumber));if(!e)return void i();const{publisherLineItemId:s,blockedDomainsRevisionNumber:n}=e,h=`${r.n.endPoints.base.lineItems}${s}/blockedDomains_${n}.bin`;a.fetchMetadata(h,2).then((t=>{l.set(s,t.domains),i()})).catch((()=>{(0,o.n)({message:"AdDomainBlockingService_fetchBlockedDomains_endpoint_unavailable",level:o.D.CRITICAL},{throttle:2,sendMaxLog:!1}),i()}))})))}function d(t,i){return new Promise((e=>{(0,h.QM)(i)?c.then((()=>{l.has(t)&&l.get(t).some((t=>i.includes(t)))?e(!0):e(!1)})):e(!1)}))}},525:(t,i,e)=>{"use strict";e.d(i,{n:()=>a});var s=e(6615),n=e(45),r=e(8423),h=e(7427);class o{constructor(t){this.base=t,this.api={pls:t.core+"core/pls",story:t.core+"core/story",rtb:t.core+"rtb/g",syncUrls:t.core+"core/us",fallbackstory:t.core+"core/fallbackstory",cookie:t.core+"core/ck",tam:t.core+"core/atam"},this.tracking={session_rendered:t.tracking+"sr",session_view:t.tracking+"sv",session_time:t.tracking+"st",session_client_error:t.tracking+"e",media_quartile:t.tracking+"mq",media_click:t.tracking+"mc",ad_impression:t.tracking+"ai",bids:t.tracking+"abt",ad_impression_viewable:t.tracking+"av",ad_quartile:t.tracking+"aq",ad_click:t.tracking+"ac",logging:t.tracking+"e",playerStart:t.tracking+"ps",adOpportunity:t.tracking+"ao",sessionAdBlocker:t.tracking+"sab",heavy_ad_intervention:t.tracking+"ha",auctionInformation:t.tracking+"aucinfo"},this.assets={css:{elements:`${this.Js(t.assets)}player.css`,playspace:`${this.Js(t.assets)}connatix.playspace.css`},plugins:{adobeAnalytics:`${t.plugins}p/plugins/adobe.plugin.js`,moatAnalytics:`${t.plugins}p/plugins/moat.plugin.js`,prebidScript:`${t.plugins}p/plugins/prebid6.7.0-1.js`}}}Js(t){return"development"===n.g.env?`//cd.${a.bundleDomain}/`:`${t}p/${n.g.version}/`}}class a{static set bundleDomain(t){this.Qs=t}static get bundleDomain(){if(!(0,h.QM)(this.Qs))throw new Error("bundleDomain missing");return this.Qs}static set apiHostUrl(t){this.Ys=t,a.Ks=a.Zs()}static tn(t){let i=`capi{{env}}.${t}`;return this.Ys&&(i=this.Ys),{video:`//vid.${t}/`,image:`//img.${t}/`,core:`https://${i}/`,tracking:`https://${i}/tr/`,metadata:`//vid.${t}/`,insights:`//ins.${t}/`,assets:`//cds{{env}}.${t}/`,plugins:`//cds.${t}/`,lineItems:`//lit.${t}/`}}static Zs(){const t=(0,s.Ph)("cnxEnv",(0,r.pE)(window).topFrame.location.href);t&&(n.g.domainPrefix=`-${t}`);const i=this.tn(this.bundleDomain);return Object.keys(i).forEach((t=>{i[t]=i[t].replace("{{env}}",n.g.domainPrefix)})),new o(i)}static get endPoints(){return null===a.Ks&&(a.Ks=a.Zs()),a.Ks}}a.Ks=null},4959:(t,i,e)=>{"use strict";e.d(i,{I:()=>s,V:()=>r});var s,n=e(289);!function(t){t[t.PreRoll=0]="PreRoll",t[t.MidRoll=1]="MidRoll",t[t.PostRoll=2]="PostRoll",t[t.Standalone=3]="Standalone"}(s||(s={}));const r={[n.ProtoAdSlotsEnum.PreRoll]:s.PreRoll,[n.ProtoAdSlotsEnum.MidRoll]:s.MidRoll,[n.ProtoAdSlotsEnum.PostRoll]:s.PostRoll}},3121:(t,i,e)=>{"use strict";e.d(i,{Z:()=>n});const s=e(9078).fI,n=Object.assign(Object.assign({},s),{AdBreakStart:"adBreakStart",AdComplete:"adComplete",AdBreakComplete:"adBreakComplete",Pause:"pause",AdPause:"adPause",Play:"play",AdPlay:"adPlay",ContentComplete:"contentComplete",SessionStart:"sessionStart",SessionEnd:"sessionEnd",PlayerResized:"playerStateResize",OnEnterFullscreen:"onEnterFullscreen",OnExitFullscreen:"onExitFullscreen",PlayerCollapsed:"playerCollapsed",PlayerExpanded:"playerExpanded",PlayError:"playError",RenderError:"renderError",AdStateChange:"adStateChange",VolumeChange:"volumeChange",Destroy:"destroy"})},649:(t,i,e)=>{"use strict";e.d(i,{m:()=>c});var s=e(8423),n=e(1561),r=e(525),h=e(3030),o=e(7726),a=e(7427);class c{constructor(t){this.createElement=(t,i=this.Ne)=>i.document.createElement(t),this.Ne=t,this.addPreconnect()}get global(){return this.Ne}addCssString(t,i=""){return(0,n.uc)(t,i,this.Ne)}addPreconnect(){(0,n.tp)(r.n.endPoints.base.video,this.Ne),(0,n.tp)(r.n.endPoints.base.core,this.Ne),(0,n.tp)(r.n.endPoints.base.image,this.Ne)}getLineHeightPropertyValue(t){return(0,n.Dx)(t,this.Ne).getPropertyValue("line-height")}getFontSizePropertyValue(t){return(0,n.Dx)(t,this.Ne).getPropertyValue("font-size")}getFontWeightPropertyValue(t){return(0,n.Dx)(t,this.Ne).getPropertyValue("font-weight")}getTransformPropertyValue(t){return(0,n.Dx)(t,this.Ne).getPropertyValue("transform")}getPaddingTopPropertyValue(t){return(0,n.Dx)(t,this.Ne).getPropertyValue("padding-top")}getPaddingBottomPropertyValue(t){return(0,n.Dx)(t,this.Ne).getPropertyValue("padding-bottom")}getMarginTopPropertyValue(t){return(0,n.Dx)(t,this.Ne).getPropertyValue("margin-top")}getMarginBottomPropertyValue(t){return(0,n.Dx)(t,this.Ne).getPropertyValue("margin-bottom")}getMarginLeftPropertyValue(t){return(0,n.Dx)(t,this.Ne).getPropertyValue("margin-left")}getMarginRightPropertyValue(t){return(0,n.Dx)(t,this.Ne).getPropertyValue("margin-right")}createElementByString(t,i=this.Ne){return(0,n.G$)(t,i)}createDocumentFragment(t=this.Ne){return t.document.createDocumentFragment()}isHttpsProtocolUsed(){return(0,n.eA)(this.Ne)}isURLSameDomainToTop(t){return(0,n.uh)(t,this.Ne)}isDetachedFromDOM(t){let i=t;for(;i.parentNode;)if(i=i.parentNode,i===this.Ne.document.body)return!1;return!0}querySelector(t,i=this.Ne){let e;try{e=i.document.querySelector(t)}catch(t){}return e}addCssStylesheetToHead(t,i,e){const s=this.Ne.document;s.getElementById(t.id)?(0,a.mf)(i)&&i():(0,n.NS)(t,s.head,this.Ne,i,e)}getFullscreenKeys(t){return(0,n.S0)(t||this.Ne.document)}exitFullscreen(t,i){(i||this.Ne.document)[t]()}getDocumentProperty(t){return this.Ne.document[t]}addEventListenerOnGlobal(t,i,e,s=!1){(e?this.Ne.document:this.Ne).addEventListener(t,i,s)}removeEventListenerOnGlobal(t,i,e,s=!1){(e?this.Ne.document:this.Ne).removeEventListener(t,i,s)}trackWithImages(t,i){(0,s.Hh)(t,this.Ne,i)}getElementCoordinates(t){let{top:i,left:e}=t.getBoundingClientRect();const{width:s,height:n}=t.getBoundingClientRect();return i+=this.Ne.pageYOffset,e+=this.Ne.pageXOffset,{clientX:e,clientY:i,width:s,height:n}}requestAnimationFrameHelper(t){return(0,n.PM)(this.Ne,t)}cancelRequestAnimationFrame(t){return(0,n.h_)(this.Ne,t)}getGlobalLocationProperties(){const t=this.Ne.location;return{hostname:t.hostname,pathname:t.pathname,href:t.href,protocol:t.protocol,host:t.host,port:t.port,search:t.search,hash:t.hash}}open(t,i){this.Ne.open(t,i)}getComputedTranslateX(t){let i=0;const e=(0,n.Dx)(t,this.Ne).getPropertyValue("transform").match(/^matrix\((.+)\)$/);return(0,h.BZ)(e)&&(i=parseFloat(e[1].split(", ")[4])),i}getBodyDimensions(){try{const t=(0,s.pE)(this.Ne).topFrame.document.body;let{offsetWidth:i,offsetHeight:e}=t;const r=(0,n.Dx)(t,this.Ne);return i+=parseInt(r.marginLeft,10)+parseInt(r.marginRight,10),e+=parseInt(r.marginTop,10)+parseInt(r.marginBottom,10),{width:i,height:e}}catch(t){return(0,o.n)({message:"DomUtils_error_getting_body_dimensions",exception:t.message,callStack:t.stack,level:o.D.CRITICAL}),{width:0,height:0}}}getViewportWidth(){return(0,s.pE)(this.Ne).topFrame.document.body.clientWidth}getViewportHeight(){return(0,s.pE)(this.Ne).topFrame.innerHeight}getGlobalClosestTop(){return(0,s.pE)(this.Ne)}stripHtmlTags(t){return(0,n.ju)(t,this.Ne)}getComputedStyle(t,i){return(0,n.Dx)(t,this.Ne,i)}getElementById(t){return(0,n.rI)(t,this.Ne)}getElementsByClassName(t){return(0,n.Fs)(t,this.Ne)}insertScript(t,i,e){this.Ne.document.getElementById(t.id)?(0,a.mf)(i)&&i():(0,n.dZ)(t,this.Ne.document.head,this.Ne,i,null,!0,e)}destroy(){}}},4974:(t,i,e)=>{"use strict";e.d(i,{k:()=>d});var s=e(7593),n=e(289),r=e(525),h=e(7726),o=e(5732),a=e(8423),c=e(7427),l=function(t,i,e,s){return new(e||(e=Promise))((function(n,r){function h(t){try{a(s.next(t))}catch(t){r(t)}}function o(t){try{a(s.throw(t))}catch(t){r(t)}}function a(t){var i;t.done?n(t.value):(i=t.value,i instanceof e?i:new e((function(t){t(i)}))).then(h,o)}a((s=s.apply(t,i||[])).next())}))};const u={insights:[],sentimentAnalysis:void 0};class d{static loadInsights(t){const{id:i}=t;let e=d.insightsPromiseStore.get(i);return e||(e=new Promise((i=>{const e=d.requestUrlBuilder(t);d.mediaMetadataHandler.fetchMetadata(e,2,false,1e4).then((t=>{const e=t.insights.map((t=>t.key));i({insights:e,sentimentAnalysis:t.sentimentAnalysis})})).catch((t=>{(0,a.Vm)([95,5])&&(0,h.n)({message:"LoadInsightIndexesService_endpoint_unavailable",exception:e,callStack:`${t}`,level:h.D.WARN},{sendMaxLog:!1}),i(u)}))})),d.insightsPromiseStore.set(i,e)),e}static loadPageInsights(t){return l(this,void 0,void 0,(function*(){const i=yield d.loadInsights(t);return d.pageInsights={insights:i.insights},d.pageInsights}))}static requestUrlBuilder({insightsInputType:t,id:i,versionId:e}){return t===o.i.Page||(0,c.$K)(e)||(0,h.n)({message:"LoadInsightIndexesService_requestUrlBuilder_noVersionIdProvided",exception:`Type: ${t}, id: ${i}`,level:h.D.CRITICAL}),t===o.i.Page?`${r.n.endPoints.base.insights}${i}/insights.bin`:`${r.n.endPoints.base.insights}${i}/${e}/insights.bin`}static markAsUnavailable(t){d.insightsPromiseStore.get(t)||d.insightsPromiseStore.set(t,Promise.resolve(u))}}d.mediaMetadataHandler=new s.t(n.ProtoInsightsResponse,"InsightsLoaderService"),d.insightsPromiseStore=new Map},5732:(t,i,e)=>{"use strict";var s;e.d(i,{i:()=>s}),function(t){t[t.Video=0]="Video",t[t.Story=1]="Story",t[t.Page=2]="Page"}(s||(s={}))},5256:(t,i,e)=>{"use strict";var s,n,r,h;e.d(i,{qs:()=>s,HT:()=>n,WR:()=>r,Av:()=>h}),function(t){t[t.X=0]="X",t[t.Y=1]="Y"}(s||(s={})),function(t){t.Click="click",t.InteractionStart="interactionstart",t.Interaction="interaction",t.InteractionEnd="interactionend"}(n||(n={})),function(t){t[t.Swipe=0]="Swipe",t[t.Hold=1]="Hold"}(r||(r={})),function(t){t[t.Left=0]="Left",t[t.Right=1]="Right"}(h||(h={}))},6284:(t,i,e)=>{"use strict";e.d(i,{k:()=>d});var s=e(2820),n=e(5874),r=e(5256),h=e(3030),o=e(1561);const a=0;function c(t){return t.button===a}var l=e(2231),u=e(7427);class d{constructor(t,i,e){this.en=t,this.Qt=i,this.mediator=null,this.nn=30,this.rn=250,this.hn=25,this.an=[],this.ln={},this.un=0,this.dn=0,this.pn=!0,this.vn=null,this.gn=!1,this.mn=!1,this.yn=!1,this.bn=!1,this.wn=0,this.xn=0,this.Sn=null,this._n=null,this.An=null,this.Pn=!0,this.kn=!1,this.In=t=>{this.Qt?(t.element.addEventListener("touchstart",this.Tn,{passive:!0}),t.element.addEventListener("touchmove",this.Cn,{passive:!0}),t.element.addEventListener("touchend",this.Mn),t.element.addEventListener("touchcancel",this.En),t.element.addEventListener("mouseup",this.Ln)):(t.element.addEventListener("mousedown",this.Rn),t.element.addEventListener("mouseup",this.Ln))},this.Bn=t=>{this.Qt?(t.element.removeEventListener("touchstart",this.Tn),t.element.removeEventListener("touchmove",this.Cn),t.element.removeEventListener("touchend",this.Mn),t.element.removeEventListener("touchcancel",this.En),t.element.removeEventListener("mouseup",this.Ln)):(t.element.removeEventListener("mousedown",this.Rn),t.element.removeEventListener("mouseup",this.Ln))},this.Tn=t=>{t.stopPropagation();const i=this.Dn(t);this.An=i,this.mn=!1,this.jn(i,r.WR.Hold)&&this.Fn(t);const e=this.$n(t);this.dn=e.eventX,this.un=e.eventY,this.Vn(t,i,r.HT.InteractionStart),this.pn=!0},this.Cn=t=>{t.stopPropagation();const i=this.Dn(t),e=this.$n(t);if(this.pn&&(Math.abs(e.deltaXFromStart)>this.hn||Math.abs(e.deltaYFromStart)>this.hn)&&(this.pn=!1),this.gn||this.jn(i,r.WR.Swipe)){if(null===this.Sn&&this.Un(i,e),this.Sn===r.qs.Y)return;null===this._n&&(this._n=(0,o.PM)(this.en,(()=>{this._n=null,this.Hn(e.deltaXFromStart),i.mediator.publish(i.context,n.Z[n.Z.SwipeMove],{payload:e.deltaXFromStart})})))}},this.Mn=t=>{const i=this.Dn(t);if(this.kn=!1,this.An===i){const e=this.$n(t);t.cancelable&&this.jn(i,r.WR.Hold)&&Math.abs(e.deltaXFromStart)=this.hn?this.Pn&&i.mediator.publish(i.context,n.Z[n.Z.Scroll]):!this.pn||this.yn||this.mn||(this.kn=!0)}this.An=null},this.En=t=>{const i=this.Dn(t);this.zn(t,i),this.An=null},this.Rn=t=>{if(!c(t))return void this.Wn(r.HT.InteractionStart,t);const i=this.Dn(t);this.An=i,t.stopPropagation(),t.preventDefault(),this.jn(i,r.WR.Hold)&&this.Fn(t),this.Vn(t,i,r.HT.InteractionStart)},this.Ln=t=>{const i=this.Dn(t);return this.kn?(i.mediator.publish(i.context,n.Z[n.Z.Click]),void(this.kn=!1)):c(t)&&this.An?(t.stopPropagation(),t.preventDefault(),this.Vn(t,this.An,r.HT.Interaction),this.Vn(t,this.An,r.HT.InteractionEnd),(this.gn||this.jn(i,r.WR.Hold))&&this.Gn(t),this.An===i&&(this.Vn(t,i,r.HT.Click),i.mediator.publish(i.context,n.Z[n.Z.Click])),void(this.An=null)):(this.Wn(r.HT.Interaction,t),void this.Wn(r.HT.InteractionEnd,t))},this.Jn=t=>{if(!c(t))return this.Wn(r.HT.Interaction,t),void this.Wn(r.HT.InteractionEnd,t);this.An=null},this.Qn=t=>{if(!c(t)||!this.An)return this.Wn(r.HT.Interaction,t),void this.Wn(r.HT.InteractionEnd,t);this.Vn(t,this.An,r.HT.Interaction),this.Vn(t,this.An,r.HT.InteractionEnd),(this.gn||this.jn(this.An,r.WR.Hold))&&this.Gn(t),this.An=null};const{leftTapSizeThreshold:s,holdTriggerDuration:h,scrollThreshold:a}=Object.assign({},e);this.nn=s||this.nn,this.rn=h||this.rn,this.hn=a||this.hn,this.en.document.addEventListener("mousedown",this.Jn),this.en.document.addEventListener("mouseup",this.Qn)}register(t,i,e,s={},n=[]){const r={element:t,mediator:i,context:e,callbacks:s||{},allowedSpecialInteractions:n,disabledSpecialInteractions:[]};this.an.push(r),this.In(r)}unregister(t){const i=this.an.find((i=>i.element===t));i&&(this.an=this.an.filter((i=>i.element!==t)),this.Bn(i))}unregisterAll(t){const i=this.an.filter((i=>i.mediator===t));i.forEach(this.Bn),this.an=(0,h.V7)(this.an,i)}addGlobalActions(t,i){Object.keys(Object.assign({},i)).forEach((e=>{this.ln[e]=this.ln[e]||[],this.ln[e].push({initiator:t,action:i[e]})}))}removeGlobalActions(t){Object.keys(this.ln).forEach((i=>{this.ln[i].some((i=>i.initiator===t))&&(this.ln[i]=this.ln[i].filter((i=>i.initiator!==t)))}))}disableSpecialInteractions(t){const i=this.Xn(t);i&&(i.disabledSpecialInteractions=(0,h.gX)(i.allowedSpecialInteractions))}enableSpecialInteractions(t){const i=this.Xn(t);i&&(i.disabledSpecialInteractions=[])}getNonInterruptibleInteractions(){return[n.Z.HoldStart,n.Z.HoldEnd,n.Z.SwipeMove,n.Z.SwipeEnd,n.Z.Scroll]}disableScrollEvent(){this.Pn=!1}enableScrollEvent(){this.Pn=!0}destroy(){clearTimeout(this.vn),this.an.forEach(this.Bn),this.en.document.removeEventListener("mousedown",this.Jn),this.en.document.removeEventListener("mouseup",this.Qn)}Yn(t){const i=this.Dn(t),e=i.element.getBoundingClientRect(),s=this.Kn(t),n=e.width,r=(0,l.dQ)(0,n,0,100,s);this.Zn(i,this.nn,r)}Zn(t,i,e){e{this.gn=!0,this.pn&&(this.yn=!0,i.mediator.publish(i.context,n.Z[n.Z.HoldStart]))}),this.rn)}Gn(t){clearTimeout(this.vn);const i=this.Dn(t);(0,o.IV)(i.element,s.Gj.OnHold),this.gn?(this.gn=!1,this.yn&&(this.yn=!1,i.mediator.publish(i.context,n.Z[n.Z.HoldEnd]))):(this.mn=!0,this.Yn(t))}zn(t,i,e){e=e||this.$n(t),t.stopPropagation(),this.Vn(t,i,r.HT.Interaction),this.Vn(t,i,r.HT.InteractionEnd),(this.gn||this.bn||this.pn&&this.jn(i,r.WR.Hold))&&this.Gn(t),(this.bn||this.jn(i,r.WR.Swipe))&&this.tr(i,e)}Un(t,i){this.Sn=this.qn(i),this.Sn===r.qs.X&&(this.bn=!0,this.gn||(clearTimeout(this.vn),this.vn=null,this.gn=!0,t.mediator.publish(t.context,n.Z[n.Z.HoldStart])))}tr(t,i){if(this.bn){const e=this.ir(i);t.mediator.publish(t.context,n.Z[n.Z.SwipeEnd],{payload:e})}(0,o.h_)(this.en,this._n),this._n=null,this.bn=!1,this.dn=null,this.un=null,this.Sn=null,this.wn=0,this.xn=0}Hn(t){this.xn=Math.abs(t.deltaYFromStart)?r.qs.X:r.qs.Y}ir(t){return t.deltaXFromStart-this.wn<0?r.Av.Left:r.Av.Right}$n(t){const i=t.changedTouches[0];return{deltaXFromStart:i.clientX-this.dn,deltaYFromStart:i.clientY-this.un,eventX:i.clientX,eventY:i.clientY}}Dn(t){return this.An||this.Xn(t.currentTarget)}Xn(t){return this.an.find((i=>i.element===t))}Kn(t){const i=this.Dn(t);if(this.Qt){return t.changedTouches[0].clientX-i.element.getBoundingClientRect().left}return t.offsetX}jn(t,i){return t.allowedSpecialInteractions.includes(i)&&!t.disabledSpecialInteractions.includes(i)}Vn(t,i,e){const s=i.callbacks[e];(0,u.mf)(s)&&s(t),this.Wn(e,t)}Wn(t,i){var e;null===(e=this.ln[t])||void 0===e||e.forEach((t=>{t.action(i)}))}}},6438:(t,i,e)=>{"use strict";e.d(i,{c:()=>u});var s,n,r=e(289),h=e(8423),o=e(1561),a=e(2157),c=e(7427),l=e(7726);!function(t){function i(t,i,n,r){const h=t[i];if(!(0,c.QM)(h))return;if(!e(h,r))return;const o=s(h,r);n.has(o)?t[i]=n.get(o):delete t[i]}function e(t,i){return 0===t.indexOf(i[0])&&t.indexOf(i[1],i[1].length)===t.length-i[0].length}function s(t,i){return t.substring(t.indexOf(i[0])+1,t.lastIndexOf(i[1]))}t.searchAndReplaceMacrosInJson=function t(e,s,n){const r=Object.keys(e),h=r.filter((t=>!(0,c.as)(e[t]))),o=r.filter((t=>(0,c.as)(e[t])));return h.forEach((t=>{i(e,t,s,n)})),o.forEach((i=>{t(e[i],s,n)})),e},t.replaceMacrosOnCurrentLevelIfNeeded=i,t.isMacroString=e,t.extractMacroPlaceholder=s}(s||(s={})),function(t){t.AppUrl="APP_URL",t.AppBundle="APP_BUNDLE",t.AppName="APP_NAME",t.Uuid="UUID",t.PageUrl="PAGE_URL",t.AdPosition="AD_POSITION",t.VideoTitle="VIDEO_TITLE",t.MediaTitle="MEDIA_TITLE",t.VideoDuration="VIDEO_DURATION",t.ContentLength="CONTENT_LENGTH",t.VideoDescription="VIDEO_DESCRIPTION",t.VideoUrl="VIDEO_URL",t.VideoId="VIDEO_ID",t.VideoTime="VIDEO_TIME",t.DescriptionUrl="DESCRIPTION_URL",t.VideoKeywords="VIDEO_KEYWORDS",t.Autoplay="AUTOPLAY",t.UserAgent="UA",t.Ip="IP",t.CashBuster="CB",t.Width="WIDTH",t.Height="HEIGHT",t.Domain="DOMAIN",t.SourceReferrer="SOURCE_REFERRER",t.Gdpr="GDPR",t.GdprConsent="GDPR_CONSENT",t.Consent="CONSENT",t.Ctd="CTD",t.Publisher="PUBLISHER",t.Random="RAND",t.Site="SITE",t.SubId="SUB_ID",t.Url="URL",t.UserLat="USER_LAT",t.UserLong="USER_LONG",t.UsPrivacyString="US_PRIVACY",t.DoNotTrack="DNT",t.FraudSensorUserId="FS_USER_ID",t.PublisherId="PUBLISHER_ID",t.SessionId="SESSION_ID",t.FraudSensorDeviceType="FS_DEVICE_TYPE",t.FraudSensorLookupId="MGID",t.FraudSensorLookupResponseCode="MGTO",t.FraudSensorMediaType="FS_MEDIA_TYPE",t.FraudSensorDeviceIdentifier="FS_DEVICE_IDENT",t.CnxSupplierId="CNX_SUPPLIER_ID",t.AdxPublisherNetworkCode="ADX_CPNC"}(n||(n={}));class u{constructor(t,i,e,s,h,o,l){this.er=new Map,this.sr="[",this.nr="]",this.er.set(n.Autoplay,t.playbackMode===r.ProtoPlayerPlaybackModeEnum.Autoplay),this.er.set(n.UserAgent,navigator.userAgent),this.er.set(n.UserLong,i.lon),this.er.set(n.UserLat,i.lat),this.er.set(n.Ip,i.ip),this.rr(h),this.hr(o),this.ar(e),this.cr(),this.er.set(n.Domain,s),this.er.set(n.CnxSupplierId,a.kd),this.er.set(n.SessionId,t.sessionId),(0,c.QM)(l)&&this.er.set(n.AdxPublisherNetworkCode,`,${l}`)}rr(t){this.er.set(n.AppBundle,t.bundleID),this.er.set(n.AppName,t.appName),this.er.set(n.AppUrl,t.storeURL)}hr(t){this.er.set(n.SourceReferrer,t)}cr(){const t=(0,o.w6)()?1:0;this.er.set(n.DoNotTrack,t)}ar(t){this.er.set(n.PageUrl,t),this.er.set(n.Url,t),this.er.set(n.Publisher,t),this.er.set(n.Site,t),this.er.set(n.DescriptionUrl,t)}lr(){const t=(0,h.qs)();this.er.set(n.CashBuster,t),this.er.set(n.Random,t),this.er.set(n.Ctd,t)}ur(t){return t.split("?")[0]}dr(t){return t.split("?").slice(1).join("?")}pr(t,i){const e=this.ur(t),s=this.vr(this.dr(t),i);return`${e}${s?`?${s}`:""}`}vr(t,i,e=!1){let n=t;const r=n.split("&"),h=[this.sr,this.nr];try{r.forEach((t=>{const r=t.split("=");if(r[1])if(s.isMacroString(r[1],h))n=n.replace(r[1],this.gr(r[1].toLowerCase(),i,e));else if(decodeURIComponent(r[1]).split("=").length>1){const t=this.vr(decodeURIComponent(r[1]),i,!0);n=n.replace(r[1],encodeURIComponent(t))}}))}catch(i){throw(0,l.n)({message:"MacrosService_handleMacros",exception:i.message,callStack:t,level:l.D.CRITICAL},{throttle:1}),i}return n=this.yr(n,i),this.wr(n)}wr(t){return t.includes(this.sr)&&(t=t.cnx_replaceAll(this.sr,encodeURIComponent(this.sr))),t.includes(this.nr)&&(t=t.cnx_replaceAll(this.nr,encodeURIComponent(this.nr))),t}gr(t,i,e){let s,n=t;return i.forEach(((t,i)=>{for(;n.includes(this.sr+i.toLowerCase()+this.nr);)s=e?t:encodeURIComponent(t),n=n.replace(this.sr+i.toLowerCase()+this.nr,s)})),n}yr(t,i){const e=`${this.sr}${n.AdxPublisherNetworkCode}${this.nr}`;return t.includes(e)?i.has(n.AdxPublisherNetworkCode)?t.cnx_replaceAll(e,i.get(n.AdxPublisherNetworkCode)):t.cnx_replaceAll(e,""):t}setAdWidth(t){this.er.set(n.Width,Math.floor(t))}setAdHeight(t){this.er.set(n.Height,Math.floor(t))}setSubId(t){this.er.set(n.SubId,t)}setGDPR(t){this.er.set(n.Gdpr,t)}setUUID(t){this.er.set(n.Uuid,t)}setGDPRConsent(t){this.er.set(n.GdprConsent,t)}setConsent(t){this.er.set(n.Consent,t)}setVideoId(t){this.er.set(n.VideoId,t)}setVideoTime(t){this.er.set(n.VideoTime,Math.floor(t))}setVideoUrl(t){this.er.set(n.VideoUrl,t)}setVideoDescription(t){this.er.set(n.VideoDescription,t)}setVideoDuration(t){this.er.set(n.VideoDuration,t),this.er.set(n.ContentLength,t)}setVideoTitle(t){let i;this.er.set(n.VideoTitle,t),this.er.set(n.MediaTitle,t),t&&(i=t.split(" ").join(",")),this.er.set(n.VideoKeywords,i)}setAdPosition(t="midRoll"){this.er.set(n.AdPosition,t)}setupMacros(t){return this.lr(),this.pr(t,this.er)}replaceMacrosInJsonString(t){const i=[this.sr,this.nr],e=JSON.parse(t),n=s.searchAndReplaceMacrosInJson(e,this.er,i);return JSON.stringify(n)}addExtraMacros(t){const i=Object.values(n);Object.keys(t).filter((t=>!i.includes(t.toUpperCase()))).forEach((i=>{this.er.set(i,t[i])}))}getExtraMacros(){const t=Object.values(n),i={};return this.er.forEach(((e,s)=>{t.includes(s)||null==e||(i[s]=(0,c.QM)(e)?e:JSON.stringify(e))})),i}setUsPrivacyString(t){const i=t||"";this.er.set(n.UsPrivacyString,i)}setUserId(t){this.er.set(n.FraudSensorUserId,t)}setPublisherId(t){this.er.set(n.PublisherId,t)}setFraudSensorMacros(t){this.er.set(n.FraudSensorDeviceType,t.deviceType),this.er.set(n.FraudSensorLookupId,t.lookupId),this.er.set(n.FraudSensorLookupResponseCode,t.lookupResponseCode),this.er.set(n.FraudSensorMediaType,t.mediaType),this.er.set(n.FraudSensorDeviceIdentifier,t.deviceIdentifier)}destroy(){}}},2356:(t,i,e)=>{"use strict";var s,n;e.d(i,{v:()=>r}),function(t){t.hidden="hidden",t.msHidden="msHidden",t.webkitHidden="webkitHidden"}(s||(s={})),function(t){t.visibilitychange="visibilitychange",t.msvisibilitychange="msvisibilitychange",t.webkitvisibilitychange="webkitvisibilitychange"}(n||(n={}));class r{constructor(t){this.Sr=t,this._r=[],this.Ar(),this.Pr()}on(t){this._r.push(t),t(this.isDocumentVisible())}off(t){this._r=this._r.filter((i=>i!==t))}Ar(){void 0!==this.Sr.getDocumentProperty(s.hidden)?(this.kr=s.hidden,this.Ir=n.visibilitychange):void 0!==this.Sr.getDocumentProperty(s.msHidden)?(this.kr=s.msHidden,this.Ir=n.msvisibilitychange):void 0!==this.Sr.getDocumentProperty(s.webkitHidden)&&(this.kr=s.webkitHidden,this.Ir=n.webkitvisibilitychange)}Pr(){this.Sr.addEventListenerOnGlobal(this.Ir,(()=>{this._r.forEach((t=>{t(this.isDocumentVisible())}))}),!0,!1)}isDocumentVisible(){return!this.Sr.getDocumentProperty(this.kr)}}},7398:(t,i,e)=>{"use strict";e.d(i,{a:()=>q});var s,n=e(7726),r=e(1561),h=[],o="ResizeObserver loop completed with undelivered notifications.";!function(t){t.BORDER_BOX="border-box",t.CONTENT_BOX="content-box",t.DEVICE_PIXEL_CONTENT_BOX="device-pixel-content-box"}(s||(s={}));var a,c=function(t){return Object.freeze(t)},l=function(t,i){this.inlineSize=t,this.blockSize=i,c(this)},u=function(){function t(t,i,e,s){return this.x=t,this.y=i,this.width=e,this.height=s,this.top=this.y,this.left=this.x,this.bottom=this.top+this.height,this.right=this.left+this.width,c(this)}return t.prototype.toJSON=function(){var t=this;return{x:t.x,y:t.y,top:t.top,right:t.right,bottom:t.bottom,left:t.left,width:t.width,height:t.height}},t.fromRect=function(i){return new t(i.x,i.y,i.width,i.height)},t}(),d=function(t){return t instanceof SVGElement&&"getBBox"in t},p=function(t){if(d(t)){var i=t.getBBox(),e=i.width,s=i.height;return!e&&!s}var n=t,r=n.offsetWidth,h=n.offsetHeight;return!(r||h||t.getClientRects().length)},f=function(t){var i,e;if(t instanceof Element)return!0;var s=null===(e=null===(i=t)||void 0===i?void 0:i.ownerDocument)||void 0===e?void 0:e.defaultView;return!!(s&&t instanceof s.Element)},v="undefined"!=typeof window?window:{},g=new WeakMap,m=/auto|scroll/,y=/^tb|vertical/,b=/msie|trident/i.test(v.navigator&&v.navigator.userAgent),w=function(t){return parseFloat(t||"0")},x=function(t,i,e){return void 0===t&&(t=0),void 0===i&&(i=0),void 0===e&&(e=!1),new l((e?i:t)||0,(e?t:i)||0)},S=c({devicePixelContentBoxSize:x(),borderBoxSize:x(),contentBoxSize:x(),contentRect:new u(0,0,0,0)}),_=function(t,i){if(void 0===i&&(i=!1),g.has(t)&&!i)return g.get(t);if(p(t))return g.set(t,S),S;var e=getComputedStyle(t),s=d(t)&&t.ownerSVGElement&&t.getBBox(),n=!b&&"border-box"===e.boxSizing,r=y.test(e.writingMode||""),h=!s&&m.test(e.overflowY||""),o=!s&&m.test(e.overflowX||""),a=s?0:w(e.paddingTop),l=s?0:w(e.paddingRight),f=s?0:w(e.paddingBottom),v=s?0:w(e.paddingLeft),_=s?0:w(e.borderTopWidth),A=s?0:w(e.borderRightWidth),P=s?0:w(e.borderBottomWidth),k=v+l,I=a+f,T=(s?0:w(e.borderLeftWidth))+A,C=_+P,M=o?t.offsetHeight-C-t.clientHeight:0,E=h?t.offsetWidth-T-t.clientWidth:0,L=n?k+T:0,O=n?I+C:0,R=s?s.width:w(e.width)-L-E,B=s?s.height:w(e.height)-O-M,D=R+k+E+T,j=B+I+M+C,F=c({devicePixelContentBoxSize:x(Math.round(R*devicePixelRatio),Math.round(B*devicePixelRatio),r),borderBoxSize:x(D,j,r),contentBoxSize:x(R,B,r),contentRect:new u(v,a,R,B)});return g.set(t,F),F},A=function(t,i,e){var n=_(t,e),r=n.borderBoxSize,h=n.contentBoxSize,o=n.devicePixelContentBoxSize;switch(i){case s.DEVICE_PIXEL_CONTENT_BOX:return o;case s.BORDER_BOX:return r;default:return h}},P=function(t){var i=_(t);this.target=t,this.contentRect=i.contentRect,this.borderBoxSize=c([i.borderBoxSize]),this.contentBoxSize=c([i.contentBoxSize]),this.devicePixelContentBoxSize=c([i.devicePixelContentBoxSize])},k=function(t){if(p(t))return 1/0;for(var i=0,e=t.parentNode;e;)i+=1,e=e.parentNode;return i},I=function(){var t=1/0,i=[];h.forEach((function(e){if(0!==e.activeTargets.length){var s=[];e.activeTargets.forEach((function(i){var e=new P(i.target),n=k(i.target);s.push(e),i.lastReportedSize=A(i.target,i.observedBox),nt?i.activeTargets.push(e):i.skippedTargets.push(e))}))}))},C=function(){var t,i=0;for(T(i);h.some((function(t){return t.activeTargets.length>0}));)i=I(),T(i);return h.some((function(t){return t.skippedTargets.length>0}))&&("function"==typeof ErrorEvent?t=new ErrorEvent("error",{message:o}):((t=document.createEvent("Event")).initEvent("error",!1,!1),t.message=o),window.dispatchEvent(t)),i>0},M=[],E=function(t){if(!a){var i=0,e=document.createTextNode("");new MutationObserver((function(){return M.splice(0).forEach((function(t){return t()}))})).observe(e,{characterData:!0}),a=function(){e.textContent=""+(i?i--:i++)}}M.push(t),a()},L=0,O={attributes:!0,characterData:!0,childList:!0,subtree:!0},R=["resize","load","transitionend","animationend","animationstart","animationiteration","keyup","keydown","mouseup","mousedown","mouseover","mouseout","blur","focus"],B=function(t){return void 0===t&&(t=0),Date.now()+t},D=!1,j=new(function(){function t(){var t=this;this.stopped=!0,this.listener=function(){return t.schedule()}}return t.prototype.run=function(t){var i=this;if(void 0===t&&(t=250),!D){D=!0;var e,s=B(t);e=function(){var e=!1;try{e=C()}finally{if(D=!1,t=s-B(),!L)return;e?i.run(1e3):t>0?i.run(t):i.start()}},E((function(){requestAnimationFrame(e)}))}},t.prototype.schedule=function(){this.stop(),this.run()},t.prototype.observe=function(){var t=this,i=function(){return t.observer&&t.observer.observe(document.body,O)};document.body?i():v.addEventListener("DOMContentLoaded",i)},t.prototype.start=function(){var t=this;this.stopped&&(this.stopped=!1,this.observer=new MutationObserver(this.listener),this.observe(),R.forEach((function(i){return v.addEventListener(i,t.listener,!0)})))},t.prototype.stop=function(){var t=this;this.stopped||(this.observer&&this.observer.disconnect(),R.forEach((function(i){return v.removeEventListener(i,t.listener,!0)})),this.stopped=!0)},t}()),F=function(t){!L&&t>0&&j.start(),!(L+=t)&&j.stop()},$=function(){function t(t,i){this.target=t,this.observedBox=i||s.CONTENT_BOX,this.lastReportedSize={inlineSize:0,blockSize:0}}return t.prototype.isActive=function(){var t,i=A(this.target,this.observedBox,!0);return t=this.target,d(t)||function(t){switch(t.tagName){case"INPUT":if("image"!==t.type)break;case"VIDEO":case"AUDIO":case"EMBED":case"OBJECT":case"CANVAS":case"IFRAME":case"IMG":return!0}return!1}(t)||"inline"!==getComputedStyle(t).display||(this.lastReportedSize=i),this.lastReportedSize.inlineSize!==i.inlineSize||this.lastReportedSize.blockSize!==i.blockSize},t}(),V=function(t,i){this.activeTargets=[],this.skippedTargets=[],this.observationTargets=[],this.observer=t,this.callback=i},U=new WeakMap,N=function(t,i){for(var e=0;e=0&&(n&&h.splice(h.indexOf(e),1),e.observationTargets.splice(s,1),F(-1))},t.disconnect=function(t){var i=this,e=U.get(t);e.observationTargets.slice().forEach((function(e){return i.unobserve(t,e.target)})),e.activeTargets.splice(0,e.activeTargets.length)},t}(),z=function(){function t(t){if(0===arguments.length)throw new TypeError("Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.");if("function"!=typeof t)throw new TypeError("Failed to construct 'ResizeObserver': The callback provided as parameter 1 is not a function.");H.connect(this,t)}return t.prototype.observe=function(t,i){if(0===arguments.length)throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': 1 argument required, but only 0 present.");if(!f(t))throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': parameter 1 is not of type 'Element");H.observe(this,t,i)},t.prototype.unobserve=function(t){if(0===arguments.length)throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': 1 argument required, but only 0 present.");if(!f(t))throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': parameter 1 is not of type 'Element");H.unobserve(this,t)},t.prototype.disconnect=function(){H.disconnect(this)},t.toString=function(){return"function ResizeObserver () { [polyfill code] }"},t}();class q{constructor(t){this.Tr=[],this.Cr=(t,i)=>{t.forEach((t=>{this.Mr(t.target).forEach((t=>{t&&((0,r.Tp)(t.element),t.callback(t.element))}))}))};try{const i=t.ResizeObserver||z;this.Er=new i(this.Cr)}catch(t){(0,n.n)({message:"ResizeObserver_constructor",callStack:t.stack,exception:t.message,level:n.D.CRITICAL})}}on(t,i){this.Lr(t,i)||(this.Tr.push({element:t,callback:i}),this.Er.observe(t))}off(t,i){const e=this.Lr(t,i);if(!e)return;this.Er.unobserve(e.element);const s=this.Tr.indexOf(e);s>=0&&this.Tr.splice(s,1)}destroy(){if(this.Tr)for(;this.Tr.length>0;)this.Tr.pop();this.Er.disconnect()}Mr(t){return this.Tr.filter((i=>i.element===t))}Lr(t,i){return this.Tr.find((e=>e.element===t&&e.callback===i))}}},3352:(t,i,e)=>{"use strict";e.d(i,{G:()=>s});class s{setNewMedia(){}updateMediaMetadata(){}setMediaStart(){}setContentStart(){}setSessionPlayback(){}setSessionViewability(){}trackSessionRendered(){}trackSessionViewability(){}trackMediaQuartile(){}trackMediaClick(){}setAdStart(){}startBidTrackingInterval(){}addPrebid(){}addPostBid(){}addBid(){}trackAuctionInfoForBid(){}trackVideoAdImpression(){}trackVideoAdImpressionViewable(){}trackVideoAdQuartile(){}trackAdClick(){}trackAdOpportunity(){}trackSessionAdBlocker(){}getMetadataModel(){}getPlayerSize(){return{playerWidth:0,playerHeight:0}}updateMetadataModel(){}updatePlayerDimensions(t,i){}setIsConsentPayload(){}destroy(){}publish(){}setImplementationTypeOnMeta(){}trackHeavyAdIntervention(){}}},9446:(t,i,e)=>{"use strict";e.d(i,{e:()=>b});var s=e(158),n=e(289),r=e(45),h=e(525),o=e(5880),a=e(7427),c=e(1730),l=e(7577),u=e(8423),d=e(3030),p=e(497),f=(e(7417),e(6716)),v=e(4974),g=e(1886),m=e(9115);class y{constructor(){this.Or=null,this.Rr=0}Br(){if(null===this.Or)return;const t=(new Date).getTime();this.Rr=t-this.Or}startCountingTime(){this.Or=(new Date).getTime()}stopCountingTime(){this.Br(),this.Or=null}fetchTime(t){this.Br();const i=Math.round(this.Rr/m.s_);return this.Rr=0,null!==this.Or&&this.startCountingTime(),i>t?t:i}}class b extends o._{constructor({userId:t,playerId:i,geoLocation:e,browser:s,sessionId:n,pageUrl:h,bundleId:o,Dr:a,userManagerService:l,customParam1:p,customParam2:v,customParam3:g,customParam4:m,customParam5:b,abTestId:w,explorationMode:x,bundleAbId:S,bundlePart:_}){super(),this.hasGdprConsentPayload=!1,this.jr={},this.Fr={},this.$r=!1,this.Vr=!1,this.Ur=!1,this.Nr=!1,this.Hr=[],this.zr=[],this.qr=[],this.Wr=5e3,this.Gr=!1,this.Jr=[{delay:7,timesRepeatDelay:1},{delay:8,timesRepeatDelay:1},{delay:15,timesRepeatDelay:3},{delay:30,timesRepeatDelay:2},{delay:60,timesRepeatDelay:1},{delay:120,timesRepeatDelay:1},{delay:300,timesRepeatDelay:8},{delay:600,timesRepeatDelay:13},{delay:1800}],this.Qr=0,this.Xr=0,this.Yr=0,this.Kr=new f.x,this.th=new f.x,this.ih=new f.x;(0,d.d3)(i,[])?this.jr.trackAllRequests=!0:this.jr.trackAllRequests=1===(0,u.Vm)([99,1]),this.eh=l,this.jr.userId=t,this.jr.playerId=i,this.jr.geo=e,this.jr.browser=s,this.jr.version=r.g.version,this.jr.sessionId=n,this.jr.clientAb0=c.e.clientAb0,this.jr.clientAb1=c.e.clientAb1,this.jr.serverAb0=c.e.serverAb0,this.jr.serverAb1=c.e.serverAb1,this.jr.pageUrl=h,this.jr.bundleId=o,this.jr.customParam1=p,this.jr.customParam2=v,this.jr.customParam3=g,this.jr.customParam4=m,this.jr.customParam5=b,this.jr.bundleAbId=S,this.jr.bundlePart=_,this.jr.abTestId=w,this.sh=new y,this.nh=new y,this.rh=x}hh(t,i=n.ProtoTrackingRequest,e,r=!0){return this.jr.pageInFocus=p.S.pageFocus,s.n.sendProtoBeaconRequest({endpoint:t,ProtoRequest:i,requestData:Object.assign({trackingRequestMeta:r?this.jr:void 0},e),logError:!1})}oh(t,i=n.ProtoTrackingRequest,e){this.jr.pageInFocus=p.S.pageFocus;const h=s.n.sendProtoRequest({endpoint:t,ProtoRequest:i,ProtoResponse:n.ProtoTrackingResponse,requestData:Object.assign({trackingRequestMeta:this.jr},e),queryParams:Object.assign({[l.Fk]:r.g.version},g.f.getCidKeyValueObject()),withCredentials:!0,logError:!0});return h.then((t=>{var i;const s=t.platformCappedLineItemIdList;(0,d.BZ)(s)&&this.Kr.next(s);const{impressionRevenue:n,adServerLineItemName:r}=t;if((0,a.r)(n)&&(0,a.QM)(r)&&this.th.next({impressionRevenue:n,adServerLineItemName:r}),(0,a.$K)(t.viewability)){const s=null===(i=e)||void 0===i?void 0:i.advertiserLineItemId;this.ih.next([s,t.viewability])}})).catch((t=>{})),h}ah(t,i,e=n.ProtoMediaTrackingRequest){const s=Object.assign({},i);(0,a.QM)(this.Fr.mediaId)&&(s.mediaGuid=this.Fr.mediaId),this.oh(t,e,s)}lh(){var t;this.Gr||(this.Gr=!0,this.oh(h.n.endPoints.tracking.playerStart,n.ProtoPlayerStartRequest,{pageInsightIndexes:null===(t=v.k.pageInsights)||void 0===t?void 0:t.insights}))}dh(t,i,e=n.ProtoMediaTrackingRequest){var s;return this.oh(t,e,Object.assign({mediaGuid:this.Fr.mediaId,insightIndexes:this.Fr.insights,sentimentAnalysis:this.Fr.sentimentAnalysis,pageInsightIndexes:null===(s=v.k.pageInsights)||void 0===s?void 0:s.insights},i))}ph(t){this.ah(h.n.endPoints.tracking.media_quartile,{baseMeta:this.Fr,mediaId:this.Fr.mediaId,insightIndexes:this.Fr.insights,sentimentAnalysis:this.Fr.sentimentAnalysis,quartile:t})}fh(){this.gh(this.zr,this.Hr,this.qr),this.zr=[],this.Hr=[],this.qr=[]}gh(t,i,e){if(0===t.length&&0===i.length&&0===e.length)return;e.forEach((t=>{t.error&&t.error.length>0&&(t.error=t.error.substring(0,500))}));const s={mediaGuid:this.Fr.mediaId,prebids:t,bids:i,postBids:e,logEveryting:this.jr.trackAllRequests,hasGdprConsentPayload:this.hasGdprConsentPayload,gdprConsentMode:this.eh.gdprConsentMode,useExploration:this.rh};this.oh(h.n.endPoints.tracking.bids,n.ProtoBidTrackingsRequest,s)}mh(t){var i;this.oh(h.n.endPoints.tracking.ad_click,n.ProtoAdClickTrackingRequest,Object.assign({mediaGuid:this.Fr.mediaId,insightIndexes:this.Fr.insights,sentimentAnalysis:this.Fr.sentimentAnalysis,pageInsightIndexes:null===(i=v.k.pageInsights)||void 0===i?void 0:i.insights},t))}yh(t){this.hh(h.n.endPoints.tracking.heavy_ad_intervention,n.ProtoHeavyAdTrackingRequest,t)}bh(){const t=this.Jr[this.Qr];clearTimeout(this.wh),this.wh=setTimeout((()=>{this.xh(t.delay),(0,a.r)(t.timesRepeatDelay)&&t.timesRepeatDelay--,0===t.timesRepeatDelay&&this.Qr++,this.bh()}),1e3*t.delay)}xh(t){var i;this.oh(h.n.endPoints.tracking.session_time,n.ProtoSessionTimeTrackingRequest,{trackingRequestMeta:this.jr,sessionTime:t,timePlayed:this.sh.fetchTime(t),timePlayedInView:this.nh.fetchTime(t),pageInsightIndexes:null===(i=v.k.pageInsights)||void 0===i?void 0:i.insights})}Sh(t){return t.playerWidth=this.Xr,t.playerHeight=this.Yr,t}get onLineItemPlatformCapped(){return this.Kr.asObservable()}get onLineItemViewabilityChange(){return this.ih.asObservable()}get onImpressionRevenue(){return this.th.asObservable()}setNewMedia(t){this.Fr=t}updateMediaMetadata(t){this.Fr=t}setImplementationTypeOnMeta(t){this.jr.implementationType=t}setMediaStart(){this.ph(n.ProtoQuartilesEnum.Start)}setContentStart(){this.lh()}setSessionPlayback(t){this.Ur!==t&&(this.Ur=t,this.Nr&&this.Ur&&this.nh.startCountingTime(),this.Ur?this.sh.startCountingTime():(this.sh.stopCountingTime(),this.nh.stopCountingTime()))}setSessionViewability(t){this.Nr!==t&&(this.Nr=t,this.Nr&&this.Ur?this.nh.startCountingTime():this.Nr||this.nh.stopCountingTime())}trackSessionRendered(t){var i;if(this.$r)return;this.oh(h.n.endPoints.tracking.session_rendered,n.ProtoTrackingRequest,{playerHeight:this.Yr,playerWidth:this.Xr,hasAdBlocker:t,bundleName:"connatix.playspace.js",pageInsightIndexes:null===(i=v.k.pageInsights)||void 0===i?void 0:i.insights}),this.$r=!0,this.bh()}trackSessionViewability(){var t;!this.Vr&&this.Gr&&(this.oh(h.n.endPoints.tracking.session_view,n.ProtoSessionViewRequest,{pageInsightIndexes:null===(t=v.k.pageInsights)||void 0===t?void 0:t.insights}),this.Vr=!0)}trackMediaQuartile(t){this.ph(t)}trackMediaClick(t=n.ProtoMediaClickTypeEnum.Click){const i={type:t,clickUrl:t===n.ProtoMediaClickTypeEnum.UrlClick?this.Fr.clickUrl:void 0,insightIndexes:this.Fr.insights,sentimentAnalysis:this.Fr.sentimentAnalysis,slideTitle:this.Fr.slideTitle,slideNumber:this.Fr.slideNumber,slideMediaType:this.Fr.slideMediaType};this.ah(h.n.endPoints.tracking.media_click,i,n.ProtoMediaClickTrackingRequest)}setAdStart(){this.lh()}startBidTrackingInterval(){this._h=setInterval((()=>{this.fh()}),this.Wr)}addPrebid(t){t=this.Sh(t),this.zr.push(t)}addPostBid(t){t=this.Sh(t),(0,a.HD)(t.error)||(t.error=JSON.stringify(t.error)),this.qr.push(t)}addBid(t){t=this.Sh(t),this.Hr.push(t)}trackAuctionInfoForBid(t){this.oh(h.n.endPoints.tracking.auctionInformation,n.ProtoAuctionInfoRequest,t)}trackVideoAdImpression(t){return t=this.Sh(t),this.dh(h.n.endPoints.tracking.ad_impression,t,n.ProtoVideoAdImpressionRequest)}trackVideoAdImpressionViewable(t){return this.dh(h.n.endPoints.tracking.ad_impression_viewable,t,n.ProtoVideoAdImpressionViewableRequest)}trackVideoAdQuartile(t){var i;t=Object.assign(Object.assign({},t),{insightIndexes:this.Fr.insights,sentimentAnalysis:this.Fr.sentimentAnalysis,pageInsightIndexes:null===(i=v.k.pageInsights)||void 0===i?void 0:i.insights}),this.ah(h.n.endPoints.tracking.ad_quartile,t,n.ProtoVideoAdQuartilesRequest)}trackAdClick(t){this.mh(t)}trackAdOpportunity(t){var i;const{sessionId:e}=this.jr;t.sessionId=e,t.pageInsightIndexes=null===(i=v.k.pageInsights)||void 0===i?void 0:i.insights,this.oh(h.n.endPoints.tracking.adOpportunity,n.ProtoAdOpportunityRequest,t)}trackSessionAdBlocker(t){this.oh(h.n.endPoints.tracking.sessionAdBlocker,n.ProtoSessionAdBlockerRequest,{trackingRequestMeta:this.jr,adBlockDetectionType:t})}getMetadataModel(){return this.jr}getPlayerSize(){return{playerWidth:this.Xr,playerHeight:this.Yr}}updateMetadataModel(t){this.jr=Object.assign(Object.assign({},this.jr),t)}updatePlayerDimensions(t,i){this.Xr=t,this.Yr=i}trackHeavyAdIntervention(t){this.yh(t)}destroy(){clearInterval(this.wh),clearInterval(this._h)}}},2645:(t,i,e)=>{"use strict";e.d(i,{f:()=>h});var s=e(3030),n=e(6615),r=e(7427);class h{constructor(){this.Ah={},this.kh={domain:"",urlParams:[]},this.ignoredDomains=[]}setQueryParams(t){this.Ah=t}setUrlParams(t){this.kh=t}appendParamsToUrl(t){return this.isIgnoredDomain(t)?t:this.Ih(t)}appendQueryParamsToUrl(t){return this.isIgnoredDomain(t)?t:this.Th(t,Object.keys(this.Ah).map((t=>({paramName:t,paramValue:this.Ah[t]}))))}Ih(t){if(!(0,s.BZ)(Object.keys(this.kh))||!(0,s.BZ)(this.kh.urlParams)||!t.includes(this.kh.domain))return t;const i=this.kh.urlParams.reduce(((t,i)=>`${t}${i}`),"");return t.replace(this.kh.domain,this.kh.domain+"/"+i)}Th(t,i){if(!(0,s.BZ)(i))return t;t+=(0,n.CK)(t);let e="";return i.forEach((t=>{(0,r.QM)(t.paramName)&&(0,r.QM)(t.paramValue)&&(e+=`${e.length>0?"&":""}${t.paramName}=${t.paramValue}`)})),t+e}isIgnoredDomain(t){return this.ignoredDomains.some((i=>t.indexOf(i)>-1))}}},9207:(t,i,e)=>{"use strict";var s;e.d(i,{Q:()=>s}),function(t){t[t.P1=1]="P1",t[t.P2=2]="P2",t[t.P3=3]="P3",t[t.P4=4]="P4",t[t.P5=5]="P5",t[t.P6=6]="P6",t[t.P7=7]="P7",t[t.P8=8]="P8",t[t.P9=9]="P9",t[t.P10=10]="P10"}(s||(s={}))},7272:(t,i,e)=>{"use strict";e.d(i,{k:()=>K,x:()=>it});var s,n=e(8423);!function(t){t.Connatix="143",t.AppNexus="32",t.DistrictM="144",t.IndexExchange="10",t.Lkqd="237",t.OneVideo="25",t.Openx="69",t.Pubmatic="76",t.RhythmOne="36",t.Rubicon="52",t.Spotx="165",t.Telaria="202",t.MediaNet="142",t.AdMan="149",t.IronSource="",t.Undertone="677",t.SynacorMedia="",t.AmxRTB="737",t.Smaato="82",t.TheMediaGrid="686",t.Rise="1043"}(s||(s={}));const r=["1YNY"];var h=e(158),o=e(289),a=e(525),c=e(7427),l=e(7577),u=e(45);class d{constructor(t){this.Ch=t,this.Mh=!0,this.Eh="",this.Lh=!1,this.Oh=[]}static getInstance(t){const i=(0,n.pE)(t).topFrame;return i.cnx_usr_storage||(i.cnx_usr_storage=new d(i)),i.cnx_usr_storage}get userId(){if((0,c.QM)(this.Rh))return this.Rh.split("_")[0]}set userId(t){this.Rh=t}get isCcpaApplicable(){return this.Mh}set isCcpaApplicable(t){this.Mh=t}get usPrivacyString(){return this.Eh}set usPrivacyString(t){this.Eh=t}get consentPayload(){return this.Bh}set consentPayload(t){this.Bh||(this.Bh=t)}getScope(){return this.Ch}syncDemandPartner(t){if(this.userId){const i={userId:this.userId,demandPartner:parseInt(t.demandPartner,10),demandPartnerUserId:t.demandPartnerUserId};h.n.sendProtoRequest({ProtoRequest:o.ProtoUserSyncRequest,endpoint:a.n.endPoints.api.syncUrls,requestData:i,queryParams:{[l.Fk]:u.g.version},logError:!0}).then((t=>{})).catch((t=>{}))}}registerPlsCall(t){return this.Lh?(this.Oh.push(t),()=>{}):this.userId?(t(),()=>{}):(this.Lh=!0,t(),()=>{this.Lh=!1,this.Oh.forEach((t=>t())),this.Oh=[]})}}var p,f,v=e(2324),g=e(7726),m=e(3030);!function(t){t.USER_ID="cnx_userId"}(p||(p={}));class y{constructor(t,i){this.Dh=t,this.Ne=i,this.jh={[p.USER_ID]:30},this.Fh=["Facebook App","Google App","Flipboard App","Instagram App","Pinterest App"],this.$h=!1}Vh({name:t,value:i}){t===p.USER_ID&&(this.Dh.userId=this.Nh(i))}zh(t){let i="";const e=this.jh[t.name];if(e){i=`; expires=${new Date((0,v.XF)(e)).toUTCString()}`}this.Ne.document.cookie=`${t.name}=${t.value}${i}; path=/`}qh(t,i){if(!(0,m.BZ)(t))return;const e={cookieList:t,secureMode:i?o.ProtoCookieSecureModeEnum.Unsecure:o.ProtoCookieSecureModeEnum.Auto,browserInfo:this.Wh};return h.n.sendProtoRequest({requestData:e,ProtoRequest:o.ProtoCookieSyncRequest,endpoint:a.n.endPoints.api.cookie,withCredentials:!0,queryParams:{[l.Fk]:u.g.version},logError:!1}).catch((t=>(0,g.n)({message:"UserCookieManager_setThirdPartyCookie",exception:t.message,callStack:t.callStack,level:g.D.CRITICAL})))}Nh(t){return t.split("_")[0]}Gh(t){try{const i=t+"=",e=decodeURIComponent(this.Ne.document.cookie).split(";");for(let t of e){for(;" "===t.charAt(0);)t=t.substring(1);if(t.includes(i))return this.Nh(t.substring(i.length,t.length))}}catch(t){}return""}getUserId(){return this.Dh.userId}syncFirstPartyCookie(t){const i={name:t,value:"",timestamp:(0,v.XF)(this.jh[t])};t===p.USER_ID&&(i.value=this.Dh.userId),(0,c.QM)(i.value)&&this.zh(i)}syncThirdPartyCookieList(t){const i=[p.USER_ID],e=[];i.forEach((t=>{t===p.USER_ID&&(0,c.QM)(this.Dh.userId)&&e.push({name:p.USER_ID,value:this.Dh.userId,timestamp:(0,v.XF)(this.jh[p.USER_ID])})})),this.qh(e,t)}setBrowserInfo(t,i){this.Wh=t,this.$h=this.Fh.includes(t.browserType),this.$h&&i&&this.syncThirdPartyCookieList(this.$h)}setUserInformation(t){t&&this.Vh({name:p.USER_ID,value:t.userId})}fetchCookies(){[p.USER_ID].map((t=>({name:t,value:this.Gh(t)}))).filter((({value:t})=>(0,c.QM)(t))).forEach((t=>this.Vh(t)))}get unsecuredCookieSync(){return this.$h}}!function(t){t[t.CmpApi=0]="CmpApi",t[t.TcfApi=1]="TcfApi"}(f||(f={}));const b={[f.CmpApi]:{windowPropertyName:"__cmp",framePropertyName:"__cmpLocator",getVendorConsentDataMethodName:"getVendorConsents",getConsentDataMethodName:"getConsentData"},[f.TcfApi]:{windowPropertyName:"__tcfapi",framePropertyName:"__tcfapiLocator",getVendorConsentDataMethodName:"getTCData",consentUpdateMethodName:"addEventListener",removeUpdateListenerMethodName:"removeEventListener"}};class w{constructor(t,i){this.Qh=t,this.Yh=i,this.apiType=f.CmpApi,this.Kh={},this.Bh=null,this.Zh=t=>new Promise(((i,e)=>{try{const e="string"==typeof t.data?JSON.parse(t.data):t.data;if("object"==typeof e&&e.io)if(e.io.callId===this.eo){const t=e.io.returnValue&&e.io.returnValue.vendorConsents;this.so(t).then((()=>i(this.eo)))}else if(e.io.callId===this.no){const t=e.io.returnValue&&e.io.returnValue.consentData;this.ro(t).then((()=>i(this.no)))}}catch(t){e()}}))}isApiOnPage(){return null!==this.Qh||null!==this.Yh}bindToApi(){return null!==this.Qh?new Promise(((t,i)=>{this.ho(this.Qh).then((()=>t())).catch((t=>i(t)))})):null!==this.Yh?this.oo(this.Yh):Promise.reject()}isConsentForVendor(t){return!!this.Kh[t]}getConsentPayload(){return this.Bh}setInAppConsentData(t){this.so(t),this.ro(t.consentString)}hasIvtConsent(){return this.isConsentForVendor(s.Connatix)}isConsentForPurposes(t){return!0}oo(t){this.no=(0,n.qs)(),this.eo=(0,n.qs)();const i={};return new Promise((e=>{const s=t=>{this.Zh(t).then((t=>{i[t]=!0,i[this.no]&&i[this.eo]&&(window.removeEventListener("message",s,!1),e())})).catch((t=>{}))};window.addEventListener("message",s,!1);const n=b[f.CmpApi].getVendorConsentDataMethodName,r=b[f.CmpApi].getConsentDataMethodName;t.postMessage({ao:{command:n,parameter:null,callId:this.eo}},"*"),t.postMessage({ao:{command:r,parameter:null,callId:this.no}},"*")}))}ho(t){const i=b[f.CmpApi].windowPropertyName,e=b[f.CmpApi].getVendorConsentDataMethodName,s=b[f.CmpApi].getConsentDataMethodName;if(t&&t[i]){const n=new Promise((s=>{t[i](e,null,((t,i)=>{if(i){const{vendorConsents:i}=t;this.so(i).then((()=>s()))}}))})),r=new Promise((e=>{t[i](s,null,((t,i)=>{if(i){const{consentData:i}=t;this.ro(i).then((()=>e()))}}))}));return Promise.all([n,r])}return Promise.reject()}so(t){return(0,c.as)(t)?(this.Kh=t,Promise.resolve()):Promise.reject()}ro(t){return(0,c.HD)(t)?(this.Bh=t,Promise.resolve()):Promise.reject()}}var x=e(1561),S=e(8462),_=e(2381);const A=(t,i)=>{const e=b[i].windowPropertyName;return(0,x.uq)(t,e)},P=(t,i)=>{const e=b[i].framePropertyName;return(0,x.wl)(t,e)},k=(t,i)=>null!==A(t,i)||null!==P(t,i),I=t=>{const i=_.E.decode(t),e={},s={};return i.vendorConsents.forEach(((t,i)=>e[i]=t)),i.purposeConsents.forEach(((t,i)=>s[i]=t)),{vendorConsents:e,purposeConsents:s,tcString:t}},T=t=>{const i=S.decodeConsentString(t);let e="";const s=i.maxVendorId;for(let t=1;t<=s;t++)e+="0";const n=e.split("");i.allowedVendorIds.forEach((t=>{n[t-1]="1"}));return(t=>{const i={consentString:t};for(let e=0;e{let s;try{s=i(t)}catch(t){}if((0,c.as)(s))return s;try{s=e(t)}catch(t){}return s},M=t=>{var i;return(0,c.QM)(null===(i=t)||void 0===i?void 0:i.tcString)},E=t=>{var i;return(0,c.QM)(null===(i=t)||void 0===i?void 0:i.consentString)},L=({cmpEncodedString:t,tcfEncodedString:i})=>{if(!(0,c.QM)(t)&&!(0,c.QM)(i))return null;let e=null;return(0,c.QM)(i)&&(e=C(i,I,T)),(0,c.as)(e)?e:(0,c.QM)(t)?(e=C(t,T,I),(0,c.as)(e)?e:((0,g.n)({message:"UserManagerService_getDecodedConsentData",exception:"cmpEncodedString failed to decode",callStack:JSON.stringify({cmpEncodedString:t,tcfEncodedString:i}),level:g.D.CRITICAL}),null)):((0,g.n)({message:"UserManagerService_getDecodedConsentData",exception:"tcfEncodedString failed to decode",callStack:JSON.stringify({tcfEncodedString:i}),level:g.D.CRITICAL}),null)};class O{constructor(t,i){this.co=t,this.uo=i,this.apiType=f.TcfApi,this.po=t=>new Promise(((i,e)=>{try{let s=t.data;if("string"==typeof t.data)try{s=JSON.parse(t.data)}catch(t){s=void 0}if("object"==typeof s&&s.fo&&s.fo.callId===this.vo){const t=s.fo.returnValue.tcString;this.so(t).then((()=>i(this.vo))).catch((t=>e()))}}catch(t){e()}}))}isApiOnPage(){return null!==this.co||null!==this.uo}bindToApi(){return null!==this.co?new Promise(((t,i)=>{this.ho(this.co).then((()=>t())).catch((t=>i(t)))})):null!==this.uo?this.oo(this.uo):Promise.reject()}isConsentForVendor(t){var i,e;return!!(null===(i=this.mo)||void 0===i?void 0:i.vendorConsents)&&!!(null===(e=this.mo)||void 0===e?void 0:e.vendorConsents[t])}getConsentPayload(){var t;return null===(t=this.mo)||void 0===t?void 0:t.tcString}setInAppConsentData(t){this.mo=Object.assign(Object.assign({},this.mo),t)}hasIvtConsent(){return!0}isConsentForPurposes(t){var i;return!!(null===(i=this.mo)||void 0===i?void 0:i.purposeConsents)&&t.every((t=>!!this.mo.purposeConsents[t]))}oo(t){this.vo=(0,n.qs)();const i={};return new Promise((e=>{const s=t=>{this.po(t).then((t=>{i[t]=!0,i[this.vo]&&(window.removeEventListener("message",s,!1),e())})).catch((t=>{}))};window.addEventListener("message",s,!1);const n=b[f.TcfApi].getVendorConsentDataMethodName;t.postMessage({yo:{command:n,parameter:null,callId:this.vo}},"*")}))}ho(t){const i=b[f.TcfApi].windowPropertyName,e=b[f.TcfApi].consentUpdateMethodName,s=b[f.TcfApi].removeUpdateListenerMethodName;return t&&t[i]?new Promise((t=>{this.co[i](e,2,((e,n)=>{if(n&&("useractioncomplete"===e.eventStatus||"tcloaded"===e.eventStatus)){const n=e.tcString;this.so(n).then((()=>t())),this.co[i](s,2,(()=>{}),e.listenerId)}}))})):Promise.reject()}so(t){const i=L({tcfEncodedString:t});return M(i)?(this.mo=i,Promise.resolve()):Promise.reject()}}var R=e(9207);const B=[R.Q.P1,R.Q.P2,R.Q.P4,R.Q.P7,R.Q.P8];class D{constructor(t,i,e={}){var s,n;this.bo=t,this.Ne=i;const r=L({cmpEncodedString:null===(s=e.cmp)||void 0===s?void 0:s.consentString,tcfEncodedString:null===(n=e.tcf)||void 0===n?void 0:n.tcString}),h=this.wo(r);null!==h?(this.xo(h),(M(r)||E(r))&&this.So.setInAppConsentData(r)):(0,g.n)({message:"UserManagerService_UserConsentApiManager",exception:"failed to find the right api, no consent string and no framework on page was found",callStack:JSON.stringify({_appSettings:e}),level:g.D.CRITICAL})}setPageUrl(t){this.Ue=t}setAmpUserConsent(t){var i,e;if(!this.isConsentRequired())return;const s=t.consentStringTypeEnum.US_PRIVACY_STRING,n=null===(i=t.consentMetadata)||void 0===i?void 0:i.consentStringType,r=t.encodeConsentString||(null===(e=t.consentMetadata)||void 0===e?void 0:e.additionalConsent);let h;if(!(0,c.QM)(r))return void(0,g.n)({level:g.D.INFO,message:"AMP_no_consent_string_provided",callStack:JSON.stringify(t),exception:this.Ue});if(n===s)return void(0,g.n)({message:"UserConsentApiManager_CCPA_encoded_string_from_amp_not_used",level:g.D.WARN,callStack:r,exception:`${JSON.stringify(t)}__pageURL_${this.Ue}`},{throttle:2,sendMaxLog:!1});const o=L({tcfEncodedString:r,cmpEncodedString:r});M(o)?h=new O(null,null):E(o)&&(h=new w(null,null)),h?h?(this.So=h,this.So.setInAppConsentData(o)):(0,g.n)({message:"UserConsentApiManager_amp_userConsentApi_not_found",level:g.D.WARN,callStack:r,exception:`${JSON.stringify(t)}__pageURL__${this.Ue}`},{sendMaxLog:!1,throttle:2}):(0,g.n)({message:"UserConsentApiManager_encoded_string_not_tcf_and_not_cmp",level:g.D.WARN,callStack:r,exception:`${JSON.stringify(t)}__pageURL__${this.Ue}`},{throttle:2,sendMaxLog:!1})}isConsentRequired(){return this.bo}isConsent(t,i=[]){if(this.isConsentRequired()){return this.So.isConsentForVendor(t)&&this.So.isConsentForPurposes(i)}return!0}isConsentConnatix(){return this.isConsent(s.Connatix,B)}getConsentDataPayload(){return this.So.getConsentPayload()}bindToConsentApi(){return this.So.bindToApi()}isConsentApiOnPage(){return this.So.isApiOnPage()}hasIVTConsent(){return this.So.hasIvtConsent()}getConsentApiType(){return this.So.apiType}xo(t){const i=A(this.Ne,t),e=P(this.Ne,t);t===f.TcfApi?this.So=new O(i,e):this.So=new w(i,e)}wo(t){if(M(t))return f.TcfApi;if(E(t))return f.CmpApi;if(k(this.Ne,f.TcfApi))return f.TcfApi;return k(this.Ne,f.CmpApi)?f.CmpApi:f.TcfApi}}var j=e(6615);const F="PUBMATIC",$="predirect",V="UserThirdPartySyncManager_Pubmatic",U="CookieSync_syncScript_not_properly_loaded",N="CookieSync_param_not_parsed_properly",H=(t,i)=>{if(!window.PubMaticSync)return q(U,F),!1;const e=Number.parseInt(t,10);return(0,c.kE)(e)?!!(0,c.QM)(i)||(q(N,F,$),!1):(q(N,F,"p"),!1)},z=(t,i,e,s)=>{const n={pubId:Number.parseInt(t,10),url:i};e&&(n.delay=1e3,n.gdpr=1,n.gdprConsent=s),window.PubMaticSync.sync(n)},q=(t,i,e="")=>{(0,g.n)({message:t,callStack:i,exception:e,level:g.D.CRITICAL},{throttle:1,sendMaxLog:!1})};class W{constructor(t,i){this._o=t,this.bo=i,this.Ao=[]}replaceuserIdMacros(t,i){let e=t;return e=e.replace("%5BuserId%5D",i),e=e.replace("[userId]",i),e=e.replace("%7bUSER_ID%7d",i),e}Po(t,i){try{if(this.ko(t)){const e=i.document.createElement("iframe");e.setAttribute("style","width:1px;height:1px;border:0px;margin:0px;padding:0px"),e.src=t.url,i.document.body.appendChild(e)}else(0,x.dZ)({src:t.url},i.document.head,i,null,null,1===(0,n.Vm)([95,5]),"UserManager_unable_to_insert_sync_url_script");return!0}catch(t){return!1}}ko(t){switch(t.vendorId){case s.Rubicon:case s.Pubmatic:return!0;default:return!!t.url.includes("yellowblue.io")}}syncUrls(t,i){this.Ao.forEach((e=>{if(this._o.isConsent(e.vendorId)&&!e.synced){if(e.vendorId===s.Pubmatic)return void((t,i,e)=>new Promise(((s,n)=>{const r=(0,j.Ph)("p",t),h=(0,j.Ph)($,t);if(window.PubMaticSync){if(!H(r,h))return void n();z(r,h,i,e),s(!0)}else(0,x.dZ)({src:"//ads.pubmatic.com/AdServer/js/userSync.js"},window.document.head,window,(()=>{H(r,h)?(z(r,h,i,e),s(!0)):n()}),(()=>{n()}),!0,V)})))(e.url,this._o.isConsentRequired(),this._o.getConsentDataPayload()).then((()=>{e.synced=!0}));if(e.url.includes("openx.net"))return e.url=`${e.url.split("r=")[0]}&r=\n ${encodeURIComponent(`${a.n.endPoints.api.syncUrls}?DemandPartner=8&UserId=${t}&DemandPartnerUserId=`)}`,e.url=this.replaceuserIdMacros(e.url,t),h.n.trackPixel(e.url),void(e.synced=!0);if(e.url.includes("sync.technoratimedia.com/services"))return h.n.trackPixel(e.url),void(e.synced=!0);if(e.url.includes("pixel.advertising.com")&&(e.url=e.url.replace("gdpr=","gdpr="+(this._o.isConsentRequired()?1:0)),e.url=e.url.replace("gdpr_consent=","gdpr_consent=0")),e.url=this.replaceuserIdMacros(e.url,t),this.bo){e.url=(0,j.Bp)(e.url,"gdpr","1");const t=this._o.getConsentDataPayload();e.url=(0,j.Bp)(e.url,"gdpr_consent",t)}this.Po(e,i)&&(e.synced=!0)}}))}setSyncUrls(t={}){return!(this.Ao.length>0)&&(this.Ao=[],Object.keys(t).forEach((i=>{this.Ao.push({vendorId:i,url:t[i],synced:!1})})),!0)}}var G=e(1995);const J={California:5332921},Q={US:6252001};var X;!function(t){t.CCPA_Error="CCPA Error",t.CCPA_Pending="CCPA Pending",t.CCPA_Success="CCPA Success",t.CCPA_Delayed_Success="CCPA Delayed Success",t.CCPA_Delayed_Failure="CCPA Delayed Failure"}(X||(X={}));class Y{constructor(t,i){this.Dh=t,this.Io=1,this.To="__uspapi",this.Co="getUSPData",this.Mo={isPending:!0,isRejected:!1,isDelayed:!1,promise:new Promise((()=>{}))},this.Eo(i)}getUsPrivacyString(){if(this.Dh.usPrivacyString||this.Dh.isCcpaApplicable)return this.Dh.usPrivacyString}isCcpaApplicable(){return this.Dh.isCcpaApplicable}isSellUserAllowed(){return!this.Dh.isCcpaApplicable||this.Lo()}setGeoLocation(t){this.Oo=t,t.subdivisionId!==J.California&&(this.Dh.isCcpaApplicable=!1)}fetchUsPrivacyString(){return this.Ro()&&this.Bo(),this.isCcpaApplicable()?new Promise((t=>{this.getUsPrivacyString()?t():t(this.Do())})):Promise.resolve()}Do(){return this.Mo.promise=new Promise(((t,i)=>{const e=this.Dh.getScope()[this.To];e?(this.jo=!0,e(this.Co,this.Io,((e,s)=>{s?(this.Eo(e.uspString),t()):i()}))):i()})),this.makeQuerablePromise(this.Mo),this.Mo.promise}Lo(){return!this.Dh.usPrivacyString||(0,m.d3)(this.Dh.usPrivacyString,r)}Eo(t){this.Dh.usPrivacyString=t}Ro(){if(!(0,n.Vm)([95,5]))return!1;const t=new Date(2020,10,16,12,0,0).getTime(),i=new Date(2020,10,17,12,0,0).getTime();return(0,v.k$)(t,i)}Bo(){const{countryGeoId:t,subdivisionId:i}=this.Oo;t===Q.US&&(0,g.n)({message:"UserCcpaManager_logCCPA",level:g.D.INFO,callStack:JSON.stringify(i),exception:this.Dh.usPrivacyString})}ccpaInfoLogging(t){this.isCcpaApplicable()&&this.jo&&(this.Mo.isPending?((0,g.n)({message:X.CCPA_Pending,exception:"CCPA_Pending_At_Start_AdRequest",level:g.D.INFO,callStack:t}),this.Mo.isDelayed=!0,this.Fo=t):this.Mo.isRejected&&(0,g.n)({message:X.CCPA_Error,exception:"CCPA_Error_At_Start_AdRequest",level:g.D.INFO,callStack:t}))}makeQuerablePromise(t){t.promise.then((()=>{t.isPending=!1,t.isDelayed&&(0,g.n)({message:X.CCPA_Delayed_Success,exception:"CCPA_Success_After_Delay",level:g.D.INFO,callStack:this.Fo})})).catch((i=>{throw t.isRejected=!0,t.isPending=!1,t.isDelayed&&(0,g.n)({message:X.CCPA_Delayed_Failure,exception:"CCPA_Failed_After_Delay",level:g.D.INFO,callStack:this.Fo}),i}))}}var K,Z,tt=e(5348);!function(t){t.CCPA_INFO_RECEIVED="ccpaInfoReceived",t.CONSENT_DATA_UPDATE="consentDataUpdate"}(K||(K={})),function(t){t.SYNC_URLS_RECEIVED="thirdPartySyncUrlsReceived",t.USER_INFO_RECEIVED="userInfoReceived"}(Z||(Z={}));class it{constructor(t,i,e,s={}){this.vi=i,this.gi=e,this._appSettings=s,this.gdprConsentMode=o.ProtoGdprConsentModeEnum.Unknown,this.$o={},this.Vo="",this.Uo=!1,this.zo=()=>{!this._o.isConsentRequired()||this.vi?this.resolveEvent(K.CONSENT_DATA_UPDATE):(this.gdprConsentMode=this._o.isConsentApiOnPage()||this.gi?o.ProtoGdprConsentModeEnum.NoConsent:o.ProtoGdprConsentModeEnum.NoCmp,this._o.bindToConsentApi().then((()=>{this.isConsentConnatix()||(this.gdprConsentMode=o.ProtoGdprConsentModeEnum.NoConnatixConsent),this.resolveEvent(K.CONSENT_DATA_UPDATE)})).catch((t=>{})))},this.Wo=()=>{tt.$.getEnvelope(this.Jt,this._o)},this.Go=()=>{this.isConsentConnatix()&&(this.onEvent([Z.USER_INFO_RECEIVED]).then((()=>{this.Uo&&(this.Jo.syncThirdPartyCookieList(),this.Jo.unsecuredCookieSync&&this.Jo.syncThirdPartyCookieList(this.Jo.unsecuredCookieSync),this.Jo.syncFirstPartyCookie(p.USER_ID))})),this.onEvent([Z.SYNC_URLS_RECEIVED,K.CONSENT_DATA_UPDATE,K.CCPA_INFO_RECEIVED]).then((()=>{if(this.isConsentConnatix()&&this.Qo.isSellUserAllowed())try{this.Xo.syncUrls(this.Dh.userId,this.Dh.getScope())}catch(t){(0,g.n)({level:g.D.WARN,message:"UserManager_syncUrls",exception:t.message,callStack:t.stack})}})))};try{this.Jt=t,this.Dh=d.getInstance(t),this.vi||(this.Jo=new y(this.Dh,t));const{cmp:i,tcf:e}=this._appSettings;this._o=new D(!!this.Vo,t,{cmp:i,tcf:e}),this.Xo=new W(this._o,this.isGDPR()),this.Qo=new Y(this.Dh,this._appSettings.usPrivacyString),this.Yo()}catch(t){(0,g.n)({callStack:t.stack,exception:t.message,message:"UserManager_constructor",level:g.D.CRITICAL})}}get identityEnvelope(){return tt.$.getValidEnvelope()}Yo(){this.Jo&&this.Jo.fetchCookies(),this.zo(),this.onEvent([K.CONSENT_DATA_UPDATE]).then((()=>{this.Wo(),setTimeout((()=>{try{if(this.vi)return;this.Go()}catch(t){(0,g.n)({callStack:t.stack,exception:t.message,message:"UserManager_consent_data_received",level:g.D.CRITICAL})}}),0)}))}Ko(t){return void 0===this.$o[t]&&(this.$o[t]=new G.C,this.$o[t].promise.catch((()=>this.$o[t].reject()))),this.$o[t]}resolveEvent(t,i){this.Ko(t).resolve(i)}setAmpUserConsent(t){this._o.setAmpUserConsent(t),this.resolveEvent(K.CONSENT_DATA_UPDATE)}setPageUrl(t){this._o&&this._o.setPageUrl(t)}onEvent(t){const i=t.map((t=>this.Ko(t).promise));return Promise.all(i)}isConsent(t,i){return this._o.isConsent(t,i)}isConsentConnatix(){return this._o.isConsentConnatix()}ccpaInfoLogging(t){this.Qo.ccpaInfoLogging(t)}getConsentPayload(){return this._o.getConsentDataPayload()}isConsentRequired(){return this._o.isConsentRequired()}setThirdPartySyncUrls(t){this.vi||this.Xo.setSyncUrls(t)&&this.resolveEvent(Z.SYNC_URLS_RECEIVED)}setGeoLocation(t){this.Qo.setGeoLocation(t),this.Qo.fetchUsPrivacyString().then((()=>{this.resolveEvent(K.CCPA_INFO_RECEIVED)})).catch((()=>{this.resolveEvent(K.CCPA_INFO_RECEIVED)}))}getUserId(){if(this.isConsentConnatix()&&this.Jo)return this.Jo.getUserId()}Zo(){return this.Jo&&this.Jo.getUserId()}setUserInformation(t){this.Jo&&(this.Jo.setUserInformation(t),this.resolveEvent(Z.USER_INFO_RECEIVED),!this.vi&&this.isConsentConnatix()&&this.Jo.syncFirstPartyCookie(p.USER_ID))}isGDPR(){return!!this.Vo}getUsPrivacyString(){return this.Qo.getUsPrivacyString()}isCcpaApplicable(){return this.Qo.isCcpaApplicable()}isSellUserAllowed(){return this.vi||this.Qo.isSellUserAllowed()}getDeviceId(){if(this.isConsentConnatix())return this._appSettings.deviceID}ta(){return this._appSettings.deviceID}getTrackableUser(){return this.vi?this.getDeviceId():this.getUserId()}getForcedTrackableUser(){return this.vi?this.ta():this.Zo()}registerPlsCall(t){return this.isConsentConnatix()||(this.Uo=!0),this.Dh.registerPlsCall(t)}setBrowserInfo(t){this.Jo&&this.Jo.setBrowserInfo(t,this.isConsentConnatix())}getGdprConsentApiType(){return this._o.getConsentApiType()}}},3030:(t,i,e)=>{"use strict";e.d(i,{d3:()=>h,qo:()=>o,qy:()=>a,Sz:()=>c,ti:()=>l,BZ:()=>u,fn:()=>d,Gg:()=>p,V7:()=>f,tN:()=>v,gX:()=>g,sj:()=>m,ee:()=>y});var s=e(7427),n=e(7726),r=e(9065);e(8423);function h(t,i){return i.indexOf(t)>-1}function o(t){return Array.isArray(t)?t:[t]}function a(t,i){const e=[],s=new Map;return i.forEach((i=>{s.has(i[t])||(s.set(i[t],!0),e.push(i))})),e}function c(t){return[].slice.call(t)}function l(t){const i=[];for(const e in t)e&&parseInt(e,10)>=0&&i.push(t[e]);return i}function u(t){return t&&t.length>0}function d(t){return t.every((t=>(0,s.kE)(t)))}function p(t){let i="[";for(let e=0;e!i.includes(t)))}function v(t,i){return t.filter((t=>i.includes(t)))}function g(t){return t.filter(((i,e)=>t.indexOf(i)===e))}function m(t,i){const e=t.indexOf(i);-1!==e?t.splice(e,1):(0,n.n)({message:"removeItemFromArray_error_item_not_found",exception:JSON.stringify(i),level:n.D.WARN})}function y(t){const i=[];return t.forEach((t=>i.push(t))),i}},1561:(t,i,e)=>{"use strict";e.d(i,{MV:()=>d,Ho:()=>p,T7:()=>f,aQ:()=>v,bX:()=>g,NS:()=>m,dZ:()=>y,ML:()=>b,cn:()=>w,IV:()=>x,pv:()=>S,og:()=>_,L_:()=>A,rI:()=>P,Dx:()=>k,Fs:()=>I,uc:()=>T,tp:()=>C,G$:()=>M,Q1:()=>E,S0:()=>L,Tp:()=>O,PM:()=>R,h_:()=>B,nw:()=>j,fj:()=>F,LT:()=>$,jG:()=>V,IS:()=>U,Vt:()=>N,BE:()=>H,oG:()=>z,U6:()=>W,Ji:()=>G,GF:()=>J,SH:()=>Q,ju:()=>X,w6:()=>Y,uq:()=>K,wl:()=>Z,Wb:()=>tt,eA:()=>it,Nb:()=>et,sw:()=>st,uh:()=>nt,Kk:()=>rt,AX:()=>ht,UR:()=>ot,_w:()=>at,bZ:()=>ct});var s=e(2817),n=e(7427),r=e(3030),h=e(2820),o=e(8423),a=e(6615),c=e(7577),l=e(7726);function u(t,i){t&&(t.style.display=i?"":"none")}function d(t){u(t,!1)}function p(t){u(t,!0)}function f(t,i){for(const e in i)i.hasOwnProperty(e)&&(t.style[e]=i[e])}function v(t,...i){i.forEach((i=>{t.style[i]=""}))}function g(t){t&&t.parentNode&&t.parentNode.removeChild(t)}function m(t,i,e,s,r){if(i)try{const h=e.document.createElement("link");return h.id=t.id,h.type="text/css",h.rel="stylesheet",h.href=t.src,(0,n.mf)(s)&&(h.onload=()=>{s()}),(0,n.mf)(r)&&(h.onerror=t=>{i.removeChild(h),(0,n.HD)(t)?r(`link_stylesheet_load_error_${t}`):r(`link_stylesheet_load_error_${function(t,i){const e=t.document.createElement("div");return e.appendChild(i),e.innerHTML}(e,h)}`)}),i.appendChild(h),h}catch(t){return null}}function y(t,i,e,s,r,h=!0,o){try{const a=e.document.createElement("script");return a.src=t.src,a.async=!0,a.type="text/javascript",t.id&&(a.id=t.id),(0,n.mf)(s)&&(a.onload=()=>{s()}),a.onerror=e=>{i.removeChild(a),h&&(0,l.n)({message:o,exception:"script_load_error",callStack:t.src,level:l.D.INFO},{throttle:2,sendMaxLog:!1}),(0,n.mf)(r)&&r()},i.appendChild(a),a}catch(i){return h&&(0,l.n)({message:o,exception:`script_insert_error_${i.message}_${i.stack}`,callStack:t.src,level:l.D.CRITICAL},{throttle:2,sendMaxLog:!1}),(0,n.mf)(r)&&r(),null}}function b(t,i,e){if(t)try{const s=i.document.createElement("script"),n=i.document.createTextNode(e);return s.appendChild(n),t.appendChild(s),s}catch(t){return null}}function w(t,...i){t&&t.classList.add(...i)}function x(t,...i){t&&t.classList.remove(...i)}function S(t,i){return t&&t.classList.contains(i)}function _(t,i,e){return!!t&&t.classList.toggle(i,e)}function A(t,i,e,s=!1){t&&(t.classList.remove(i),t.classList.add(e),s&&O(t))}const P=(t,i)=>i.document.getElementById(t),k=(t,i,e)=>i.getComputedStyle(t,e),I=(t,i)=>i.document.getElementsByClassName(t);function T(t,i="",e){const s=e.document.getElementsByTagName("head")[0],n=e.document.createElement("style");n.setAttribute("type","text/css"),n.id=i,n.appendChild(e.document.createTextNode(t)),s.appendChild(n)}function C(t,i){const e=i.document.getElementsByTagName("head")[0],s=i.document.createElement("link");s.setAttribute("rel","preconnect"),s.setAttribute("link",t),e.appendChild(s)}function M(t,i){const e=i.document.createElement("div");return e.innerHTML=t,e.firstElementChild}function E(t,i){i>0?(t.removeAttribute("muted"),t.muted=!1):(t.setAttribute("muted",""),t.muted=!0)}function L(t){return s.Ht.find((i=>{if(i.keys.fullscreenEnabled in t)return!0}))}function O(t){t.getBoundingClientRect()}function R(t,i){return(t.requestAnimationFrame||t.webkitRequestAnimationFrame||function(t){return setTimeout(t,20)})(i)}function B(t,i){return(t.cancelAnimationFrame||t.webkitCancelAnimationFrame||function(t){return clearTimeout(t)})(i)}function D(t,i,e){const s=function(t,i){const e=function(t,i){let e=i;for(;e;){const i=e.parentNode;if(i){const e=t.reduce(((t,e)=>t||i.querySelector(e)),null);if(e)return e}e=i}return null}(t,i);return e?k(e,$(e)):null}(t,i);return s?function(t,i){return t.getPropertyValue(i)}(s,e):null}function j(t){const i=D(["h1","h2"],t,"font-family");return i||"inherit"}function F(t){const i=D(["p"],t,"font-family");return i||"inherit"}function $(t){try{return t.ownerDocument.defaultView}catch(t){return null}}function V(t,i){t&&i&&(Array.isArray(t)?t.forEach((t=>i.appendChild(t))):i.appendChild(t))}function U(t,i,e){let s=!1;const n=(0,r.Sz)(i.children);for(let i=0;i{})){const e=function(s){"opacity"===s.propertyName&&(x(t,h.jG.FadeOutBase,h.jG.FadeOut),i(),t.removeEventListener("transitionend",e))};w(t,h.jG.FadeOutBase),q(t),O(t),t.addEventListener("transitionend",e),w(t,h.jG.FadeOut)}function G(t,i=(()=>{})){const e=function(s){"opacity"===s.propertyName&&(x(t,h.jG.FadeInBase,h.jG.FadeIn),i(),t.removeEventListener("transitionend",e))};w(t,h.jG.FadeInBase),q(t),O(t),t.addEventListener("transitionend",e),w(t,h.jG.FadeIn)}function J(t){const i=$(t);if(!i)return!0;const{display:e,opacity:s}=k(t,i);return"none"===e||"0"===s}function Q(t,i){return null===t.firstChild?t.appendChild(i):t.insertBefore(i,t.firstChild)}function X(t,i){const e=i.document.createElement("div");return e.innerHTML=t||"",e.innerText}function Y(){const t=window.navigator&&window.navigator.doNotTrack||window.doNotTrack;return"1"===t||"yes"===t}function K(t,i){const e=(0,o.pE)(t).topFrame;return e[i]?e:null}function Z(t,i){let e=t,s=null;try{for(;!s;){try{e.frames[i]&&(s=e)}catch(t){}if(!t.top||t.top===e)break;e=e.parent}}catch(t){}return s}function tt(t,i){let e=[];try{e=e.slice.call(i.document.querySelectorAll(t),0)}catch(t){}return e}function it(t){return(0,o.pE)(t).topFrame.location.protocol.includes("https")}function et(t){if(!it(t))return;[window,t].forEach((t=>{if(null===t.document.querySelector("meta[content=upgrade-insecure-requests]")){const i=t.document.createElement("meta");i.setAttribute("http-equiv","Content-Security-Policy"),i.content="upgrade-insecure-requests",t.document.head.appendChild(i)}}))}function st(t){return(0,o.pE)(t).topFrame.document.referrer}function nt(t,i){const e=(0,o.pE)(i).topFrame.location.hostname,s=(0,o.bx)(t);return s&&s.hostname===e}function rt(t){t.removeAttribute("href"),t.removeAttribute("target"),t.removeAttribute("download"),t.removeAttribute("ping"),t.removeAttribute("rel"),t.removeAttribute("media"),t.removeAttribute("hreflang"),t.removeAttribute("type")}function ht(t,i){try{t.onclick=t=>{const{tagName:e,className:s}=t.target;(0,l.n)({message:`${i} - click on tag:${e} class:${s}`,level:l.D.INFO})}}catch(t){(0,l.n)({message:`${i}_Error - iframe click`,level:l.D.WARN,callStack:t.stack})}}function ot(t){setTimeout((()=>{let i=t.currentTime+.01;i>t.duration&&(i=.01),t.currentTime=i}),0)}function at(t,i){!function(t,i,e){const s=t.document.createElement("link");s.rel="preload",s.href=i,s.as=e,t.document.head.appendChild(s)}(i,t,"script")}function ct(t,i){if(!i||"SCRIPT"!==i.tagName)return(0,l.n)({message:"Prerender_Elements_getgetCustomerId_no_currentScript",level:l.D.CRITICAL}),null;const e=i.src;return(0,a.Ph)(c.ym,e)}},8423:(t,i,e)=>{"use strict";e.d(i,{qs:()=>o,dz:()=>a,lU:()=>c,bx:()=>l,pE:()=>u,Hh:()=>d,Vm:()=>p,we:()=>f,ld:()=>v,Of:()=>g,Xf:()=>m,Up:()=>y,oC:()=>b,rM:()=>w});var s=e(6615),n=e(7427),r=e(9065),h=e(3030);function o(){let t=Date.now();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(i){const e=(t+16*Math.random())%16|0;return t=Math.floor(t/16),("x"===i?e:3&e|8).toString(16)}))}function a(){return o().replace(/-/g,"")}function c(t,i){let e="";if(!t.err)try{e=t.topFrame.location.href}catch(t){}if(!e||0===e.length)try{e=i.top.location.href}catch(t){}if(!e||0===e.length)try{e=t.topFrame.document.referrer}catch(t){}return e}function l(t){try{const i=t.match(/^(https?:)\/\/(([^:\/?#]*)(?::([0-9]+))?)([\/]{0,1}[^?#]*)(\?[^#]*|)(#.*|)$/);return{href:t,protocol:i[1],host:i[2],hostname:i[3],port:i[4],pathname:i[5],search:i[6],hash:i[7]}}catch(t){return null}}function u(t){let i=t,e=null,s=!1;try{for(;i.parent.document!==i.document;){if(!i.parent.document){s=!0;break}e=i,i=i.parent}}catch(t){s=!0}return{topFrame:i,topChildFrame:e,err:s}}function d(t=[],i,e={}){t.forEach((t=>{(0,n.HD)(t)&&((new i.Image).src=`${t}${(0,s.CK)(t)}${function(t,i){const e=[];return Object.keys(t).forEach((s=>{const o=i?`${i}[${s}]`:s,a=t[s];if((0,n.as)(a))e.push(`${encodeURIComponent(o)}=${(0,r.H)(a)}`);else if(Array.isArray(a))e.push(`${encodeURIComponent(o)}=${(0,h.Gg)(a)}`);else if(null!=a){const t=encodeURIComponent(a),i=encodeURIComponent(o);t&&i&&e.push(`${i}=${t}`)}})),e.join("&")}(e)}`)}))}function p(t){const i=Math.floor(100*Math.random());let e=0,s=0;for(let n=0;n{})),t=!i.paused,i.pause()}catch(t){}return t}function v(t,i=0,...e){return setTimeout((()=>{t.apply(this,e)}),i)}function g(t,i,e){let s=0,n=t;for(;s<=e;){if(s++,n.classList.contains(i))return!0;if(n=n.parentElement,!n)return!1}return!1}function m(t,i){try{const e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);let s=parseInt(e[1],16),n=parseInt(e[2],16),r=parseInt(e[3],16);s/=255,n/=255,r/=255;const h=Math.max(s,n,r),o=Math.min(s,n,r);let a,c,l=(h+o)/2;if(h===o)a=c=0;else{const t=h-o;switch(c=l>.5?t/(2-h-o):t/(h+o),h){case s:a=(n-r)/t+(n{t().then(s).catch((h=>{1===i||(0,n.mf)(e)&&e(h)?r(h):y(t,i-1,e).then(s,r)}))}))}function b(){const t=!!window.MSInputMethodContext&&!!document.documentMode,i=navigator.userAgent.toLowerCase().includes("msie");return t||i}function w(t){return Object.keys(t).reduce(((i,e)=>Object.assign(Object.assign({},i),{[e]:`${t[e]}`})),{})}},6615:(t,i,e)=>{"use strict";e.d(i,{Ph:()=>r,Bp:()=>h,CK:()=>o,_Y:()=>a,sH:()=>l});var s=e(7427);const n=".cdn.ampproject.org";function r(t,i){i||(i=location.search),t=t.replace(/\[/,"\\[").replace(/]/,"\\]");const e=new RegExp(`[\\?&]${t}=([^&#]*)`,"i").exec(i);return null===e?null:decodeURIComponent(e[1])}function h(t,i,e){const s=new RegExp(`([?&])${i}=.*?(&|$)`,"i"),n=o(t);return t.match(s)?e?t.replace(s,`$1${i}=${e}$2`):t.replace(s,"$1"):`${t}${n}${i}=${e}`}function o(t){return t.includes("?")?"&":"?"}function a(t){if((0,s.QM)(t))return t.includes("://")?t.split("/")[2]:t.split("/")[0]}function c(t,i){return`${"http"+(/(\/s\/)+/.test(t.replace(i,""))?"s":"")}://${i}`}function l(t,i=!0){return t=function(t){if(!t.includes(n))return t;const i="www.",e="amp.";if((t=(t=(t=(t=(t=(t=(t=t.replace(n,"")).replace("www-",i)).replace("amp-",e)).cnx_replaceAll("--","=")).cnx_replaceAll("-",".")).cnx_replaceAll("=","-")).replace(i,e)).includes(e))return t;const s="http://",r="https://";return(t=t.replace(s,"http://amp.")).replace(r,"https://amp.")}(t=function(t){const i=/^https:\/\/www.google\..*?\/amp\/s*\/*/.exec(t);if(null!==i){const e=t.replace(i[0],"");return c(t,e)}return t}(t=function(t){if(t.includes(n)){t=t.replace("https://","");const i=/^[^\/]+(\/[a-z]+\/)+s*\/*/,e=i.test(t)?t.replace(i.exec(t)[0],""):t;return c(t,e)}return t}(t))),i&&(t=function(t){if(!t.includes("#origin-")&&!t.includes("viewerUrl-"))return t;const i=t.split("#origin-")[1].split("viewerUrl-");return l(t=decodeURIComponent(i[1]),!1)}(t)),t}},7726:(t,i,e)=>{"use strict";e.d(i,{D:()=>c,n:()=>u});var s=e(45),n=e(497);var r=e(8423),h=e(158),o=e(525);let a=window.location&&window.location.href;try{a=window.top.location.href}catch(t){}var c;!function(t){t.EMERGENCY="Emergency",t.ALERT="Alert",t.CRITICAL="Critical",t.ERROR="Error",t.WARN="Warn",t.INFO="Info"}(c||(c={}));const l={throttle:30,sendMaxLog:!0,pacing:0};function u(t,i={}){if(!((i=Object.assign(Object.assign({},l),i)).pacing>0)||function(t){const i=Math.min(Math.max(t,0),100);return!!(0,r.Vm)([100-i,i])}(i.pacing))if(t.sessionId=n.S.sessionId,n.S.incrementLogCount(t.message),n.S.isMaxLogOverflow(t.message)&&u({message:"Logging_max_log_overflow_1000",exception:t.message,callStack:t.callStack,level:c.CRITICAL,sessionId:n.S.sessionId},{sendMaxLog:!1,throttle:100}),n.S.isMaxLog(t.message,i.throttle))i.sendMaxLog&&!n.S.isMaxLogSent(t.message)&&(n.S.setMaxLogSent(t.message),u({message:"Logging_max_log_sent",exception:t.message,callStack:t.callStack,level:c.CRITICAL,sessionId:n.S.sessionId}));else{if(void 0===t.callStack){const i=new Error(t.message);t.callStack=i.stack}if(t.callStack=t.callStack.substring(0,500),s.g.logToServer){t.pageUrl=t.pageUrl||a,t.version=s.g.version;let e="connatix.com";try{e=o.n.bundleDomain}catch(t){}const n="https://pl."+e;t.ddsource="browser",t.service="player",i.sendBeacon?h.n.sendJsonBeaconRequest(t,n):h.n.fetchXhttpRequest({requestUrl:n,requestType:"POST",withCredentials:!1},JSON.stringify(t))}s.g.logToConsole&&function(t){let i;switch(t.level){case c.CRITICAL:i="#8B0000";break;case c.WARN:i="#FF8C00";break;case c.INFO:i="#000000"}console.log(`%cConnatix Logging:\n message: ${t.message}\n exception: ${t.exception}\n level: ${t.level}\n version: ${t.version}\n sessionId: ${t.sessionId}\n callStack: ${t.callStack}`,`color:${i}`)}(t)}}},2231:(t,i,e)=>{"use strict";e.d(i,{dQ:()=>n,DE:()=>r,aX:()=>h,Tc:()=>o,oK:()=>a,ON:()=>c,uc:()=>l,dO:()=>u});var s=e(7427);function n(t,i,e,s,n){return e+(s-e)*function(t,i,e){return(e-t)/(i-t)}(t,i,n)}function r(t,i){return i.reduce(((i,e)=>Math.abs(e-t)<=Math.abs(i-t)?e:i))}function h(t,i){let e=t,s=i;for(;0!==e&&0!==s;)e>s?e%=s:s%=e;return 0===e?s:e}function o(t,i){return i/100*t}function a(t,i){const e=Math.pow(10,i);return Math.round(t*e)/e}function c(t){return!(0,s.r)(t.width)||!(0,s.r)(t.height)}function l(t){const i=[{value:1,symbol:""},{value:1e3,symbol:"k"},{value:1e6,symbol:"M"}],e=/\.0+$|(\.[0-9]*[1-9])0+$/;let s;for(s=i.length-1;s>0&&!(t>=i[s].value);s--);return t/i[s].value1;e--)t%e==0&&i%e==0&&(t/=e,i/=e);return{widthRatio:t,heightRatio:i}}},9065:(t,i,e)=>{"use strict";e.d(i,{H:()=>s});e(8423);function s(t){for(const i in t)t.hasOwnProperty(i)&&"string"==typeof t[i]&&(t[i]=`%22${encodeURIComponent(t[i])}%22`);return JSON.stringify(t).cnx_replaceAll('"',"")}},6243:(t,i,e)=>{"use strict";function s(t=[]){t.forEach((t=>t.unsubscribe()))}e.d(i,{i:()=>s})},8852:(t,i,e)=>{"use strict";e.d(i,{f5:()=>r,J5:()=>h,EQ:()=>o,k0:()=>a,V7:()=>c,Ft:()=>l,hF:()=>u,IS:()=>d});var s=e(7726),n=e(7427);function r(t,i){return t.replace(/(?:\r\n|\r|\n)/g,i)}function h(t){return t.replace(/[-—]/g,"‑")}function o(t){try{return Object.keys(t).reduce(((i,e)=>Object.assign(Object.assign({},i),{[e]:(0,n.QM)(t[e])&&t[e].includes("%%")?void 0:t[e]})),{})}catch(i){return(0,s.n)({message:"sanitizeDfpMacros_error",exception:i.message,callStack:i.stack,level:s.D.WARN}),Object.keys(t).reduce(((i,e)=>Object.assign(Object.assign({},i),{[e]:(0,n.QM)(t[e])&&t[e].includes("%%")?void 0:t[e]})),{})}}function a(t){return/<[a-z/][\s\S]*>/i.test(t)}function c(t,i){const e=i.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),s=new RegExp(`<${e}>(.*?)`,"g");return t.replace(s,((t,e)=>e.split(" ").map((t=>`<${i}>${t}`)).join(" ")))}function l(t){return!!t.match(/[\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uff9f\u4e00-\u9faf\u3400-\u4dbf]/)}function u(t){return t.replace(/^\s+|\s+$|\s+(?=\s)/g,"")}function d(t,i){return`${t}-${i}`}},2324:(t,i,e)=>{"use strict";e.d(i,{pP:()=>r,QI:()=>h,XF:()=>o,to:()=>a,VG:()=>c,k$:()=>l,H8:()=>u,qe:()=>d,w4:()=>p});var s=e(9115),n=e(7427);function r(t){let i,e;return(0,n.HD)(t)&&(i=t.match(s.T9),i&&(e=parseInt(i[1],10)*s.p7+parseInt(i[2],10)*s.uD+parseInt(i[3],10)*s.s_+parseInt(i[5]||0,10))),isNaN(e)?null:e}function h(t,i){return/^\d+(\.\d+)?%$/g.test(t)?i?i*parseFloat(t.replace("%",""))/100:null:r(t)}function o(t){return Date.now()+t*s.ti}function a(t,i=":"){const e=t=>t>=10?t:`0${t}`;return`${e(Math.floor(t/60))}${i}${e(Math.floor(t%60))}`}function c(t){const i=Date.parse(t+" GMT");if(!(0,n.kE)(i))return;const e=Math.floor((Date.parse(new Date(Date.now()).toUTCString())-i)/1e3);if(!(0,n.r)(e))return"just now";const s=[{value:1,symbol:"s"},{value:60,symbol:"m"},{value:3599,symbol:"h"},{value:86399,symbol:"d"}];let r;for(r=s.length-1;r>0&&!(e>=s[r].value);r--);return Math.floor(e/s[r].value).toFixed(0)+s[r].symbol+" ago"}function l(t,i){const e=Date.now();return!(ei)}function u(t){return Math.floor((Date.now()-t)/s.s_)}function d(t,i){return t>=i?t/s.s_:t}function p(t){return(0,n.kE)(t)?t*s.s_:null}},7427:(t,i,e)=>{"use strict";function s(t){return"string"==typeof t}function n(t){return!isNaN(parseFloat(t))&&isFinite(t)}function r(t){return n(t)&&t>0}function h(t){return s(t)&&t.length>0}function o(t){return void 0!==t}function a(t){return"function"==typeof t}function c(t){return"object"==typeof t&&null!==t&&!Array.isArray(t)}function l(t){try{if(t.contentWindow||t.contentDocument)return!0}catch(t){}return!1}e.d(i,{HD:()=>s,kE:()=>n,r:()=>r,QM:()=>h,$K:()=>o,mf:()=>a,as:()=>c,cL:()=>l})},158:(t,i,e)=>{"use strict";e.d(i,{n:()=>s});var s,n=e(8423),r=e(7427),h=e(6615),o=e(7726);!function(t){let i;!function(t){t.DumpJson="Dump Json"}(i||(i={}));function e(t,i){return(0,r.as)(i)?(Object.keys(i).forEach((e=>t=(0,h.Bp)(t,e,i[e]))),t):t}function s(t,i){const e=function({requestUrl:t,requestType:i="POST",contentType:e="",responseType:s="",withCredentials:n=!1,timeout:r=3e4}){const h=new XMLHttpRequest;return h.open(i,t,!0),e.length>0&&h.setRequestHeader("Content-Type",e),s.length>0&&(h.responseType=s),h.timeout=r,h.withCredentials=n,h}(t),s=new Date;return new Promise(((t,n)=>{e.onreadystatechange=()=>{if(e.readyState===XMLHttpRequest.DONE)if(200===e.status)t(e.response);else{let t="";try{t=e.responseText}catch(t){}const i=(new Date).getTime()-s.getTime();n(new Error(`Request fail. status:${e.status}, readyState:${e.readyState}, response:${t}, time:${i}`))}},e.ontimeout=()=>{const t=(new Date).getTime()-s.getTime();n(new Error(`Request timeout status:${e.status}. time:${t}`))},e.send(i)}))}function a(t,i,e){try{const s=(0,n.Vm)([95,5]);!s||i&&0!==Object.keys(i).length||(0,o.n)({message:"empty_proto_request",callStack:"empty_function_argument",exception:e,level:o.D.INFO},{sendMaxLog:!1});const r=t.fromObject(i);!s||r&&0!==Object.keys(r).length||(0,o.n)({message:"empty_proto_request",callStack:"empty_fromObject_result",exception:e,level:o.D.INFO},{sendMaxLog:!1});const h=t.encode(r).finish();return!s||h&&0!==Object.keys(h).length||(0,o.n)({message:"empty_proto_request",callStack:"empty_encode_result",exception:e,level:o.D.INFO},{sendMaxLog:!1}),h}catch(t){throw(0,o.n)({exception:e,level:o.D.CRITICAL,callStack:JSON.stringify(i),message:"Protobuf_encode"},{throttle:10}),Error()}}function c(t,e,n="POST",r,h,a,c){return function(t,e,s,n){return new Promise(((r,h)=>{e.then((e=>{if(t){let a=null;try{const i=e?new Uint8Array(e):new Uint8Array;a=t.toObject(t.decode(i),{defaults:!0,arrays:!0,objects:!0})}catch(t){(0,o.n)({exception:`${s}__${t.message}`,message:"Protobuf_decode",callStack:t.stack,level:o.D.WARN},{throttle:10})}a.errorMessage===i.DumpJson&&(0,o.n)({message:i.DumpJson,exception:JSON.stringify(n),callStack:s,level:o.D.INFO}),a&&a.errorMessage&&"500"===a.errorMessage&&h(a.errorMessage),r(a)}})).catch((t=>{h(t)}))}))}(t,s({requestUrl:e,requestType:n,withCredentials:h,contentType:"POST"===n?"multipart/form-data":"",responseType:"arraybuffer",timeout:a},r),e,c)}t.fetchXhttpRequest=s,t.fetchXMLRequest=function(t,i=!0){const e=s({requestUrl:t,requestType:"GET",withCredentials:i});return new Promise(((t,i)=>{e.then((i=>{t(i)})).catch((t=>{i(t)}))}))},t.sendProtoRequest=function({ProtoResponse:t,ProtoRequest:i,requestData:s,endpoint:r,requestType:h,withCredentials:l,queryParams:u,logError:d,timeout:p}){const f=s?a(i,s,r):null;return c(t,r=e(r,u),h,f,l,p,s).catch((t=>{throw d&&(0,n.Vm)([95,5])&&(0,o.n)({message:"Xhr_error",exception:r,callStack:`${t}, requestData: ${JSON.stringify(s)}`,level:o.D.INFO}),new Error(t)}))},t.sendProtoBeaconRequest=function({ProtoRequest:t,requestData:i,endpoint:s,queryParams:n=null}){s=e(s,n);const r=i?a(t,i,s):null;return navigator.sendBeacon(s,r)},t.sendJsonBeaconRequest=function(t,i){const e=new Blob([JSON.stringify(t)],{type:"application/json"});return navigator.sendBeacon(i,e)},t.trackPixel=function(t){try{(new Image).src=t}catch(t){(0,o.n)({message:"Xhr_trackPixel",exception:t.message,callStack:t.stack,level:o.D.CRITICAL})}}}(s||(s={}))},655:(t,i,e)=>{"use strict";e.d(i,{ZT:()=>n,mG:()=>r,Jh:()=>h,XA:()=>o,CR:()=>a,ev:()=>c,qq:()=>l,FC:()=>u,KL:()=>d});var s=function(t,i){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)Object.prototype.hasOwnProperty.call(i,e)&&(t[e]=i[e])},s(t,i)};function n(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function e(){this.constructor=t}s(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)}function r(t,i,e,s){return new(e||(e=Promise))((function(n,r){function h(t){try{a(s.next(t))}catch(t){r(t)}}function o(t){try{a(s.throw(t))}catch(t){r(t)}}function a(t){var i;t.done?n(t.value):(i=t.value,i instanceof e?i:new e((function(t){t(i)}))).then(h,o)}a((s=s.apply(t,i||[])).next())}))}function h(t,i){var e,s,n,r,h={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return r={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(r[Symbol.iterator]=function(){return this}),r;function o(r){return function(o){return function(r){if(e)throw new TypeError("Generator is already executing.");for(;h;)try{if(e=1,s&&(n=2&r[0]?s.return:r[0]?s.throw||((n=s.return)&&n.call(s),0):s.next)&&!(n=n.call(s,r[1])).done)return n;switch(s=0,n&&(r=[2&r[0],n.value]),r[0]){case 0:case 1:n=r;break;case 4:return h.label++,{value:r[1],done:!1};case 5:h.label++,s=r[1],r=[0];continue;case 7:r=h.ops.pop(),h.trys.pop();continue;default:if(!(n=h.trys,(n=n.length>0&&n[n.length-1])||6!==r[0]&&2!==r[0])){h=0;continue}if(3===r[0]&&(!n||r[1]>n[0]&&r[1]=t.length&&(t=void 0),{value:t&&t[s++],done:!t}}};throw new TypeError(i?"Object is not iterable.":"Symbol.iterator is not defined.")}function a(t,i){var e="function"==typeof Symbol&&t[Symbol.iterator];if(!e)return t;var s,n,r=e.call(t),h=[];try{for(;(void 0===i||i-- >0)&&!(s=r.next()).done;)h.push(s.value)}catch(t){n={error:t}}finally{try{s&&!s.done&&(e=r.return)&&e.call(r)}finally{if(n)throw n.error}}return h}function c(t,i,e){if(e||2===arguments.length)for(var s,n=0,r=i.length;n1||o(t,i)}))})}function o(t,i){try{(e=n[t](i)).value instanceof l?Promise.resolve(e.value.v).then(a,c):u(r[0][2],e)}catch(t){u(r[0][3],t)}var e}function a(t){o("next",t)}function c(t){o("throw",t)}function u(t,i){t(i),r.shift(),r.length&&o(r[0][0],r[0][1])}}function d(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i,e=t[Symbol.asyncIterator];return e?e.call(t):(t=o(t),i={},s("next"),s("throw"),s("return"),i[Symbol.asyncIterator]=function(){return this},i);function s(e){i[e]=t[e]&&function(i){return new Promise((function(s,n){(function(t,i,e,s){Promise.resolve(s).then((function(i){t({value:i,done:e})}),i)})(s,n,(i=t[e](i)).done,i.value)}))}}}Object.create},490:function(t){"undefined"!=typeof window&&(t.exports=function(t){var i={};function e(s){if(i[s])return i[s].exports;var n=i[s]={i:s,l:!1,exports:{}};return t[s].call(n.exports,n,n.exports,e),n.l=!0,n.exports}return e.m=t,e.c=i,e.d=function(t,i,s){e.o(t,i)||Object.defineProperty(t,i,{enumerable:!0,get:s})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"R",{value:!0})},e.t=function(t,i){if(1&i&&(t=e(t)),8&i)return t;if(4&i&&"object"==typeof t&&t&&t.R)return t;var s=Object.create(null);if(e.r(s),Object.defineProperty(s,"default",{enumerable:!0,value:t}),2&i&&"string"!=typeof t)for(var n in t)e.d(s,n,function(i){return t[i]}.bind(null,n));return s},e.n=function(t){var i=t&&t.R?function(){return t.default}:function(){return t};return e.d(i,"a",i),i},e.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},e.p="/dist/",e(e.s=13)}([function(t,i,e){"use strict";e.d(i,"a",(function(){return l})),e.d(i,"b",(function(){return u}));var s=e(5);function n(){}var r={trace:n,debug:n,log:n,warn:n,info:n,error:n},h=r;function o(t,i){return"["+t+"] > "+i}var a=Object(s.a)();function c(t){var i=a.console[t];return i?function(){for(var e=arguments.length,s=new Array(e),n=0;n1?i-1:0),s=1;s0)return i.subarray(s,s+n)},t.ia=function(t,i){var e=0;return e=(127&t[i])<<21,e|=(127&t[i+1])<<14,(e|=(127&t[i+2])<<7)|127&t[i+3]},t.getTimeStamp=function(i){for(var e=t.getID3Frames(i),s=0;s>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:l+=String.fromCharCode(r);break;case 12:case 13:o=t[u++],l+=String.fromCharCode((31&r)<<6|63&o);break;case 14:o=t[u++],a=t[u++],l+=String.fromCharCode((15&r)<<12|(63&o)<<6|(63&a)<<0)}}return l},t}();function h(){var t=Object(n.a)();return s||void 0===t.TextDecoder||(s=new t.TextDecoder("utf-8")),s}var o=r.aa;i.a=r},function(t,i,e){"use strict";function s(){return"undefined"==typeof window?self:window.cnxRenderWindow?window.cnxRenderWindow:window}e.d(i,"a",(function(){return s}))},function(t,i,e){var s,n,r,h,o;s=/^((?:[a-zA-Z0-9+\-.]+:)?)(\/\/[^\/?#]*)?((?:[^\/\?#]*\/)*.*?)??(;.*?)?(\?.*?)?(#.*?)?$/,n=/^([^\/?#]*)(.*)$/,r=/(?:\/|^)\.(?=\/)/g,h=/(?:\/|^)\.\.\/(?!\.\.\/).*?(?=\/)/g,o={buildAbsoluteURL:function(t,i,e){if(e=e||{},t=t.trim(),!(i=i.trim())){if(!e.alwaysNormalize)return t;var s=o.parseURL(t);if(!s)throw new Error("Error trying to parse base URL.");return s.path=o.normalizePath(s.path),o.buildURLFromParts(s)}var r=o.parseURL(i);if(!r)throw new Error("Error trying to parse relative URL.");if(r.scheme)return e.alwaysNormalize?(r.path=o.normalizePath(r.path),o.buildURLFromParts(r)):i;var h=o.parseURL(t);if(!h)throw new Error("Error trying to parse base URL.");if(!h.netLoc&&h.path&&"/"!==h.path[0]){var a=n.exec(h.path);h.netLoc=a[1],h.path=a[2]}h.netLoc&&!h.path&&(h.path="/");var c={scheme:h.scheme,netLoc:r.netLoc,path:null,params:r.params,query:r.query,fragment:r.fragment};if(!r.netLoc&&(c.netLoc=h.netLoc,"/"!==r.path[0]))if(r.path){var l=h.path,u=l.substring(0,l.lastIndexOf("/")+1)+r.path;c.path=o.normalizePath(u)}else c.path=h.path,r.params||(c.params=h.params,r.query||(c.query=h.query));return null===c.path&&(c.path=e.alwaysNormalize?o.normalizePath(r.path):r.path),o.buildURLFromParts(c)},parseURL:function(t){var i=s.exec(t);return i?{scheme:i[1]||"",netLoc:i[2]||"",path:i[3]||"",params:i[4]||"",query:i[5]||"",fragment:i[6]||""}:null},normalizePath:function(t){for(t=t.split("").reverse().join("").replace(r,"");t.length!==(t=t.replace(h,"")).length;);return t.split("").reverse().join("")},buildURLFromParts:function(t){return t.scheme+t.netLoc+t.path+t.params+t.query+t.fragment}},t.exports=o},function(t,i){t.exports=void 0},function(t,i,e){"use strict";var s=Object.prototype.hasOwnProperty,n="~";function r(){}function h(t,i,e){this.fn=t,this.context=i,this.once=e||!1}function o(t,i,e,s,r){if("function"!=typeof e)throw new TypeError("The listener must be a function");var o=new h(e,s||t,r),a=n?n+i:i;return t.ca[a]?t.ca[a].fn?t.ca[a]=[t.ca[a],o]:t.ca[a].push(o):(t.ca[a]=o,t.la++),t}function a(t,i){0==--t.la?t.ca=new r:delete t.ca[i]}function c(){this.ca=new r,this.la=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(n=!1)),c.prototype.eventNames=function(){var t,i,e=[];if(0===this.la)return e;for(i in t=this.ca)s.call(t,i)&&e.push(n?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(t){var i=n?n+t:t,e=this.ca[i];if(!e)return[];if(e.fn)return[e.fn];for(var s=0,r=e.length,h=new Array(r);s>>8^255&g^99,t[p]=g,i[g]=p;var m=d[p],y=d[m],b=d[y],w=257*d[g]^16843008*g;s[p]=w<<24|w>>>8,n[p]=w<<16|w>>>16,r[p]=w<<8|w>>>24,h[p]=w,w=16843009*b^65537*y^257*m^16843008*p,a[g]=w<<24|w>>>8,c[g]=w<<16|w>>>16,l[g]=w<<8|w>>>24,u[g]=w,p?(p=m^d[d[d[b^m]]],f^=d[d[f]]):p=f=1}},i.expandKey=function(t){for(var i=this.uint8ArrayToUint32Array_(t),e=!0,s=0;s>>5}function v(t,i){return!!(i+1>>6),!((o=(60&i[e+2])>>>2)>f.length-1))return l=(1&i[e+2])<<2,l|=(192&i[e+3])>>>6,a.b.log("manifest codec:"+r+",ADTS data:type:"+h+",sampleingIndex:"+o+"["+f[o]+"Hz],channelConfig:"+l),/firefox/i.test(d)?o>=6?(h=5,u=new Array(4),c=o-3):(h=2,u=new Array(2),c=o):-1!==d.indexOf("android")?(h=2,u=new Array(2),c=o):(h=5,u=new Array(4),r&&(-1!==r.indexOf("mp4a.40.29")||-1!==r.indexOf("mp4a.40.5"))||!r&&o>=6?c=o-3:((r&&-1!==r.indexOf("mp4a.40.2")&&(o>=6&&1===l||/vivaldi/i.test(d))||!r&&1===l)&&(h=2,u=new Array(2)),c=o)),u[0]=h<<3,u[0]|=(14&o)>>1,u[1]|=(1&o)<<7,u[1]|=l<<3,5===h&&(u[1]|=(14&c)>>1,u[2]=(1&c)<<7,u[2]|=8,u[3]=0),{config:u,samplerate:f[o],channelCount:l,codec:"mp4a.40."+h,manifestCodec:p};t.trigger(s.a.ERROR,{type:n.b.MEDIA_ERROR,details:n.a.FRAG_PARSING_ERROR,fatal:!0,reason:"invalid ADTS sampling index:"+o})}(i,e,r,h);t.config=o.config,t.samplerate=o.samplerate,t.channelCount=o.channelCount,t.codec=o.codec,t.manifestCodec=o.manifestCodec,a.b.log("parsed codec:"+t.codec+",rate:"+o.samplerate+",nb channel:"+o.channelCount)}}function y(t){return 9216e4/t}function b(t,i,e,s,n){var r=function(t,i,e,s,n){var r,h,o=t.length;if(r=p(t,i),h=f(t,i),(h-=r)>0&&i+r+h<=o)return{headerLength:r,frameLength:h,stamp:e+s*n}}(i,e,s,n,y(t.samplerate));if(r){var h=r.stamp,o=r.headerLength,a=r.frameLength,c={unit:i.subarray(e+o,e+o+a),pts:h,dts:h};return t.samples.push(c),{sample:c,length:a+o}}}var w=e(4),x=function(){function t(t,i,e){this.observer=t,this.config=e,this.remuxer=i}var i=t.prototype;return i.resetInitSegment=function(t,i,e,s){this.ua={container:"audio/adts",type:"audio",id:0,sequenceNumber:0,isAAC:!0,samples:[],len:0,manifestCodec:i,duration:s,inputTimeScale:9e4}},i.resetTimeStamp=function(){},t.probe=function(t){if(!t)return!1;for(var i=(w.a.getID3Data(t,0)||[]).length,e=t.length;ii.length)){var r=this.parseHeader(i,e);if(r&&e+r.frameLength<=i.length){var h=s+n*(9e4*r.samplesPerFrame/r.sampleRate),o={unit:i.subarray(e,e+r.frameLength),pts:h,dts:h};return t.config=[],t.channelCount=r.channelCount,t.samplerate=r.sampleRate,t.samples.push(o),{sample:o,length:r.frameLength}}}},parseHeader:function(t,i){var e=t[i+1]>>3&3,s=t[i+1]>>1&3,n=t[i+2]>>4&15,r=t[i+2]>>2&3,h=t[i+2]>>1&1;if(1!==e&&0!==n&&15!==n&&3!==r){var o=3===e?3-s:3===s?3:4,a=1e3*_.BitratesMap[14*o+n-1],c=3===e?0:2===e?1:2,l=_.SamplingRateMap[3*c+r],u=t[i+3]>>6==3?1:2,d=_.SamplesCoefficients[e][s],p=_.BytesInSlot[s],f=8*d*p;return{sampleRate:l,channelCount:u,frameLength:parseInt(d*a/l+h,10)*p,samplesPerFrame:f}}},isHeaderPattern:function(t,i){return 255===t[i]&&224==(224&t[i+1])&&0!=(6&t[i+1])},isHeader:function(t,i){return!!(i+1t?(this.word<<=t,this.bitsAvailable-=t):(t-=this.bitsAvailable,t-=(i=t>>3)>>3,this.bytesAvailable-=i,this.loadWord(),this.word<<=t,this.bitsAvailable-=t)},i.readBits=function(t){var i=Math.min(this.bitsAvailable,t),e=this.word>>>32-i;return t>32&&a.b.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=i,this.bitsAvailable>0?this.word<<=i:this.bytesAvailable>0&&this.loadWord(),(i=t-i)>0&&this.bitsAvailable?e<>>t))return this.word<<=t,this.bitsAvailable-=t,t;return this.loadWord(),t+this.skipLZ()},i.skipUEG=function(){this.skipBits(1+this.skipLZ())},i.skipEG=function(){this.skipBits(1+this.skipLZ())},i.readUEG=function(){var t=this.skipLZ();return this.readBits(t+1)-1},i.readEG=function(){var t=this.readUEG();return 1&t?1+t>>>1:-1*(t>>>1)},i.readBoolean=function(){return 1===this.readBits(1)},i.readUByte=function(){return this.readBits(8)},i.readUShort=function(){return this.readBits(16)},i.readUInt=function(){return this.readBits(32)},i.skipScalingList=function(t){var i,e=8,s=8;for(i=0;i=t.length)return void e();if(!(t[i].unit.length<32)){var s=this.decrypter.isSync();if(this.decryptAacSample(t,i,e,s),!s)return}}},i.getAvcEncryptedData=function(t){for(var i=16*Math.floor((t.length-48)/160)+16,e=new Int8Array(i),s=0,n=32;n<=t.length-16;n+=160,s+=16)e.set(t.subarray(n,n+16),s);return e},i.getAvcDecryptedUnit=function(t,i){i=new Uint8Array(i);for(var e=0,s=32;s<=t.length-16;s+=160,e+=16)t.set(i.subarray(e,e+16),s);return t},i.decryptAvcSample=function(t,i,e,s,n,r){var h=this.discardEPB(n.data),o=this.getAvcEncryptedData(h),a=this;this.decryptBuffer(o.buffer,(function(o){n.data=a.getAvcDecryptedUnit(h,o),r||a.decryptAvcSamples(t,i,e+1,s)}))},i.decryptAvcSamples=function(t,i,e,s){for(;;i++,e=0){if(i>=t.length)return void s();for(var n=t[i].units;!(e>=n.length);e++){var r=n[e];if(!(r.length<=48||1!==r.type&&5!==r.type)){var h=this.decrypter.isSync();if(this.decryptAvcSample(t,i,e,s,r,h),!h)return}}}},t}(),I={video:1,audio:2,id3:3,text:4},T=function(){function t(t,i,e,s){this.observer=t,this.config=e,this.typeSupported=s,this.remuxer=i,this.sampleAes=null}var i=t.prototype;return i.setDecryptData=function(t){null!=t&&null!=t.key&&"SAMPLE-AES"===t.method?this.sampleAes=new k(this.observer,this.config,t,this.discardEPB):this.sampleAes=null},t.probe=function(i){var e=t.da(i);return!(e<0||(e&&a.b.warn("MPEG2-TS detected but first sync word found @ offset "+e+", junk ahead ?"),0))},t.da=function(t){for(var i=Math.min(1e3,t.length-564),e=0;e>4>1){if((u=o+5+i[o+4])===o+188)continue}else u=o+4;switch(l){case b:c&&(_&&(d=T(_))&&C(d,!1),_={data:[],size:0}),_&&(_.data.push(i.subarray(u,o+188)),_.size+=o+188-u);break;case w:c&&(A&&(d=T(A))&&(m.isAAC?M(d):E(d)),A={data:[],size:0}),A&&(A.data.push(i.subarray(u,o+188)),A.size+=o+188-u);break;case x:c&&(P&&(d=T(P))&&L(d),P={data:[],size:0}),P&&(P.data.push(i.subarray(u,o+188)),P.size+=o+188-u);break;case 0:c&&(u+=i[u]+1),S=this.pa=k(i,u);break;case S:c&&(u+=i[u]+1);var R=I(i,u,!0===this.typeSupported.mpeg||!0===this.typeSupported.mp3,null!=this.sampleAes);(b=R.avc)>0&&(g.pid=b),(w=R.audio)>0&&(m.pid=w,m.isAAC=R.isAAC),(x=R.id3)>0&&(y.pid=x),f&&!v&&(a.b.log("reparse from beginning"),f=!1,o=O-188),v=this.pmtParsed=!0;break;case 17:case 8191:break;default:f=!0}}else this.observer.trigger(s.a.ERROR,{type:n.b.MEDIA_ERROR,details:n.a.FRAG_PARSING_ERROR,fatal:!1,reason:"TS packet did not start with 0x47"});_&&(d=T(_))?(C(d,!0),g.pesData=null):g.pesData=_,A&&(d=T(A))?(m.isAAC?M(d):E(d),m.pesData=null):(A&&A.size&&a.b.log("last AAC PES packet truncated,might overlap between fragments"),m.pesData=A),P&&(d=T(P))?(L(d),y.pesData=null):y.pesData=P,null==this.sampleAes?this.remuxer.remux(m,g,y,this.ga,e,r,h):this.decryptAndRemux(m,g,y,this.ga,e,r,h)},i.decryptAndRemux=function(t,i,e,s,n,r,h){if(t.samples&&t.isAAC){var o=this;this.sampleAes.decryptAacSamples(t.samples,0,(function(){o.decryptAndRemuxAvc(t,i,e,s,n,r,h)}))}else this.decryptAndRemuxAvc(t,i,e,s,n,r,h)},i.decryptAndRemuxAvc=function(t,i,e,s,n,r,h){if(i.samples){var o=this;this.sampleAes.decryptAvcSamples(i.samples,0,0,(function(){o.remuxer.remux(t,i,e,s,n,r,h)}))}else this.remuxer.remux(t,i,e,s,n,r,h)},i.destroy=function(){this.Pa=this.ka=void 0,this.ma=0},i.ya=function(t,i){return(31&t[i+10])<<8|t[i+11]},i.ba=function(t,i,e,s){var n,r,h={audio:-1,avc:-1,id3:-1,isAAC:!0};for(n=i+3+((15&t[i+1])<<8|t[i+2])-4,i+=12+((15&t[i+10])<<8|t[i+11]);i1;){var d=new Uint8Array(u[0].length+u[1].length);d.set(u[0]),d.set(u[1],u[0].length),u[0]=d,u.splice(1,1)}if(1===((i=u[0])[0]<<16)+(i[1]<<8)+i[2]){if((s=(i[4]<<8)+i[5])&&s>t.size-6)return null;if(192&(e=i[7])&&((h=536870912*(14&i[9])+4194304*(255&i[10])+16384*(254&i[11])+128*(255&i[12])+(254&i[13])/2)>4294967295&&(h-=8589934592),64&e?((o=536870912*(14&i[14])+4194304*(255&i[15])+16384*(254&i[16])+128*(255&i[17])+(254&i[18])/2)>4294967295&&(o-=8589934592),h-o>54e5&&(a.b.warn(Math.round((h-o)/9e4)+"s delta between PTS and DTS, align them"),h=o)):o=h),c=(n=i[8])+9,t.size<=c)return null;t.size-=c,r=new Uint8Array(t.size);for(var p=0,f=u.length;pv){c-=v;continue}i=i.subarray(c),v-=c,c=0}r.set(i,l),l+=v}return s&&(s-=n+3),{data:r,pts:h,dts:o,len:s}}return null},i.pushAccesUnit=function(t,i){if(t.units.length&&t.frame){var e=i.samples,s=e.length;if(isNaN(t.pts)){if(!s)return void i.dropped++;var n=e[s-1];t.pts=n.pts,t.dts=n.dts}!this.config.forceKeyFrameOnDiscontinuity||!0===t.key||i.sps&&(s||this.contiguous)?(t.id=s,e.push(t)):i.dropped++}t.debug.length&&a.b.log(t.pts+"/"+t.dts+":"+t.debug)},i.xa=function(t,i){var e,s,n,r=this,h=this.fa,o=this.Ia(t.data),a=this.avcSample,c=!1,l=this.pushAccesUnit.bind(this),u=function(t,i,e,s){return{key:t,pts:i,dts:e,units:[],debug:s}};t.data=null,a&&o.length&&!h.audFound&&(l(a,h),a=this.avcSample=u(!1,t.pts,t.dts,"")),o.forEach((function(i){switch(i.type){case 1:s=!0,a||(a=r.avcSample=u(!0,t.pts,t.dts,"")),a.frame=!0;var o=i.data;if(c&&o.length>4){var d=new P(o).readSliceType();2!==d&&4!==d&&7!==d&&9!==d||(a.key=!0)}break;case 5:s=!0,a||(a=r.avcSample=u(!0,t.pts,t.dts,"")),a.key=!0,a.frame=!0;break;case 6:s=!0,(e=new P(r.discardEPB(i.data))).readUByte();for(var p=0,f=0,v=!1,g=0;!v&&e.bytesAvailable>1;){p=0;do{p+=g=e.readUByte()}while(255===g);f=0;do{f+=g=e.readUByte()}while(255===g);if(4===p&&0!==e.bytesAvailable){if(v=!0,181===e.readUByte()&&49===e.readUShort()&&1195456820===e.readUInt()&&3===e.readUByte()){var m=e.readUByte(),y=31&m,b=[m,e.readUByte()];for(n=0;n16){var x=[];for(n=0;n<16;n++)x.push(e.readUByte().toString(16)),3!==n&&5!==n&&7!==n&&9!==n||x.push("-");var S=f-16,_=new Uint8Array(S);for(n=0;n0){if(i.pts>=t[e-1].pts)t.push(i);else for(var s=e-1;s>=0;s--)if(i.pts=0)s={data:t.subarray(u,r-a-1),type:n},l.push(s);else{var d=this.Ca();if(d&&(c&&r<=4-c&&d.state&&(d.data=d.data.subarray(0,d.data.byteLength-c)),(e=r-a-1)>0)){var p=new Uint8Array(d.data.byteLength+e);p.set(d.data,0),p.set(t.subarray(0,e),d.data.byteLength),d.data=p}}r=0&&a>=0&&(s={data:t.subarray(u,h),type:n,state:a},l.push(s)),0===l.length){var f=this.Ca();if(f){var v=new Uint8Array(f.data.byteLength+t.byteLength);v.set(f.data,0),v.set(t,f.data.byteLength),f.data=v}}return o.naluState=a,l},i.discardEPB=function(t){for(var i,e,s=t.byteLength,n=[],r=1;r1&&(a.b.log("AAC: align PTS for overlapping frames by "+Math.round((x-p)/90)),p=x)}for(;r>24&255,i[1]=s>>16&255,i[2]=s>>8&255,i[3]=255&s,i.set(t,4),n=0,s=8;n>24&255,i>>16&255,i>>8&255,255&i,s>>24,s>>16&255,s>>8&255,255&s,n>>24,n>>16&255,n>>8&255,255&n,85,196,0,0]))},t.mdia=function(i){return t.box(t.types.mdia,t.mdhd(i.timescale,i.duration),t.hdlr(i.type),t.minf(i))},t.mfhd=function(i){return t.box(t.types.mfhd,new Uint8Array([0,0,0,0,i>>24,i>>16&255,i>>8&255,255&i]))},t.minf=function(i){return"audio"===i.type?t.box(t.types.minf,t.box(t.types.smhd,t.SMHD),t.DINF,t.stbl(i)):t.box(t.types.minf,t.box(t.types.vmhd,t.VMHD),t.DINF,t.stbl(i))},t.moof=function(i,e,s){return t.box(t.types.moof,t.mfhd(i),t.traf(s,e))},t.moov=function(i){for(var e=i.length,s=[];e--;)s[e]=t.trak(i[e]);return t.box.apply(null,[t.types.moov,t.mvhd(i[0].timescale,i[0].duration)].concat(s).concat(t.mvex(i)))},t.mvex=function(i){for(var e=i.length,s=[];e--;)s[e]=t.trex(i[e]);return t.box.apply(null,[t.types.mvex].concat(s))},t.mvhd=function(i,e){e*=i;var s=Math.floor(e/(E+1)),n=Math.floor(e%(E+1)),r=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,i>>24&255,i>>16&255,i>>8&255,255&i,s>>24,s>>16&255,s>>8&255,255&s,n>>24,n>>16&255,n>>8&255,255&n,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return t.box(t.types.mvhd,r)},t.sdtp=function(i){var e,s,n=i.samples||[],r=new Uint8Array(4+n.length);for(s=0;s>>8&255),r.push(255&n),r=r.concat(Array.prototype.slice.call(s));for(e=0;e>>8&255),h.push(255&n),h=h.concat(Array.prototype.slice.call(s));var o=t.box(t.types.avcC,new Uint8Array([1,r[3],r[4],r[5],255,224|i.sps.length].concat(r).concat([i.pps.length]).concat(h))),a=i.width,c=i.height,l=i.pixelRatio[0],u=i.pixelRatio[1];return t.box(t.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,a>>8&255,255&a,c>>8&255,255&c,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),o,t.box(t.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),t.box(t.types.pasp,new Uint8Array([l>>24,l>>16&255,l>>8&255,255&l,u>>24,u>>16&255,u>>8&255,255&u])))},t.esds=function(t){var i=t.config.length;return new Uint8Array([0,0,0,0,3,23+i,0,1,0,4,15+i,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([i]).concat(t.config).concat([6,1,2]))},t.mp4a=function(i){var e=i.samplerate;return t.box(t.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,i.channelCount,0,16,0,0,0,0,e>>8&255,255&e,0,0]),t.box(t.types.esds,t.esds(i)))},t.mp3=function(i){var e=i.samplerate;return t.box(t.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,i.channelCount,0,16,0,0,0,0,e>>8&255,255&e,0,0]))},t.stsd=function(i){return"audio"===i.type?i.isAAC||"mp3"!==i.codec?t.box(t.types.stsd,t.STSD,t.mp4a(i)):t.box(t.types.stsd,t.STSD,t.mp3(i)):t.box(t.types.stsd,t.STSD,t.avc1(i))},t.tkhd=function(i){var e=i.id,s=i.duration*i.timescale,n=i.width,r=i.height,h=Math.floor(s/(E+1)),o=Math.floor(s%(E+1));return t.box(t.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,e>>24&255,e>>16&255,e>>8&255,255&e,0,0,0,0,h>>24,h>>16&255,h>>8&255,255&h,o>>24,o>>16&255,o>>8&255,255&o,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,n>>8&255,255&n,0,0,r>>8&255,255&r,0,0]))},t.traf=function(i,e){var s=t.sdtp(i),n=i.id,r=Math.floor(e/(E+1)),h=Math.floor(e%(E+1));return t.box(t.types.traf,t.box(t.types.tfhd,new Uint8Array([0,0,0,0,n>>24,n>>16&255,n>>8&255,255&n])),t.box(t.types.tfdt,new Uint8Array([1,0,0,0,r>>24,r>>16&255,r>>8&255,255&r,h>>24,h>>16&255,h>>8&255,255&h])),t.trun(i,s.length+16+20+8+16+8+8),s)},t.trak=function(i){return i.duration=i.duration||4294967295,t.box(t.types.trak,t.tkhd(i),t.mdia(i))},t.trex=function(i){var e=i.id;return t.box(t.types.trex,new Uint8Array([0,0,0,0,e>>24,e>>16&255,e>>8&255,255&e,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))},t.trun=function(i,e){var s,n,r,h,o,a,c=i.samples||[],l=c.length,u=12+16*l,d=new Uint8Array(u);for(e+=8+u,d.set([0,0,15,1,l>>>24&255,l>>>16&255,l>>>8&255,255&l,e>>>24&255,e>>>16&255,e>>>8&255,255&e],0),s=0;s>>24&255,r>>>16&255,r>>>8&255,255&r,h>>>24&255,h>>>16&255,h>>>8&255,255&h,o.isLeading<<2|o.dependsOn,o.isDependedOn<<6|o.hasRedundancy<<4|o.paddingValue<<1|o.isNonSync,61440&o.degradPrio,15&o.degradPrio,a>>>24&255,a>>>16&255,a>>>8&255,255&a],12+16*s);return t.box(t.types.trun,d)},t.initSegment=function(i){t.types||t.init();var e,s=t.moov(i);return(e=new Uint8Array(t.FTYP.byteLength+s.byteLength)).set(t.FTYP),e.set(s,t.FTYP.byteLength),e},t}();function O(t,i,e,s){void 0===e&&(e=1),void 0===s&&(s=!1);var n=t*i*e;return s?Math.round(n):n}function R(t,i){return void 0===i&&(i=!1),O(t,1e3,1/9e4,i)}function B(t,i){return void 0===i&&(i=1),O(t,9e4,1/i)}var D,j=B(10),F=B(.2),$=function(){function t(t,i,e,s){this.observer=t,this.config=i,this.typeSupported=e;var n=navigator.userAgent;this.isSafari=s&&s.indexOf("Apple")>-1&&n&&!n.match("CriOS"),this.ISGenerated=!1}var i=t.prototype;return i.destroy=function(){},i.resetTimeStamp=function(t){this.Pa=this.ka=t},i.resetInitSegment=function(){this.ISGenerated=!1},i.remux=function(t,i,e,n,r,h,o){if(this.ISGenerated||this.generateIS(t,i,r),this.ISGenerated){var c=t.samples.length,l=i.samples.length,u=r,d=r;if(c&&l){var p=(t.samples[0].pts-i.samples[0].pts)/i.inputTimeScale;u+=Math.max(0,p),d+=Math.max(0,-p)}if(c){t.timescale||(a.b.warn("regenerate InitSegment as audio detected"),this.generateIS(t,i,r));var f,v=this.remuxAudio(t,u,h,o);l&&(v&&(f=v.endPTS-v.startPTS),i.timescale||(a.b.warn("regenerate InitSegment as video detected"),this.generateIS(t,i,r)),this.remuxVideo(i,d,h,f,o))}else if(l){var g=this.remuxVideo(i,d,h,0,o);g&&t.codec&&this.remuxEmptyAudio(t,u,h,g)}}e.samples.length&&this.remuxID3(e,r),n.samples.length&&this.remuxText(n,r),this.observer.trigger(s.a.FRAG_PARSED)},i.generateIS=function(t,i,e){var r,h,o=this.observer,c=t.samples,l=i.samples,u=this.typeSupported,d="audio/mp4",p={},f={tracks:p},v=void 0===this.Pa;if(v&&(r=h=1/0),t.config&&c.length&&(t.timescale=t.samplerate,a.b.log("audio sampling rate : "+t.samplerate),t.isAAC||(u.mpeg?(d="audio/mpeg",t.codec=""):u.mp3&&(t.codec="mp3")),p.audio={container:d,codec:t.codec,initSegment:!t.isAAC&&u.mpeg?new Uint8Array:L.initSegment([t]),metadata:{channelCount:t.channelCount}},v&&(r=h=c[0].pts-t.inputTimeScale*e)),i.sps&&i.pps&&l.length){var g=i.inputTimeScale;i.timescale=g,p.video={container:"video/mp4",codec:i.codec,initSegment:L.initSegment([i]),metadata:{width:i.width,height:i.height}},v&&(r=Math.min(r,l[0].pts-g*e),h=Math.min(h,l[0].dts-g*e),this.observer.trigger(s.a.INIT_PTS_FOUND,{initPTS:r}))}Object.keys(p).length?(o.trigger(s.a.FRAG_PARSING_INIT_SEGMENT,f),this.ISGenerated=!0,v&&(this.Pa=r,this.ka=h)):o.trigger(s.a.ERROR,{type:n.b.MEDIA_ERROR,details:n.a.FRAG_PARSING_ERROR,fatal:!1,reason:"no audio/video samples found"})},i.remuxVideo=function(t,i,e,r,h){var o,c,l,u,d,p,f,v=8,g=t.timescale,m=t.samples,y=[],b=m.length,w=this.Ma,x=this.Pa,S=this.nextAvcDts,_=this.isSafari;if(0!==b){_&&(e|=m.length&&S&&(h&&Math.abs(i-S/g)<.1||Math.abs(m[0].pts-S-x)1?a.b.log("AVC: "+R(I,!0)+" ms hole between fragments detected,filling it"):I<-1&&a.b.log("AVC: "+R(-I,!0)+" ms overlapping between fragments detected"),d=S,m[0].dts=d,u=Math.max(u-I,S),m[0].pts=u,a.b.log("Video: PTS/DTS adjusted: "+R(u,!0)+"/"+R(d,!0)+", delta: "+R(I,!0)+" ms")),k=m[m.length-1],f=Math.max(k.dts,0),p=Math.max(k.pts,0,f),_&&(o=Math.round((f-d)/(m.length-1)));for(var T=0,C=0,M=0;M0?U-1:U].dts;if(Y.stretchShortVideoTrack){var Z=Y.maxBufferHole,tt=Math.floor(Z*g),it=(r?u+r*g:this.nextAudioPts)-N.pts;it>tt?((o=it-K)<0&&(o=K),a.b.log("It is approximately "+R(it,!1)+" ms to the next segment; using duration "+R(o,!1)+" ms for the last video frame.")):o=K}else o=K}q=Math.round(N.pts-N.dts)}y.push({size:z,duration:o,cts:q,flags:{isLeading:0,isDependedOn:0,hasRedundancy:0,degradPrio:0,dependsOn:N.key?2:1,isNonSync:N.key?0:1}})}this.nextAvcDts=f+o;var et=t.dropped;if(t.nbNalu=0,t.dropped=0,y.length&&navigator.userAgent.toLowerCase().indexOf("chrome")>-1){var st=y[0].flags;st.dependsOn=2,st.isNonSync=0}t.samples=y,l=L.moof(t.sequenceNumber++,d,t),t.samples=[];var nt={data1:l,data2:c,startPTS:u/g,endPTS:(p+o)/g,startDTS:d/g,endDTS:this.nextAvcDts/g,type:"video",hasAudio:!1,hasVideo:!0,nb:y.length,dropped:et};return this.observer.trigger(s.a.FRAG_PARSING_DATA,nt),nt}},i.remuxAudio=function(t,i,e,r){var h,o,c,l,u,d,p=t.inputTimeScale,f=t.timescale,v=p/f,g=(t.isAAC?1024:1152)*v,m=this.Ma,y=this.Pa,b=!t.isAAC&&this.typeSupported.mpeg,w=b?0:8,x=t.samples,S=[],_=this.nextAudioPts;if(e|=x.length&&_&&(r&&Math.abs(i-_/p)<.1||Math.abs(x[0].pts-_-y)<20*g),x.forEach((function(t){t.pts=t.dts=m(t.pts-y,i*p)})),0!==(x=x.filter((function(t){return t.pts>=0}))).length){if(e||(_=r?i*p:x[0].pts),t.isAAC)for(var A=this.config.maxAudioFramesDrift,P=0,k=_;P=A*g&&I0&&H0&&((o=M.getSilentFrame(t.manifestCodec||t.codec,t.channelCount))||(o=U.subarray()),D+=z*o.length);else if(H<-12){a.b.log("drop overlapping AAC sample, expected/parsed/delta: "+R(_,!0)+" ms / "+R(N,!0)+" ms / "+R(-H,!0)+" ms"),D-=U.byteLength;continue}N=_}if(u=N,!(D>0))return;D+=w;try{c=new Uint8Array(D)}catch(t){return void this.observer.trigger(s.a.ERROR,{type:n.b.MUX_ERROR,details:n.a.REMUX_ALLOC_ERROR,fatal:!1,bytes:D,reason:"fail allocating audio mdat "+D})}b||(new DataView(c.buffer).setUint32(0,D),c.set(L.types.mdat,4));for(var q=0;q=2&&(G=S[B-2].duration,h.duration=G),B){this.nextAudioPts=_=d+v*G,t.samples=S,l=b?new Uint8Array:L.moof(t.sequenceNumber++,u/v,t),t.samples=[];var J=u/p,Q=_/p,X={data1:l,data2:c,startPTS:J,endPTS:Q,startDTS:J,endDTS:Q,type:"audio",hasAudio:!0,hasVideo:!1,nb:B};return this.observer.trigger(s.a.FRAG_PARSING_DATA,X),X}return null}},i.remuxEmptyAudio=function(t,i,e,s){var n=t.inputTimeScale,r=n/(t.samplerate?t.samplerate:n),h=this.nextAudioPts,o=(void 0!==h?h:s.startDTS*n)+this.ka,c=s.endDTS*n+this.ka,l=1024*r,u=Math.ceil((c-o)/l),d=M.getSilentFrame(t.manifestCodec||t.codec,t.channelCount);if(a.b.warn("remux empty Audio"),d){for(var p=[],f=0;f4294967296;)t+=e;return t},t}(),V=function(){function t(t){this.observer=t}var i=t.prototype;return i.destroy=function(){},i.resetTimeStamp=function(){},i.resetInitSegment=function(){},i.remux=function(t,i,e,n,r,h,o,a){var c=this.observer,l="";t&&(l+="audio"),i&&(l+="video"),c.trigger(s.a.FRAG_PARSING_DATA,{data1:a,startPTS:r,startDTS:r,type:l,hasAudio:!!t,hasVideo:!!i,nb:1,dropped:0}),c.trigger(s.a.FRAG_PARSED)},t}(),U=Object(c.a)();try{D=U.performance.now.bind(U.performance)}catch(t){a.b.debug("Unable to use Performance API on this environment"),D=U.Date.now}var N=function(){function t(t,i,e,s){this.observer=t,this.typeSupported=i,this.config=e,this.vendor=s}var i=t.prototype;return i.destroy=function(){var t=this.demuxer;t&&t.destroy()},i.push=function(t,i,e,n,r,h,o,a,c,u,d,p){var f=this;if(t.byteLength>0&&null!=i&&null!=i.key&&"AES-128"===i.method){var v=this.decrypter;null==v&&(v=this.decrypter=new l(this.observer,this.config));var g=D();v.decrypt(t,i.key.buffer,i.iv.buffer,(function(t){var l=D();f.observer.trigger(s.a.FRAG_DECRYPTED,{stats:{tstart:g,tdecrypt:l}}),f.pushDecrypted(new Uint8Array(t),i,new Uint8Array(e),n,r,h,o,a,c,u,d,p)}))}else this.pushDecrypted(new Uint8Array(t),i,new Uint8Array(e),n,r,h,o,a,c,u,d,p)},i.pushDecrypted=function(t,i,e,r,h,o,a,c,l,u,d,p){var f=this.demuxer;if(!f||(a||c)&&!this.probe(t)){for(var v=this.observer,g=this.typeSupported,m=this.config,y=[{demux:T,remux:$},{demux:S.a,remux:V},{demux:x,remux:$},{demux:C,remux:$}],b=0,w=y.length;b0},t.bin2str=function(t){return String.fromCharCode.apply(null,t)},t.readUint16=function(t,i){t.data&&(i+=t.start,t=t.data);var e=t[i]<<8|t[i+1];return e<0?65536+e:e},t.readUint32=function(t,i){t.data&&(i+=t.start,t=t.data);var e=t[i]<<24|t[i+1]<<16|t[i+2]<<8|t[i+3];return e<0?4294967296+e:e},t.writeUint32=function(t,i,e){t.data&&(i+=t.start,t=t.data),t[i]=e>>24,t[i+1]=e>>16&255,t[i+2]=e>>8&255,t[i+3]=255&e},t.findBox=function(i,e){var s,n,r,h,o,a,c=[];if(i.data?(o=i.start,r=i.end,i=i.data):(o=0,r=i.byteLength),!e.length)return null;for(s=o;s1?s+n:r,t.bin2str(i.subarray(s+4,s+8))===e[0]&&(1===e.length?c.push({data:i,start:s+8,end:a}):(h=t.findBox({data:i,start:s+8,end:a},e.slice(1))).length&&(c=c.concat(h))),s=a;return c},t.parseSegmentIndex=function(i){var e,s=t.findBox(i,["moov"])[0],n=s?s.end:null,r=0,h=t.findBox(i,["sidx"]);if(!h||!h[0])return null;e=[];var o=(h=h[0]).data[0];r=0===o?8:16;var a=t.readUint32(h,r);r+=4,r+=0===o?8:16,r+=2;var c=h.end+0,l=t.readUint16(h,r);r+=2;for(var u=0;u>>31)return void console.warn("SIDX has hierarchical references (not supported)");var v=t.readUint32(h,d);d+=4,e.push({referenceSize:f,subsegmentDuration:v,info:{duration:v/a,start:c,end:c+f-1}}),c+=f,r=d+=4}return{earliestPresentationTime:0,timescale:a,version:o,referencesCount:l,references:e,moovEndOffset:n}},t.parseInitSegment=function(i){var e=[];return t.findBox(i,["moov","trak"]).forEach((function(i){var n=t.findBox(i,["tkhd"])[0];if(n){var r=n.data[n.start],h=0===r?12:20,o=t.readUint32(n,h),a=t.findBox(i,["mdia","mdhd"])[0];if(a){h=0===(r=a.data[a.start])?12:20;var c=t.readUint32(a,h),l=t.findBox(i,["mdia","hdlr"])[0];if(l){var u={soun:"audio",vide:"video"}[t.bin2str(l.data.subarray(l.start+8,l.start+12))];if(u){var d=t.findBox(i,["mdia","minf","stbl","stsd"]);if(d.length){d=d[0];var p=t.bin2str(d.data.subarray(d.start+12,d.start+16));s.b.log("MP4Demuxer:"+u+":"+p+" found")}e[o]={timescale:c,type:u},e[u]={timescale:c,id:o}}}}}})),e},t.getStartDTS=function(i,e){var s,n,r;return s=t.findBox(e,["moof","traf"]),n=[].concat.apply([],s.map((function(e){return t.findBox(e,["tfhd"]).map((function(s){var n,r;return n=t.readUint32(s,4),r=i[n].timescale||9e4,t.findBox(e,["tfdt"]).map((function(i){var e,s;return e=i.data[i.start],s=t.readUint32(i,4),1===e&&(s*=Math.pow(2,32),s+=t.readUint32(i,8)),s}))[0]/r}))}))),r=Math.min.apply(null,n),isFinite(r)?r:0},t.offsetStartDTS=function(i,e,s){t.findBox(e,["moof","traf"]).map((function(e){return t.findBox(e,["tfhd"]).map((function(n){var h=t.readUint32(n,4),o=i[h].timescale||9e4;t.findBox(e,["tfdt"]).map((function(i){var e=i.data[i.start],n=t.readUint32(i,4);if(0===e)t.writeUint32(i,4,n-s*o);else{n*=Math.pow(2,32),n+=t.readUint32(i,8),n-=s*o,n=Math.max(n,0);var h=Math.floor(n/(r+1)),a=Math.floor(n%(r+1));t.writeUint32(i,4,h),t.writeUint32(i,8,a)}}))}))}))},i.append=function(i,e,s,r){var h=this.initData;h||(this.resetInitSegment(i,this.audioCodec,this.videoCodec,!1),h=this.initData);var o,a=this.initPTS;if(void 0===a){var c=t.getStartDTS(h,i);this.initPTS=a=c-e,this.observer.trigger(n.a.INIT_PTS_FOUND,{initPTS:a})}t.offsetStartDTS(h,i,a),o=t.getStartDTS(h,i),this.remuxer.remux(h.audio,h.video,null,null,o,s,r,i)},i.destroy=function(){},t}();i.a=h},function(t,i,e){function s(t){var i={};function e(s){if(i[s])return i[s].exports;var n=i[s]={i:s,l:!1,exports:{}};return t[s].call(n.exports,n,n.exports,e),n.l=!0,n.exports}e.m=t,e.c=i,e.i=function(t){return t},e.d=function(t,i,s){e.o(t,i)||Object.defineProperty(t,i,{configurable:!1,enumerable:!0,get:s})},e.r=function(t){Object.defineProperty(t,"R",{value:!0})},e.n=function(t){var i=t&&t.R?function(){return t.default}:function(){return t};return e.d(i,"a",i),i},e.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},e.p="/",e.oe=function(t){throw console.error(t),t};var s=e(e.s=ENTRY_MODULE);return s.default||s}var n="\\(\\s*(/\\*.*?\\*/)?\\s*.*?([\\.|\\-|\\+|\\w|/|@]+).*?\\)";function r(t){return(t+"").replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}function h(t,i,s){var h={};h[s]=[];var o=i.toString(),a=o.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/);if(!a)return h;for(var c,l=a[1],u=new RegExp("(\\\\n|\\W)"+r(l)+n,"g");c=u.exec(o);)"dll-reference"!==c[3]&&h[s].push(c[3]);for(u=new RegExp("\\("+r(l)+'\\("(dll-reference\\s([\\.|\\-|\\+|\\w|/|@]+))"\\)\\)'+n,"g");c=u.exec(o);)t[c[2]]||(h[s].push(c[1]),t[c[2]]=e(c[1]).m),h[c[2]]=h[c[2]]||[],h[c[2]].push(c[4]);for(var d,p=Object.keys(h),f=0;f0}),!1)}t.exports=function(t,i){i=i||{};var n={main:e.m},r=i.all?{main:Object.keys(n.main)}:function(t,i){for(var e={main:[i]},s={main:[]},n={main:{}};o(e);)for(var r=Object.keys(e),a=0;a1?e-1:0),n=1;n1?e-1:0),n=1;n1?i-1:0),s=1;s>8*(15-e)&255;return i},n.setDecryptDataFromLevelKey=function(t,i){var e=t;return t&&t.method&&t.uri&&!t.iv&&((e=new v(t.baseuri,t.reluri)).method=t.method,e.iv=this.createInitializationVector(i)),e},i=t,(e=[{key:"url",get:function(){return!this.La&&this.relurl&&(this.La=Object(r.buildAbsoluteURL)(this.baseurl,this.relurl,{alwaysNormalize:!0})),this.La},set:function(t){this.La=t}},{key:"byteRange",get:function(){return this.Oa?this.Oa:[]}},{key:"byteRangeStartOffset",get:function(){return this.byteRange[0]}},{key:"byteRangeEndOffset",get:function(){return this.byteRange[1]}},{key:"decryptdata",get:function(){if(!this.levelkey&&!this.Ra)return null;if(!this.Ra&&this.levelkey){var t=this.sn;"number"!=typeof t&&(this.levelkey&&"AES-128"===this.levelkey.method&&!this.levelkey.iv&&c.b.warn('missing IV for initialization segment with method="'+this.levelkey.method+'" - compliance issue'),t=0),this.Ra=this.setDecryptDataFromLevelKey(this.levelkey,t)}return this.Ra}},{key:"endProgramDateTime",get:function(){if(null===this.programDateTime)return null;if(!Object(o.a)(this.programDateTime))return null;var t=Object(o.a)(this.duration)?this.duration:0;return this.programDateTime+1e3*t}},{key:"encrypted",get:function(){return!(!this.decryptdata||null===this.decryptdata.uri||null!==this.decryptdata.key)}}])&&g(i.prototype,e),s&&g(i,s),t}();function y(t,i){for(var e=0;eNumber.MAX_SAFE_INTEGER?1/0:i},i.hexadecimalInteger=function(t){if(this[t]){var i=(this[t]||"0x").slice(2);i=(1&i.length?"0":"")+i;for(var e=new Uint8Array(i.length/2),s=0;sNumber.MAX_SAFE_INTEGER?1/0:i},i.decimalFloatingPoint=function(t){return parseFloat(this[t])},i.enumeratedString=function(t){return this[t]},i.decimalResolution=function(t){var i=w.exec(this[t]);if(null!==i)return{width:parseInt(i[1],10),height:parseInt(i[2],10)}},t.parseAttrList=function(t){var i,e={};for(x.lastIndex=0;null!==(i=x.exec(t));){var s=i[2];0===s.indexOf('"')&&s.lastIndexOf('"')===s.length-1&&(s=s.slice(1,-1)),e[i[1]]=s}return e},t}(),_={audio:{a3ds:!0,"ac-3":!0,"ac-4":!0,alac:!0,alaw:!0,dra1:!0,"dts+":!0,"dts-":!0,dtsc:!0,dtse:!0,dtsh:!0,"ec-3":!0,enca:!0,g719:!0,g726:!0,m4ae:!0,mha1:!0,mha2:!0,mhm1:!0,mhm2:!0,mlpa:!0,mp4a:!0,"raw ":!0,Opus:!0,samr:!0,sawb:!0,sawp:!0,sevc:!0,sqcp:!0,ssmv:!0,twos:!0,ulaw:!0},video:{avc1:!0,avc2:!0,avc3:!0,avc4:!0,avcp:!0,drac:!0,dvav:!0,dvhe:!0,encv:!0,hev1:!0,hvc1:!0,mjp2:!0,mp4v:!0,mvc1:!0,mvc2:!0,mvc3:!0,mvc4:!0,resv:!0,rv60:!0,s263:!0,svc1:!0,svc2:!0,"vc-1":!0,vp08:!0,vp09:!0}};function A(t,i){return MediaSource.isTypeSupported((i||"video")+'/mp4;codecs="'+t+'"')}var P=/#EXT-X-STREAM-INF:([^\n\r]*)[\r\n]+([^\r\n]+)/g,k=/#EXT-X-MEDIA:(.*)/g,I=new RegExp([/#EXTINF:\s*(\d*(?:\.\d+)?)(?:,(.*)\s+)?/.source,/|(?!#)([\S+ ?]+)/.source,/|#EXT-X-BYTERANGE:*(.+)/.source,/|#EXT-X-PROGRAM-DATE-TIME:(.+)/.source,/|#.*/.source].join(""),"g"),T=/(?:(?:#(EXTM3U))|(?:#EXT-X-(PLAYLIST-TYPE):(.+))|(?:#EXT-X-(MEDIA-SEQUENCE): *(\d+))|(?:#EXT-X-(TARGETDURATION): *(\d+))|(?:#EXT-X-(KEY):(.+))|(?:#EXT-X-(START):(.+))|(?:#EXT-X-(ENDLIST))|(?:#EXT-X-(DISCONTINUITY-SEQ)UENCE:(\d+))|(?:#EXT-X-(DIS)CONTINUITY))|(?:#EXT-X-(VERSION):(\d+))|(?:#EXT-X-(MAP):(.+))|(?:(#)([^:]*):(.*))|(?:(#)(.*))(?:.*)\r?\n?/,C=/\.(mp4|m4s|m4v|m4a)$/i,M=function(){function t(){}return t.findGroup=function(t,i){for(var e=0;e2?(i=e.shift()+".",i+=parseInt(e.shift()).toString(16),i+=("000"+parseInt(e.shift()).toString(16)).substr(-4)):i=t,i},t.resolve=function(t,i){return t=L(i,t),r.buildAbsoluteURL(i,t,{alwaysNormalize:!0})},t.parseMasterPlaylist=function(i,e){var s,n=[];function r(t,i){["video","audio"].forEach((function(e){var s=t.filter((function(t){return function(t,i){var e=_[i];return!!e&&!0===e[t.slice(0,4)]}(t,e)}));if(s.length){var n=s.filter((function(t){return 0===t.lastIndexOf("avc1",0)||0===t.lastIndexOf("mp4a",0)}));i[e+"Codec"]=n.length>0?n[0]:s[0],t=t.filter((function(t){return-1===s.indexOf(t)}))}})),i.unknownCodecs=t}for(P.lastIndex=0;null!=(s=P.exec(i));){var h={},o=h.attrs=new S(s[1]);h.url=t.resolve(s[2],e);var a=o.decimalResolution("RESOLUTION");a&&(h.width=a.width,h.height=a.height),h.bitrate=o.decimalInteger("AVERAGE-BANDWIDTH")||o.decimalInteger("BANDWIDTH"),h.name=o.NAME,r([].concat((o.CODECS||"").split(/[ ,]+/)),h),h.videoCodec&&-1!==h.videoCodec.indexOf("avc1")&&(h.videoCodec=t.convertAVC1ToAVCOTI(h.videoCodec)),n.push(h)}return n},t.parseMasterPlaylistMedia=function(i,e,s,n){var r;void 0===n&&(n=[]);var h=[],o=0;for(k.lastIndex=0;null!==(r=k.exec(i));){var a=new S(r[1]);if(a.TYPE===s){var c={id:o++,groupId:a["GROUP-ID"],name:a.NAME||a.LANGUAGE,type:s,default:"YES"===a.DEFAULT,autoselect:"YES"===a.AUTOSELECT,forced:"YES"===a.FORCED,lang:a.LANGUAGE};if(a.URI&&(c.url=t.resolve(a.URI,e)),n.length){var l=t.findGroup(n,c.groupId);c.audioCodec=l?l.codec:n[0].codec}h.push(c)}}return h},t.parseLevelPlaylist=function(t,i,e,s,n){var r,h,a,l=0,u=0,d=new b(i),p=0,f=null,g=new m,y=null;for(I.lastIndex=0;null!==(r=I.exec(t));){var w=r[1];if(w){g.duration=parseFloat(w);var x=(" "+r[2]).slice(1);g.title=x||null,g.tagList.push(x?["INF",w,x]:["INF",w])}else if(r[3]){if(Object(o.a)(g.duration)){var _=l++;g.type=s,g.start=u,a&&(g.levelkey=a),g.sn=_,g.level=e,g.cc=p,g.urlId=n,g.baseurl=i,g.relurl=(" "+r[3]).slice(1),g.relurl=L(g.baseurl,g.relurl),E(g,f),d.fragments.push(g),f=g,u+=g.duration,g=new m}}else if(r[4]){var A=(" "+r[4]).slice(1);f?g.setByteRange(A,f):g.setByteRange(A)}else if(r[5])g.rawProgramDateTime=(" "+r[5]).slice(1),g.tagList.push(["PROGRAM-DATE-TIME",g.rawProgramDateTime]),null===y&&(y=d.fragments.length);else{if(!(r=r[0].match(T))){c.b.warn("No matches on slow regex match for level playlist!");continue}for(h=1;h=0&&(a.method=O,a.key=null,a.iv=B));break;case"START":var D=new S(P).decimalFloatingPoint("TIME-OFFSET");Object(o.a)(D)&&(d.startTimeOffset=D);break;case"MAP":var j=new S(P);g.relurl=j.URI,j.BYTERANGE&&g.setByteRange(j.BYTERANGE),g.baseurl=i,g.level=e,g.type=s,g.sn="initSegment",g.relurl=L(g.baseurl,g.relurl),d.initSegment=g,(g=new m).rawProgramDateTime=d.initSegment.rawProgramDateTime;break;default:c.b.warn("line parsed but not handled: "+r)}}}return(g=f)&&!g.relurl&&(d.fragments.pop(),u-=g.duration),d.totalduration=u,d.averagetargetduration=u/d.fragments.length,d.endSN=l-1,d.startCC=d.fragments[0]?d.fragments[0].cc:0,d.endCC=p,!d.initSegment&&d.fragments.length&&d.fragments.every((function(t){return C.test(t.relurl)}))&&(c.b.warn("MP4 fragments found but no init segment (probably no MAP, incomplete M3U8), trying to fetch SIDX"),(g=new m).relurl=d.fragments[0].relurl,g.baseurl=i,g.level=e,g.type=s,g.sn="initSegment",g.relurl=L(g.baseurl,g.relurl),d.initSegment=g,d.needSidxRanges=!0),y&&function(t,i){for(var e=t[i],s=i-1;s>=0;s--){var n=t[s];n.programDateTime=e.programDateTime-1e3*n.duration,e=n}}(d.fragments,y),d},t}();function E(t,i){t.rawProgramDateTime?t.programDateTime=Date.parse(t.rawProgramDateTime):i&&i.programDateTime&&(t.programDateTime=i.endProgramDateTime),Object(o.a)(t.programDateTime)||(t.programDateTime=null,t.rawProgramDateTime=null)}function L(t,i){var e=r.parseURL(t);return e&&e.query&&(i+=e.query),i}var O=window.performance,R=function(t){var i,e;function r(i){var e;return(e=t.call(this,i,a.a.MANIFEST_LOADING,a.a.LEVEL_LOADING,a.a.AUDIO_TRACK_LOADING,a.a.SUBTITLE_TRACK_LOADING)||this).loaders={},e}e=t,(i=r).prototype=Object.create(e.prototype),i.prototype.constructor=i,i.__proto__=e,r.canHaveQualityLevels=function(t){return t!==s.AUDIO_TRACK&&t!==s.SUBTITLE_TRACK},r.mapContextToLevelType=function(t){switch(t.type){case s.AUDIO_TRACK:return n.AUDIO;case s.SUBTITLE_TRACK:return n.SUBTITLE;default:return n.MAIN}},r.getResponseUrl=function(t,i){var e=t.url;return void 0!==e&&0!==e.indexOf("data:")||(e=i.url),e};var l=r.prototype;return l.createInternalLoader=function(t){var i=this.hls.config,e=i.pLoader,s=i.loader,n=new(e||s)(i);return t.loader=n,this.loaders[t.type]=n,n},l.getInternalLoader=function(t){return this.loaders[t.type]},l.resetInternalLoader=function(t){this.loaders[t]&&delete this.loaders[t]},l.destroyInternalLoaders=function(){for(var t in this.loaders){var i=this.loaders[t];i&&i.destroy(),this.resetInternalLoader(t)}},l.destroy=function(){this.destroyInternalLoaders(),t.prototype.destroy.call(this)},l.onManifestLoading=function(t){this.load({url:t.url,type:s.MANIFEST,level:0,id:null,responseType:"text"})},l.onLevelLoading=function(t){this.load({url:t.url,type:s.LEVEL,level:t.level,id:t.id,responseType:"text"})},l.onAudioTrackLoading=function(t){this.load({url:t.url,type:s.AUDIO_TRACK,level:null,id:t.id,responseType:"text"})},l.onSubtitleTrackLoading=function(t){this.load({url:t.url,type:s.SUBTITLE_TRACK,level:null,id:t.id,responseType:"text"})},l.load=function(t){var i=this.hls.config;c.b.debug("Loading playlist of type "+t.type+", level: "+t.level+", id: "+t.id);var e,n,r,h,o=this.getInternalLoader(t);if(o){var a=o.context;if(a&&a.url===t.url)return c.b.trace("playlist request ongoing"),!1;c.b.warn("aborting previous loader for type: "+t.type),o.abort()}switch(t.type){case s.MANIFEST:e=i.manifestLoadingMaxRetry,n=i.manifestLoadingTimeOut,r=i.manifestLoadingRetryDelay,h=i.manifestLoadingMaxRetryTimeout;break;case s.LEVEL:e=0,h=0,r=0,n=i.levelLoadingTimeOut;break;default:e=i.levelLoadingMaxRetry,n=i.levelLoadingTimeOut,r=i.levelLoadingRetryDelay,h=i.levelLoadingMaxRetryTimeout}o=this.createInternalLoader(t);var l={timeout:n,maxRetry:e,retryDelay:r,maxRetryDelay:h},u={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};return c.b.debug("Calling internal loader delegate for URL: "+t.url),o.load(t,l,u),!0},l.loadsuccess=function(t,i,e,s){if(void 0===s&&(s=null),e.isSidxRequest)return this.Da(t,e),void this.ja(t,i,e,s);if(this.resetInternalLoader(e.type),"string"!=typeof t.data)throw new Error('expected responseType of "text" for PlaylistLoader');var n=t.data;i.tload=O.now(),0===n.indexOf("#EXTM3U")?n.indexOf("#EXTINF:")>0||n.indexOf("#EXT-X-TARGETDURATION:")>0?this.Fa(t,i,e,s):this.$a(t,i,e,s):this.Va(t,e,"no EXTM3U delimiter",s)},l.loaderror=function(t,i,e){void 0===e&&(e=null),this.Ua(i,e,!1,t)},l.loadtimeout=function(t,i,e){void 0===e&&(e=null),this.Ua(i,e,!0)},l.$a=function(t,i,e,s){var n=this.hls,h=t.data,o=r.getResponseUrl(t,e),l=M.parseMasterPlaylist(h,o);if(l.length){var u=l.map((function(t){return{id:t.attrs.AUDIO,codec:t.audioCodec}})),d=M.parseMasterPlaylistMedia(h,o,"AUDIO",u),p=M.parseMasterPlaylistMedia(h,o,"SUBTITLES");if(d.length){var f=!1;d.forEach((function(t){t.url||(f=!0)})),!1===f&&l[0].audioCodec&&!l[0].attrs.AUDIO&&(c.b.log("audio codec signaled in quality level, but no embedded audio track signaled, create one"),d.unshift({type:"main",name:"main",default:!1,autoselect:!1,forced:!1,id:-1}))}n.trigger(a.a.MANIFEST_LOADED,{levels:l,audioTracks:d,subtitles:p,url:o,stats:i,networkDetails:s})}else this.Va(t,e,"no level found in manifest",s)},l.Fa=function(t,i,e,n){var h=this.hls,c=e.id,l=e.level,u=e.type,d=r.getResponseUrl(t,e),p=Object(o.a)(c)?c:0,f=Object(o.a)(l)?l:p,v=r.mapContextToLevelType(e),g=M.parseLevelPlaylist(t.data,d,f,v,p);if(g.tload=i.tload,u===s.MANIFEST){var m={url:d,details:g};h.trigger(a.a.MANIFEST_LOADED,{levels:[m],audioTracks:[],url:d,stats:i,networkDetails:n})}if(i.tparsed=O.now(),g.needSidxRanges){var y=g.initSegment.url;this.load({url:y,isSidxRequest:!0,type:u,level:l,levelDetails:g,id:c,rangeStart:0,rangeEnd:2048,responseType:"arraybuffer"})}else e.levelDetails=g,this.ja(t,i,e,n)},l.Da=function(t,i){if("string"==typeof t.data)throw new Error("sidx request must be made with responseType of array buffer");var e=d.a.parseSegmentIndex(new Uint8Array(t.data));if(e){var s=e.references,n=i.levelDetails;s.forEach((function(t,i){var e=t.info;if(n){var s=n.fragments[i];0===s.byteRange.length&&s.setByteRange(String(1+e.end-e.start)+"@"+String(e.start))}})),n&&n.initSegment.setByteRange(String(e.moovEndOffset)+"@0")}},l.Va=function(t,i,e,s){this.hls.trigger(a.a.ERROR,{type:h.b.NETWORK_ERROR,details:h.a.MANIFEST_PARSING_ERROR,fatal:!0,url:t.url,reason:e,networkDetails:s})},l.Ua=function(t,i,e,n){var r,o;void 0===e&&(e=!1),void 0===n&&(n=null),c.b.info("A network error occured while loading a "+t.type+"-type playlist");var l=this.getInternalLoader(t);switch(t.type){case s.MANIFEST:r=e?h.a.MANIFEST_LOAD_TIMEOUT:h.a.MANIFEST_LOAD_ERROR,o=!0;break;case s.LEVEL:r=e?h.a.LEVEL_LOAD_TIMEOUT:h.a.LEVEL_LOAD_ERROR,o=!1;break;case s.AUDIO_TRACK:r=e?h.a.AUDIO_TRACK_LOAD_TIMEOUT:h.a.AUDIO_TRACK_LOAD_ERROR,o=!1;break;default:o=!1}l&&(l.abort(),this.resetInternalLoader(t.type));var u={type:h.b.NETWORK_ERROR,details:r,fatal:o,url:t.url,loader:l,context:t,networkDetails:i};n&&(u.response=n),this.hls.trigger(a.a.ERROR,u)},l.ja=function(t,i,e,n){var h=e.type,o=e.level,c=e.id,l=e.levelDetails;if(l&&l.targetduration)if(r.canHaveQualityLevels(e.type))this.hls.trigger(a.a.LEVEL_LOADED,{details:l,level:o||0,id:c||0,stats:i,networkDetails:n});else switch(h){case s.AUDIO_TRACK:this.hls.trigger(a.a.AUDIO_TRACK_LOADED,{details:l,id:c,stats:i,networkDetails:n});break;case s.SUBTITLE_TRACK:this.hls.trigger(a.a.SUBTITLE_TRACK_LOADED,{details:l,id:c,stats:i,networkDetails:n})}else this.Va(t,e,"invalid target duration",n)},r}(u),B=function(t){var i,e;function s(i){var e;return(e=t.call(this,i,a.a.FRAG_LOADING)||this).loaders={},e}e=t,(i=s).prototype=Object.create(e.prototype),i.prototype.constructor=i,i.__proto__=e;var n=s.prototype;return n.destroy=function(){var i=this.loaders;for(var e in i){var s=i[e];s&&s.destroy()}this.loaders={},t.prototype.destroy.call(this)},n.onFragLoading=function(t){var i=t.frag,e=i.type,s=this.loaders,n=this.hls.config,r=n.fLoader,h=n.loader;i.loaded=0;var a,l,u,d=s[e];d&&(c.b.warn("abort previous fragment loader for type: "+e),d.abort()),d=s[e]=i.loader=n.fLoader?new r(n):new h(n),a={url:i.url,frag:i,responseType:"arraybuffer",progressData:!1};var p=i.byteRangeStartOffset,f=i.byteRangeEndOffset;Object(o.a)(p)&&Object(o.a)(f)&&(a.rangeStart=p,a.rangeEnd=f),l={timeout:n.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:n.fragLoadingMaxRetryTimeout},u={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this),onProgress:this.loadprogress.bind(this)},d.load(a,l,u)},n.loadsuccess=function(t,i,e,s){void 0===s&&(s=null);var n=t.data,r=e.frag;r.loader=void 0,this.loaders[r.type]=void 0,this.hls.trigger(a.a.FRAG_LOADED,{payload:n,frag:r,stats:i,networkDetails:s})},n.loaderror=function(t,i,e){void 0===e&&(e=null);var s=i.frag,n=s.loader;n&&n.abort(),this.loaders[s.type]=void 0,this.hls.trigger(a.a.ERROR,{type:h.b.NETWORK_ERROR,details:h.a.FRAG_LOAD_ERROR,fatal:!1,frag:i.frag,response:t,networkDetails:e})},n.loadtimeout=function(t,i,e){void 0===e&&(e=null);var s=i.frag,n=s.loader;n&&n.abort(),this.loaders[s.type]=void 0,this.hls.trigger(a.a.ERROR,{type:h.b.NETWORK_ERROR,details:h.a.FRAG_LOAD_TIMEOUT,fatal:!1,frag:i.frag,networkDetails:e})},n.loadprogress=function(t,i,e,s){void 0===s&&(s=null);var n=i.frag;n.loaded=t.loaded,this.hls.trigger(a.a.FRAG_LOAD_PROGRESS,{frag:n,stats:t,networkDetails:s})},s}(u),D=function(t){var i,e;function s(i){var e;return(e=t.call(this,i,a.a.KEY_LOADING)||this).loaders={},e.decryptkey=null,e.decrypturl=null,e}e=t,(i=s).prototype=Object.create(e.prototype),i.prototype.constructor=i,i.__proto__=e;var n=s.prototype;return n.destroy=function(){for(var i in this.loaders){var e=this.loaders[i];e&&e.destroy()}this.loaders={},t.prototype.destroy.call(this)},n.onKeyLoading=function(t){var i=t.frag,e=i.type,s=this.loaders[e];if(i.decryptdata){var n=i.decryptdata.uri;if(n!==this.decrypturl||null===this.decryptkey){var r=this.hls.config;if(s&&(c.b.warn("abort previous key loader for type:"+e),s.abort()),!n)return void c.b.warn("key uri is falsy");i.loader=this.loaders[e]=new r.loader(r),this.decrypturl=n,this.decryptkey=null;var h={url:n,frag:i,responseType:"arraybuffer"},o={timeout:r.fragLoadingTimeOut,maxRetry:0,retryDelay:r.fragLoadingRetryDelay,maxRetryDelay:r.fragLoadingMaxRetryTimeout},l={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};i.loader.load(h,o,l)}else this.decryptkey&&(i.decryptdata.key=this.decryptkey,this.hls.trigger(a.a.KEY_LOADED,{frag:i}))}else c.b.warn("Missing decryption data on fragment in onKeyLoading")},n.loadsuccess=function(t,i,e){var s=e.frag;s.decryptdata?(this.decryptkey=s.decryptdata.key=new Uint8Array(t.data),s.loader=void 0,delete this.loaders[s.type],this.hls.trigger(a.a.KEY_LOADED,{frag:s})):c.b.error("after key load, decryptdata unset")},n.loaderror=function(t,i){var e=i.frag,s=e.loader;s&&s.abort(),delete this.loaders[e.type],this.hls.trigger(a.a.ERROR,{type:h.b.NETWORK_ERROR,details:h.a.KEY_LOAD_ERROR,fatal:!1,frag:e,response:t})},n.loadtimeout=function(t,i){var e=i.frag,s=e.loader;s&&s.abort(),delete this.loaders[e.type],this.hls.trigger(a.a.ERROR,{type:h.b.NETWORK_ERROR,details:h.a.KEY_LOAD_TIMEOUT,fatal:!1,frag:e})},s}(u),j="NOT_LOADED",F="APPENDING",$="PARTIAL",V="OK",U=function(t){var i,e;function s(i){var e;return(e=t.call(this,i,a.a.BUFFER_APPENDED,a.a.FRAG_BUFFERED,a.a.FRAG_LOADED)||this).bufferPadding=.2,e.fragments=Object.create(null),e.timeRanges=Object.create(null),e.config=i.config,e}e=t,(i=s).prototype=Object.create(e.prototype),i.prototype.constructor=i,i.__proto__=e;var n=s.prototype;return n.destroy=function(){this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.config=null,u.prototype.destroy.call(this),t.prototype.destroy.call(this)},n.getBufferedFrag=function(t,i){var e=this.fragments,s=Object.keys(e).filter((function(s){var n=e[s];if(n.body.type!==i)return!1;if(!n.buffered)return!1;var r=n.body;return r.startPTS<=t&&t<=r.endPTS}));if(0===s.length)return null;var n=s.pop();return e[n].body},n.detectEvictedFragments=function(t,i){var e,s,n=this;Object.keys(this.fragments).forEach((function(r){var h=n.fragments[r];if(!0===h.buffered){var o=h.range[t];if(o){e=o.time;for(var a=0;a=s&&i<=n){r.push({startPTS:Math.max(t,e.start(o)),endPTS:Math.min(i,e.end(o))});break}if(ts)r.push({startPTS:Math.max(t,e.start(o)),endPTS:Math.min(i,e.end(o))}),h=!0;else if(i<=s)break}return{time:r,partial:h}},n.getFragmentKey=function(t){return t.type+"_"+t.level+"_"+t.urlId+"_"+t.sn},n.getPartialFragment=function(t){var i,e,s,n=this,r=null,h=0;return Object.keys(this.fragments).forEach((function(o){var a=n.fragments[o];n.isPartial(a)&&(e=a.body.startPTS-n.bufferPadding,s=a.body.endPTS+n.bufferPadding,t>=e&&t<=s&&(i=Math.min(t-e,s-t),h<=i&&(r=a.body,h=i)))})),r},n.getState=function(t){var i=this.getFragmentKey(t),e=this.fragments[i],s=j;return void 0!==e&&(s=e.buffered?!0===this.isPartial(e)?$:V:F),s},n.isPartial=function(t){return!0===t.buffered&&(void 0!==t.range.video&&!0===t.range.video.partial||void 0!==t.range.audio&&!0===t.range.audio.partial)},n.isTimeBuffered=function(t,i,e){for(var s,n,r=0;r=s&&i<=n)return!0;if(i<=s)return!1}return!1},n.onFragLoaded=function(t){var i=t.frag;Object(o.a)(i.sn)&&!i.bitrateTest&&(this.fragments[this.getFragmentKey(i)]={body:i,range:Object.create(null),buffered:!1})},n.onBufferAppended=function(t){var i=this;this.timeRanges=t.timeRanges,Object.keys(this.timeRanges).forEach((function(t){var e=i.timeRanges[t];i.detectEvictedFragments(t,e)}))},n.onFragBuffered=function(t){this.detectPartialFragments(t.frag)},n.hasFragment=function(t){var i=this.getFragmentKey(t);return void 0!==this.fragments[i]},n.removeFragment=function(t){var i=this.getFragmentKey(t);delete this.fragments[i]},n.removeAllFragments=function(){this.fragments=Object.create(null)},s}(u),N={search:function(t,i){for(var e=0,s=t.length-1,n=null,r=null;e<=s;){var h=i(r=t[n=(e+s)/2|0]);if(h>0)e=n+1;else{if(!(h<0))return r;s=n-1}}return null}},H=function(){function t(){}return t.isBuffered=function(t,i){try{if(t)for(var e=t.buffered,s=0;s=e.start(s)&&i<=e.end(s))return!0}catch(t){}return!1},t.bufferInfo=function(t,i,e){try{if(t){var s,n=t.buffered,r=[];for(s=0;sh&&(s[r-1].end=t[n].end):s.push(t[n])}else s.push(t[n])}else s=t;for(var o,a=0,c=i,l=i,u=0;u=d&&i1?i-1:0),s=1;si?(s.duration=r-s.start,s.duration<0&&c.b.warn("negative duration computed for frag "+s.sn+",level "+s.level+", there should be some duration drift between playlist and fragment!")):(n.duration=s.start-r,n.duration<0&&c.b.warn("negative duration computed for frag "+n.sn+",level "+n.level+", there should be some duration drift between playlist and fragment!")):n.start=e>i?s.start+s.duration:Math.max(s.start-n.duration,0)}function tt(t,i,e,s,n,r){var h=e;if(Object(o.a)(i.startPTS)){var a=Math.abs(i.startPTS-e);Object(o.a)(i.deltaPTS)?i.deltaPTS=Math.max(a,i.deltaPTS):i.deltaPTS=a,h=Math.max(e,i.startPTS),e=Math.min(e,i.startPTS),s=Math.max(s,i.endPTS),n=Math.min(n,i.startDTS),r=Math.max(r,i.endDTS)}var c=e-i.start;i.start=i.startPTS=e,i.maxStartPTS=h,i.endPTS=s,i.startDTS=n,i.endDTS=r,i.duration=s-e;var l,u,d,p=i.sn;if(!t||pt.endSN)return 0;for(l=p-t.startSN,(u=t.fragments)[l]=i,d=l;d>0;d--)Z(u,d,d-1);for(d=l;de.startCC||t&&t.cct&&e.start?-1:0}function ht(t,i,e){var s=1e3*Math.min(i,e.duration+(e.deltaPTS?e.deltaPTS:0));return(e.endProgramDateTime||0)-s>t}var ot=function(){function t(t,i,e,s){this.config=t,this.media=i,this.fragmentTracker=e,this.hls=s,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1}var i=t.prototype;return i.poll=function(t){var i=this.config,e=this.media,s=this.stalled,n=e.currentTime,r=e.seeking,h=this.seeking&&!r,o=!this.seeking&&r;if(this.seeking=r,n===t){if((o||h)&&(this.stalled=null),!e.paused&&!e.ended&&0!==e.playbackRate&&e.buffered.length){var a=H.bufferInfo(e,n,0),l=a.len>0,u=a.nextStart||0;if(l||u){if(r){if(a.len>2||!u||u-n>2)return;this.moved=!1}if(!this.moved&&this.stalled){var d=Math.max(u,a.start||0)-n;if(d>0&&d<=2)return void this.Na(null)}var p=self.performance.now();if(null!==s){var f=p-s;!r&&f>=250&&this.Ha(a.len);var v=H.bufferInfo(e,n,i.maxBufferHole);this.za(v,f)}else this.stalled=p}}}else if(this.moved=!0,null!==s){if(this.stallReported){var g=self.performance.now()-s;c.b.warn("playback not stuck anymore @"+n+", after "+Math.round(g)+"ms"),this.stallReported=!1}this.stalled=null,this.nudgeRetry=0}},i.za=function(t,i){var e=this.config,s=this.fragmentTracker,n=this.media.currentTime,r=s.getPartialFragment(n);r&&this.Na(r)||t.len>e.maxBufferHole&&i>1e3*e.highBufferWatchdogPeriod&&(c.b.warn("Trying to nudge playhead over buffer-hole"),this.stalled=null,this.qa())},i.Ha=function(t){var i=this.hls,e=this.media;this.stallReported||(this.stallReported=!0,c.b.warn("Playback stalling at @"+e.currentTime+" due to low buffer"),i.trigger(a.a.ERROR,{type:h.b.MEDIA_ERROR,details:h.a.BUFFER_STALLED_ERROR,fatal:!1,buffer:t}))},i.Na=function(t){for(var i=this.config,e=this.hls,s=this.media,n=s.currentTime,r=0,o=0;o=r&&n0&&-1===t&&(c.b.log("override startPosition with lastCurrentTime @"+i.toFixed(3)),t=i),this.state=lt,this.nextLoadPosition=this.startPosition=this.lastCurrentTime=t,this.tick()}else this.forceStartLoad=!0,this.state=ct},d.stopLoad=function(){this.forceStartLoad=!1,t.prototype.stopLoad.call(this)},d.doTick=function(){switch(this.state){case gt:this.fragLoadError=0;break;case lt:this.Ga();break;case bt:var t=this.levels[this.level];t&&t.details&&(this.state=lt);break;case pt:var i=window.performance.now(),e=this.retryDate;(!e||i>=e||this.media&&this.media.seeking)&&(c.b.log("mediaController: retryDate reached, switch back to IDLE state"),this.state=lt)}this.Ja(),this.Qa()},d.Ga=function(){var t=this.hls,i=t.config,e=this.media;if(void 0!==this.levelLastLoaded&&(e||!this.startFragRequested&&i.startFragPrefetch)){var s;s=this.loadedmetadata?e.currentTime:this.nextLoadPosition;var n=t.nextLoadLevel,r=this.levels[n];if(r){var h,o=r.bitrate;h=o?Math.max(8*i.maxBufferSize/o,i.maxBufferLength):i.maxBufferLength,h=Math.min(h,i.maxMaxBufferLength);var l=H.bufferInfo(this.mediaBuffer?this.mediaBuffer:e,s,i.maxBufferHole),u=l.len;if(!(u>=h)){c.b.trace("buffer length of "+u.toFixed(3)+" is below max of "+h.toFixed(3)+". checking for more payload ..."),this.level=t.nextLoadLevel=n;var d=r.details;if(!d||d.live&&this.levelLastLoaded!==n)this.state=bt;else{if(this.Xa(l,d)){var p={};return this.altAudio&&(p.type="video"),this.hls.trigger(a.a.BUFFER_EOS,p),void(this.state=mt)}this.Ya(s,l,d)}}}}},d.Ya=function(t,i,e){var s=this.fragPrevious,n=this.level,r=e.fragments,h=r.length;if(0!==h){var o,a=r[0].start,l=r[h-1].start+r[h-1].duration,u=i.end;if(e.initSegment&&!e.initSegment.data)o=e.initSegment;else if(e.live){var d=this.config.initialLiveManifestSize;if(hp&&p>u.currentTime&&(c.b.log("buffer end: "+i.toFixed(3)+" is located too far from the end of live sliding playlist, reset currentTime to : "+p.toFixed(3)),u.currentTime=p),this.nextLoadPosition=p}if(t.PTSKnown&&i>s&&u&&u.readyState)return null;if(this.startFragRequested&&!t.PTSKnown){if(n)if(t.hasProgramDateTime)c.b.log("live playlist, switching playlist, load frag with same PDT: "+n.programDateTime),a=function(t,i,e){if(null===i||!Array.isArray(t)||!t.length||!Object(o.a)(i))return null;if(i<(t[0].programDateTime||0))return null;if(i>=(t[t.length-1].endProgramDateTime||0))return null;e=e||0;for(var s=0;s=t.startSN&&f<=t.endSN){var v=r[f-t.startSN];n.cc===v.cc&&(a=v,c.b.log("live playlist, switching playlist, load frag with next SN: "+a.sn))}a||(a=N.search(r,(function(t){return n.cc-t.cc})))&&c.b.log("live playlist, switching playlist, load frag with same CC: "+a.sn)}a||(a=r[Math.min(h-1,Math.round(h/2))],c.b.log("live playlist, switching playlist, unknown, load middle frag : "+a.sn))}return a},d.Za=function(t,i,e,s,n,r,h){var o,a=this.hls.config;if(o=nr-a.maxFragLookUpTolerance?0:a.maxFragLookUpTolerance):s[e-1],o){var l=o.sn-h.startSN,u=i&&o.level===i.level,d=s[l-1],p=s[l+1];if(i&&o.sn===i.sn)if(u&&!o.backtracked)if(o.sna.maxBufferHole&&i.dropped&&l?(o=d,c.b.warn("Previous fragment was dropped with large PTS gap between audio and video. Maybe fragment is not starting with a keyframe? Loading previous one to try to overcome this")):(o=p,c.b.log("Re-loading fragment with SN: "+o.sn))}else o=null;else o.backtracked&&(p&&p.backtracked?(c.b.warn("Already backtracked from fragment "+p.sn+", will not backtrack to fragment "+o.sn+". Loading fragment "+p.sn),o=p):(c.b.warn("Loaded fragment with dropped frames, backtracking 1 segment to find a keyframe"),o.dropped=0,d?(o=d).backtracked=!0:l&&(o=null)))}return o},d.tc=function(t){this.state=ut,this.hls.trigger(a.a.KEY_LOADING,{frag:t})},d.ic=function(t){var i=this.fragmentTracker.getState(t);this.fragCurrent=t,"initSegment"!==t.sn&&(this.startFragRequested=!0),Object(o.a)(t.sn)&&!t.bitrateTest&&(this.nextLoadPosition=t.start+t.duration),t.backtracked||i===j||i===$?(t.autoLevel=this.hls.autoLevelEnabled,t.bitrateTest=this.bitrateTest,this.hls.trigger(a.a.FRAG_LOADING,{frag:t}),this.demuxer||(this.demuxer=new Y(this.hls,"main")),this.state=dt):i===F&&this.ec(t.duration)&&this.fragmentTracker.removeFragment(t)},d.getBufferedFrag=function(t){return this.fragmentTracker.getBufferedFrag(t,n.MAIN)},d.followingBufferedFrag=function(t){return t?this.getBufferedFrag(t.endPTS+.5):null},d.Qa=function(){var t,i,e=this.media;if(e&&e.readyState&&!1===e.seeking&&((i=e.currentTime)>this.lastCurrentTime&&(this.lastCurrentTime=i),H.isBuffered(e,i)?t=this.getBufferedFrag(i):H.isBuffered(e,i+.1)&&(t=this.getBufferedFrag(i+.1)),t)){var s=t;if(s!==this.fragPlaying){this.hls.trigger(a.a.FRAG_CHANGED,{frag:s});var n=s.level;this.fragPlaying&&this.fragPlaying.level===n||this.hls.trigger(a.a.LEVEL_SWITCHED,{level:n}),this.fragPlaying=s}}},d.immediateLevelSwitch=function(){if(c.b.log("immediateLevelSwitch"),!this.immediateSwitch){this.immediateSwitch=!0;var t,i=this.media;i?(t=i.paused,i.pause()):t=!0,this.previouslyPaused=t}var e=this.fragCurrent;e&&e.loader&&e.loader.abort(),this.fragCurrent=null,this.flushMainBuffer(0,Number.POSITIVE_INFINITY)},d.immediateLevelSwitchEnd=function(){var t=this.media;t&&t.buffered.length&&(this.immediateSwitch=!1,H.isBuffered(t,t.currentTime)&&(t.currentTime-=1e-4),this.previouslyPaused||t.play())},d.nextLevelSwitch=function(){var t=this.media;if(t&&t.readyState){var i,e,s;if((e=this.getBufferedFrag(t.currentTime))&&e.startPTS>1&&this.flushMainBuffer(0,e.startPTS-1),t.paused)i=0;else{var n=this.hls.nextLoadLevel,r=this.levels[n],h=this.fragLastKbps;i=h&&this.fragCurrent?this.fragCurrent.duration*r.bitrate/(1e3*h)+1:0}if((s=this.getBufferedFrag(t.currentTime+i))&&(s=this.followingBufferedFrag(s))){var o=this.fragCurrent;o&&o.loader&&o.loader.abort(),this.fragCurrent=null,this.flushMainBuffer(s.maxStartPTS,Number.POSITIVE_INFINITY)}}},d.flushMainBuffer=function(t,i){this.state=gt;var e={startOffset:t,endOffset:i};this.altAudio&&(e.type="video"),this.hls.trigger(a.a.BUFFER_FLUSHING,e)},d.onMediaAttached=function(t){var i=this.media=this.mediaBuffer=t.media;this.onvseeking=this.onMediaSeeking.bind(this),this.onvseeked=this.onMediaSeeked.bind(this),this.onvended=this.onMediaEnded.bind(this),i.addEventListener("seeking",this.onvseeking),i.addEventListener("seeked",this.onvseeked),i.addEventListener("ended",this.onvended);var e=this.config;this.levels&&e.autoStartLoad&&this.hls.startLoad(e.startPosition),this.gapController=new ot(e,i,this.fragmentTracker,this.hls)},d.onMediaDetaching=function(){var t=this.media;t&&t.ended&&(c.b.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0);var i=this.levels;i&&i.forEach((function(t){t.details&&t.details.fragments.forEach((function(t){t.backtracked=void 0}))})),t&&(t.removeEventListener("seeking",this.onvseeking),t.removeEventListener("seeked",this.onvseeked),t.removeEventListener("ended",this.onvended),this.onvseeking=this.onvseeked=this.onvended=null),this.fragmentTracker.removeAllFragments(),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.stopLoad()},d.onMediaSeeked=function(){var t=this.media,i=t?t.currentTime:void 0;Object(o.a)(i)&&c.b.log("media seeked to "+i.toFixed(3)),this.tick()},d.onManifestLoading=function(){c.b.log("trigger BUFFER_RESET"),this.hls.trigger(a.a.BUFFER_RESET),this.fragmentTracker.removeAllFragments(),this.stalled=!1,this.startPosition=this.lastCurrentTime=0},d.onManifestParsed=function(t){var i,e=!1,s=!1;t.levels.forEach((function(t){(i=t.audioCodec)&&(-1!==i.indexOf("mp4a.40.2")&&(e=!0),-1!==i.indexOf("mp4a.40.5")&&(s=!0))})),this.audioCodecSwitch=e&&s,this.audioCodecSwitch&&c.b.log("both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.altAudio=t.altAudio,this.levels=t.levels,this.startFragRequested=!1;var n=this.config;(n.autoStartLoad||this.forceStartLoad)&&this.hls.startLoad(n.startPosition)},d.onLevelLoaded=function(t){var i=t.details,e=t.level,s=this.levels[this.levelLastLoaded],n=this.levels[e],r=i.totalduration,h=0;if(c.b.log("level "+e+" loaded ["+i.startSN+","+i.endSN+"],duration:"+r),i.live){var l=n.details;l&&i.fragments.length>0?(function(t,i){i.initSegment&&t.initSegment&&(i.initSegment=t.initSegment);var e,s=0;if(it(t,i,(function(t,n){s=t.cc-n.cc,Object(o.a)(t.startPTS)&&(n.start=n.startPTS=t.startPTS,n.endPTS=t.endPTS,n.duration=t.duration,n.backtracked=t.backtracked,n.dropped=t.dropped,e=n),i.PTSKnown=!0})),i.PTSKnown){if(s){c.b.log("discontinuity sliding from playlist, take drift into account");for(var n=i.fragments,r=0;rs.length))for(var r=0;r0,this.nc())}},d.nc=function(){if(!(this.state!==vt||this.appended&&this.pendingBuffering)){var t=this.fragCurrent;if(t){var i=this.mediaBuffer?this.mediaBuffer:this.media;c.b.log("main buffered : "+et.toString(i.buffered)),this.fragPrevious=t;var e=this.stats;e.tbuffered=window.performance.now(),this.fragLastKbps=Math.round(8*e.total/(e.tbuffered-e.tfirst)),this.hls.trigger(a.a.FRAG_BUFFERED,{stats:e,frag:t,id:"main"}),this.state=lt}this.tick()}},d.onError=function(t){var i=t.frag||this.fragCurrent;if(!i||"main"===i.type){var e=!!this.media&&H.isBuffered(this.media,this.media.currentTime)&&H.isBuffered(this.media,this.media.currentTime+.5);switch(t.details){case h.a.FRAG_LOAD_ERROR:case h.a.FRAG_LOAD_TIMEOUT:case h.a.KEY_LOAD_ERROR:case h.a.KEY_LOAD_TIMEOUT:if(!t.fatal)if(this.fragLoadError+1<=this.config.fragLoadingMaxRetry){var s=Math.min(Math.pow(2,this.fragLoadError)*this.config.fragLoadingRetryDelay,this.config.fragLoadingMaxRetryTimeout);c.b.warn("mediaController: frag loading failed, retry in "+s+" ms"),this.retryDate=window.performance.now()+s,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.fragLoadError++,this.state=pt}else c.b.error("mediaController: "+t.details+" reaches max retry, redispatch as fatal ..."),t.fatal=!0,this.state=yt;break;case h.a.LEVEL_LOAD_ERROR:case h.a.LEVEL_LOAD_TIMEOUT:this.state!==yt&&(t.fatal?(this.state=yt,c.b.warn("streamController: "+t.details+",switch to "+this.state+" state ...")):t.levelRetry||this.state!==bt||(this.state=lt));break;case h.a.BUFFER_FULL_ERROR:"main"!==t.parent||this.state!==ft&&this.state!==vt||(e?(this.ec(this.config.maxBufferLength),this.state=lt):(c.b.warn("buffer full error also media.currentTime is not buffered, flush everything"),this.fragCurrent=null,this.flushMainBuffer(0,Number.POSITIVE_INFINITY)))}}},d.ec=function(t){var i=this.config;return i.maxMaxBufferLength>=t&&(i.maxMaxBufferLength/=2,c.b.warn("main:reduce max buffer length to "+i.maxMaxBufferLength+"s"),!0)},d.Ja=function(){var t=this.media;if(t&&0!==t.readyState){var i=(this.mediaBuffer?this.mediaBuffer:t).buffered;!this.loadedmetadata&&i.length?(this.loadedmetadata=!0,this.rc()):this.immediateSwitch?this.immediateLevelSwitchEnd():this.gapController.poll(this.lastCurrentTime,i)}},d.onFragLoadEmergencyAborted=function(){this.state=lt,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.tick()},d.onBufferFlushed=function(){var t=this.mediaBuffer?this.mediaBuffer:this.media;t&&this.fragmentTracker.detectEvictedFragments(f.VIDEO,t.buffered),this.state=lt,this.fragPrevious=null},d.swapAudioCodec=function(){this.audioCodecSwap=!this.audioCodecSwap},d.rc=function(){var t=this.media,i=t.currentTime,e=t.seeking?i:this.startPosition;i!==e&&e>=0&&(c.b.log("target start position not buffered, seek to buffered.start(0) "+e+" from current time "+i+" "),t.currentTime=e)},d.sc=function(t){var i=this.config.defaultAudioCodec||t.audioCodec;return this.audioCodecSwap&&(c.b.log("swapping playlist audio codec"),i&&(i=-1!==i.indexOf("mp4a.40.5")?"mp4a.40.2":"mp4a.40.5")),i},r=s,(l=[{key:"state",set:function(t){if(this.state!==t){var i=this.state;this.Wa=t,c.b.log("main stream-controller: "+i+"->"+t),this.hls.trigger(a.a.STREAM_STATE_TRANSITION,{previousState:i,nextState:t})}},get:function(){return this.Wa}},{key:"currentLevel",get:function(){var t=this.media;if(t){var i=this.getBufferedFrag(t.currentTime);if(i)return i.level}return-1}},{key:"nextBufferedFrag",get:function(){var t=this.media;return t?this.followingBufferedFrag(this.getBufferedFrag(t.currentTime)):null}},{key:"nextLevel",get:function(){var t=this.nextBufferedFrag;return t?t.level:-1}},{key:"liveSyncPosition",get:function(){return this.hc},set:function(t){this.hc=t}}])&&wt(r.prototype,l),u&&wt(r,u),s}(function(t){var i,e;function s(){return t.apply(this,arguments)||this}e=t,(i=s).prototype=Object.create(e.prototype),i.prototype.constructor=i,i.__proto__=e;var n=s.prototype;return n.doTick=function(){},n.startLoad=function(){},n.stopLoad=function(){var t=this.fragCurrent;t&&(t.loader&&t.loader.abort(),this.fragmentTracker.removeFragment(t)),this.demuxer&&(this.demuxer.destroy(),this.demuxer=null),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=ct},n.Xa=function(t,i){var e=this.fragCurrent,s=this.fragmentTracker;if(!i.live&&e&&!e.backtracked&&e.sn===i.endSN&&!t.nextStart){var n=s.getState(e);return n===$||n===V}return!1},n.onMediaSeeking=function(){var t=this.config,i=this.media,e=this.mediaBuffer,s=this.state,n=i?i.currentTime:null,r=H.bufferInfo(e||i,n,this.config.maxBufferHole);if(Object(o.a)(n)&&c.b.log("media seeking to "+n.toFixed(3)),s===dt){var h=this.fragCurrent;if(0===r.len&&h){var a=t.maxFragLookUpTolerance,l=h.start-a,u=h.start+h.duration+a;nu?(h.loader&&(c.b.log("seeking outside of buffer while fragment load in progress, cancel fragment load"),h.loader.abort()),this.fragCurrent=null,this.fragPrevious=null,this.state=lt):c.b.log("seeking outside of buffer but within currently loaded fragment range")}}else s===mt&&(0===r.len&&(this.fragPrevious=null,this.fragCurrent=null),this.state=lt);i&&(this.lastCurrentTime=n),this.loadedmetadata||(this.nextLoadPosition=this.startPosition=n),this.tick()},n.onMediaEnded=function(){this.startPosition=this.lastCurrentTime=0},n.onHandlerDestroying=function(){this.stopLoad(),t.prototype.onHandlerDestroying.call(this)},n.onHandlerDestroyed=function(){this.state=ct,this.fragmentTracker=null},n.computeLivePosition=function(t,i){var e=void 0!==this.config.liveSyncDuration?this.config.liveSyncDuration:this.config.liveSyncDurationCount*i.targetduration;return t+Math.max(0,i.totalduration-e)},s}(function(t){var i,e;function s(i){for(var e,s=arguments.length,n=new Array(s>1?s-1:0),r=1;r1&&(this.clearNextTick(),this.ac=self.setTimeout(this.oc,0)),this.dc=0)},n.doTick=function(){},s}(u)));function St(t,i){for(var e=0;e0){i=e[0].bitrate,e.sort((function(t,i){return t.bitrate-i.bitrate})),this.fc=e;for(var u=0;u=0&&t1&&u.loadError0){var i=this.currentLevelIndex,e=t.urlId,s=t.url[e];c.b.log("Attempt loading level index "+i+" with URL-id "+e),this.hls.trigger(a.a.LEVEL_LOADING,{url:s,level:i,id:e})}}},n=s,(r=[{key:"levels",get:function(){return this.fc}},{key:"level",get:function(){return this.currentLevelIndex},set:function(t){var i=this.fc;i&&(t=Math.min(t,i.length-1),this.currentLevelIndex===t&&i[t].details||this.setLevelInternal(t))}},{key:"manualLevel",get:function(){return this.manualLevelIndex},set:function(t){this.manualLevelIndex=t,void 0===this.gc&&(this.gc=t),-1!==t&&(this.level=t)}},{key:"firstLevel",get:function(){return this.vc},set:function(t){this.vc=t}},{key:"startLevel",get:function(){if(void 0===this.gc){var t=this.hls.config.startLevel;return void 0!==t?t:this.vc}return this.gc},set:function(t){this.gc=t}},{key:"nextLoadLevel",get:function(){return-1!==this.manualLevelIndex?this.manualLevelIndex:this.hls.nextAutoLevel},set:function(t){this.level=t,-1===this.manualLevelIndex&&(this.hls.nextAutoLevel=t)}}])&&St(n.prototype,r),o&&St(n,o),s}(u),Pt=e(4);function kt(t,i){var e;try{e=new Event("addtrack")}catch(t){(e=document.createEvent("Event")).initEvent("addtrack",!1,!1)}e.track=t,i.dispatchEvent(e)}var It=function(t){var i,e;function s(i){var e;return(e=t.call(this,i,a.a.MEDIA_ATTACHED,a.a.MEDIA_DETACHING,a.a.FRAG_PARSING_METADATA,a.a.LIVE_BACK_BUFFER_REACHED)||this).id3Track=void 0,e.media=void 0,e}e=t,(i=s).prototype=Object.create(e.prototype),i.prototype.constructor=i,i.__proto__=e;var n=s.prototype;return n.destroy=function(){u.prototype.destroy.call(this)},n.onMediaAttached=function(t){this.media=t.media,this.media},n.onMediaDetaching=function(){!function(t){if(t&&t.cues)for(;t.cues.length>0;)t.removeCue(t.cues[0])}(this.id3Track),this.id3Track=void 0,this.media=void 0},n.getID3Track=function(t){for(var i=0;io&&(c.b.warn("detected an id3 sample with endTime < startTime, adjusting endTime to (startTime + 0.25)"),o=h+.25);for(var a=0;at[t.length-1].endTime)return t[t.length-1];for(var e=0,s=t.length-1;e<=s;){var n=Math.floor((s+e)/2);if(it[n].endTime))return t[n];e=n+1}}return t[e].endTime-i=this.minWeight_},i.getEstimate=function(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_},i.destroy=function(){},t}();function Mt(t,i){for(var e=0;e500*e.duration/o){var l=t.levels,u=Math.max(1,r.bw?r.bw/8:1e3*r.loaded/h),d=l[e.level],p=d.realBitrate?Math.max(d.realBitrate,d.bitrate):d.bitrate,f=r.total?r.total:Math.max(r.loaded,Math.round(e.duration*p/8)),v=i.currentTime,g=(f-r.loaded)/u,m=(H.bufferInfo(i,v,t.config.maxBufferHole).end-v)/o;if(m<2*e.duration/o&&g>m){var y;for(y=e.level-1;y>n;y--){var b=l[y].realBitrate?Math.max(l[y].realBitrate,l[y].bitrate):l[y].bitrate;if(e.duration*b/(6.4*u)=s;l--){var u=a[l];if(u){var d=u.details,p=d?d.totalduration/d.fragments.length:i,f=!!d&&d.live,v=void 0;v=l<=t?h*e:o*e;var g=a[l].realBitrate?Math.max(a[l].realBitrate,a[l].bitrate):a[l].bitrate,m=g*p/v;if(c.b.trace("level/adjustedbw/bitrate/avgDuration/maxFetchDuration/fetchDuration: "+l+"/"+Math.round(v)+"/"+g+"/"+p+"/"+r+"/"+m),v>g&&(!m||f&&!this.bitrateTestDelay||m=0)return p;c.b.trace("rebuffering expected to happen, lets try to find a quality level minimizing the rebuffering");var f=o?Math.min(o,s.maxStarvationDelay):s.maxStarvationDelay,v=s.abrBandWidthFactor,g=s.abrBandWidthUpFactor;if(0===d){var m=this.bitrateTestDelay;m&&(f=(o?Math.min(o,s.maxLoadingDelay):s.maxLoadingDelay)-m,c.b.trace("bitrate test took "+Math.round(1e3*m)+"ms, set first fragment max fetchDuration to "+Math.round(1e3*f)+" ms"),v=g=1)}return p=this.bc(h,o,u,n,i,d+f,v,g,e),Math.max(p,0)}}])&&Mt(n.prototype,r),l&&Mt(n,l),s}(u),Ot=G(),Rt=function(t){var i,e;function s(i){var e;return(e=t.call(this,i,a.a.MEDIA_ATTACHING,a.a.MEDIA_DETACHING,a.a.MANIFEST_PARSED,a.a.BUFFER_RESET,a.a.BUFFER_APPENDING,a.a.BUFFER_CODECS,a.a.BUFFER_EOS,a.a.BUFFER_FLUSHING,a.a.LEVEL_PTS_UPDATED,a.a.LEVEL_UPDATED)||this).wc=null,e.xc=null,e.Sc=10,e._c=null,e.Ac=null,e.Pc=!1,e.kc=!1,e.config=void 0,e.audioTimestampOffset=void 0,e.bufferCodecEventsExpected=0,e.Ic=0,e.media=null,e.mediaSource=null,e.segments=[],e.parent=void 0,e.appending=!1,e.appended=0,e.appendError=0,e.flushBufferCounter=0,e.tracks={},e.pendingTracks={},e.sourceBuffer={},e.flushRange=[],e.Cc=function(){c.b.log("media source opened"),e.hls.trigger(a.a.MEDIA_ATTACHED,{media:e.media});var t=e.mediaSource;t&&t.removeEventListener("sourceopen",e.Cc),e.checkPendingTracks()},e.Mc=function(){c.b.log("media source closed")},e.Ec=function(){c.b.log("media source ended")},e.Oc=function(){if(e.audioTimestampOffset&&e.sourceBuffer.audio){var t=e.sourceBuffer.audio;c.b.warn("change mpeg audio timestamp offset from "+t.timestampOffset+" to "+e.audioTimestampOffset),t.timestampOffset=e.audioTimestampOffset,delete e.audioTimestampOffset}e.Pc&&e.doFlush(),e.kc&&e.checkEos(),e.appending=!1;var i=e.parent,s=e.segments.reduce((function(t,e){return e.parent===i?t+1:t}),0),n={},r=e.sourceBuffer;for(var h in r){var o=r[h];if(!o)throw Error("handling source buffer update end error: source buffer for "+h+" uninitilized and unable to update buffered TimeRanges.");n[h]=o.buffered}e.hls.trigger(a.a.BUFFER_APPENDED,{parent:i,pending:s,timeRanges:n}),e.Pc||e.doAppending(),e.updateMediaElementDuration(),0===s&&e.flushLiveBackBuffer()},e.Rc=function(t){c.b.error("sourceBuffer error:",t),e.hls.trigger(a.a.ERROR,{type:h.b.MEDIA_ERROR,details:h.a.BUFFER_APPENDING_ERROR,fatal:!1})},e.config=i.config,e}e=t,(i=s).prototype=Object.create(e.prototype),i.prototype.constructor=i,i.__proto__=e;var n=s.prototype;return n.destroy=function(){u.prototype.destroy.call(this)},n.onLevelPtsUpdated=function(t){var i=t.type,e=this.tracks.audio;if("audio"===i&&e&&"audio/mpeg"===e.container){var s=this.sourceBuffer.audio;if(!s)throw Error("Level PTS Updated and source buffer for audio uninitalized");if(Math.abs(s.timestampOffset-t.start)>.1){var n=s.updating;try{s.abort()}catch(t){c.b.warn("can not abort audio buffer: "+t)}n?this.audioTimestampOffset=t.start:(c.b.warn("change mpeg audio timestamp offset from "+s.timestampOffset+" to "+t.start),s.timestampOffset=t.start)}}},n.onManifestParsed=function(t){this.bufferCodecEventsExpected=this.Ic=t.altAudio?2:1,c.b.log(this.bufferCodecEventsExpected+" bufferCodec event(s) expected")},n.onMediaAttaching=function(t){var i=this.media=t.media;if(i&&Ot){var e=this.mediaSource=new Ot;e.addEventListener("sourceopen",this.Cc),e.addEventListener("sourceended",this.Ec),e.addEventListener("sourceclose",this.Mc),i.src=window.URL.createObjectURL(e),this.Ac=i.src}},n.onMediaDetaching=function(){c.b.log("media source detaching");var t=this.mediaSource;if(t){if("open"===t.readyState)try{t.endOfStream()}catch(t){c.b.warn("onMediaDetaching:"+t.message+" while calling endOfStream")}t.removeEventListener("sourceopen",this.Cc),t.removeEventListener("sourceended",this.Ec),t.removeEventListener("sourceclose",this.Mc),this.media&&(this.Ac&&this.hls.config.cnxRenderWindow.URL.revokeObjectURL(this.Ac),this.media.src===this.Ac?(this.media.removeAttribute("src"),this.media.load()):c.b.warn("media.src was changed by a third party - skip cleanup")),this.mediaSource=null,this.media=null,this.Ac=null,this.bufferCodecEventsExpected=this.Ic,this.pendingTracks={},this.tracks={},this.sourceBuffer={},this.flushRange=[],this.segments=[],this.appended=0}this.hls.trigger(a.a.MEDIA_DETACHED)},n.checkPendingTracks=function(){var t=this.bufferCodecEventsExpected,i=this.pendingTracks,e=Object.keys(i).length;(e&&!t||2===e)&&(this.createSourceBuffers(i),this.pendingTracks={},this.doAppending())},n.onBufferReset=function(){var t=this.sourceBuffer;for(var i in t){var e=t[i];try{e&&(this.mediaSource&&this.mediaSource.removeSourceBuffer(e),e.removeEventListener("updateend",this.Oc),e.removeEventListener("error",this.Rc))}catch(t){}}this.sourceBuffer={},this.flushRange=[],this.segments=[],this.appended=0},n.onBufferCodecs=function(t){var i=this;Object.keys(this.sourceBuffer).length||(Object.keys(t).forEach((function(e){i.pendingTracks[e]=t[e]})),this.bufferCodecEventsExpected=Math.max(this.bufferCodecEventsExpected-1,0),this.mediaSource&&"open"===this.mediaSource.readyState&&this.checkPendingTracks())},n.createSourceBuffers=function(t){var i=this.sourceBuffer,e=this.mediaSource;if(!e)throw Error("createSourceBuffers called when mediaSource was null");for(var s in t)if(!i[s]){var n=t[s];if(!n)throw Error("source buffer exists for track "+s+", however track does not");var r=n.levelCodec||n.codec,o=n.container+";codecs="+r;c.b.log("creating sourceBuffer("+o+")");try{var l=i[s]=e.addSourceBuffer(o);l.addEventListener("updateend",this.Oc),l.addEventListener("error",this.Rc),this.tracks[s]={buffer:l,codec:r,id:n.id,container:n.container,levelCodec:n.levelCodec}}catch(t){c.b.error("error while trying to add sourceBuffer:"+t.message),this.hls.trigger(a.a.ERROR,{type:h.b.MEDIA_ERROR,details:h.a.BUFFER_ADD_CODEC_ERROR,fatal:!1,err:t,mimeType:o})}}this.hls.trigger(a.a.BUFFER_CREATED,{tracks:this.tracks})},n.onBufferAppending=function(t){this.Pc||(this.segments?this.segments.push(t):this.segments=[t],this.doAppending())},n.onBufferEos=function(t){for(var i in this.sourceBuffer)if(!t.type||t.type===i){var e=this.sourceBuffer[i];e&&!e.ended&&(e.ended=!0,c.b.log(i+" sourceBuffer now EOS"))}this.checkEos()},n.checkEos=function(){var t=this.sourceBuffer,i=this.mediaSource;if(i&&"open"===i.readyState){for(var e in t){var s=t[e];if(s){if(!s.ended)return;if(s.updating)return void(this.kc=!0)}}c.b.log("all media data are available, signal endOfStream() to MediaSource and stop loading fragment");try{i.endOfStream()}catch(t){c.b.warn("exception while calling mediaSource.endOfStream()")}this.kc=!1}else this.kc=!1},n.onBufferFlushing=function(t){t.type?this.flushRange.push({start:t.startOffset,end:t.endOffset,type:t.type}):(this.flushRange.push({start:t.startOffset,end:t.endOffset,type:"video"}),this.flushRange.push({start:t.startOffset,end:t.endOffset,type:"audio"})),this.flushBufferCounter=0,this.doFlush()},n.flushLiveBackBuffer=function(){if(this._c){var t=this.config.liveBackBufferLength;if(isFinite(t)&&!(t<0))if(this.media)for(var i=this.media.currentTime,e=this.sourceBuffer,s=Object.keys(e),n=i-Math.max(t,this.Sc),r=s.length-1;r>=0;r--){var h=s[r],o=e[h];if(o){var l=o.buffered;l.length>0&&n>l.start(0)&&this.removeBufferRange(h,o,0,n)&&this.hls.trigger(a.a.LIVE_BACK_BUFFER_REACHED,{bufferEnd:n})}}else c.b.error("flushLiveBackBuffer called without attaching media")}},n.onLevelUpdated=function(t){var i=t.details;i.fragments.length>0&&(this.xc=i.totalduration+i.fragments[0].start,this.Sc=i.averagetargetduration||i.targetduration||10,this._c=i.live,this.updateMediaElementDuration())},n.updateMediaElementDuration=function(){var t,i=this.config;if(null!==this.xc&&this.media&&this.mediaSource&&this.sourceBuffer&&0!==this.media.readyState&&"open"===this.mediaSource.readyState){for(var e in this.sourceBuffer){var s=this.sourceBuffer[e];if(s&&!0===s.updating)return}t=this.media.duration,null===this.wc&&(this.wc=this.mediaSource.duration),!0===this._c&&!0===i.liveDurationInfinity?(c.b.log("Media Source duration is set to Infinity"),this.wc=this.mediaSource.duration=1/0):(this.xc>this.wc&&this.xc>t||!Object(o.a)(t))&&(c.b.log("Updating Media Source duration to "+this.xc.toFixed(3)),this.wc=this.mediaSource.duration=this.xc)}},n.doFlush=function(){for(;this.flushRange.length;){var t=this.flushRange[0];if(!this.flushBuffer(t.start,t.end,t.type))return void(this.Pc=!0);this.flushRange.shift(),this.flushBufferCounter=0}if(0===this.flushRange.length){this.Pc=!1;var i=0,e=this.sourceBuffer;try{for(var s in e){var n=e[s];n&&(i+=n.buffered.length)}}catch(t){c.b.error("error while accessing sourceBuffer.buffered")}this.appended=i,this.hls.trigger(a.a.BUFFER_FLUSHED)}},n.doAppending=function(){var t=this.config,i=this.hls,e=this.segments,s=this.sourceBuffer;if(Object.keys(s).length){if(!this.media||this.media.error)return this.segments=[],void c.b.error("trying to append although a media error occured, flush segment and abort");if(!this.appending){var n=e.shift();if(n)try{var r=s[n.type];if(!r)return void this.Oc();if(r.updating)return void e.unshift(n);r.ended=!1,this.parent=n.parent,r.appendBuffer(n.data),this.appendError=0,this.appended++,this.appending=!0}catch(s){c.b.error("error while trying to append buffer:"+s.message),e.unshift(n);var o={type:h.b.MEDIA_ERROR,parent:n.parent,details:"",fatal:!1};22===s.code?(this.segments=[],o.details=h.a.BUFFER_FULL_ERROR):(this.appendError++,o.details=h.a.BUFFER_APPEND_ERROR,this.appendError>t.appendErrorMaxRetry&&(c.b.log("fail "+t.appendErrorMaxRetry+" times to append segment in sourceBuffer"),this.segments=[],o.fatal=!0)),i.trigger(a.a.ERROR,o)}}}},n.flushBuffer=function(t,i,e){var s=this.sourceBuffer;if(!Object.keys(s).length)return!0;var n="null";if(this.media&&(n=this.media.currentTime.toFixed(3)),c.b.log("flushBuffer,pos/start/end: "+n+"/"+t+"/"+i),this.flushBufferCounter>=this.appended)return c.b.warn("abort flushing too many retries"),!0;var r=s[e];if(r){if(r.ended=!1,r.updating)return c.b.warn("cannot flush, sb updating in progress"),!1;if(this.removeBufferRange(e,r,t,i))return this.flushBufferCounter++,!1}return c.b.log("buffer flushed"),!0},n.removeBufferRange=function(t,i,e,s){try{for(var n=0;n.5){var l="null";return this.media&&(l=this.media.currentTime.toString()),c.b.log("sb remove "+t+" ["+o+","+a+"], of ["+r+","+h+"], pos:"+l),i.remove(o,a),!0}}}catch(t){c.b.warn("removeBufferRange failed",t)}return!1},s}(u);function Bt(t,i){for(var e=0;ethis.autoLevelCapping&&i.streamController.nextLevelSwitch(),this.autoLevelCapping=i.autoLevelCapping}}},o.getMaxLevel=function(t){var i=this;if(!this.levels)return-1;var e=this.levels.filter((function(e,n){return s.isLevelAllowed(n,i.restrictedLevels)&&n<=t}));return s.getMaxLevelByMediaSize(e,this.mediaWidth,this.mediaHeight)},o.startCapping=function(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),clearInterval(this.timer),this.timer=setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())},o.stopCapping=function(){this.restrictedLevels=[],this.firstLevel=null,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(this.timer=clearInterval(this.timer),this.timer=null)},s.isLevelAllowed=function(t,i){return void 0===i&&(i=[]),-1===i.indexOf(t)},s.getMaxLevelByMediaSize=function(t,i,e){if(!t||t&&!t.length)return-1;for(var s,n,r=t.length-1,h=0;h=i||o.height>=e)&&(s=o,!(n=t[h+1])||s.width!==n.width||s.height!==n.height)){r=h;break}}return r},n=s,h=[{key:"contentScaleFactor",get:function(){return 1}}],(r=[{key:"mediaWidth",get:function(){var t,i=this.media;return i&&(t=i.width||i.clientWidth||i.offsetWidth,t*=s.contentScaleFactor),t}},{key:"mediaHeight",get:function(){var t,i=this.media;return i&&(t=i.height||i.clientHeight||i.offsetHeight,t*=s.contentScaleFactor),t}}])&&Bt(n.prototype,r),h&&Bt(n,h),s}(u),Ft=window.performance,$t=function(t){var i,e;function s(i){return t.call(this,i,a.a.MEDIA_ATTACHING)||this}e=t,(i=s).prototype=Object.create(e.prototype),i.prototype.constructor=i,i.__proto__=e;var n=s.prototype;return n.destroy=function(){this.timer&&clearInterval(this.timer),this.isVideoPlaybackQualityAvailable=!1},n.onMediaAttaching=function(t){var i=this.hls.config;i.capLevelOnFPSDrop&&("function"==typeof(this.video=t.media instanceof this.hls.config.cnxRenderWindow.HTMLVideoElement?t.media:null).getVideoPlaybackQuality&&(this.isVideoPlaybackQualityAvailable=!0),clearInterval(this.timer),this.timer=setInterval(this.checkFPSInterval.bind(this),i.fpsDroppedMonitoringPeriod))},n.checkFPS=function(t,i,e){var s=Ft.now();if(i){if(this.lastTime){var n=s-this.lastTime,r=e-this.lastDroppedFrames,h=i-this.lastDecodedFrames,o=1e3*r/n,l=this.hls;if(l.trigger(a.a.FPS_DROP,{currentDropped:r,currentDecoded:h,totalDroppedFrames:e}),o>0&&r>l.config.fpsDroppedMonitoringThreshold*h){var u=l.currentLevel;c.b.warn("drop FPS ratio greater than max allowed value for currentLevel: "+u),u>0&&(-1===l.autoLevelCapping||l.autoLevelCapping>=u)&&(u-=1,l.trigger(a.a.FPS_DROP_LEVEL_CAPPING,{level:u,droppedLevel:l.currentLevel}),l.autoLevelCapping=u,l.streamController.nextLevelSwitch())}}this.lastTime=s,this.lastDroppedFrames=e,this.lastDecodedFrames=i}},n.checkFPSInterval=function(){var t=this.video;if(t)if(this.isVideoPlaybackQualityAvailable){var i=t.getVideoPlaybackQuality();this.checkFPS(t,i.totalVideoFrames,i.droppedVideoFrames)}else this.checkFPS(t,t.webkitDecodedFrameCount,t.webkitDroppedFrameCount)},s}(u),Vt=window,Ut=Vt.performance,Nt=Vt.XMLHttpRequest,Ht=function(){function t(t){t&&t.xhrSetup&&(this.xhrSetup=t.xhrSetup)}var i=t.prototype;return i.destroy=function(){this.abort(),this.loader=null},i.abort=function(){var t=this.loader;t&&4!==t.readyState&&(this.stats.aborted=!0,t.abort()),window.clearTimeout(this.requestTimeout),this.requestTimeout=null,window.clearTimeout(this.retryTimeout),this.retryTimeout=null},i.load=function(t,i,e){this.context=t,this.config=i,this.callbacks=e,this.stats={trequest:Ut.now(),retry:0},this.retryDelay=i.retryDelay,this.loadInternal()},i.loadInternal=function(){var t,i=this.context;t=this.loader=new Nt;var e=this.stats;e.tfirst=0,e.loaded=0;var s=this.xhrSetup;try{if(s)try{s(t,i.url)}catch(e){t.open("GET",i.url,!0),s(t,i.url)}t.readyState||t.open("GET",i.url,!0)}catch(e){return void this.callbacks.onError({code:t.status,text:e.message},i,t)}i.rangeEnd&&t.setRequestHeader("Range","bytes="+i.rangeStart+"-"+(i.rangeEnd-1)),t.onreadystatechange=this.readystatechange.bind(this),t.onprogress=this.loadprogress.bind(this),t.responseType=i.responseType,this.requestTimeout=window.setTimeout(this.loadtimeout.bind(this),this.config.timeout),t.send()},i.readystatechange=function(t){var i=t.currentTarget,e=i.readyState,s=this.stats,n=this.context,r=this.config;if(!s.aborted&&e>=2)if(window.clearTimeout(this.requestTimeout),0===s.tfirst&&(s.tfirst=Math.max(Ut.now(),s.trequest)),4===e){var h=i.status;if(h>=200&&h<300){var o,a;s.tload=Math.max(s.tfirst,Ut.now()),a="arraybuffer"===n.responseType?(o=i.response).byteLength:(o=i.responseText).length,s.loaded=s.total=a;var l={url:i.responseURL,data:o};this.callbacks.onSuccess(l,s,n,i)}else s.retry>=r.maxRetry||h>=400&&h<499?(c.b.error(h+" while loading "+n.url),this.callbacks.onError({code:h,text:i.statusText},n,i)):(c.b.warn(h+" while loading "+n.url+", retrying in "+this.retryDelay+"..."),this.destroy(),this.retryTimeout=window.setTimeout(this.loadInternal.bind(this),this.retryDelay),this.retryDelay=Math.min(2*this.retryDelay,r.maxRetryDelay),s.retry++)}else this.requestTimeout=window.setTimeout(this.loadtimeout.bind(this),r.timeout)},i.loadtimeout=function(){c.b.warn("timeout while loading "+this.context.url),this.callbacks.onTimeout(this.stats,this.context,null)},i.loadprogress=function(t){var i=t.currentTarget,e=this.stats;e.loaded=t.loaded,t.lengthComputable&&(e.total=t.total);var s=this.callbacks.onProgress;s&&s(e,this.context,null,i)},t}();e(7),function(t){t.WIDEVINE="com.widevine.alpha",t.PLAYREADY="com.microsoft.playready"}(Dt||(Dt={}));var zt=function(){var t=window.cnxRenderWindow;return void 0!==t&&t.navigator&&t.navigator.requestMediaKeySystemAccess?t.navigator.requestMediaKeySystemAccess.bind(t.navigator):null}();function qt(t,i,e){return i in t?Object.defineProperty(t,i,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[i]=e,t}var Wt=function(t){for(var i=1;ii)return s;return 0}},{key:"maxAutoLevel",get:function(){var t=this.levels,i=this.autoLevelCapping;return-1===i&&t&&t.length?t.length-1:i}},{key:"nextAutoLevel",get:function(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)},set:function(t){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,t)}},{key:"audioTracks",get:function(){var t=this.audioTrackController;return t?t.audioTracks:[]}},{key:"audioTrack",get:function(){var t=this.audioTrackController;return t?t.audioTrack:-1},set:function(t){var i=this.audioTrackController;i&&(i.audioTrack=t)}},{key:"liveSyncPosition",get:function(){return this.streamController.liveSyncPosition}},{key:"subtitleTracks",get:function(){var t=this.subtitleTrackController;return t?t.subtitleTracks:[]}},{key:"subtitleTrack",get:function(){var t=this.subtitleTrackController;return t?t.subtitleTrack:-1},set:function(t){var i=this.subtitleTrackController;i&&(i.subtitleTrack=t)}},{key:"subtitleDisplay",get:function(){var t=this.subtitleTrackController;return!!t&&t.subtitleDisplay},set:function(t){var i=this.subtitleTrackController;i&&(i.subtitleDisplay=t)}}]),s}(Q);Yt.defaultConfig=void 0}]).default)},289:function(t,i,e){var s,n,r;n=[e(4492)],void 0===(r="function"==typeof(s=function(t){"use strict";return(t.roots.common||(t.roots.common=new t.Root)).addJSON({ProtoAdBreak:{fields:{types:{rule:"repeated",type:"ProtoAdBreakTypeEnum",id:1,options:{packed:!1}},maxAdPodDuration:{type:"int32",id:2},maxAdSlotDuration:{type:"int32",id:3,options:{default:180}},numberOfAdSlots:{type:"int32",id:4,options:{default:1}}}},ProtoAdDomainBlockingResponse:{fields:{domains:{rule:"repeated",type:"string",id:1}}},ProtoCoreTamBidRequest:{fields:{lineItemId:{type:"string",id:1},code:{type:"string",id:2},metadata:{type:"MetadataModel",id:3},exploration:{type:"bool",id:4}}},MetadataModel:{fields:{version:{type:"int32",id:1},sessionId:{type:"string",id:2},playerId:{type:"string",id:3},userId:{type:"string",id:4},browser:{type:"Browser",id:5},geo:{type:"GeoLocation",id:6},clientAb0:{type:"int32",id:7},clientAb1:{type:"int32",id:8},serverAb0:{type:"int32",id:9},serverAb1:{type:"int32",id:10},pageUrl:{type:"string",id:15},bundleId:{type:"string",id:17},implementationType:{type:"ProtoImplementationType",id:18},trackAllRequests:{type:"bool",id:19},customParam1:{type:"string",id:20},customParam2:{type:"string",id:21},customParam3:{type:"string",id:22},abTestId:{type:"string",id:24},pageInFocus:{type:"bool",id:25},customParam4:{type:"string",id:26},customParam5:{type:"string",id:27},bundleAbId:{type:"string",id:28},bundlePart:{type:"string",id:29}}},Browser:{fields:{browserVersion:{type:"string",id:1},browserType:{type:"string",id:2},osCode:{type:"string",id:3},device:{type:"ProtoDeviceType",id:4}}},GeoLocation:{fields:{countryGeoId:{type:"int32",id:1},cityId:{type:"int32",id:2},subdivisionId:{type:"int32",id:3},dmaId:{type:"int32",id:4},ip:{type:"string",id:5},lat:{type:"double",id:6},lon:{type:"double",id:7},zipcode:{type:"string",id:8}}},ProtoCoreTamBidResponse:{fields:{errorMessage:{type:"string",id:1},encryptedBidPrice:{type:"string",id:10},ofskp:{type:"double",id:12},impressionTimeSpent:{type:"int32",id:13},bidRate:{type:"double",id:14},successRate:{type:"double",id:15}}},ProtoCookieSettings:{fields:{name:{type:"string",id:1},value:{type:"string",id:2},timestamp:{type:"int64",id:3}}},ProtoCookieSyncRequest:{fields:{cookieList:{rule:"repeated",type:"ProtoCookieSettings",id:1},secureMode:{type:"ProtoCookieSecureModeEnum",id:2},browserInfo:{type:"Browser",id:3}}},ProtoUserInformation:{fields:{userId:{type:"string",id:1},lookupId:{type:"string",id:3},lookupResponseCode:{type:"int32",id:4},callFraudSensor:{type:"bool",id:5},publisherAdsTxt:{type:"string",id:6}}},CreativeTrackerViewModel:{fields:{type:{type:"ProtoTrackerType",id:1},trigger:{type:"ProtoTrackerTriggerType",id:2},url:{type:"string",id:3}}},Insights:{fields:{key:{type:"string",id:1}}},ProtoSentimentAnalysis:{fields:{positive:{type:"double",id:1},neutral:{type:"double",id:2},negative:{type:"double",id:3}}},ProtoInsightsResponse:{fields:{insights:{rule:"repeated",type:"Insights",id:1},sentimentAnalysis:{type:"ProtoSentimentAnalysis",id:2}}},ProtoLineItemAdBreakTargeting:{fields:{adRollType:{type:"ProtoAdBreakTypeEnum",id:1},adBreakTypeEnum:{type:"ProtoLineItemAdBreakTypeEnum",id:2}}},ProtoLineItemAdPodTargeting:{fields:{targetingType:{type:"ProtoLineItemTargetingTypeEnum",id:1},adSlotTargetingType:{type:"ProtoLineItemAdSlotTargetingTypeEnum",id:2},adSlotPositions:{rule:"repeated",type:"int32",id:3,options:{packed:!1}}}},ProtoLineItemAdBreakSettings:{fields:{adBreakTargeting:{rule:"repeated",type:"ProtoLineItemAdBreakTargeting",id:1},adPodTargeting:{type:"ProtoLineItemAdPodTargeting",id:2}}},ProtoLineItem:{oneofs:{Dc:{oneof:["predictedFloorPrice"]}},fields:{predictedFloorPrice:{type:"double",id:49,options:{proto3_optional:!0}},publisherLineItemId:{type:"string",id:1},advertiserLineItemId:{type:"string",id:2},adTag:{type:"string",id:3},creativeType:{type:"ProtoCreativeTypeEnum",id:4},sound:{type:"bool",id:6},viewability:{type:"bool",id:7},impressionTimeSpent:{type:"int32",id:9},vendorId:{type:"string",id:10},trackers:{rule:"repeated",type:"CreativeTrackerViewModel",id:12},duration:{type:"int32",id:13},renditions:{rule:"repeated",type:"ProtoRendition",id:14},mediaCreativeId:{type:"string",id:15},ignoreFilledRequests:{type:"bool",id:16},requestCap:{type:"int32",id:17,options:{default:3}},impressionCap:{type:"int32",id:18},successRate:{type:"double",id:19},lineItemPriority:{type:"ProtoLineItemPriority",id:20},headerBidderBids:{type:"string",id:21},headerBidderTimeout:{type:"int32",id:22},mediaCreativeClickUrl:{type:"string",id:23},resetRequestsCapTime:{type:"int32",id:24,options:{default:60}},resetImpressionsCapTime:{type:"int32",id:25,options:{default:60}},resetCapType:{type:"ProtoResetCapTypeEnum",id:26},creativeHlsFileName:{type:"string",id:27},timeBetweenRequests:{type:"int32",id:28},skipMode:{type:"ProtoAdSkipMode",id:29},mediaIdTargeting:{type:"ProtoTargetingChoiceModel",id:30},mediaKeywordsTargeting:{type:"ProtoTargetingChoiceModel",id:31},mediaLanguageTargeting:{type:"ProtoTargetingChoiceModel",id:32},adType:{type:"ProtoAdType",id:33},overlayTime:{type:"int32",id:34,options:{default:30}},floorPrice:{type:"double",id:35},adBreakSettings:{type:"ProtoLineItemAdBreakSettings",id:36},floorPrices:{rule:"repeated",type:"double",id:38,options:{packed:!1}},bidRate:{type:"double",id:39},pauseAdOutOfView:{type:"ProtoLineItemPauseAdOutOfViewEnum",id:40},moatTrackingEnabled:{type:"bool",id:41},cnxCreativeId:{type:"string",id:42},blockedDomainsRevisionNumber:{type:"int32",id:44},advertiserContextualTargeting:{rule:"repeated",type:"ProtoContextualTargetingCaseModel",id:45},publisherContextualTargeting:{rule:"repeated",type:"ProtoContextualTargetingCaseModel",id:46},playerSizeTargetings:{type:"ProtoPlayerSizeTargetings",id:47},amazonDealId:{type:"string",id:48},playerOrientationTargeting:{type:"ProtoPlayerOrientationTargetingEnum",id:50},skipMin:{type:"int32",id:51,options:{default:6}},skippability:{type:"ProtoLineItemSkippabilityType",id:52},forceCallingInEveryAO:{type:"bool",id:53},networkExpiryTimeSeconds:{type:"int32",id:54,options:{default:21600}},nonlinearLineItemSettings:{type:"ProtoNonlinearLineItemSettings",id:55},floorPriceData:{rule:"repeated",type:"FloorPriceModel",id:56},playerSize:{type:"string",id:101}}},ProtoTargetingChoiceModel:{fields:{choiceCriteria:{type:"ProtoChoiceCriteriaEnum",id:1},items:{rule:"repeated",type:"string",id:2}}},ProtoContextualTargetingCaseModel:{fields:{filters:{rule:"repeated",type:"ProtoContextualTargetingFilterModel",id:1}}},ProtoContextualTargetingFilterModel:{fields:{type:{type:"ProtoLineItemContextualTargetingEnum",id:1},items:{rule:"repeated",type:"string",id:2},level:{type:"ProtoContextualTargetingLevelEnum",id:3},hashedItemsIds:{rule:"repeated",type:"string",id:4}}},ProtoPlayerSizeTargetings:{fields:{sizeChoiceCriteria:{type:"ProtoSizeChoiceCriteriaEnum",id:1},minWidth:{type:"int32",id:2},maxWidth:{type:"int32",id:3}}},FloorPriceModel:{fields:{price:{type:"double",id:1},factor:{type:"double",id:2}}},ProtoRendition:{fields:{height:{type:"int32",id:1},codec:{type:"string",id:2},file:{type:"string",id:3}}},ProtoNonlinearLineItemSettings:{fields:{nonLinearRequestType:{type:"ProtoNonlinearRequestType",id:1},nonLinearAdTimeSeconds:{type:"int32",id:2,options:{default:15}}}},ProtoLiveMediaMetadataResponse:{fields:{startDate:{type:"string",id:1},outputUrl:{type:"string",id:2},thumbnailUrl:{type:"string",id:3},altText:{type:"string",id:4},name:{type:"string",id:5}}},ProtoSpriteSheet:{fields:{file:{type:"string",id:1},height:{type:"int32",id:2},count:{type:"int32",id:3}}},ProtoTrack:{fields:{file:{type:"string",id:1},type:{type:"ProtoTrackType",id:2},code:{type:"string",id:3},title:{type:"string",id:4}}},ProtoCustomField:{fields:{name:{type:"string",id:1},value:{type:"string",id:2}}},ProtoMediaMetadataResponse:{fields:{title:{type:"string",id:1},description:{type:"string",id:2},duration:{type:"int32",id:3},clickUrl:{type:"string",id:4},keywordList:{rule:"repeated",type:"string",id:5},trackList:{rule:"repeated",type:"ProtoTrack",id:6},spriteSheet:{type:"ProtoSpriteSheet",id:7},thumbnail:{type:"string",id:8},renditionList:{rule:"repeated",type:"ProtoRendition",id:9},customFields:{rule:"repeated",type:"ProtoCustomField",id:10},hlsFilePath:{type:"string",id:11},languageId:{type:"string",id:12},sourceItemId:{type:"string",id:13},altText:{type:"string",id:14},videoIndexes:{rule:"repeated",type:"string",id:15}}},ProtoNonlinearPlayerSettings:{fields:{numberOfNonlinearAds:{type:"int32",id:1},timeSecondsBetweenNonlinear:{type:"int32",id:2,options:{default:5}},timeSecondsBetweenLinearAndNonlinear:{type:"int32",id:3}}},ProtoRtbRequest:{fields:{metadata:{type:"MetadataModel",id:1},coppa:{type:"bool",id:4},refererUrl:{type:"string",id:5},testMode:{type:"bool",id:6},videoWidth:{type:"int32",id:7},videoHeight:{type:"int32",id:8},gdprCompliant:{type:"bool",id:9},soundOn:{type:"bool",id:10},gdprConsentData:{type:"string",id:11},explorationMode:{type:"bool",id:12},viewability:{type:"bool",id:13},outstream:{type:"bool",id:14},domainURL:{type:"string",id:16},isClickToPlay:{type:"bool",id:18},appVersion:{type:"string",id:21},deviceID:{type:"string",id:24},lineItems:{keyType:"string",type:"ProtoRtbRequestLineItemEntry",id:25},isCcpaBlockingUserInfo:{type:"bool",id:26},usPrivacyString:{type:"string",id:27},gdprConsentMode:{type:"ProtoGdprConsentModeEnum",id:36},maxAdDuration:{type:"int32",id:37,options:{default:180}},customMacros:{keyType:"string",type:"string",id:38},maxBidPrice:{type:"double",id:39},playerWidth:{type:"int32",id:43},playerHeight:{type:"int32",id:44},useNewSkippability:{type:"bool",id:42},liveRampAtsEnvelope:{type:"string",id:45}}},ProtoRtbRequestLineItemEntry:{oneofs:{jc:{oneof:["cachedFloorPrice"]},Dc:{oneof:["predictedFloorPrice"]}},fields:{cachedFloorPrice:{type:"double",id:2,options:{proto3_optional:!0}},predictedFloorPrice:{type:"double",id:9,options:{proto3_optional:!0}},availableRequests:{type:"int32",id:1},gdprConsent:{type:"bool",id:4},publisherLineItemId:{type:"string",id:5},slotWidth:{type:"int32",id:6},slotHeight:{type:"int32",id:7},requestNumber:{type:"int32",id:8},skip:{type:"ProtoSkipEnabledEnum",id:12},skipmin:{type:"int32",id:13},skipafter:{type:"int32",id:14},minDuration:{type:"int32",id:15}}},ProtoRtbResponse:{fields:{lineItemResponses:{rule:"repeated",type:"ProtoRtbLineItem",id:3},liveRampEnvelopeStatus:{type:"LiveRampEnvelopeStatusEnum",id:4}}},ProtoRtbBid:{oneofs:{Fc:{oneof:["floorPriceFactor"]},$c:{oneof:["floorPriceBypassReason"]}},fields:{floorPriceFactor:{type:"double",id:28,options:{proto3_optional:!0}},floorPriceBypassReason:{type:"FloorPriceBypassReasonEnum",id:29,options:{proto3_optional:!0}},winNoticeUrl:{type:"string",id:2},adQualityCheckUrl:{type:"string",id:3},vastTag:{type:"string",id:4},encryptedPrice:{type:"string",id:6},creativeId:{type:"string",id:7},seatId:{type:"string",id:8},adomain:{type:"string",id:9},syncedUser:{type:"bool",id:10},requestedFloorPrice:{type:"double",id:11},floorPriceFactorIndex:{type:"int32",id:12},campaignId:{type:"string",id:13},width:{type:"int32",id:14},height:{type:"int32",id:15},billingNoticeUrlList:{rule:"repeated",type:"string",id:16},mime:{type:"string",id:17,options:{default:"text/html"}},gtkpbp:{type:"double",id:18},successRate:{type:"double",id:19},impressionTimeSpent:{type:"int32",id:20},bidRate:{type:"double",id:21},dspId:{type:"string",id:22},cnxBidId:{type:"string",id:23},logAuctionInformation:{type:"bool",id:24},auctionBidId:{type:"string",id:25},rtbRequestId:{type:"string",id:26},liveRampAts:{type:"bool",id:27}}},ProtoRtbNoBid:{fields:{connatixReason:{type:"ConnatixNoBidReasonEnum",id:1},partnerReason:{type:"PartnerNoBidReasonEnum",id:2},syncedUser:{type:"bool",id:3},requestedFloorPrice:{type:"double",id:4},floorPriceFactorIndex:{type:"int32",id:5},partnerCustomHeaders:{type:"string",id:6}}},ProtoRtbLineItem:{oneofs:{Dc:{oneof:["predictedFloorPrice"]}},fields:{predictedFloorPrice:{type:"double",id:5,options:{proto3_optional:!0}},id:{type:"string",id:1},cachedFloorPrice:{type:"double",id:2},bids:{rule:"repeated",type:"ProtoRtbBid",id:3},noBids:{rule:"repeated",type:"ProtoRtbNoBid",id:4}}},ProtoSupplyChain:{fields:{businessDomain:{type:"string",id:1},supplyChainId:{type:"string",id:3}}},ProtoAdClickTrackingRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},mediaGuid:{type:"string",id:2},publisherLineItemId:{type:"string",id:3},advertiserLineItemId:{type:"string",id:4},type:{type:"ProtoAdClickTypeEnum",id:5},insightIndexes:{rule:"repeated",type:"string",id:10},adBreakType:{type:"ProtoAdBreakTypeEnum",id:11},sentimentAnalysis:{type:"ProtoSentimentAnalysis",id:12},pageInsightIndexes:{rule:"repeated",type:"string",id:13}}},ProtoAdOpportunityRequest:{fields:{sessionId:{type:"string",id:1},trackingRequestMeta:{type:"MetadataModel",id:2},adBreak:{type:"ProtoAdBreakTypeEnum",id:3},playerWidth:{type:"int32",id:4},pageInsightIndexes:{rule:"repeated",type:"string",id:5}}},ProtoAuctionInfoRequest:{fields:{cnxBidId:{type:"string",id:1},auctionInformation:{type:"ProtoAuctionInformation",id:2},auctionLossReason:{type:"ProtoAuctionLossReasonEnum",id:3}}},ProtoAuctionInformation:{fields:{highestObfuscatedBidPrice:{type:"double",id:1},secondHighestObfuscatedBidPrice:{type:"double",id:2},bidDensity:{type:"int32",id:3}}},ProtoPrebid:{fields:{publisherLineItemId:{type:"string",id:1},advertiserLineItemId:{type:"string",id:2},syncedUser:{type:"bool",id:3},timeSpent:{type:"int32",id:4},reason:{type:"ConnatixNoBidReasonEnum",id:5},requestNumber:{type:"int32",id:6},partnerReason:{type:"PartnerNoBidReasonEnum",id:7},requestedFloorPrice:{type:"double",id:8},partnerCustomHeaders:{type:"string",id:9},prebidJsBidderName:{type:"string",id:12},predictedFloorPrice:{type:"double",id:13},playerWidth:{type:"int32",id:14},playerHeight:{type:"int32",id:15}}},ProtoBid:{fields:{publisherLineItemId:{type:"string",id:1},advertiserLineItemId:{type:"string",id:2},syncedUser:{type:"bool",id:3},timeSpent:{type:"int32",id:4},requestNumber:{type:"int32",id:5},creativeId:{type:"string",id:6},rtbSeatId:{type:"string",id:7},rtbAdomain:{type:"string",id:8},encryptedPrice:{type:"string",id:9},requestedFloorPrice:{type:"double",id:10},prebidJsBidderName:{type:"string",id:13},customClientPrice:{type:"double",id:14},dspId:{type:"string",id:15},cnxBidId:{type:"string",id:16},predictedFloorPrice:{type:"double",id:17},playerWidth:{type:"int32",id:18},playerHeight:{type:"int32",id:19},floorPriceFactor:{type:"double",id:20},floorPriceFactorBypassReason:{type:"int32",id:21}}},ProtoPostBid:{fields:{publisherLineItemId:{type:"string",id:1},advertiserLineItemId:{type:"string",id:2},syncedUser:{type:"bool",id:3},timeSpent:{type:"int32",id:4},error:{type:"string",id:5},loaded:{type:"bool",id:6},creativeId:{type:"string",id:7},rtbSeatId:{type:"string",id:8},rtbAdomain:{type:"string",id:9},adsourceType:{type:"ProtoAdsourceTypeEnum",id:10},vastMediaType:{type:"string",id:11},adPodSlotPosition:{type:"int32",id:12},prebidJsBidderName:{type:"string",id:13},dspId:{type:"string",id:14},cnxBidId:{type:"string",id:15},winToAdLoadedTime:{type:"int32",id:16},auctionInformation:{type:"ProtoAuctionInformation",id:18},auctionPostbidReason:{type:"ProtoAuctionPostbidReasonEnum",id:19},requestNumber:{type:"int32",id:20},predictedFloorPrice:{type:"double",id:21},floorPrice:{type:"double",id:22},playerWidth:{type:"int32",id:23},playerHeight:{type:"int32",id:24},bidElapsedTimeSeconds:{type:"int32",id:25},adBreakType:{type:"ProtoAdBreakTypeEnum",id:26},liveRampAts:{type:"bool",id:27},dynamicElkFieldsValues:{keyType:"string",type:"string",id:100}}},ProtoBidTrackingsRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},mediaGuid:{type:"string",id:2},prebids:{rule:"repeated",type:"ProtoPrebid",id:4},bids:{rule:"repeated",type:"ProtoBid",id:5},postBids:{rule:"repeated",type:"ProtoPostBid",id:6},logEveryting:{type:"bool",id:7},hasGdprConsentPayload:{type:"bool",id:10},gdprConsentMode:{type:"ProtoGdprConsentModeEnum",id:11},useExploration:{type:"bool",id:12}}},ProtoHeavyAdTrackingRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},advertiserLineItemId:{type:"string",id:2},heavyAdBlockTypeEnum:{type:"ProtoHeavyAdBlockTypeEnum",id:3}}},ProtoMediaClickTrackingRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},mediaGuid:{type:"string",id:2},type:{type:"ProtoMediaClickTypeEnum",id:3},clickUrl:{type:"string",id:4},slideTitle:{type:"string",id:5},slideNumber:{type:"int32",id:6},slideMediaType:{type:"ProtoMediaTypeEnum",id:7},insightIndexes:{rule:"repeated",type:"string",id:12},sentimentAnalysis:{type:"ProtoSentimentAnalysis",id:13}}},ProtoMediaTrackingRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},mediaGuid:{type:"string",id:2},quartile:{type:"ProtoQuartilesEnum",id:4},insightIndexes:{rule:"repeated",type:"string",id:9},sentimentAnalysis:{type:"ProtoSentimentAnalysis",id:10}}},ProtoPlayerStartRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},pageInsightIndexes:{rule:"repeated",type:"string",id:2},dynamicElkFieldsValues:{keyType:"string",type:"string",id:100}}},ProtoSessionAdBlockerRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},adBlockDetectionType:{type:"ProtoAdBlockDetectionTypeEnum",id:2},dynamicElkFieldsValues:{keyType:"string",type:"string",id:100}}},ProtoSessionTimeTrackingRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},timePlayed:{type:"int32",id:2},timePlayedInView:{type:"int32",id:3},sessionTime:{type:"int32",id:4},pageInsightIndexes:{rule:"repeated",type:"string",id:5}}},ProtoSessionViewRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},pageInsightIndexes:{rule:"repeated",type:"string",id:2},dynamicElkFieldsValues:{keyType:"string",type:"string",id:100}}},ProtoTrackingRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},hasAdBlocker:{type:"bool",id:4},bundleName:{type:"string",id:5},playerWidth:{type:"int32",id:6},playerHeight:{type:"int32",id:7},pageInsightIndexes:{rule:"repeated",type:"string",id:8},dynamicElkFieldsValues:{keyType:"string",type:"string",id:100}}},ProtoTrackingResponse:{oneofs:{Vc:{oneof:["viewability"]}},fields:{viewability:{type:"bool",id:5,options:{proto3_optional:!0}},errorMessage:{type:"string",id:1},platformCappedLineItemIdList:{rule:"repeated",type:"string",id:2},impressionRevenue:{type:"double",id:3},adServerLineItemName:{type:"string",id:4}}},ProtoVideoAdImpressionRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},mediaGuid:{type:"string",id:3},publisherLineItemId:{type:"string",id:5},advertiserLineItemId:{type:"string",id:6},syncedUser:{type:"bool",id:7},timeSpent:{type:"int32",id:8},encryptedPrice:{type:"string",id:9},creativeId:{type:"string",id:10},rtbSeatId:{type:"string",id:11},rtbAdomain:{type:"string",id:12},customClientPrice:{type:"double",id:13},adsourceType:{type:"ProtoAdsourceTypeEnum",id:14},vastMediaType:{type:"string",id:15},adPodSlotPosition:{type:"int32",id:18},prebidJsBidderName:{type:"string",id:19},dspId:{type:"string",id:20},cnxBidId:{type:"string",id:21},winToAdLoadedTime:{type:"int32",id:22},startAdToImpressionTime:{type:"int32",id:23},declaredDuration:{type:"double",id:24},impressionDuration:{type:"double",id:25},useExploration:{type:"bool",id:26},auctionInformation:{type:"ProtoAuctionInformation",id:27},playerWidth:{type:"int32",id:28},requestNumber:{type:"int32",id:29},predictedFloorPrice:{type:"double",id:30},floorPrice:{type:"double",id:31},floorPriceFactor:{type:"double",id:44},floorPriceBypassReason:{type:"FloorPriceBypassReasonEnum",id:45},playerHeight:{type:"int32",id:36},bidElapsedTimeSeconds:{type:"int32",id:37},insightIndexes:{rule:"repeated",type:"string",id:38},adBreakType:{type:"ProtoAdBreakTypeEnum",id:40},sentimentAnalysis:{type:"ProtoSentimentAnalysis",id:41},hasAdSkip:{type:"bool",id:39},pageInsightIndexes:{rule:"repeated",type:"string",id:42},liveRampAts:{type:"bool",id:43},dynamicElkFieldsValues:{keyType:"string",type:"string",id:100}}},ProtoVideoAdImpressionViewableRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},mediaGuid:{type:"string",id:3},publisherLineItemId:{type:"string",id:5},advertiserLineItemId:{type:"string",id:6},rtbSeatId:{type:"string",id:7},dspId:{type:"string",id:8},insightIndexes:{rule:"repeated",type:"string",id:13},hasAdSkip:{type:"bool",id:14},adBreakType:{type:"ProtoAdBreakTypeEnum",id:15},sentimentAnalysis:{type:"ProtoSentimentAnalysis",id:16},pageInsightIndexes:{rule:"repeated",type:"string",id:17}}},ProtoVideoAdQuartilesRequest:{fields:{trackingRequestMeta:{type:"MetadataModel",id:1},mediaGuid:{type:"string",id:3},publisherLineItemId:{type:"string",id:5},advertiserLineItemId:{type:"string",id:6},quartile:{type:"ProtoQuartilesEnum",id:7},rtbSeatId:{type:"string",id:8},dspId:{type:"string",id:9},insightIndexes:{rule:"repeated",type:"string",id:14},hasAdSkip:{type:"bool",id:15},adBreakType:{type:"ProtoAdBreakTypeEnum",id:16},sentimentAnalysis:{type:"ProtoSentimentAnalysis",id:17},pageInsightIndexes:{rule:"repeated",type:"string",id:18}}},ProtoUserSyncRequest:{fields:{userId:{type:"string",id:1},demandPartner:{type:"int32",id:2},demandPartnerUserId:{type:"string",id:3}}},ProtoPlayerPlaybackModeEnum:{values:{Autoplay:0,ScrollToPlay:1,ClickToPlay:2}},ProtoPlayerCloseButtonMode:{values:{Off:0,OnHover:1,OnHoverAfterFirstAd:2,AlwaysOn:3}},ProtoPlayerFloatingMode:{values:{Off:0,OnPageLoad:1,AfterInView:2,Always:3}},ProtoPlayerSoundMode:{values:{Mute:0,On:1,Hover:2}},ProtoPlayerInsertMode:{values:{WithinContainer:0,BeforeContainer:1,AfterContainer:2,ReplaceContainer:3,HideContainer:4}},ProtoAdViewabilityPolicy:{values:{Default:0,Strict:1}},ProtoSharingDestination:{values:{Facebook:0,Twitter:1,LinkedIn:2}},ProtoFloatingFixedPositionMode:{values:{Page:0,Element:1}},ProtoPositionMode:{values:{BottomRight:0,BottomLeft:1,TopRight:2,TopLeft:3}},ProtoAdPlaybackMode:{values:{Autoplay:0,ScrollToPlay:1}},ProtoFloatingAppendLocationEnum:{values:{Above:0,Below:1,Within:2}},ProtoPlayerAdSkippability:{values:{IfLongerThan:0,Always:1,NoRestrictions:2}},ProtoVideoQuality:{values:{Auto:0,High1080p:1,High720p:2,Medium360p:3}},ProtoImplementationType:{values:{Web:0,Amp:1}},ProtoAdBreakTypeEnum:{values:{None:0,PreRoll:1,MidRoll:2,PostRoll:3}},ProtoAdSlotAdTypeEnum:{values:{SingleAd:0,AdPod:1}},ProtoPlayerSkippabilityType:{values:{AllowNonSkipAdsIfTheyAreShorterThan:0,RequireAdsToBeSkippable:1}},ProtoBandwidthLoggingEnum:{values:{Disabled:0,Enabled:1,SaaS:2}},ProtoDeviceType:{values:{Desktop:0,Smartphone:1,Tablet:2,GameConsole:3,SmartTV:4,WearableComputer:5,PDA:6,Unrecognized:7}},ProtoCookieSecureModeEnum:{values:{Secure:0,Unsecure:1,Auto:2}},ProtoTrackerType:{values:{Image:0,Javascript:1}},ProtoTrackerTriggerType:{values:{Impression:0,Complete25Pc:1,Complete50Pc:2,Complete75Pc:3,ViewCompletion:4,VideoClick:5,Pause:6,Resume:7,Mute:8,Unmute:9}},ProtoCreativeTypeEnum:{values:{ThirdParty:0,MediaFile:1,Rtb:2,External:3,HeaderBidder:4,Tam:7,TamDeal:8}},ProtoResetCapTypeEnum:{values:{TimeCapping:0,ContentCapping:1,OpportunityCapping:2}},ProtoAdSlotsEnum:{values:{PreRoll:0,MidRoll:1,PostRoll:2}},ProtoLineItemPriority:{values:{House:0,Default:1,Preferred:2,Top:3}},ProtoAdSkipMode:{values:{IfLongerThan31Sec:0,Always:1,Never:2,NotAplicable:3}},ProtoAdType:{values:{Video:0,Overlay:1,Nonlinear:2}},ProtoChoiceCriteriaEnum:{values:{Only:0,Except:1}},ProtoLineItemAdBreakTypeEnum:{values:{All:1,SingleAd:2,AdPod:3}},ProtoLineItemTargetingTypeEnum:{values:{Only:0,Except:1}},ProtoLineItemAdSlotTargetingTypeEnum:{values:{SpecificSlots:1,Interval:2}},ProtoLineItemPauseAdOutOfViewEnum:{values:{Default:0,Strict:1}},ProtoLineItemContextualTargetingEnum:{values:{IncludeAny:0,IncludeAll:1,ExcludeAny:2,ExcludeAll:3}},ProtoSizeChoiceCriteriaEnum:{values:{GreaterThan:0,SmallerThan:1,Between:2}},ProtoPlayerOrientationTargetingEnum:{values:{Both:0,Portrait:1,Landscape:2}},ProtoLineItemSkippabilityType:{values:{AllowPublisherToDetermineSkippability:0,RequirePublisherToAllowNonSkipAdsShorterThan:1,NotApplicable:2}},ProtoContextualTargetingLevelEnum:{values:{Media:0,Page:1,Both:2}},ProtoNonlinearRequestType:{values:{Banner:0,Video:1}},ProtoTrackType:{values:{ManualSubtitle:0,AutoGeneratedSubtitle:1,ClosedCaptions:2}},ProtoMediaTypeEnum:{values:{Image:0,Video:1}},ProtoSkipEnabledEnum:{values:{No:0,Yes:1}},LiveRampEnvelopeStatusEnum:{values:{Ok:0,EnvelopeExpired:1,Unauthorized:2}},FloorPriceBypassReasonEnum:{values:{MinCpm:0,FixedCpm:1,VideoOrBannerMin:2,PubMinFloor:3,AdvMinFloor:4,BidInHand:5}},ConnatixNoBidReasonEnum:{values:{RequestException:0,Timeout:1,EmptyResponse:2,InvalidResponse:3,NoBid:4,BidBelowFloor:5,DealIdMismatch:6,CsInvalidResponse:7,CsRequestException:8,CsEmptyResponse:9,NoLibInPage:11,BidIsNotTargetingAllowedEver:12}},PartnerNoBidReasonEnum:{values:{Unknown:0,TechnicalError:1,InvalidRequest:2,KnownWebSpider:3,SuspectedNonHumanTraffic:4,CloudIP:5,UnsupportedDevice:6,BlockedPublisher:7,UnmatchedUser:8,DailyReaderCapMet:9,DailyDomainCapMet:10}},ProtoAdBlockDetectionTypeEnum:{values:{Banner:0,Network:1}},ProtoAdClickTypeEnum:{values:{AdClick:1,AdClickThrough:2,AdSkipClick:3,VolumeClick:4,PauseClick:5,PlayClick:6,FullScreenClick:7,MuteClick:8,UnmuteClick:9,ExitFullScreenClick:10,AdUserClose:11}},ProtoAdsourceTypeEnum:{values:{Unknown:0,Vpaid:1,VastMedia:2,CnxMedia:3,Jw:4,Ima:5,AOL:6}},ProtoAuctionLossReasonEnum:{values:{TargetingMismatch:0,CompetitorPriority:1,AdOpportunityEnd:2}},ProtoGdprConsentModeEnum:{values:{Unknown:0,NoCmp:1,NoConsent:2,NoConnatixConsent:3,NotAllDemandConsent:4,AllGood:5}},ProtoAuctionPostbidReasonEnum:{values:{CreativeError:0,SDKFailure:1,UnsupportedMedia:2,TargetingMismatch:3,PlayerError:4}},ProtoHeavyAdBlockTypeEnum:{values:{Global:0,Script:1,VpaidIframe:2,OverlayIframe:3}},ProtoMediaClickTypeEnum:{values:{Click:0,UrlClick:1,VolumeClick:2,PlayClick:3,PauseClick:4,NextClick:5,PreviousClick:6,MuteClick:7,UnmuteClick:8,CloseClick:9,ScrollClick:10,GalleryClick:11,SubtitleClick:12,FullScreenClick:13,ExitFullScreenClick:14}},ProtoQuartilesEnum:{values:{Start:0,First:1,Second:2,Third:3,Fourth:4}}})})?s.apply(i,n):s)||(t.exports=r)},7953:function(t,i,e){var s,n,r;n=[e(4492)],void 0===(r="function"==typeof(s=function(t){"use strict";return(t.roots.elements||(t.roots.elements=new t.Root)).addJSON({ProtoElementsRequest:{fields:{tokens:{rule:"repeated",type:"string",id:1},pageUrl:{type:"string",id:3},userId:{type:"string",id:5},forcePlayerId:{type:"string",id:7},forcePlaylistId:{type:"string",id:9},version:{type:"int32",id:10},forceLineItemIds:{rule:"repeated",type:"string",id:11},clientAb0:{type:"int32",id:12},clientAb1:{type:"int32",id:13},customParam1:{type:"string",id:16},customParam2:{type:"string",id:17},customParam3:{type:"string",id:18},forceExploration:{type:"bool",id:20},es6:{type:"bool",id:21},bundleId:{type:"string",id:22},forceSourceItemId:{type:"string",id:23},parseDomain:{type:"bool",id:24},implementationType:{type:"ProtoImplementationType",id:25},queryJsTargeting:{keyType:"string",type:"string",id:26},isConsentConnatix:{type:"bool",id:27,options:{default:!0}},reloadedPlayers:{keyType:"string",type:"string",id:29},disableTracking:{type:"bool",id:31},referrer:{type:"string",id:32},localTimestamp:{type:"int64",id:33},customParam4:{type:"string",id:34},customParam5:{type:"string",id:35},forceMediaIdList:{rule:"repeated",type:"string",id:36}}},ProtoPlaylistItem:{oneofs:{Uc:{oneof:["insightsRevisionNumber"]}},fields:{insightsRevisionNumber:{type:"int32",id:4,options:{proto3_optional:!0}},mediaId:{type:"string",id:1},revisionNumber:{type:"int32",id:2},mediaContentVersionId:{type:"string",id:3}}},ProtoElements:{fields:{playerId:{type:"string",id:1},playbackMode:{type:"ProtoPlayerPlaybackModeEnum",id:2},soundMode:{type:"ProtoPlayerSoundMode",id:3},upNextMode:{type:"ProtoPlayerUpNextMode",id:4,options:{default:1}},containerSelector:{type:"string",id:5},position:{type:"int32",id:6},insertPosition:{type:"ProtoPlayerInsertMode",id:7},forceInsertPath:{type:"bool",id:8},renderInFrame:{type:"bool",id:9},scrollHijackingProtection:{type:"bool",id:10},preRollBreak:{type:"int32",id:11},postRollBreak:{type:"int32",id:12},midRollNumber:{type:"int32",id:13,options:{default:-1}},timeBetweenAds:{type:"int32",id:14},minTimeBeforeFirstAd:{type:"int32",id:15},adViewabilityPolicy:{type:"ProtoAdViewabilityPolicy",id:16},responsive:{type:"bool",id:18},ratioWidth:{type:"int32",id:19},ratioHeight:{type:"int32",id:20},fixedWidth:{type:"int32",id:21},fixedHeight:{type:"int32",id:22},casting:{type:"bool",id:23},sharingDestinations:{rule:"repeated",type:"ProtoSharingDestination",id:24,options:{packed:!1}},closedCaption:{type:"bool",id:25},muteWatermark:{type:"bool",id:26},expandButton:{type:"bool",id:27},closeButtonMode:{type:"ProtoPlayerCloseButtonMode",id:28},floatingMode:{type:"ProtoPlayerFloatingMode",id:29},floatingDeviceMode:{rule:"repeated",type:"ProtoDeviceType",id:30,options:{packed:!1}},floatingCloseButtonMode:{type:"ProtoPlayerCloseButtonMode",id:31},floatingFixedPosition:{type:"ProtoFloatingFixedPositionMode",id:32},floatingPageElement:{type:"string",id:33},floatingUseElementWidth:{type:"bool",id:34},floatingScrollPosition:{type:"ProtoPositionMode",id:35},floatingGutterX:{type:"int32",id:36},floatingGutterY:{type:"int32",id:37},floatingWidth:{type:"int32",id:38},iconsColor:{type:"string",id:39},accentColor:{type:"string",id:40},tooltipTextColor:{type:"string",id:41},tooltipBackgroundColor:{type:"string",id:42},html:{type:"string",id:43},galleryStyle:{type:"ProtoGalleryStyleMode",id:45},logoPosition:{type:"ProtoLogoPositionMode",id:46},lineItems:{rule:"repeated",type:"ProtoLineItem",id:49},adPlaybackMode:{type:"ProtoAdPlaybackMode",id:50},css:{type:"string",id:51},sessionId:{type:"string",id:52},playlistId:{type:"string",id:53},playerType:{type:"ProtoElementsTypeEnum",id:54},outstreamInitialRendering:{type:"ProtoOutstreamInitialRenderingEnum",id:55},outstreamHouseBackgroundColor:{type:"string",id:56},outstreamTotalAdBreakLength:{type:"int32",id:57},outstreamEndAdBreakPolicy:{type:"ProtoOutstreamEndAdBreakPolicyEnum",id:58},galleryOrientation:{type:"ProtoGalleryOrientationEnum",id:59},playlist:{rule:"repeated",type:"ProtoPlaylistItem",id:60},floatingAppendLocation:{type:"ProtoFloatingAppendLocationEnum",id:61},floatingYAxisPadding:{type:"int32",id:62},customJsCode:{type:"string",id:63},videoQuality:{type:"ProtoVideoQuality",id:64},initializationSettingsJson:{type:"string",id:65},skipAdAfter:{type:"int32",id:67,options:{default:5}},adBreaks:{rule:"repeated",type:"ProtoAdBreak",id:68},amazonTamSlotId:{type:"string",id:69},midRollOnlyOnLongContent:{type:"bool",id:70,options:{default:!0}},limitClientSideApiUse:{type:"bool",id:71},abTestId:{type:"string",id:72},skipMin:{type:"int32",id:73,options:{default:31}},skippability:{type:"ProtoPlayerSkippabilityType",id:74},logoResource:{type:"string",id:76},nonlinearPlayerSettings:{type:"ProtoNonlinearPlayerSettings",id:77},displayAdCountdown:{type:"bool",id:78},bandwidthLoggingState:{type:"ProtoBandwidthLoggingEnum",id:79}}},ProtoElementsResponse:{fields:{errorMessage:{type:"string",id:1},players:{rule:"repeated",type:"ProtoElements",id:10},browser:{type:"Browser",id:11},geoLocation:{type:"GeoLocation",id:12},lineItems:{rule:"repeated",type:"ProtoLineItem",id:13},cookieSyncUrls:{keyType:"int32",type:"string",id:14},explorationMode:{type:"bool",id:15},supplyChain:{type:"ProtoSupplyChain",id:17},secondLevelDomain:{type:"string",id:18},userInformation:{type:"ProtoUserInformation",id:20},serverAb0:{type:"int32",id:21},serverAb1:{type:"int32",id:22},isSeoTraffic:{type:"bool",id:23},apiHostUrl:{type:"string",id:24},publisherNetworkCode:{type:"string",id:26},iOSAppID:{type:"string",id:27},hashedPageUrl:{type:"string",id:28},bundleAbId:{type:"string",id:29},bundlePart:{type:"string",id:30}}},ProtoLineItemAdBreakTargeting:{fields:{adRollType:{type:"ProtoAdBreakTypeEnum",id:1},adBreakTypeEnum:{type:"ProtoLineItemAdBreakTypeEnum",id:2}}},ProtoLineItemAdPodTargeting:{fields:{targetingType:{type:"ProtoLineItemTargetingTypeEnum",id:1},adSlotTargetingType:{type:"ProtoLineItemAdSlotTargetingTypeEnum",id:2},adSlotPositions:{rule:"repeated",type:"int32",id:3,options:{packed:!1}}}},ProtoLineItemAdBreakSettings:{fields:{adBreakTargeting:{rule:"repeated",type:"ProtoLineItemAdBreakTargeting",id:1},adPodTargeting:{type:"ProtoLineItemAdPodTargeting",id:2}}},ProtoLineItem:{oneofs:{Dc:{oneof:["predictedFloorPrice"]}},fields:{predictedFloorPrice:{type:"double",id:49,options:{proto3_optional:!0}},publisherLineItemId:{type:"string",id:1},advertiserLineItemId:{type:"string",id:2},adTag:{type:"string",id:3},creativeType:{type:"ProtoCreativeTypeEnum",id:4},sound:{type:"bool",id:6},viewability:{type:"bool",id:7},impressionTimeSpent:{type:"int32",id:9},vendorId:{type:"string",id:10},trackers:{rule:"repeated",type:"CreativeTrackerViewModel",id:12},duration:{type:"int32",id:13},renditions:{rule:"repeated",type:"ProtoRendition",id:14},mediaCreativeId:{type:"string",id:15},ignoreFilledRequests:{type:"bool",id:16},requestCap:{type:"int32",id:17,options:{default:3}},impressionCap:{type:"int32",id:18},successRate:{type:"double",id:19},lineItemPriority:{type:"ProtoLineItemPriority",id:20},headerBidderBids:{type:"string",id:21},headerBidderTimeout:{type:"int32",id:22},mediaCreativeClickUrl:{type:"string",id:23},resetRequestsCapTime:{type:"int32",id:24,options:{default:60}},resetImpressionsCapTime:{type:"int32",id:25,options:{default:60}},resetCapType:{type:"ProtoResetCapTypeEnum",id:26},creativeHlsFileName:{type:"string",id:27},timeBetweenRequests:{type:"int32",id:28},skipMode:{type:"ProtoAdSkipMode",id:29},mediaIdTargeting:{type:"ProtoTargetingChoiceModel",id:30},mediaKeywordsTargeting:{type:"ProtoTargetingChoiceModel",id:31},mediaLanguageTargeting:{type:"ProtoTargetingChoiceModel",id:32},adType:{type:"ProtoAdType",id:33},overlayTime:{type:"int32",id:34,options:{default:30}},floorPrice:{type:"double",id:35},adBreakSettings:{type:"ProtoLineItemAdBreakSettings",id:36},floorPrices:{rule:"repeated",type:"double",id:38,options:{packed:!1}},bidRate:{type:"double",id:39},pauseAdOutOfView:{type:"ProtoLineItemPauseAdOutOfViewEnum",id:40},moatTrackingEnabled:{type:"bool",id:41},cnxCreativeId:{type:"string",id:42},blockedDomainsRevisionNumber:{type:"int32",id:44},advertiserContextualTargeting:{rule:"repeated",type:"ProtoContextualTargetingCaseModel",id:45},publisherContextualTargeting:{rule:"repeated",type:"ProtoContextualTargetingCaseModel",id:46},playerSizeTargetings:{type:"ProtoPlayerSizeTargetings",id:47},amazonDealId:{type:"string",id:48},playerOrientationTargeting:{type:"ProtoPlayerOrientationTargetingEnum",id:50},skipMin:{type:"int32",id:51,options:{default:6}},skippability:{type:"ProtoLineItemSkippabilityType",id:52},forceCallingInEveryAO:{type:"bool",id:53},networkExpiryTimeSeconds:{type:"int32",id:54,options:{default:21600}},nonlinearLineItemSettings:{type:"ProtoNonlinearLineItemSettings",id:55},floorPriceData:{rule:"repeated",type:"FloorPriceModel",id:56},playerSize:{type:"string",id:101}}},ProtoTargetingChoiceModel:{fields:{choiceCriteria:{type:"ProtoChoiceCriteriaEnum",id:1},items:{rule:"repeated",type:"string",id:2}}},ProtoContextualTargetingCaseModel:{fields:{filters:{rule:"repeated",type:"ProtoContextualTargetingFilterModel",id:1}}},ProtoContextualTargetingFilterModel:{fields:{type:{type:"ProtoLineItemContextualTargetingEnum",id:1},items:{rule:"repeated",type:"string",id:2},level:{type:"ProtoContextualTargetingLevelEnum",id:3},hashedItemsIds:{rule:"repeated",type:"string",id:4}}},ProtoPlayerSizeTargetings:{fields:{sizeChoiceCriteria:{type:"ProtoSizeChoiceCriteriaEnum",id:1},minWidth:{type:"int32",id:2},maxWidth:{type:"int32",id:3}}},FloorPriceModel:{fields:{price:{type:"double",id:1},factor:{type:"double",id:2}}},CreativeTrackerViewModel:{fields:{type:{type:"ProtoTrackerType",id:1},trigger:{type:"ProtoTrackerTriggerType",id:2},url:{type:"string",id:3}}},ProtoRendition:{fields:{height:{type:"int32",id:1},codec:{type:"string",id:2},file:{type:"string",id:3}}},ProtoNonlinearLineItemSettings:{fields:{nonLinearRequestType:{type:"ProtoNonlinearRequestType",id:1},nonLinearAdTimeSeconds:{type:"int32",id:2,options:{default:15}}}},Browser:{fields:{browserVersion:{type:"string",id:1},browserType:{type:"string",id:2},osCode:{type:"string",id:3},device:{type:"ProtoDeviceType",id:4}}},GeoLocation:{fields:{countryGeoId:{type:"int32",id:1},cityId:{type:"int32",id:2},subdivisionId:{type:"int32",id:3},dmaId:{type:"int32",id:4},ip:{type:"string",id:5},lat:{type:"double",id:6},lon:{type:"double",id:7},zipcode:{type:"string",id:8}}},ProtoSupplyChain:{fields:{businessDomain:{type:"string",id:1},supplyChainId:{type:"string",id:3}}},ProtoUserInformation:{fields:{userId:{type:"string",id:1},lookupId:{type:"string",id:3},lookupResponseCode:{type:"int32",id:4},callFraudSensor:{type:"bool",id:5},publisherAdsTxt:{type:"string",id:6}}},ProtoAdBreak:{fields:{types:{rule:"repeated",type:"ProtoAdBreakTypeEnum",id:1,options:{packed:!1}},maxAdPodDuration:{type:"int32",id:2},maxAdSlotDuration:{type:"int32",id:3,options:{default:180}},numberOfAdSlots:{type:"int32",id:4,options:{default:1}}}},ProtoNonlinearPlayerSettings:{fields:{numberOfNonlinearAds:{type:"int32",id:1},timeSecondsBetweenNonlinear:{type:"int32",id:2,options:{default:5}},timeSecondsBetweenLinearAndNonlinear:{type:"int32",id:3}}},ProtoOutstreamInitialRenderingEnum:{values:{ExpandWithAd:0,FullyRendered:1}},ProtoOutstreamEndAdBreakPolicyEnum:{values:{Hide:0,HouseScreen:1,Loop:2}},ProtoGalleryStyleMode:{values:{None:0,Detailed:1,Visual:2}},ProtoLogoPositionMode:{values:{None:0,ControlBar:1,BottomRight:2,BottomLeft:3,TopRight:4,TopLeft:5,Center:6}},ProtoGalleryOrientationEnum:{values:{Landscape:0,Portrait:1}},ProtoElementsTypeEnum:{values:{InStream:0,OutStream:1,InStreamInApp:2,Live:3}},ProtoPlayerUpNextMode:{values:{Loop:0,Next:1,Stop:2}},ProtoCreativeTypeEnum:{values:{ThirdParty:0,MediaFile:1,Rtb:2,External:3,HeaderBidder:4,Tam:7,TamDeal:8}},ProtoResetCapTypeEnum:{values:{TimeCapping:0,ContentCapping:1,OpportunityCapping:2}},ProtoAdSlotsEnum:{values:{PreRoll:0,MidRoll:1,PostRoll:2}},ProtoLineItemPriority:{values:{House:0,Default:1,Preferred:2,Top:3}},ProtoAdSkipMode:{values:{IfLongerThan31Sec:0,Always:1,Never:2,NotAplicable:3}},ProtoAdType:{values:{Video:0,Overlay:1,Nonlinear:2}},ProtoChoiceCriteriaEnum:{values:{Only:0,Except:1}},ProtoLineItemAdBreakTypeEnum:{values:{All:1,SingleAd:2,AdPod:3}},ProtoLineItemTargetingTypeEnum:{values:{Only:0,Except:1}},ProtoLineItemAdSlotTargetingTypeEnum:{values:{SpecificSlots:1,Interval:2}},ProtoLineItemPauseAdOutOfViewEnum:{values:{Default:0,Strict:1}},ProtoLineItemContextualTargetingEnum:{values:{IncludeAny:0,IncludeAll:1,ExcludeAny:2,ExcludeAll:3}},ProtoSizeChoiceCriteriaEnum:{values:{GreaterThan:0,SmallerThan:1,Between:2}},ProtoPlayerOrientationTargetingEnum:{values:{Both:0,Portrait:1,Landscape:2}},ProtoLineItemSkippabilityType:{values:{AllowPublisherToDetermineSkippability:0,RequirePublisherToAllowNonSkipAdsShorterThan:1,NotApplicable:2}},ProtoContextualTargetingLevelEnum:{values:{Media:0,Page:1,Both:2}},ProtoTrackerType:{values:{Image:0,Javascript:1}},ProtoTrackerTriggerType:{values:{Impression:0,Complete25Pc:1,Complete50Pc:2,Complete75Pc:3,ViewCompletion:4,VideoClick:5,Pause:6,Resume:7,Mute:8,Unmute:9}},ProtoPlayerPlaybackModeEnum:{values:{Autoplay:0,ScrollToPlay:1,ClickToPlay:2}},ProtoPlayerCloseButtonMode:{values:{Off:0,OnHover:1,OnHoverAfterFirstAd:2,AlwaysOn:3}},ProtoPlayerFloatingMode:{values:{Off:0,OnPageLoad:1,AfterInView:2,Always:3}},ProtoPlayerSoundMode:{values:{Mute:0,On:1,Hover:2}},ProtoPlayerInsertMode:{values:{WithinContainer:0,BeforeContainer:1,AfterContainer:2,ReplaceContainer:3,HideContainer:4}},ProtoAdViewabilityPolicy:{values:{Default:0,Strict:1}},ProtoSharingDestination:{values:{Facebook:0,Twitter:1,LinkedIn:2}},ProtoFloatingFixedPositionMode:{values:{Page:0,Element:1}},ProtoPositionMode:{values:{BottomRight:0,BottomLeft:1,TopRight:2,TopLeft:3}},ProtoAdPlaybackMode:{values:{Autoplay:0,ScrollToPlay:1}},ProtoFloatingAppendLocationEnum:{values:{Above:0,Below:1,Within:2}},ProtoPlayerAdSkippability:{values:{IfLongerThan:0,Always:1,NoRestrictions:2}},ProtoVideoQuality:{values:{Auto:0,High1080p:1,High720p:2,Medium360p:3}},ProtoImplementationType:{values:{Web:0,Amp:1}},ProtoAdBreakTypeEnum:{values:{None:0,PreRoll:1,MidRoll:2,PostRoll:3}},ProtoAdSlotAdTypeEnum:{values:{SingleAd:0,AdPod:1}},ProtoPlayerSkippabilityType:{values:{AllowNonSkipAdsIfTheyAreShorterThan:0,RequireAdsToBeSkippable:1}},ProtoBandwidthLoggingEnum:{values:{Disabled:0,Enabled:1,SaaS:2}},ProtoNonlinearRequestType:{values:{Banner:0,Video:1}},ProtoDeviceType:{values:{Desktop:0,Smartphone:1,Tablet:2,GameConsole:3,SmartTV:4,WearableComputer:5,PDA:6,Unrecognized:7}}})})?s.apply(i,n):s)||(t.exports=r)},5648:function(t,i,e){var s,n,r;n=[e(4492)],void 0===(r="function"==typeof(s=function(t){"use strict";return(t.roots.playspace||(t.roots.playspace=new t.Root)).addJSON({ProtoPlayspaceVideoSlideRendition:{fields:{width:{type:"int32",id:1},height:{type:"int32",id:2},videoUrl:{type:"string",id:3},codec:{type:"ProtoPlayspaceCodecEnum",id:4}}},ProtoPlayspaceVideoSettings:{fields:{renditions:{rule:"repeated",type:"ProtoPlayspaceVideoSlideRendition",id:1}}},ProtoSlideCapabilityMetadata:{fields:{label:{type:"string",id:1}}},ProtoPlayspaceSlideCapability:{fields:{type:{type:"ProtoPlayspaceSlideCapabilitiesEnum",id:1},metadata:{type:"ProtoSlideCapabilityMetadata",id:2}}},ProtoFallbackStoryResponse:{fields:{storyId:{type:"string",id:1},activeVersionId:{type:"string",id:2}}},ProtoPlayspaceMediaMetadataResponse:{fields:{slides:{rule:"repeated",type:"ProtoPlayspaceSlideMetadata",id:1},storyTitle:{type:"string",id:2}}},ProtoPlayspaceSlideMetadata:{fields:{mediaType:{type:"ProtoMediaTypeEnum",id:1},title:{type:"string",id:2},clickUrl:{type:"string",id:3},imageUrl:{type:"string",id:4},slideDuration:{type:"int32",id:5},videoRendition:{type:"ProtoPlayspaceVideoSettings",id:6},type:{type:"ProtoPlayspaceSlideTypeEnum",id:7},coverMetadata:{type:"ProtoPlayspaceCoverMetadata",id:8},descriptionMetadata:{type:"ProtoPlayspaceDescriptionMetadata",id:9},bulletListMetadata:{type:"ProtoPlayspaceBulletListMetadata",id:10},quoteMetadata:{type:"ProtoPlayspaceQuoteMetadata",id:12},instagramMetadata:{type:"ProtoPlayspaceInstagramMetadata",id:16},capabilityList:{rule:"repeated",type:"ProtoPlayspaceSlideCapability",id:13},portraitImageUrl:{type:"string",id:14},mediaContext:{type:"ProtoMediaContextEnum",id:15},altText:{type:"string",id:17}}},ProtoPlayspaceCoverMetadata:{fields:{title:{type:"string",id:1},subtitle:{type:"string",id:2}}},ProtoPlayspaceDescriptionChunk:{fields:{text:{type:"string",id:1},colorScheme:{type:"ProtoPlayspaceColorSchemeEnum",id:2}}},ProtoPlayspaceDescriptionMetadata:{fields:{chunkList:{rule:"repeated",type:"ProtoPlayspaceDescriptionChunk",id:1},label:{type:"ProtoPlayspaceDescriptionChunk",id:2}}},ProtoBulletOptions:{fields:{title:{type:"string",id:1},description:{type:"string",id:2}}},ProtoPlayspaceBulletListMetadata:{fields:{title:{type:"string",id:1},items:{rule:"repeated",type:"ProtoBulletOptions",id:2}}},ProtoPlayspaceQuoteMetadata:{fields:{text:{type:"string",id:1},source:{type:"string",id:2}}},ProtoPlayspaceInstagramMetadata:{fields:{handle:{type:"string",id:1},createdDate:{type:"string",id:2},likes:{type:"string",id:3},comments:{type:"string",id:4}}},ProtoPlayspaceColorPrimary:{fields:{background:{type:"string",id:1,options:{default:"#F1F1F1"}},foreground:{type:"string",id:2,options:{default:"#000000"}}}},ProtoPlayspaceColorSecondary:{fields:{background:{type:"string",id:1,options:{default:"#000000 "}},foreground:{type:"string",id:2,options:{default:"#F1F1F1"}}}},ProtoPlayspaceColorAccent:{fields:{background:{type:"string",id:1},foreground:{type:"string",id:2}}},ProtoPlayspaceRequest:{fields:{tokens:{rule:"repeated",type:"string",id:1},pageUrl:{type:"string",id:3},userId:{type:"string",id:5},forcePlayerId:{type:"string",id:7},forceStoryId:{type:"string",id:8},version:{type:"int32",id:9},clientAb0:{type:"int32",id:10},clientAb1:{type:"int32",id:11},forceLineItemIds:{rule:"repeated",type:"string",id:12},customParam1:{type:"string",id:14},customParam2:{type:"string",id:15},customParam3:{type:"string",id:16},forceExploration:{type:"bool",id:17},es6:{type:"bool",id:18},bundleId:{type:"string",id:19},parseDomain:{type:"bool",id:20},implementationType:{type:"ProtoImplementationType",id:21},queryJsTargeting:{keyType:"string",type:"string",id:22},isConsentConnatix:{type:"bool",id:23,options:{default:!0}},reloadedPlayers:{keyType:"string",type:"string",id:25},disableTracking:{type:"bool",id:27},referrer:{type:"string",id:28},customParam4:{type:"string",id:29},customParam5:{type:"string",id:30}}},ProtoPlayspace:{fields:{playerId:{type:"string",id:1},playbackMode:{type:"ProtoPlayerPlaybackModeEnum",id:2},soundMode:{type:"ProtoPlayerSoundMode",id:3},endOfCycleMode:{type:"ProtoEndOfSlideCycleMode",id:4},containerSelector:{type:"string",id:5},position:{type:"int32",id:6},insertPosition:{type:"ProtoPlayerInsertMode",id:7},forceInsertPath:{type:"bool",id:8},renderInFrame:{type:"bool",id:9},scrollHijackingProtection:{type:"bool",id:10},preRollBreak:{type:"int32",id:11},postRollBreak:{type:"int32",id:12},midRollNumber:{type:"int32",id:13,options:{default:-1}},slidesBetweenAds:{type:"int32",id:14},minSlidesBeforeFirstAd:{type:"int32",id:15},adViewabilityPolicy:{type:"ProtoAdViewabilityPolicy",id:16},casting:{type:"bool",id:18},sharingDestinations:{rule:"repeated",type:"ProtoSharingDestination",id:19,options:{packed:!1}},expandButton:{type:"bool",id:20},closeButtonMode:{type:"ProtoPlayerCloseButtonMode",id:21},floatingMode:{type:"ProtoPlayerFloatingMode",id:22},floatingDeviceMode:{rule:"repeated",type:"ProtoDeviceType",id:23,options:{packed:!1}},floatingCloseButtonMode:{type:"ProtoPlayerCloseButtonMode",id:24},floatingFixedPosition:{type:"ProtoFloatingFixedPositionMode",id:25},floatingPageElement:{type:"string",id:26},floatingUseElementWidth:{type:"bool",id:27},floatingScrollPosition:{type:"ProtoPositionMode",id:28},floatingGutterX:{type:"int32",id:29},floatingGutterY:{type:"int32",id:30},floatingWidth:{type:"int32",id:31},html:{type:"string",id:35},lineItems:{rule:"repeated",type:"ProtoLineItem",id:37},adPlaybackMode:{type:"ProtoAdPlaybackMode",id:38},css:{type:"string",id:39},sessionId:{type:"string",id:40},orientation:{type:"ProtoPlayerOrientationEnum",id:41},orientationBreakpoint:{type:"int32",id:42},activeVersion:{type:"string",id:43},storyId:{type:"string",id:44},floatingAppendLocation:{type:"ProtoFloatingAppendLocationEnum",id:50},floatingYAxisPadding:{type:"int32",id:51},contentTitleTextColor:{type:"string",id:57},useAccentColorForProgressBar:{type:"bool",id:58},primaryColorList:{type:"ProtoPlayspaceColorPrimary",id:59},secondaryColorList:{type:"ProtoPlayspaceColorSecondary",id:60},accentColorList:{type:"ProtoPlayspaceColorAccent",id:61},customJsCode:{type:"string",id:62},initializationSettingsJson:{type:"string",id:63},publisherName:{type:"string",id:64},skipAdAfter:{type:"int32",id:66,options:{default:5}},adBreaks:{rule:"repeated",type:"ProtoAdBreak",id:67},amazonTamSlotId:{type:"string",id:68},limitClientSideApiUse:{type:"bool",id:69},abTestId:{type:"string",id:70},skipMin:{type:"int32",id:71,options:{default:31}},skippability:{type:"ProtoPlayerSkippabilityType",id:72},logoResource:{type:"string",id:73},activeVersionHasInsights:{type:"bool",id:74},bandwidthLoggingState:{type:"ProtoBandwidthLoggingEnum",id:76}}},ProtoPlayspaceResponse:{fields:{errorMessage:{type:"string",id:1},players:{rule:"repeated",type:"ProtoPlayspace",id:10},browser:{type:"Browser",id:11},geoLocation:{type:"GeoLocation",id:12},lineItems:{rule:"repeated",type:"ProtoLineItem",id:13},cookieSyncUrls:{keyType:"int32",type:"string",id:14},explorationMode:{type:"bool",id:15},supplyChain:{type:"ProtoSupplyChain",id:17},secondLevelDomain:{type:"string",id:18},userInformation:{type:"ProtoUserInformation",id:20},serverAb0:{type:"int32",id:21},serverAb1:{type:"int32",id:22},isSeoTraffic:{type:"bool",id:23},apiHostUrl:{type:"string",id:24},publisherNetworkCode:{type:"string",id:26},iOSAppID:{type:"string",id:27},hashedPageUrl:{type:"string",id:28},bundleAbId:{type:"string",id:29},bundlePart:{type:"string",id:30}}},Browser:{fields:{browserVersion:{type:"string",id:1},browserType:{type:"string",id:2},osCode:{type:"string",id:3},device:{type:"ProtoDeviceType",id:4}}},GeoLocation:{fields:{countryGeoId:{type:"int32",id:1},cityId:{type:"int32",id:2},subdivisionId:{type:"int32",id:3},dmaId:{type:"int32",id:4},ip:{type:"string",id:5},lat:{type:"double",id:6},lon:{type:"double",id:7},zipcode:{type:"string",id:8}}},CreativeTrackerViewModel:{fields:{type:{type:"ProtoTrackerType",id:1},trigger:{type:"ProtoTrackerTriggerType",id:2},url:{type:"string",id:3}}},ProtoLineItemAdBreakTargeting:{fields:{adRollType:{type:"ProtoAdBreakTypeEnum",id:1},adBreakTypeEnum:{type:"ProtoLineItemAdBreakTypeEnum",id:2}}},ProtoLineItemAdPodTargeting:{fields:{targetingType:{type:"ProtoLineItemTargetingTypeEnum",id:1},adSlotTargetingType:{type:"ProtoLineItemAdSlotTargetingTypeEnum",id:2},adSlotPositions:{rule:"repeated",type:"int32",id:3,options:{packed:!1}}}},ProtoLineItemAdBreakSettings:{fields:{adBreakTargeting:{rule:"repeated",type:"ProtoLineItemAdBreakTargeting",id:1},adPodTargeting:{type:"ProtoLineItemAdPodTargeting",id:2}}},ProtoLineItem:{oneofs:{Dc:{oneof:["predictedFloorPrice"]}},fields:{predictedFloorPrice:{type:"double",id:49,options:{proto3_optional:!0}},publisherLineItemId:{type:"string",id:1},advertiserLineItemId:{type:"string",id:2},adTag:{type:"string",id:3},creativeType:{type:"ProtoCreativeTypeEnum",id:4},sound:{type:"bool",id:6},viewability:{type:"bool",id:7},impressionTimeSpent:{type:"int32",id:9},vendorId:{type:"string",id:10},trackers:{rule:"repeated",type:"CreativeTrackerViewModel",id:12},duration:{type:"int32",id:13},renditions:{rule:"repeated",type:"ProtoRendition",id:14},mediaCreativeId:{type:"string",id:15},ignoreFilledRequests:{type:"bool",id:16},requestCap:{type:"int32",id:17,options:{default:3}},impressionCap:{type:"int32",id:18},successRate:{type:"double",id:19},lineItemPriority:{type:"ProtoLineItemPriority",id:20},headerBidderBids:{type:"string",id:21},headerBidderTimeout:{type:"int32",id:22},mediaCreativeClickUrl:{type:"string",id:23},resetRequestsCapTime:{type:"int32",id:24,options:{default:60}},resetImpressionsCapTime:{type:"int32",id:25,options:{default:60}},resetCapType:{type:"ProtoResetCapTypeEnum",id:26},creativeHlsFileName:{type:"string",id:27},timeBetweenRequests:{type:"int32",id:28},skipMode:{type:"ProtoAdSkipMode",id:29},mediaIdTargeting:{type:"ProtoTargetingChoiceModel",id:30},mediaKeywordsTargeting:{type:"ProtoTargetingChoiceModel",id:31},mediaLanguageTargeting:{type:"ProtoTargetingChoiceModel",id:32},adType:{type:"ProtoAdType",id:33},overlayTime:{type:"int32",id:34,options:{default:30}},floorPrice:{type:"double",id:35},adBreakSettings:{type:"ProtoLineItemAdBreakSettings",id:36},floorPrices:{rule:"repeated",type:"double",id:38,options:{packed:!1}},bidRate:{type:"double",id:39},pauseAdOutOfView:{type:"ProtoLineItemPauseAdOutOfViewEnum",id:40},moatTrackingEnabled:{type:"bool",id:41},cnxCreativeId:{type:"string",id:42},blockedDomainsRevisionNumber:{type:"int32",id:44},advertiserContextualTargeting:{rule:"repeated",type:"ProtoContextualTargetingCaseModel",id:45},publisherContextualTargeting:{rule:"repeated",type:"ProtoContextualTargetingCaseModel",id:46},playerSizeTargetings:{type:"ProtoPlayerSizeTargetings",id:47},amazonDealId:{type:"string",id:48},playerOrientationTargeting:{type:"ProtoPlayerOrientationTargetingEnum",id:50},skipMin:{type:"int32",id:51,options:{default:6}},skippability:{type:"ProtoLineItemSkippabilityType",id:52},forceCallingInEveryAO:{type:"bool",id:53},networkExpiryTimeSeconds:{type:"int32",id:54,options:{default:21600}},nonlinearLineItemSettings:{type:"ProtoNonlinearLineItemSettings",id:55},floorPriceData:{rule:"repeated",type:"FloorPriceModel",id:56},playerSize:{type:"string",id:101}}},ProtoTargetingChoiceModel:{fields:{choiceCriteria:{type:"ProtoChoiceCriteriaEnum",id:1},items:{rule:"repeated",type:"string",id:2}}},ProtoContextualTargetingCaseModel:{fields:{filters:{rule:"repeated",type:"ProtoContextualTargetingFilterModel",id:1}}},ProtoContextualTargetingFilterModel:{fields:{type:{type:"ProtoLineItemContextualTargetingEnum",id:1},items:{rule:"repeated",type:"string",id:2},level:{type:"ProtoContextualTargetingLevelEnum",id:3},hashedItemsIds:{rule:"repeated",type:"string",id:4}}},ProtoPlayerSizeTargetings:{fields:{sizeChoiceCriteria:{type:"ProtoSizeChoiceCriteriaEnum",id:1},minWidth:{type:"int32",id:2},maxWidth:{type:"int32",id:3}}},FloorPriceModel:{fields:{price:{type:"double",id:1},factor:{type:"double",id:2}}},ProtoRendition:{fields:{height:{type:"int32",id:1},codec:{type:"string",id:2},file:{type:"string",id:3}}},ProtoNonlinearLineItemSettings:{fields:{nonLinearRequestType:{type:"ProtoNonlinearRequestType",id:1},nonLinearAdTimeSeconds:{type:"int32",id:2,options:{default:15}}}},ProtoSupplyChain:{fields:{businessDomain:{type:"string",id:1},supplyChainId:{type:"string",id:3}}},ProtoUserInformation:{fields:{userId:{type:"string",id:1},lookupId:{type:"string",id:3},lookupResponseCode:{type:"int32",id:4},callFraudSensor:{type:"bool",id:5},publisherAdsTxt:{type:"string",id:6}}},ProtoAdBreak:{fields:{types:{rule:"repeated",type:"ProtoAdBreakTypeEnum",id:1,options:{packed:!1}},maxAdPodDuration:{type:"int32",id:2},maxAdSlotDuration:{type:"int32",id:3,options:{default:180}},numberOfAdSlots:{type:"int32",id:4,options:{default:1}}}},ProtoPlayspaceCodecEnum:{values:{h264:0,hevc:1}},ProtoPlayerOrientationEnum:{values:{Mixed:0,Portrait:1,Landscape:2}},ProtoEndOfSlideCycleMode:{values:{Loop:0,Stop:1}},ProtoPlayspaceColorSchemeEnum:{values:{Default:0,Accent:1,Primary:2,Secondary:3}},ProtoPlayspaceSlideTypeEnum:{values:{Default:0,Cover:1,Description:2,BulletList:3,Stock:4,Quote:5,Instagram:6}},ProtoPlayspaceSlideCapabilitiesEnum:{values:{VolumeControls:0,PlaybackControls:1,PlaylistControls:2,CtaButton:3,TopStoryTitle:4,TopSlideTitle:5}},ProtoMediaContextEnum:{values:{None:0,Logo:1}},ProtoMediaTypeEnum:{values:{Image:0,Video:1}},ProtoDeviceType:{values:{Desktop:0,Smartphone:1,Tablet:2,GameConsole:3,SmartTV:4,WearableComputer:5,PDA:6,Unrecognized:7}},ProtoTrackerType:{values:{Image:0,Javascript:1}},ProtoTrackerTriggerType:{values:{Impression:0,Complete25Pc:1,Complete50Pc:2,Complete75Pc:3,ViewCompletion:4,VideoClick:5,Pause:6,Resume:7,Mute:8,Unmute:9}},ProtoCreativeTypeEnum:{values:{ThirdParty:0,MediaFile:1,Rtb:2,External:3,HeaderBidder:4,Tam:7,TamDeal:8}},ProtoResetCapTypeEnum:{values:{TimeCapping:0,ContentCapping:1,OpportunityCapping:2}},ProtoAdSlotsEnum:{values:{PreRoll:0,MidRoll:1,PostRoll:2}},ProtoLineItemPriority:{values:{House:0,Default:1,Preferred:2,Top:3}},ProtoAdSkipMode:{values:{IfLongerThan31Sec:0,Always:1,Never:2,NotAplicable:3}},ProtoAdType:{values:{Video:0,Overlay:1,Nonlinear:2}},ProtoChoiceCriteriaEnum:{values:{Only:0,Except:1}},ProtoLineItemAdBreakTypeEnum:{values:{All:1,SingleAd:2,AdPod:3}},ProtoLineItemTargetingTypeEnum:{values:{Only:0,Except:1}},ProtoLineItemAdSlotTargetingTypeEnum:{values:{SpecificSlots:1,Interval:2}},ProtoLineItemPauseAdOutOfViewEnum:{values:{Default:0,Strict:1}},ProtoLineItemContextualTargetingEnum:{values:{IncludeAny:0,IncludeAll:1,ExcludeAny:2,ExcludeAll:3}},ProtoSizeChoiceCriteriaEnum:{values:{GreaterThan:0,SmallerThan:1,Between:2}},ProtoPlayerOrientationTargetingEnum:{values:{Both:0,Portrait:1,Landscape:2}},ProtoLineItemSkippabilityType:{values:{AllowPublisherToDetermineSkippability:0,RequirePublisherToAllowNonSkipAdsShorterThan:1,NotApplicable:2}},ProtoContextualTargetingLevelEnum:{values:{Media:0,Page:1,Both:2}},ProtoPlayerPlaybackModeEnum:{values:{Autoplay:0,ScrollToPlay:1,ClickToPlay:2}},ProtoPlayerCloseButtonMode:{values:{Off:0,OnHover:1,OnHoverAfterFirstAd:2,AlwaysOn:3}},ProtoPlayerFloatingMode:{values:{Off:0,OnPageLoad:1,AfterInView:2,Always:3}},ProtoPlayerSoundMode:{values:{Mute:0,On:1,Hover:2}},ProtoPlayerInsertMode:{values:{WithinContainer:0,BeforeContainer:1,AfterContainer:2,ReplaceContainer:3,HideContainer:4}},ProtoAdViewabilityPolicy:{values:{Default:0,Strict:1}},ProtoSharingDestination:{values:{Facebook:0,Twitter:1,LinkedIn:2}},ProtoFloatingFixedPositionMode:{values:{Page:0,Element:1}},ProtoPositionMode:{values:{BottomRight:0,BottomLeft:1,TopRight:2,TopLeft:3}},ProtoAdPlaybackMode:{values:{Autoplay:0,ScrollToPlay:1}},ProtoFloatingAppendLocationEnum:{values:{Above:0,Below:1,Within:2}},ProtoPlayerAdSkippability:{values:{IfLongerThan:0,Always:1,NoRestrictions:2}},ProtoVideoQuality:{values:{Auto:0,High1080p:1,High720p:2,Medium360p:3}},ProtoImplementationType:{values:{Web:0,Amp:1}},ProtoAdBreakTypeEnum:{values:{None:0,PreRoll:1,MidRoll:2,PostRoll:3}},ProtoAdSlotAdTypeEnum:{values:{SingleAd:0,AdPod:1}},ProtoPlayerSkippabilityType:{values:{AllowNonSkipAdsIfTheyAreShorterThan:0,RequireAdsToBeSkippable:1}},ProtoBandwidthLoggingEnum:{values:{Disabled:0,Enabled:1,SaaS:2}},ProtoNonlinearRequestType:{values:{Banner:0,Video:1}}})})?s.apply(i,n):s)||(t.exports=r)},3204:t=>{"use strict";t.exports='\n'},3653:t=>{"use strict";t.exports=''},1505:t=>{"use strict";t.exports=''},2040:t=>{"use strict";t.exports='\n'},3475:t=>{"use strict";t.exports='\n'},1215:t=>{"use strict";t.exports='\n'},5522:t=>{"use strict";t.exports=''},9479:t=>{"use strict";t.exports='\n'},1954:t=>{"use strict";t.exports=''},7089:t=>{"use strict";t.exports='\n'},3409:t=>{"use strict";t.exports='\n'},889:t=>{"use strict";t.exports=''},6514:t=>{"use strict";t.exports=''},89:t=>{"use strict";t.exports='\n'},4670:t=>{"use strict";t.exports=''},1639:t=>{"use strict";t.exports='\n'},834:t=>{"use strict";t.exports='\n'},4562:t=>{"use strict";t.exports='\n'},4368:t=>{"use strict";t.exports=''},9335:t=>{"use strict";t.exports='\n'},8808:t=>{"use strict";t.exports='\n'},8757:t=>{"use strict";t.exports=''},9040:t=>{"use strict";t.exports=''}},i={},e,s;function n(e){var s=i[e];if(void 0!==s)return s.exports;var r=i[e]={id:e,loaded:!1,exports:{}};return t[e].call(r.exports,r,r.exports,n),r.loaded=!0,r.exports}n.n=t=>{var i=t&&t.R?()=>t.default:()=>t;return n.d(i,{a:i}),i},s=Object.getPrototypeOf?t=>Object.getPrototypeOf(t):t=>t.__proto__,n.t=function(t,i){if(1&i&&(t=this(t)),8&i)return t;if("object"==typeof t&&t){if(4&i&&t.R)return t;if(16&i&&"function"==typeof t.then)return t}var r=Object.create(null);n.r(r);var h={};e=e||[null,s({}),s([]),s(s)];for(var o=2&i&&t;"object"==typeof o&&!~e.indexOf(o);o=s(o))Object.getOwnPropertyNames(o).forEach((i=>h[i]=()=>t[i]));return h.default=()=>t,n.d(r,h),r},n.d=(t,i)=>{for(var e in i)n.o(i,e)&&!n.o(t,e)&&Object.defineProperty(t,e,{enumerable:!0,get:i[e]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,i)=>Object.prototype.hasOwnProperty.call(t,i),n.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"R",{value:!0})},n.nmd=t=>(t.paths=[],t.children||(t.children=[]),t);var r={};(()=>{"use strict";n(8660);var t,i=n(7726),e=n(7272),s=(n(6450),n(289)),r=n(8804),h=n(5880),o=n(782),a=n(3030),c=n(2820);!function(t){t.Deprecation="deprecation",t.Intervention="intervention",t.Crash="crash"}(t||(t={}));class l{constructor(t,i,e){this.Ne=t,this.Nc=i,this.Hc=e,this.qc=!1,this.Wc=()=>{"hidden"===this.Ne.document.visibilityState&&this.Gc()},this.Gc=()=>{if(this.qc||!this.Jc)return;const t=this.Jc.takeRecords();this.Qc(t),this.qc=!0},this.Qc=t=>{t.filter((({body:t})=>"HeavyAdIntervention"===(null==t?void 0:t.id))).forEach((()=>{this.Nc.trackHeavyAdIntervention(this.Hc)}))},this.Xc()&&this.Yo()}destroy(){this.Ne.removeEventListener("pagehide",this.Gc),this.Ne.removeEventListener("visibilitychange",this.Wc)}Xc(){return!!this.Ne.ReportingObserver}Yo(){this.Jc=new this.Ne.ReportingObserver((t=>{this.Qc(t)}),{buffered:!0,types:[t.Intervention]}),this.Jc.observe(),this.Ne.addEventListener("pagehide",this.Gc),this.Ne.addEventListener("visibilitychange",this.Wc)}}var u=n(4280),d=n(497);class p extends h._{constructor(t,i,e,n,r){super(),this.mediator=t,this.playerModel=i,this.app=e,this.Yc=n,this._appSettings=r,this.macroElements={player:[]},this.Kc=!1,this.Zc={description:"{{description}}",title:"{{title}}",player:"{{player}}"},this.tl=null,this.il=500,this.createExperience(i,r),this.el=new l(i.global,this.app.services.TrackingService,{heavyAdBlockTypeEnum:s.ProtoHeavyAdBlockTypeEnum.Global}),this.sl=new l(window,this.app.services.TrackingService,{heavyAdBlockTypeEnum:s.ProtoHeavyAdBlockTypeEnum.Script})}subscribeToEvents(){this.subscribe(o.Uh.Destroy,this.experience,(()=>{this.destroy()})),this.subscribe(o.Uh.CanStart,this.experience,(()=>{this.experience.start()})),this.subscribe(o.Xh.SessionRendered,this.experience,(()=>{this.Yc.wasPlayerReloaded||this.app.services.TrackingService.trackSessionRendered(u._.isBannerBlocked),this.mediator.publish(this,o.Xh.SessionRendered)})),this.subscribe(o.Xh.SessionView,this.experience,(()=>{this.Yc.wasPlayerInView||(this.app.services.TrackingService.trackSessionViewability(),this.mediator.publish(this,o.Xh.SessionView))})),Object.values(this.experience.events).forEach((t=>{this.subscribe(t,this.experience,(i=>{this.experienceApi.trigger(t,i.payload)}))}))}updateMacroContent(t,i){t&&t.forEach((t=>{t.textContent=i}))}de(){this.playerModel.css&&this.app.services.GlobalDomUtilsService.addCssString(this.playerModel.css,`cnx-custom-css-${this.app.config.appId}`)}nl(t){return`${t}`.replace(/{\{([^}]+)}}/g,"$&")}hl(){if(this.experienceContainer=this.ol(),this.playerModel.html){const t=this.app.services.GlobalDomUtilsService.createElementByString(this.nl(this.playerModel.html));this.al(t);const i=this.macroElements.player[0];if(!i)throw Error("player macro was not found");i.innerHTML="",i.parentNode.insertBefore(this.experienceContainer,i),i.parentNode.removeChild(i);(0,a.Sz)(t.children).forEach((t=>{this.playerModel.targetContainer.parentNode.insertBefore(t,this.playerModel.targetContainer)}))}else this.playerModel.targetContainer.parentNode.insertBefore(this.experienceContainer,this.playerModel.targetContainer);this.playerModel.targetContainer.parentElement.removeChild(this.playerModel.targetContainer)}ol(){const t=this.app.config.isMobile?c.s6.Mobile:c.s6.Desktop;return this.app.services.GlobalDomUtilsService.createElementByString(``)}al(t){(0,a.Sz)(t.children).forEach((t=>{t.children.length>0&&this.al(t),Object.keys(this.Zc).forEach((i=>{const e=this.Zc[i];t.textContent.includes(e)&&this.ll(i,t)}))}))}ll(t,i){this.macroElements[t]||(this.macroElements[t]=[]),this.macroElements[t].push(i),i.textContent=""}ul(){null!==this.tl&&(clearInterval(this.tl),this.tl=null)}init(t){this.de(),this.hl();const e=this.app.config.device;return this.isSupportedBreakpoint(e)?(this.subscribeToEvents(),this.experience.dl(this.playerModel,this.app,this.experienceContainer,t),this.tl=setInterval((()=>{this.Kc?this.ul():this.app.services.GlobalDomUtilsService.isDetachedFromDOM(this.experienceContainer)&&(this.destroy(),(0,i.n)({message:"player_removed_from_DOM",level:i.D.INFO}))}),this.il),!0):(this.destroy(),!1)}getApiMethods(){return this.experienceApi.getApiMethods()}get playerContainer(){return this.experienceContainer}destroy(){try{d.S.playerDestroyed=!0,this.Kc=!0,this.ul(),this.app.services.TrackingService.destroy(),this.app.services.ResizeObserver.destroy(),this.app.services.ViewabilityService.destroy(),this.app.services.InteractionService.destroy(),this.experienceApi.setDestroyed(),this.unsubscribeAll(this.experience),this.experience&&(this.experience.destroy(),this.experience=null),this.experienceContainer.parentNode&&this.experienceContainer.parentNode.removeChild(this.experienceContainer),this.el.destroy(),this.sl.destroy()}catch(t){(0,i.n)({callStack:t.stack,level:i.D.WARN,message:"Renderer_destroy",exception:t.message})}}}var f,v,g=n(9078),m=n(1561);!function(t){t[t.DirectionIn=0]="DirectionIn",t[t.DirectionOut=1]="DirectionOut",t[t.FadeIn=2]="FadeIn"}(f||(f={})),function(t){t.Float="float",t.Embed="embed"}(v||(v={}));const y=.5;class b{constructor(t,i,e,s,n,r=0){this.pl=t,this.Wt=i,this.fl=e,this.vl=s,this.Sr=n,this.gl=r,this.ml=void 0,this.yl=null,this.bl=!1,this.Sl=()=>{if(!this.ml||!this._l)return;const t=this.Al(),i=!!this._l;this.Pl(t,i)},this.kl=()=>{var t;if(this.Il()&&(this.Wt.width=null===(t=this._l)||void 0===t?void 0:t.clientWidth),this.Tl(),this.ml){const t=!1,i=this.Al();this.Pl(i,t)}},this.Tl=()=>{this.Cl()?!this.Ml||this.ml||this.bl?this.El():this.Ll():this.ml&&this.Ol()},this.Rl=t=>{if(this.Bl(t.propertyName))switch(this.transitionState){case f.DirectionIn:this.transitionState=void 0,this.Dl();break;case f.DirectionOut:this.transitionState=void 0,this.jl();break;case f.FadeIn:this.transitionState=void 0,this.Fl()}}}get transitionState(){return this.$l}set transitionState(t){this.$l===f.FadeIn&&this.Vl(c.jG.FadeInBase,c.jG.FadeIn),this.$l=t}Ul(...t){(0,m.cn)(this.fl,...t)}Vl(...t){(0,m.IV)(this.fl,...t)}El(){this.vl!==s.ProtoDeviceType.Smartphone&&(this.fl.style.width=`${this.Wt.width}px`);const t=this.fl.getBoundingClientRect().width;this.fl.style.height=this.Wt.getHeight(t)}Nl(){return(0,a.d3)(this.vl,this.Wt.floatingDeviceMode)}Hl(){this.Sr.addEventListenerOnGlobal("scroll",this.Sl)}zl(){this.Sr.removeEventListenerOnGlobal("scroll",this.Sl)}ql(){this._l=this.Sr.querySelector(this.Wt.pageElement),this._l&&(clearInterval(this.yl),this.Wt.width=this._l.clientWidth,this.Tl(),this.pl.on(this._l,this.kl))}Wl(){var t,i;const e=null===(t=this._l)||void 0===t?void 0:t.getBoundingClientRect().top;return this.Wt.appendLocation===s.ProtoFloatingAppendLocationEnum.Above?e-this.fl.offsetHeight-this.Wt.floatingYAxisPadding:this.Wt.appendLocation===s.ProtoFloatingAppendLocationEnum.Below?e+(null===(i=this._l)||void 0===i?void 0:i.offsetHeight)+this.Wt.floatingYAxisPadding:e}Gl(){this.yl=setInterval((()=>{this.ql()}),500),this.ql()}Il(){return this.Wt.floatingPosition===s.ProtoFloatingFixedPositionMode.Element}Bl(t){switch(this.transitionState){case f.DirectionIn:case f.DirectionOut:if("transform"===t)return!0;break;case f.FadeIn:if("opacity"===t)return!0}return!1}Jl(){this.fl.style.top="",this.fl.style.bottom="",this.fl.style.left="",this.fl.style.right="",this.fl.style.width="",this.fl.style.height="",this.fl.style.transform=""}jl(){this.ml=!1,this.Vl(c._7.MainClass,c._7.TransitionClass),this.Jl(),this.Ql()}Pl({x:t,y:i},e){this.Yl(e);const s=()=>this.fl.style.transform=`translate(${t}px, ${i}px)`;e?(this.Sr.cancelRequestAnimationFrame(this.Kl),this.Kl=null,this.Kl=this.Sr.requestAnimationFrameHelper((()=>{s()}))):s()}Yl(t){t?this.Ul(c._7.TransitionClass):this.Vl(c._7.TransitionClass)}Al(){let t,i;if(this.Il()&&this._l){this.Zl();const e=this.Wt.isPositionedLeft?this.Wt.floatingGutterX:-this.Wt.floatingGutterX;t=this.Sr.getElementCoordinates(this._l).clientX+e;const s=this.Wl();return i=s=this.gl}Ll(){if(!this.eu())return;this.Il()&&this.Hl(),this.ml=!0,this.transitionState=f.DirectionIn,this.Ul(c._7.MainClass),this.El();const t=this.Al(),i=this.tu();this.su(),this.Pl({x:i,y:t.y},!1),(0,m.Tp)(this.fl);this.Pl(t,!0)}eu(){return!!this.Cl()&&!(this.Il()&&(!this._l||this._l&&0===this._l.clientWidth))}Zl(){this._l&&(this.Sr.getElementCoordinates(this._l).clientX{const i=this.au.getIsTabInFocus();t&&this.isInFloating&&(this.Ml=!1,this.Ol()),this.cu&&this.Wt.floatingMode===s.ProtoPlayerFloatingMode.AfterInView&&t&&(this.cu=!1),!t&&!this.cu&&this.lu&&i&&(this.Ml=!0,super.Ll())},this.El=()=>{this.isInFloating&&super.El()}}get onFloatingEnterStart(){return this.du.asObservable()}get onFloatingEnterStop(){return this.pu.asObservable()}get onFloatingExitStart(){return this.fu.asObservable()}get onFloatingExitStop(){return this.vu.asObservable()}isFloatingModeEnabled(){return this.cu&&(this.enabled=!1),this.enabled}enableFloatingMode(){this.cu=!1,this.lu=!0,this.start()}disableFloatingMode(){this.lu=!1,this.destroy()}setFloatingSettings(t){this.ou(t),this.start()}Ol(){const t=!this.uu;super.Ol(t)}nu(){this.fu.next()}Ql(){this.mu()}su(){this.du.next()}mu(){this.transitionState=f.FadeIn,this.Vl(c.jG.FadeIn),this.Ul(c.jG.FadeInBase),(0,m.Tp)(this.fl),this.Ul(c.jG.FadeIn)}Dl(){this.pu.next()}Fl(){this.Vl(c.jG.FadeInBase,c.jG.FadeIn),this.vu.next(),this.bl&&super.hu()}yu(){this.au.on(this.fl.parentElement,this.gu,{threshold:y})}bu(){this.au.off(this.fl.parentElement,this.gu)}start(){this.Nl()&&(super.ru(),this.Wt.floatingMode===s.ProtoPlayerFloatingMode.OnPageLoad&&(this.cu=!1),this.yu(),this.gu(this.au.check({element:this.fl.parentElement,threshold:y})))}canFloat(){return this.Nl()&&this.Wt.floatingMode!==s.ProtoPlayerFloatingMode.Off}destroy(){this.isInFloating?(this.jl(),this.bl=!0):super.hu(),this.bu()}get enabled(){return this.lu}set enabled(t){this.lu=t}fullscreenStateChange(t){this.uu=t,t?this.bu():this.yu(),this.gu(t)}}!function(t){t[t.Play=0]="Play",t[t.Pause=1]="Pause",t[t.Replay=2]="Replay",t[t.Volume=3]="Volume",t[t.Mute=4]="Mute",t[t.Unmute=5]="Unmute",t[t.Seek=6]="Seek",t[t.DraggingStart=7]="DraggingStart",t[t.DraggingStopped=8]="DraggingStopped",t[t.SeekingStart=9]="SeekingStart",t[t.SeekingStopped=10]="SeekingStopped",t[t.Expand=11]="Expand",t[t.Collapse=12]="Collapse",t[t.Quality=13]="Quality",t[t.Close=14]="Close",t[t.Next=15]="Next",t[t.Prev=16]="Prev",t[t.Settings=17]="Settings",t[t.CaptionOn=18]="CaptionOn",t[t.CaptionOff=19]="CaptionOff",t[t.CaptionUpdate=20]="CaptionUpdate",t[t.VolumeHoverStart=21]="VolumeHoverStart",t[t.VolumeHoverStopped=22]="VolumeHoverStopped",t[t.OverlayClick=23]="OverlayClick",t[t.UIHideStart=24]="UIHideStart",t[t.UIShowStart=25]="UIShowStart",t[t.UIEndShowHide=26]="UIEndShowHide",t[t.AboutClick=27]="AboutClick",t[t.ContextClick=28]="ContextClick",t[t.SettingsMenu=29]="SettingsMenu",t[t.HoverStart=30]="HoverStart",t[t.HoverEnd=31]="HoverEnd",t[t.StateChanged=32]="StateChanged",t[t.RebindComponent=33]="RebindComponent",t[t.SkipAd=34]="SkipAd",t[t.LogoClicked=35]="LogoClicked",t[t.ContextMenuOpen=36]="ContextMenuOpen",t[t.ContextMenuClose=37]="ContextMenuClose",t[t.CaptionMenu=38]="CaptionMenu",t[t.NonLinearClose=39]="NonLinearClose"}(w||(w={}));var _,A,P=n(7427),k=n(5055);class I extends b{constructor(t,i,e,s,n,r=0){super(t,e,i,s,n,r),this.Ml=!0,this.pu=new x.x}get onFloatingEnterStop(){return this.pu.asObservable()}su(){}Dl(){this.pu.next()}nu(){}Ql(){}Fl(){}start(){this.Nl()&&(this.Ul(c._7.AlwaysFloating),super.ru(),super.Ll())}setFloatingSettings(t){this.ou(t),this.start()}}!function(t){t.ShowLinearEvent="showLinearEvent",t.HideLinearEvent="hideLinearEvent",t.PauseLinearEvent="pauseLinearEvent",t.ResumeLinearEvent="resumeLinearEvent",t.SkipLinearEvent="skipLinearEvent"}(_||(_={})),function(t){t.ShowNonLinearEvent="showNonLinearEvent",t.HideNonLinearEvent="hideNonLinearEvent"}(A||(A={}));class T{constructor(t,i,e,s){this.fl=t,this.wu=s,this.xu=this.Su(e,i)}Su(t,i){return Object.assign({},t[i]||t[s.ProtoDeviceType.Smartphone])}updateWidth(t){const i=this._u(t);i!==this.currentBreakpointClass&&((0,m.IV)(this.fl,this.currentBreakpointClass),(0,m.cn)(this.fl,i),this.currentBreakpointClass=i)}_u(t){switch(!0){case t>=this.xu.xxl:return this.wu.Xxl;case t>=this.xu.xl:return this.wu.Xl;case t>=this.xu.lg:return this.wu.Lg;case t>=this.xu.md:return this.wu.Md;case t>=this.xu.sm:return this.wu.Sm;case t>=this.xu.xs:return this.wu.Xs;default:return this.wu.Xxs}}}const C="midRollCapped",M="totalAdBreakDurationExpired",E="enableLinearAds",L="disableLinearAds",O="ForceStopAdSlot",R="ForceStopAdPod",B="linearAdOpportunity",D="AdPodRemainingTime",j="disableNonLinearAds",F="enableNonLinearAds";var $;!function(t){t[t.Portrait=0]="Portrait",t[t.Landscape=1]="Landscape"}($||($={}));const V=$;class U{constructor(t){this.urlSuffixerService=t,this.Au={},this.Pu=[]}getImage(t,i,e,s,n="",r=!1){return this.ku=t,this.Iu=(0,P.QM)(i)?i:"",this.Tu=e,this.Cu=s,this.Mu=n,this.Eu=r,this.Lu()}Lu(){const t=this.Ou();if(t)return t;const i=this.ku+this.Mu,e=new Image;return e.src=this.urlSuffixerService.appendParamsToUrl(i),e.alt=this.Iu,this.Au[this.ku]=this.Au[this.ku]||{},this.Au[this.ku][this.Tu]=this.Au[this.ku][this.Tu]||{},this.Au[this.ku][this.Tu][this.Cu]=this.Au[this.ku][this.Tu][this.Cu]||{},this.Au[this.ku][this.Tu][this.Cu][this.Mu]=e,e}Ou(){const t=this.Ru();if(t)return t;if(!this.Eu)return;this.Bu();const i=this.Du();if(i)return i;const e=this.Fu();return e||void 0}Bu(){const t=[];if(!this.Au[this.ku])return void(this.Pu=[]);const i=this.Au[this.ku],e=this.Tu>this.Cu?V.Landscape:V.Portrait;Object.keys(i).forEach((s=>{const n=parseInt(s,10);Object.keys(i[s]).filter((t=>!!i[s][t])).forEach((i=>{const s=parseInt(i,10);if((n>s?V.Landscape:V.Portrait)!==e)return;const r={area:n*s,img:this.$u(this.ku,n,s)};t.push(r)}))})),this.Pu=[...t]}$u(t,i,e){if(this.Au[t]&&this.Au[t][i]&&this.Au[t][i][e])return this.Au[t][i][e][Object.keys(this.Au[t][i][e])[0]]}Ru(){return this.Au[this.ku]&&this.Au[this.ku][this.Tu]&&this.Au[this.ku][this.Tu][this.Cu]&&this.Au[this.ku][this.Tu][this.Cu][this.Mu]}Du(){if(0===this.Pu.length)return;const t=this.Tu*this.Cu,i=this.Pu.filter((({area:i})=>i>t)).sort(((t,i)=>t.area-i.area));return 0!==i.length?i[0].img:void 0}Fu(){if(0===this.Pu.length)return;const t=this.Tu*this.Cu,i=this.Pu.filter((({area:i})=>ii.area-t.area));return 0!==i.length?i[0].img:void 0}}var N,H,z,q,W=n(4959);!function(t){t.Play="play",t.Playing="playing",t.Pause="pause",t.Mute="mute",t.Unmute="unmute",t.Canplay="canplay",t.Ended="ended",t.Timeupdate="timeupdate",t.Seeking="seeking",t.Seeked="seeked",t.Volumechange="volumechange",t.Durationchange="durationchange",t.Fullscreen="fullscreen",t.LoadedData="loadeddata",t.LoadedMetadata="loadedmetadata",t.Error="error"}(N||(N={})),function(t){t[t.Auto=0]="Auto",t[t.Strict=1]="Strict"}(H||(H={})),function(t){t[t.PlayingState=0]="PlayingState",t[t.PausedState=1]="PausedState",t[t.PrerollState=2]="PrerollState",t[t.PostrollState=3]="PostrollState",t[t.StoppedState=4]="StoppedState",t[t.ReplayState=5]="ReplayState",t[t.HiddenState=6]="HiddenState",t[t.BufferingState=7]="BufferingState",t[t.LiveStreamStarting=8]="LiveStreamStarting",t[t.LiveStreamEnded=9]="LiveStreamEnded",t[t.LiveStreamStopped=10]="LiveStreamStopped",t[t.LiveStreamNotSupported=11]="LiveStreamNotSupported"}(z||(z={})),function(t){t.H264="h264",t.Hevc="hevc"}(q||(q={}));const G="playError",J="newVideo",Q="buffering",X="buffered",Y="levelSwitching",K="endOfStream",Z="VideoQualityChanged",tt="CurrentQuality",it="QualityListLoaded";var et;!function(t){t[t.Low144p=144]="Low144p",t[t.Low240p=240]="Low240p",t[t.Medium360p=360]="Medium360p",t[t.Medium480p=480]="Medium480p",t[t.High720p=720]="High720p",t[t.High1080p=1080]="High1080p"}(et||(et={}));function st(t,i){const e=t.length-1;return{currentIndex:i,nextIndex:i===e?0:i+1,prevIndex:0===i?e:i-1,firstIndex:0,lastIndex:e}}function nt(t,i){return!(i.skippability===s.ProtoPlayerSkippabilityType.AllowNonSkipAdsIfTheyAreShorterThan&&t{i.types.forEach((e=>{(function(t,i){let e=!1;switch(t){case s.ProtoAdBreakTypeEnum.PreRoll:e=i===s.ProtoAdSlotsEnum.PreRoll;break;case s.ProtoAdBreakTypeEnum.MidRoll:e=i===s.ProtoAdSlotsEnum.MidRoll;break;case s.ProtoAdBreakTypeEnum.PostRoll:e=i===s.ProtoAdSlotsEnum.PostRoll}return e})(e,t)&&(this.Uu.currentPodNumber=i.numberOfAdSlots,this.Uu.maxAdSlotDuration=i.maxAdSlotDuration,this.Uu.maxAdPodDuration=i.maxAdPodDuration,this.Uu.totalNumberOfAdSlots=i.numberOfAdSlots)}))}))}adStarted(){this.Hu(),0===this.Uu.currentPodNumber&&(this.Uu.currentPodNumber=this.Uu.totalNumberOfAdSlots),this.Uu.currentPodNumber--}endPod(){this.Hu(),this.Uu.currentPodNumber=0}enterPodTimeout(t){this.Hu(),this.Nu=setTimeout((()=>{this.Hu(),t()}),5e3)}isInAdPod(){return this.Uu.currentPodNumber>0}isCurrentBreakInPod(){return this.Uu.totalNumberOfAdSlots>1}getMaxAdSlotDuration(){return this.Uu.maxAdSlotDuration}getMaxAdPodDuration(){return this.Uu.maxAdPodDuration}getMaxAdSlotPossibleDuration(){let t=0;for(let i=0;it?t+1:1}getTotalNumberOfSlots(){return this.Uu.totalNumberOfAdSlots}isInPodTimeout(){return!!this.Nu}getAdBreakState(t){if(!(0,P.$K)(t))return this.zu();const{adSlotDuration:i,adBreakType:e}=t;return{isAdPodBreak:this.isCurrentBreakInPod(),adPodSlotIndex:this.isCurrentBreakInPod()?this.getNextSlotIndex():0,maxAdDuration:Math.round(this.getMaxAdSlotDuration()/ht.s_||rt.DEFAULT_MAX_AD_DURATION),remainingAdDuration:Math.round(i/ht.s_),sessionMaxAdDuration:Math.round(this.getMaxAdSlotPossibleDuration()/ht.s_),adBreakType:e}}zu(){let t=s.ProtoAdBreakTypeEnum.MidRoll;this.adBreaks.forEach((i=>{i.types.some((t=>t===s.ProtoAdBreakTypeEnum.PreRoll))&&(t=s.ProtoAdBreakTypeEnum.PreRoll)}));const i=this.getMaxAdSlotDuration();return this.getAdBreakState({adSlotDuration:i,adBreakType:t})}Hu(){clearTimeout(this.Nu),this.Nu=null}}var at,ct,lt=n(2231),ut=n(8423),dt=n(308),pt=n(6243);!function(t){t[t.None=0]="None",t[t.Portrait=1]="Portrait",t[t.Landscape=2]="Landscape"}(at||(at={})),function(t){t.LINEAR="LINEAR",t.NONLINEAR="NONLINEAR"}(ct||(ct={}));var ft=function(t,i,e,s){return new(e||(e=Promise))((function(n,r){function h(t){try{a(s.next(t))}catch(t){r(t)}}function o(t){try{a(s.throw(t))}catch(t){r(t)}}function a(t){var i;t.done?n(t.value):(i=t.value,i instanceof e?i:new e((function(t){t(i)}))).then(h,o)}a((s=s.apply(t,i||[])).next())}))};const vt=["com.accuweather.android"],gt=.05*ht.s_;class mt extends h._{constructor(t,i,e){super(),this.mediator=t,this._appSettings=i,this.qu=e,this.Wu=.01,this.Gu=.5,this.Ju=2e3,this.Qu=0,this.Xu=!1,this.Yu=!1,this.Ku=!1,this.Zu=!1,this.td=!1,this.sd=!1,this.nd=!1,this.Ns=s.ProtoAdSlotsEnum.PreRoll,this.rd=!1,this.hd=!1,this.od=!1,this.ud=!1,this.dd=[],this.ki=[],this.pd=[],this.fd=0,this.vd=t=>{this.hd=t,t&&(this.app.services.ViewabilityService.off(this.$playerContainer,this.vd),this.gd())},this.yd=t=>{t&&this.adHandler&&!this.ud&&setTimeout((()=>{this.adHandler.resumeWithoutUserInteraction(this.Ns)}),gt)},this.bd=()=>{this.isBelowSmBreakpoint(this.$experienceContainer.clientWidth)||(0,m.IV)(this.$experienceContainer,c.Gj.NoHeight),!this.Yu&&this.wd()&&(this.mediator.publish(this,o.Uh.CanStart),this.app.services.ResizeObserver.off(this.$experienceContainer,this.bd))},this.xd=t=>{const{playback:i,isFullscreenClose:e}=t;this.floatingModule&&(0,P.$K)(i)&&!e&&(this.floatingModule.enabled=i)},this.Sd=()=>{this._d(1)},this.Pd=()=>{this._d(0)},this.Id=t=>{this.xd(t);const{playback:i}=t;(0,P.$K)(i)&&(i?(this.app.services.EventsStorageService.emitAdPlay(),this.ud=!1):(this.app.services.EventsStorageService.emitAdPause(),this.ud=!0))},this.Td=new U(e)}Cd(){}Ed(t,i,e){this.app.services.EventsStorageService.emitAdImpression(t,i,e)}Ld(t){this.app.services.EventsStorageService.emitAdComplete(t)}Od(){}Rd(){}Bd(){}Dd(){}jd(){}Fd(){}$d(){}Vd(t){const i={state:t};this.app.services.EventsStorageService.emitAdStateChange(i)}Ud(){const{clientWidth:t,clientHeight:i}=this.$playerContainer,e={width:t,height:i};this.app.services.EventsStorageService.emitPlayerResized(e)}Nd(){this.app.services.EventsStorageService.emitOnEnterFullscreen()}Hd(){this.app.services.EventsStorageService.emitOnExitFullscreen()}zd(){this.app.services.EventsStorageService.emitOnPlayerCollapsed()}qd(){this.app.services.EventsStorageService.emitOnPlayerExpanded()}Wd(t){this.Gd(t),this.Jd(t),this.Qd(t),this.Ns=t,this.Xd(t)}Jd(t){this.adHandler&&this.adHandler.adStateChange(t,this.Yd.getMaxAdSlotDuration())}Qd(t){this.Kd.onAdStateChange(t,{maxAdPodDuration:this.Yd.getMaxAdPodDuration(),maxAdSlotDuration:this.Yd.getMaxAdSlotDuration()})}Gd(t){this.Yd.setNewBreak(t)}Xd(t){this.Vd(W.V[t])}Zd(){var t;null===(t=this.adHandler)||void 0===t||t.contentChanged(),this.Kd.contentChanged()}ep(){var t;null===(t=this.adHandler)||void 0===t||t.contentEnded()}sp(){var t,i,e,s,n,r;this.adHandler=this.np(),this.rp(),null===(t=this.adHandler)||void 0===t||t.onLinearImpressionPrice.subscribe((t=>{this.mediator.publish(this,k.Km.ImpressionPrice,{payload:t})})),null===(i=this.adHandler)||void 0===i||i.onNonLinearImpressionPrice.subscribe((t=>{this.mediator.publish(this,k.Km.ImpressionPrice,{payload:t})})),null===(e=this.adHandler)||void 0===e||e.onLinearImpressionRevenue.subscribe((t=>{this.mediator.publish(this,k.Km.ImpressionRevenue,{payload:t})})),null===(s=this.adHandler)||void 0===s||s.onNonLinearImpressionRevenue.subscribe((t=>{this.mediator.publish(this,k.Km.ImpressionRevenue,{payload:t})})),null===(n=this.adHandler)||void 0===n||n.onLinearExperienceEvent.subscribe((t=>{o.Uh.UserInteraction===t.type&&this.Id(t.payload)}));const h=()=>{this.app.services.TrackingService.setAdStart(),this.od=!0,this.ud=!1,this.gd(),this.op.unsubscribe()};this.op=null===(r=this.adHandler)||void 0===r?void 0:r.onAdsEnable.subscribe((()=>{h()}))}rp(){this.ap(),this.cp(),this.lp()}ap(){this.pd.push(this.adHandler.onVpaidEvent.subscribe((t=>{switch(t.type){case g.fI.AdImpression:{this.mediator.publish(this,k.Km.AdImpression,t.payload);const{adSourceData:i,customAdData:e,adType:s}=t.payload.payload;this.Ed(i,e,s);break}case g.fI.AdStopped:{if(this.mediator.publish(this,k.Km.AdStopped,t.payload),this.nd&&this.Rd(),!t.payload)return;const{adType:i}=t.payload.payload;this.Ld(i),this.app.services.EventsStorageService.emitAdStopped(i);break}case g.fI.AdError:{const{adType:i}=t.payload;this.mediator.publish(this,k.Km.AdError,t),this.app.services.EventsStorageService.emitAdError(i);break}case g.fI.AdSkipped:{const{adType:i}=t.payload.payload;this.mediator.publish(this,k.Km.AdSkipped,t.payload),this.app.services.EventsStorageService.emitAdSkipped(i),this.Ld(i),this.nd&&this.Rd();break}case g.fI.AdPaused:{const{adType:i}=t.payload.payload;this.app.services.TrackingService.setSessionPlayback(!1),this.app.services.EventsStorageService.emitAdPaused(i),this.mediator.publish(this,k.Km.AdPause,t.payload);break}case g.fI.AdPlaying:{const{adType:i}=t.payload.payload;this.app.services.TrackingService.setSessionPlayback(!0),this.app.services.EventsStorageService.emitAdPlaying(i),this.mediator.publish(this,k.Km.AdPlay,t.payload);break}case g.fI.AdVideoFirstQuartile:{const{adType:i}=t.payload.payload;this.mediator.publish(this,k.Km.AdCompleted25,t.payload),this.app.services.EventsStorageService.emitAdVideoFirstQuartile(i);break}case g.fI.AdVideoMidpoint:{const{adType:i}=t.payload.payload;this.mediator.publish(this,k.Km.AdCompleted50,t.payload),this.app.services.EventsStorageService.emitAdVideoMidpoint(i);break}case g.fI.AdVideoThirdQuartile:{const{adType:i}=t.payload.payload;this.mediator.publish(this,k.Km.AdCompleted75,t.payload),this.app.services.EventsStorageService.emitAdVideoThirdQuartile(i);break}case g.fI.AdVideoComplete:{const{adType:i}=t.payload.payload;this.mediator.publish(this,k.Km.AdCompleted100,t.payload),this.app.services.EventsStorageService.emitAdVideoComplete(i);break}case g.fI.AdClickThru:{const{adType:i}=t.payload.payload;this.mediator.publish(this,k.Km.AdClick,t.payload),this.app.services.EventsStorageService.emitAdClickThru(i);break}case g.fI.AdInteraction:{const{adType:i}=t.payload.payload;this.app.services.EventsStorageService.emitAdInteraction(i);break}case g.fI.AdUserAcceptInvitation:{const{adType:i}=t.payload.payload;this.app.services.EventsStorageService.emitAdInteraction(i);break}case g.fI.AdUserClose:{const{adType:i}=t.payload.payload;this.app.services.EventsStorageService.emitAdInteraction(i);break}case g.fI.AdUserMinimize:{const{adType:i}=t.payload.payload;this.app.services.EventsStorageService.emitAdInteraction(i);break}case g.fI.AdVideoStart:{const{adSourceData:i,adType:e}=t.payload,s={duration:i&&i.length,mediaPlayerVolume:this.getVolume()};this.app.services.EventsStorageService.emitAdVideoStart(s,e);break}case g.fI.AdLoaded:{const{payload:i}=t.payload,{adType:e}=i,{adLoadedData:s}=i;(null==s?void 0:s.skipOffset)<0&&(s.skipOffset=void 0);const n=this.up(s);this.app.services.EventsStorageService.emitAdLoaded(n,e);break}case g.fI.AdVolumeChange:{const{adType:i}=t.payload.payload;this.app.services.EventsStorageService.emitAdVolumeChange(i);break}case g.fI.AdLog:}})))}cp(){this.pd.push(this.adHandler.onLinearEvent.subscribe((t=>{switch(t.type){case _.ShowLinearEvent:this.Kd.onAdImpression(t.payload,ct.LINEAR),this.dp();break;case _.HideLinearEvent:this.pp();break;case _.PauseLinearEvent:this.Kd.onLinearAdPause();break;case _.ResumeLinearEvent:this.Kd.onLinearAdPlay();break;case _.SkipLinearEvent:const i=!0;this.floatingModule&&(this.floatingModule.enabled=!0),this.pp(i)}})))}lp(){this.pd.push(this.adHandler.onNonLinearEvent.subscribe((t=>{switch(t.type){case A.ShowNonLinearEvent:this.Kd.onAdImpression(t.payload,ct.NONLINEAR);break;case A.HideNonLinearEvent:const i=!1;this.Kd.onAdFinished(this.adHandler.nonLinearInImpression,ct.NONLINEAR,i)}})))}dp(){this.Yd.adStarted(),this.adHandler.showLinear()}fp(){this.adHandler.hideLinear()}pp(t=!1){let i=this.Yd.isInAdPod();t&&(i=!1,this.Yd.endPod()),this.Kd.onAdFinished(this.adHandler.linearInImpression,ct.LINEAR,i),this.fp(),this.vp.isCloseButton&&this.adHandler&&this.adHandler.firstLinearAdShown&&(this.vp.closeButtonMode!==s.ProtoPlayerCloseButtonMode.OnHoverAfterFirstAd||(0,m.pv)(this.$playerContainer,c.s6.CloseHover)||(0,m.cn)(this.$playerContainer,c.s6.CloseHover),this.vp.floatingSettings.floatingCloseButtonMode!==s.ProtoPlayerCloseButtonMode.OnHoverAfterFirstAd||(0,m.pv)(this.$playerContainer,c.s6.CloseFloatHover)||(0,m.cn)(this.$playerContainer,c.s6.CloseFloatHover))}gp(t){this.adHandler.enterAdPodLoadingState(),this.Yd.enterPodTimeout((()=>{this.Yd.endPod(),t()}))}mp(){(0,m.Tp)(this.$playerContainer),this.Kd=this.yp(),this.subscribe(F,this.Kd,(()=>{var t;null===(t=this.adHandler)||void 0===t||t.enableAds(ct.NONLINEAR)})),this.subscribe(j,this.Kd,(t=>{var i;const e=t.payload;null===(i=this.adHandler)||void 0===i||i.disableAds(ct.NONLINEAR,e)})),this.subscribe(E,this.Kd,(()=>{var t;null===(t=this.adHandler)||void 0===t||t.enableAds(ct.LINEAR)})),this.subscribe(L,this.Kd,(t=>{var i;const e=t.payload;null===(i=this.adHandler)||void 0===i||i.disableAds(ct.LINEAR,e)})),this.subscribe(O,this.Kd,(()=>{var t;null===(t=this.adHandler)||void 0===t||t.stopAd("forceStopAdSlot")})),this.subscribe(R,this.Kd,(()=>{if(this.adHandler)if(this.adHandler.linearInImpression)this.Yd.endPod(),this.adHandler.stopAd("forceStopAdPod");else{const t=!0;this.pp(t)}})),this.subscribe(D,this.Kd,(t=>{var i;null===(i=this.adHandler)||void 0===i||i.updateLinearPodRemainingTime(t.payload.remainingTime)})),this.subscribe(B,this.Kd,(t=>{var i,e;const s=t.payload.adBreakType,n=null===(i=this.adHandler)||void 0===i?void 0:i.getLinearAdContainerWidth(),r={adBreak:s,playerWidth:(0,P.$K)(n)?n:this.$playerContainer.clientWidth};this.app.services.TrackingService.trackAdOpportunity(r),null===(e=this.adHandler)||void 0===e||e.newLinearAdOpportunity()}))}bp(){this.app.services.ViewabilityService.on(this.$playerContainer,this.vd,{threshold:this.Gu,callbackDelay:this.Ju}),this.app.services.ViewabilityService.on(this.$playerContainer,((t,i)=>this.gu(t,i)),{threshold:this.Wu}),this.app.services.ViewabilityService.subscribe(k.rl.OmidViewabilityThreshold,(t=>{this.mediator.publish(this,k.rl.OmidViewabilityThreshold,{payload:{threshold:t}})})),this.app.config.os.os===dt.M.Ios&&this.app.services.PageFocusService.on(this.yd)}gd(){this.hd&&this.od&&this.mediator.publish(this,o.Xh.SessionView)}gu(t,i=!1){this.Kd.setToggleAdsReason({isAppBackgrounded:i}),this.app.config.isInApp&&(i?(this.wp=this.getVolume(),this.setVolume(0)):this.wp&&(this.setVolume(this.wp),this.wp=null)),this.nd=t,this.mediator.publish(this,k.Km.IsViewable,{payload:t}),this.Kd.viewabilityStateChanged(this.checkFloatingViewability(t),this.Yd.isInAdPod(),this.Yd.isInPodTimeout()),this.app.services.TrackingService.setSessionViewability(t)}checkFloatingViewability(t){const i=this.app.services.ViewabilityService.getIsTabInFocus();return!(t||!this.floatingModule||!this.floatingModule.isInFloating||!i)||t}Cs(){var t,e,s;const n=this.$playerContainer.clientWidth,r=this.$playerContainer.clientHeight,h=this.rd?g.zc.Fullscreen:g.zc.Normal;null===(t=this.adHandler)||void 0===t||t.resizeAd(n,r,h,this.Ns);try{null===(e=this.Kd)||void 0===e||e.onResize(n,r)}catch(t){(0,i.n)({message:"BaseExperience_onResize_player",callStack:t.stack,exception:t.message,level:i.D.WARN})}null===(s=this.adHandler)||void 0===s||s.setPlayerOrientation(this.xp(n,r)),this.breakPointsHandler.updateWidth(n),this.app.services.TrackingService.updatePlayerDimensions(n,r),setTimeout((()=>{this.mediator.publish(this,k.Km.SizeChanged,{payload:{width:n,height:r}}),this.Sp()}))}isBelowSmBreakpoint(t){return ti?at.Landscape:at.None}Sp(){this.rd||this.Ud()}_p(){this.app.services.ResizeObserver.on(this.$playerContainer,(()=>{this.Cs()}))}Ap(){var t;this.rd=!0,this.app.services.InteractionService.disableScrollEvent(),this.Nd(),null===(t=this.adHandler)||void 0===t||t.setVastViewMode(g.zc.Fullscreen)}Pp(){var t;this.rd=!1,this.app.services.InteractionService.enableScrollEvent(),this.Hd(),null===(t=this.adHandler)||void 0===t||t.setVastViewMode(g.zc.Normal)}kp(){const t=``,i=this.app.services.GlobalDomUtilsService.createElementByString(t);return this.Cp(i),i}Cp(t){(0,m.T7)(t,{"padding-bottom":`${this.Mp()}%`})}Mp(){return this.vp.playerSize.ratioHeight/this.vp.playerSize.ratioWidth*100}Ep(){this.dd.push(this.floatingModule.onFloatingEnterStart.subscribe((()=>{this.mediator.publish(this,k.Zr.PlayerFloatChanged,{payload:v.Float}),this.mediator.publish(this,k.Zr.FloatingEnterStart,{payload:!0})})),this.floatingModule.onFloatingExitStart.subscribe((()=>{this.mediator.publish(this,k.Zr.FloatingExitStart,{payload:!0})})),this.floatingModule.onFloatingExitStop.subscribe((()=>{this.mediator.publish(this,k.Zr.PlayerFloatChanged,{payload:v.Embed}),this.mediator.publish(this,k.Zr.FloatingExitStop,{payload:!0})})),this.floatingModule.onFloatingEnterStop.subscribe((()=>{this.mediator.publish(this,k.Zr.FloatingEnterStop,{payload:!0}),this.gu(!0)})))}Lp(){this.floatingModule=new S(this.app.services.ViewabilityService,this.app.services.ResizeObserver,this.$playerContainer,this.vp.floatingSettings,this.app.config.device,this.app.services.GlobalDomUtilsService,this.Op),this.Ep(),this.floatingModule.start()}Rp(){this.alwaysFloatingModule=new I(this.app.services.ResizeObserver,this.$experienceContainer,this.vp.floatingSettings,this.app.config.device,this.app.services.GlobalDomUtilsService),this.dd.push(this.alwaysFloatingModule.onFloatingEnterStop.subscribe((()=>{this.app.services.ViewabilityService.triggerRecheck(this.$playerContainer)}))),this.alwaysFloatingModule.start()}setNewVolume(t){var i;null===(i=this.adHandler)||void 0===i||i.setLinearVolume(t)}Dp(){var t;this.jp(),null===(t=this.adHandler)||void 0===t||t.onLinearExperienceEvent.subscribe((t=>{var i;t.type===o.Uh.UserInteraction&&(null===(i=t.payload)||void 0===i?void 0:i.volume)&&this.Fp()}))}$p(t){this.subscribe(o.Uh.UserInteraction,t,(({payload:{volume:t}})=>{t&&this.Fp()}))}ws(t){this.mediator.publish(this,k.Km.VolumeChanged,{payload:t}),this.app.services.EventsStorageService.emitVolumeChange(t)}_d(t){this.getVolume()!==t&&this.setNewVolume(t)}jp(){this.Xu=!0,this.$playerContainer.addEventListener("mouseover",this.Sd),this.$playerContainer.addEventListener("mouseout",this.Pd)}Fp(){this.Xu&&(this.Xu=!1,this.$playerContainer.removeEventListener("mouseover",this.Sd),this.$playerContainer.removeEventListener("mouseout",this.Pd))}Vp(){this.breakPointsHandler=new T(this.$playerContainer,this.app.config.device,this.Np,this.zp),this.breakPointsHandler.updateWidth(this.$playerContainer.clientWidth)}qp(){var t;if(this.vp.isCloseButton){switch(this.ki.push(null===(t=this.adHandler)||void 0===t?void 0:t.onLinearUiComponentEvent.subscribe((t=>{t.type===w.Close&&this.handleClose()}))),this.vp.closeButtonMode){case s.ProtoPlayerCloseButtonMode.AlwaysOn:(0,m.cn)(this.$playerContainer,c.s6.CloseOn);break;case s.ProtoPlayerCloseButtonMode.Off:(0,m.cn)(this.$playerContainer,c.s6.CloseOff);break;case s.ProtoPlayerCloseButtonMode.OnHover:(0,m.cn)(this.$playerContainer,c.s6.CloseHover)}switch(this.vp.floatingSettings.floatingCloseButtonMode){case s.ProtoPlayerCloseButtonMode.AlwaysOn:(0,m.cn)(this.$playerContainer,c.s6.CloseFloatOn);break;case s.ProtoPlayerCloseButtonMode.Off:(0,m.cn)(this.$playerContainer,c.s6.CloseFloatOff);break;case s.ProtoPlayerCloseButtonMode.OnHover:(0,m.cn)(this.$playerContainer,c.s6.CloseFloatHover)}}}up(t){const{skipOffset:i}=t;return{isAutoPlay:this.vp.playbackMode===s.ProtoPlayerPlaybackModeEnum.Autoplay,skipOffset:i,isSkippable:(0,P.kE)(i)}}Wp(){this.od=!0,this.app.services.TrackingService.setContentStart(),this.gd()}wd(){const{clientWidth:t,clientHeight:i}=this.$experienceContainer;return!(0,lt.ON)({width:t,height:i})&&!this.isBelowSmBreakpoint(t)||((0,m.cn)(this.$experienceContainer,c.Gj.NoHeight),this.Gp())}Gp(){return vt.includes(this.app.config.bundleID)}Jp(t){try{const{display:i,width:e,height:s,flex:n,maxWidth:r,minWidth:h}=this.app.services.GlobalDomUtilsService.getComputedStyle(t),{width:o,height:a}=t.getBoundingClientRect(),c={display:i,compWidth:e,boundWidth:o,compHeight:s,boundHeight:a,flex:n,maxWidth:r,minWidth:h};return{type:t.nodeName,styles:JSON.stringify(c)}}catch(t){return{err:"BaseExperience_getElementInfo_error"}}}Qp(){if(!(0,ut.Vm)([95,5]))return;const t={parent:this.Jp(this.$experienceContainer.parentElement),main:this.Jp(this.$experienceContainer)};(0,i.n)({message:"BaseExperience_invalid_dimensions",level:i.D.INFO,exception:JSON.stringify(t)})}Xp(){this.Yd=new ot(this.vp.adBreaks)}dl(t,i,e,s){this.vp=t,this.app=i,this.$experienceContainer=e,s&&s(),this.Cd(),this.app.services.ViewabilityService.setViewableThreshold(this.Qu),this.generateHTML(),this.Xp(),this.app.services.ResizeObserver.on(this.$experienceContainer,this.bd),this.wd()?this.mediator.publish(this,o.Uh.CanStart):this.Qp()}start(){return ft(this,void 0,void 0,(function*(){this.Yu=!0,this.app.services.TrackingService.updatePlayerDimensions(this.$playerContainer.clientWidth,this.$playerContainer.clientHeight),(0,m.cn)(this.$experienceContainer,c.sN.MainContainerFlex),this.mediator.publish(this,o.Xh.SessionRendered),this.Vp(),this._p(),this.vp.floatingSettings.floatingMode===s.ProtoPlayerFloatingMode.Always?this.Rp():(this.Ud(),this.Lp()),this.vp.lineItemSettings.lineItems.length>0&&!this.vp.disableAdvertising&&!u._.isBannerBlocked&&(this.app.config.isOVPDomain?this.ki.push(u._.onAdBlockerDetected().subscribe((t=>{t||this.sp()}))):this.sp()),this.app.config.isMobile||this.vp.soundMode!==s.ProtoPlayerSoundMode.Hover||this.Dp(),this.vp.isCloseButton&&this.qp(),this.vp.displayAdCountdown&&(0,m.cn)(this.$playerContainer,c.s6.AdShowCountdown);try{this.mp()}catch(t){(0,i.n)({message:"BaseExperience_initAdsController",exception:t.message,callStack:t.stack,level:i.D.INFO})}u._.isBannerBlocked||u._.detectUsingScript().then((t=>{t&&(this.app.services.TrackingService.trackSessionAdBlocker(s.ProtoAdBlockDetectionTypeEnum.Network),this.Kd.disableAdvertising())}))}))}play(){var t;null===(t=this.adHandler)||void 0===t||t.play()}pause(){var t;null===(t=this.adHandler)||void 0===t||t.pause()}setVolume(t){this.setNewVolume(t),this.Fp()}getSize(){return{width:this.$experienceContainer.clientWidth,height:this.$experienceContainer.clientHeight}}setSize(t,i){(0,lt.ON)({width:t,height:i})||(0,m.T7)(this.$experienceContainer,{width:`${t}px`,height:`${i}px`})}setCustomMacros(t){this.app.services.MacrosService.addExtraMacros(t)}isViewable(){return this.app.services.ViewabilityService.check({element:this.$playerContainer,threshold:this.Wu})}setViewableThreshold(t){this.app?this.app.services.ViewabilityService.setViewableThreshold(t):this.Qu=t}setAmpUserConsent(t){this.app.services.UserManagerService.setAmpUserConsent(t)}triggerDestroy(){this.app.services.EventsStorageService.destroy(),this.mediator.publish(this,o.Uh.Destroy)}disableAdvertising(){this.Kd.disableAdvertising()}enableAdvertising(){this.Kd.enableAdvertising()}enableFloatingMode(){var t;null===(t=this.floatingModule)||void 0===t||t.enableFloatingMode()}disableFloatingMode(){var t;null===(t=this.floatingModule)||void 0===t||t.disableFloatingMode()}isFloatingModeEnabled(){return!this.floatingModule||this.floatingModule.isFloatingModeEnabled()}setFloatingSettings(t){this.floatingModule?this.floatingModule.setFloatingSettings(t):this.alwaysFloatingModule.setFloatingSettings(t)}destroy(){(0,pt.i)(this.ki),this.adHandler&&((0,pt.i)(this.pd),this.op.unsubscribe(),this.adHandler.destroy()),this.Kd&&this.Kd.destroy(),this.floatingModule&&(this.floatingModule.destroy(),this.floatingModule=null,(0,pt.i)(this.dd))}}var yt,bt,wt=n(7953);!function(t){t[t.Unknown=0]="Unknown",t[t.TimeoutBetweenAds=1]="TimeoutBetweenAds",t[t.InImpression=2]="InImpression",t[t.LinearDemandMissing=3]="LinearDemandMissing"}(yt||(yt={}));class xt extends h._{constructor(t,i,e,s,n,r,h,o){super(),this.mediator=t,this.Re=i,this.Yp=e,this.Zp=s,this.tf=n,this.if=r,this.qu=h,this.ef=o,this.sf=g.zc.Normal,this.nf=[],this.rf=new x.x,this.hf=new x.x,this.af=new x.x,this.cf=new x.x,this.lf=new x.x,this.uf=new x.x,this.df=new x.x,this.pf=new x.x,this.ff=new x.x,this.vf=new x.x,this.gf=new x.x,this.yf=this.bf(),this.wf(),this.xf=this.Sf(),this.Af(),this.Pf=this.kf(),this.Pf&&this.If()}Tf(t,i){const e=[{container:this.Cf,width:t,height:i,type:wt.ProtoAdType.Overlay},{container:this.Cf,width:t,height:i,type:wt.ProtoAdType.Video},{container:this.Mf,width:t,height:i,type:wt.ProtoAdType.Nonlinear}];return this.Mf||e.pop(),e}wf(){this.nf.push(this.yf.onAdsEnable.subscribe((t=>{this.rf.next(t)})))}If(){var t,i,e;this.nf.push(null===(t=this.Pf)||void 0===t?void 0:t.onVpaidEvent.subscribe((t=>{this.hf.next(t)})),null===(i=this.Pf)||void 0===i?void 0:i.onNonLinearEvent.subscribe((t=>{this.pf.next(t)})),null===(e=this.Pf)||void 0===e?void 0:e.onExperienceEvent.subscribe((t=>{this.ff.next({type:t.type,payload:t.payload})})),this.yf.onNonlinearImpressionPrice.subscribe((t=>{this.vf.next(t)})),this.yf.onNonlinearImpressionRevenue.subscribe((t=>{this.gf.next(t)})))}Af(){this.nf.push(this.xf.onVpaidEvent.subscribe((t=>{this.hf.next(t)})),this.xf.onUiComponentEvent.subscribe((t=>{this.cf.next(t)})),this.xf.onExperienceEvent.subscribe((t=>{this.lf.next({type:t.type,payload:t.payload})})),this.xf.onLinearEvent.subscribe((t=>{t.type===_.ShowLinearEvent&&this.nonLinearInImpression&&this.Pf.pause(this.linearInImpression),this.af.next(t)})),this.yf.onLinearImpressionPrice.subscribe((t=>{this.uf.next(t)})),this.yf.onLinearImpressionRevenue.subscribe((t=>{this.df.next(t)})))}Ef(t,i,e){this.yf.initAd(t,i,this.sf,1,e,this.Tf(t,i),this.if)}adStateChange(t,i){var e;this.xf.adStateChange(t,i),null===(e=this.Pf)||void 0===e||e.adStateChange(t,i)}contentPlaybackStateChanged(t){var i;null===(i=this.Pf)||void 0===i||i.contentPlaybackStateChanged(t)}disableAds(t,i){this.yf.disableAds(t,i)}enableAds(t){this.yf.enableAds(t)}start(t,i,e,s=!1,n=!1){n&&this.startNonLinear(),this.startLinear(e,s),this.Ef(t,i,e)}stopAd(t){var i;this.xf.stopAd(t),null===(i=this.Pf)||void 0===i||i.stopAd(t)}play(){this.xf.play()}pause(){var t;this.xf.pause(),this.linearInImpression||null===(t=this.Pf)||void 0===t||t.pause()}resumeWithoutUserInteraction(t){var i;this.xf.resumeWithoutUserInteraction(),null===(i=this.Pf)||void 0===i||i.resumeWithoutUserInteraction(t)}resizeAd(t,i,e,s){var n;this.setVastViewMode(e),this.xf.resizeAd(t,i),null===(n=this.Pf)||void 0===n||n.resizeAd(t,i,s)}setPlayerOrientation(t){this.yf.setPlayerOrientation(t)}setVastViewMode(t){this.sf=t,this.yf.setVastViewMode(t)}contentChanged(){this.yf.onContentChange()}newLinearAdOpportunity(){this.yf.newLinearAdOpportunity()}destroy(){var t,i,e;(0,pt.i)(this.nf),this.xf.destroy(),null===(t=this.Pf)||void 0===t||t.destroy(),null===(i=this.yf)||void 0===i||i.disableAds(ct.LINEAR,{disableReason:yt.Unknown}),null===(e=this.yf)||void 0===e||e.disableAds(ct.NONLINEAR,{disableReason:yt.Unknown}),this.yf.destroy()}get onAdsEnable(){return this.rf.asObservable()}get onVpaidEvent(){return this.hf.asObservable()}startNonLinear(){var t;null===(t=this.Pf)||void 0===t||t.start()}contentEnded(){var t;this.nonLinearInImpression&&(null===(t=this.Pf)||void 0===t||t.pause())}get onNonLinearEvent(){return this.pf.asObservable()}get onNonLinearExperienceEvent(){return this.ff.asObservable()}get onNonLinearImpressionPrice(){return this.vf.asObservable()}get onNonLinearImpressionRevenue(){return this.gf.asObservable()}get nonLinearInImpression(){return!!this.Pf&&this.Pf.inImpression}get Mf(){var t;return null===(t=this.Pf)||void 0===t?void 0:t.adContainer}startLinear(t,i=!1){this.xf.start(t,i)}setMediaRestrictions(t){this.yf.setMediaRestrictions(t)}getLinearVolume(){return this.xf.getVolume()}setLinearVolume(t){this.xf.setVolume(t)}hideLinear(){this.xf.hide()}showLinear(){this.xf.show()}updateContinueReadingCard(){this.xf.updateContinueReadingCard()}setContinueReadingCard(t){this.xf.setContinueReadingCard(t)}hideContinueReadingCard(){this.xf.hideContinueReadingCard()}setAdMarkerTitle(t){this.xf.setAdMarkerTitle(t)}hideAdMarkerTitle(){this.xf.hideAdMarkerTitle()}enterAdPodLoadingState(){this.xf.enterAdPodLoadingState()}setAdLoadingBackgroundUrl(t){this.xf.setAdLoadingBackgroundUrl(t)}updateLinearPodRemainingTime(t){this.yf.updateLinearPodRemainingTime(t)}get onLinearEvent(){return this.af.asObservable()}get onLinearUiComponentEvent(){return this.cf.asObservable()}get onLinearExperienceEvent(){return this.lf.asObservable()}get onLinearImpressionPrice(){return this.uf.asObservable()}get onLinearImpressionRevenue(){return this.df.asObservable()}get linearInImpression(){return this.xf.inImpression}get Cf(){return this.xf.adContainer}get Lf(){return this.xf.secondaryAdContainer}get linearAdUserInterface(){return this.xf.adUserInterface}get onFullcreenChange(){return this.xf.onFullcreenChange}get linearAdInWin(){return this.xf.adInWin}get firstLinearAdShown(){return this.xf.firstAdShown}get inAdPodLoadingState(){return this.xf.inAdPodLoadingState}getLinearAdContainerWidth(){return this.xf.getMainAdContainerWidth()}userInteraction(t){this.yf.userInteraction(t)}}class St{constructor(){this.Rf=(0,ut.qs)()}get id(){return this.Rf}}!function(t){t[t.NoPrefetch=0]="NoPrefetch",t[t.StartSessionPrefetch=1]="StartSessionPrefetch",t[t.MidSessionPrefetch=2]="MidSessionPrefetch"}(bt||(bt={}));function _t(t){return 2*(t+41)}function At(t){return t/2-41}class Pt{constructor(){this.Bf=Date.now(),this.Df={advertiser:{}}}addPrebid(t){(0,P.$K)(this.Df.advertiser[t])||this.jf(t),this.Df.advertiser[t].prebidData.push({timestamp:Date.now()})}addBid(t,i){(0,P.$K)(this.Df.advertiser[t])||this.jf(t),this.Df.advertiser[t].bidsFloorPriceList.push({timestamp:Date.now(),floorPrice:i})}addImpression(t,i){(0,P.$K)(this.Df.advertiser[t])||this.jf(t),this.Df.advertiser[t].impressionRevenueList.push({timestamp:Date.now(),obfuscatedPrice:i})}shouldRequestLineItem(t){const i=Date.now();return!(this.Ff(i,3)&&this.$f(t,i,5)<-.5&&this.Vf(t,i,3)>=11.5&&this.Uf(t,i,10,.1)<.35)}Ff(t,i){return t-this.Bf>=i*ht.uD}$f(t,i,e){const s=this.Df.advertiser[t];if(!(0,P.$K)(s))return-1;const n=this.Nf(s.impressionRevenueList,i,e).map((t=>t.obfuscatedPrice));let r=0;return(0,a.BZ)(n)&&(r=n.reduce(((t,i)=>t+_t(i)))),this.Hf(r)}Vf(t,i,e){const s=this.Df.advertiser[t];if(!(0,P.$K)(s))return-1;const n=this.Nf(s.prebidData,i,e).length;return this.Hf(n)}Uf(t,i,e,s){const n=this.Df.advertiser[t];if(!(0,P.$K)(n))return-1;const r=this.Nf(n.impressionRevenueList,i,e).map((t=>t.floorPrice)),h=this.zf(r,s);return this.Hf(h)}Nf(t,i,e){const s=i-ht.s_,n=i-e*ht.uD,r=[];for(let i=t.length-1;i>=0&&t[i].timestamp>=n;i--)t[i].timestamp<=s&&r.push(t[i]);return r}Hf(t){return 0===t?-1:t}jf(t){this.Df.advertiser[t]={prebidData:[],bidsFloorPriceList:[],impressionRevenueList:[]}}zf(t,i){if(0===t.length)return 0;if(i<=0)return t[0];if(i>=1)return t[t.length-1];const e=((t=t.sort(((t,i)=>t-i))).length-1)*i,s=Math.floor(e),n=s+1,r=e%1;return n>=t.length?t[s]:t[s]*(1-r)+t[n]*r}}class kt{constructor(){this.creativeView=[],this.start=[],this.firstQuartile=[],this.midpoint=[],this.thirdQuartile=[],this.impression=[],this.viewable_impression=[],this.complete=[],this.mute=[],this.unmute=[],this.pause=[],this.rewind=[],this.resume=[],this.fullscreen=[],this.exitFullscreen=[],this.expand=[],this.collapse=[],this.close=[],this.closeLinear=[],this.acceptInvitationLinear=[],this.acceptInvitation=[],this.skip=[],this.progress=[],this.playerExpand=[],this.playerCollapse=[],this.adExpand=[],this.adCollapse=[],this.fullScreen=[],this.canPlayThrough=[],this.stalled=[],this.waiting=[],this.otherAdInteraction=[]}}class It{constructor(t){this.clickTrackings=[],this.customClicks=[],this.errorUrls=[],this.impressions=[],this.trackingEvents=new kt,t.inLine?this.qf(t.inLine):this.Wf(t.wrapper)}qf(t){this.Gf(t.errors),this.Jf(t.impressions),this.Qf(t.creatives)}Wf(t){this.Gf(t.errors),this.Jf(t.impressions),this.Qf(t.creatives)}Yf(t){this.Kf(t.trackingEvents),this.Zf(t.videoClicks)}Zf(t){t&&(this.tv(t.clickTrackings),this.sv(t.customClicks))}tv(t){this.clickTrackings.push(...t)}sv(t){this.customClicks.push(...t)}Kf(t){t.forEach((t=>{try{this.trackingEvents[t.name].push(t.uri)}catch(e){(0,i.n)({message:"AdManager_VastResponse_tracker",exception:`${t.name}`,callStack:e.stack,level:i.D.INFO})}}))}Qf(t){t.forEach((t=>{t.linear?this.Yf(t.linear):t.nonLinear&&this.Kf(t.nonLinear.trackingEvents)}))}Gf(t){this.errorUrls.push(...t)}Jf(t){this.impressions.push(...t)}}const Tt={[s.ProtoTrackerTriggerType.Impression]:"adImpression",[s.ProtoTrackerTriggerType.Complete25Pc]:"adQuartileFirst",[s.ProtoTrackerTriggerType.Complete50Pc]:"adQuartileSecond",[s.ProtoTrackerTriggerType.Complete75Pc]:"adQuartileThird",[s.ProtoTrackerTriggerType.ViewCompletion]:"adQuartileFourth",[s.ProtoTrackerTriggerType.VideoClick]:"adClick",[s.ProtoTrackerTriggerType.Pause]:"adPause",[s.ProtoTrackerTriggerType.Resume]:"adResume",[s.ProtoTrackerTriggerType.Mute]:"adMute",[s.ProtoTrackerTriggerType.Unmute]:"adUnmute"};class Ct{constructor(){this.adError=[],this.adWin=[],this.adImpression=[],this.adViewableImpression=[],this.adStarted=[],this.adVideoStart=[],this.adQuartileFirst=[],this.adQuartileSecond=[],this.adQuartileThird=[],this.adQuartileFourth=[],this.adClick=[],this.adPause=[],this.adResume=[],this.adSkip=[],this.adMute=[],this.adUnmute=[],this.adUserClose=[],this.adUserAcceptInvitation=[],this.adUserMinimize=[]}static track(t,i,e,n){if(!Array.isArray(t))return;const{width:r,height:h}=n.adContainerState.get(e.adType),{adBreakType:o}=n.adBreakState,{mediaDescription:a,mediaDuration:c,mediaId:l,mediaUrl:u,mediaTitle:d}=n.media;t.forEach((t=>{if(t.url)try{const n=i.replace(t.url,e.vendorId,{adMacros:{adWidth:r,adHeight:h,adPostion:o},mediaMacros:{mediaDescription:a,mediaDuration:c,mediaId:l,mediaUrl:u,mediaTitle:d}});switch(t.type){case s.ProtoTrackerType.Image:(0,ut.Hh)([n],window);break;case s.ProtoTrackerType.Javascript:(0,m.dZ)({src:n},window.document.head,window)}}catch(t){}}))}}function Mt(t,i){t.forEach((t=>function(t,i){(function(t,i){return i[Tt[t]]})(t.trigger,i).push({type:t.type,url:t.url})}(t,i)))}function Et(t){return{type:s.ProtoTrackerType.Image,url:t}}function Lt(t){return t.map((t=>Et(t)))}var Ot;!function(t){t[t.HandlingSdkUrl=0]="HandlingSdkUrl",t[t.NetworkRequestUrl=1]="NetworkRequestUrl",t[t.XmlInvalidString=2]="XmlInvalidString",t[t.XmlParseGeneral=3]="XmlParseGeneral",t[t.XmlInvalidTree=4]="XmlInvalidTree",t[t.XmlInvalidAd=5]="XmlInvalidAd",t[t.XmlAdaptorWrapperLimit=6]="XmlAdaptorWrapperLimit",t[t.HTMLUnknownMimeType=7]="HTMLUnknownMimeType",t[t.ImaAdsManagerInit=8]="ImaAdsManagerInit",t[t.ImaVastEmptyResponse=9]="ImaVastEmptyResponse",t[t.ImaRequestException=10]="ImaRequestException",t[t.ImaTimeout=11]="ImaTimeout",t[t.ImaInvalidResponse=12]="ImaInvalidResponse",t[t.InvalidCreativeUrl=13]="InvalidCreativeUrl",t[t.BidIsNotTargetingAllowedEver=14]="BidIsNotTargetingAllowedEver"}(Ot||(Ot={}));const Rt={[Ot.HandlingSdkUrl]:s.ConnatixNoBidReasonEnum.CsRequestException,[Ot.NetworkRequestUrl]:s.ConnatixNoBidReasonEnum.CsRequestException,[Ot.XmlInvalidString]:s.ConnatixNoBidReasonEnum.CsEmptyResponse,[Ot.XmlParseGeneral]:s.ConnatixNoBidReasonEnum.CsInvalidResponse,[Ot.XmlInvalidTree]:s.ConnatixNoBidReasonEnum.CsInvalidResponse,[Ot.XmlInvalidAd]:s.ConnatixNoBidReasonEnum.CsInvalidResponse,[Ot.XmlAdaptorWrapperLimit]:s.ConnatixNoBidReasonEnum.CsInvalidResponse,[Ot.HTMLUnknownMimeType]:s.ConnatixNoBidReasonEnum.CsInvalidResponse,[Ot.ImaAdsManagerInit]:s.ConnatixNoBidReasonEnum.CsRequestException,[Ot.ImaVastEmptyResponse]:s.ConnatixNoBidReasonEnum.CsInvalidResponse,[Ot.ImaRequestException]:s.ConnatixNoBidReasonEnum.CsRequestException,[Ot.ImaTimeout]:s.ConnatixNoBidReasonEnum.Timeout,[Ot.ImaInvalidResponse]:s.ConnatixNoBidReasonEnum.CsInvalidResponse,[Ot.InvalidCreativeUrl]:s.ConnatixNoBidReasonEnum.CsRequestException,[Ot.BidIsNotTargetingAllowedEver]:s.ConnatixNoBidReasonEnum.BidIsNotTargetingAllowedEver};var Bt,Dt;!function(t){t.VOLUME_DETECTED="volume_detected",t.MALWARE_DETECTED="malware_detected",t.BADURI_DETECTED="baduri_detected"}(Bt||(Bt={})),function(t){t[t.None=0]="None",t[t.Mute=1]="Mute",t[t.ScrollHijack=2]="ScrollHijack",t[t.MemoryLeak=4]="MemoryLeak",t[t.Malware=8]="Malware",t[t.All=15]="All"}(Dt||(Dt={}));class jt{constructor(){this.hf=new x.x}get onVpaidEvent(){return this.hf.asObservable()}handshakeVersion(t="2.0"){return"2.0"}}var Ft=n(2157);function $t(t){switch(t.creativeType){case s.ProtoCreativeTypeEnum.Tam:case s.ProtoCreativeTypeEnum.TamDeal:case s.ProtoCreativeTypeEnum.Rtb:return _t(t.obfuscatedPrice);case s.ProtoCreativeTypeEnum.HeaderBidder:return t.cpm;default:return t.floorPrice}}var Vt,Ut,Nt;n(7417);!function(t){t.Timeout="timeout",t.TimeoutLoaded="timeout_loaded",t.ImaError="imaError",t.ImaScriptFailure="imaScriptFailure",t.ImaObjectNotFound="imaObjectNotFound",t.ImaManagerInit="imaManagerInit",t.ImaInitSdkError="initImasdkError",t.VastVideoTagEventError="vastVideoTagEventError",t.VastUnsupportedMedia="vastUnsupportedMedia",t.VastPlayPromiseReject="playPromiseReject",t.VastNonLinearImageLoadFailure="nonLinearVastImageLoadFailure",t.AdStopped="adStopped",t.MuteEnforce="muteEnforce",t.VpaidOnLoad="vpaidOnLoad",t.VpaidInvalid="vpaidInvalid",t.VpaidGetVpaidAdError="vpaidGetVpaidAdError",t.CnxMediaNoRenditions="noRenditions",t.CnxMediaSrcNotSupported="srcNotSupported",t.InvalidVpaidEvent="invalidVpaidEvent",t.AdxOverlayNoFill="adxOverlayNoFill",t.AdxOverlayGptScriptLoad="adxOverlayGptScriptLoad",t.DisplayIntegratorIframeLoad="displayIntegratorIframeLoad",t.EnforcementMalware="malwareDetected",t.EnforcementVolume="volumeDetected",t.Cancelled="adManagerRemoved",t.DomainBlocked="domainBlocked",t.AdaptorStartAdError="adaptorStartAdError",t.AdaptorInitAdError="adaptorInitAdError",t.WrapperStartAdError="wrapperStartAdError",t.WrapperInitAdError="wrapperInitAdError"}(Vt||(Vt={})),function(t){t[t.Win=0]="Win",t[t.AdLoaded=1]="AdLoaded",t[t.AdStarted=2]="AdStarted",t[t.AdImpression=3]="AdImpression"}(Ut||(Ut={}));class Ht{constructor(t){this.nv=t,this.rv=new Map,(0,P.$K)(this.nv.settings.bidLifecycle)||(this.nv.settings.bidLifecycle={})}onTrackingLifecycleEvent(t){switch(this.rv.set(t,Date.now()),t){case Ut.AdLoaded:this.hv();break;case Ut.AdImpression:this.ov()}}hv(){this.nv.settings.bidLifecycle.winToAdLoadedTime=this.av}ov(){this.nv.settings.bidLifecycle.startAdToImpressionTime=this.lv}get lv(){return this.rv.get(Ut.AdImpression)&&this.rv.get(Ut.AdStarted)?this.rv.get(Ut.AdImpression)-this.rv.get(Ut.AdStarted):0}get av(){return this.rv.get(Ut.AdLoaded)&&this.rv.get(Ut.Win)?this.rv.get(Ut.AdLoaded)-this.rv.get(Ut.Win):0}}!function(t){t.IMPRESSION_TIMEOUT="IMPRESSION_TIMEOUT",t.VIEWABLE_IMPRESSION_TIMEOUT="VIEWABLE_IMPRESSION_TIMEOUT",t.SKIP_AD_TIMEOUT="SKIP_AD_TIMEOUT",t.STOP_AD_TIMEOUT="STOP_AD_TIMEOUT",t.AD_LOADED_TIMEOUT="AD_LOADED_TIMEOUT"}(Nt||(Nt={}));const zt="cnx-ad-bid-slot-selected",qt="Connatix Ad";class Wt extends jt{constructor(t,i){super(),this.uv=t,this.settings=i,this.dv=null,this.fv=null,this.vv=null,this.gv=null,this.mv=void 0,this.yv=!1,this.bl=!1,this.bv=!1,this.wv=!1,this.xv=null,this.nf=[],this.Sv=new x.x,this._v=()=>{this.Pv({type:g.fI.AdError,payload:{errorMessage:Vt.Timeout}}),this.kv()},this.Iv=()=>{this.Tv(),this.Cv(Nt.VIEWABLE_IMPRESSION_TIMEOUT).clearTimeout(),this.settings.viewabilityService.off(this.dv,this.Mv)},this.Mv=t=>{const i=this.Cv(Nt.VIEWABLE_IMPRESSION_TIMEOUT);t?i.timeoutHandle.timeoutId||i.setTimeout():i.clearTimeout()},this.Ev=()=>{this.Pv({type:g.fI.AdSkipped}),this.kv()},this.Ov=()=>{this.Pv({type:g.fI.AdStopped,payload:{shouldTrackPostBid:!0}}),this.kv()},this.Rv=()=>{this.Pv({type:g.fI.AdError,payload:{errorMessage:Vt.TimeoutLoaded}}),this.kv()},this.Cv=t=>{const i=this.Bv[t];return{timeoutHandle:i,setTimeout:()=>{i.timeoutId=this.uv.setTimeout((()=>{i.callback()}),i.timeout)},clearTimeout:()=>{null!==i.timeoutId&&(this.uv.clearTimeout(i.timeoutId),i.timeoutId=null)}}},this.Dv=Date.now(),this.creativeId=this.settings.externalCreativeId,this.jv=`cnx-ad-bid-slot-id-${this.settings.requestMetadata.data.cnxBidId}`,this.Fv=`cnx-ad-slot-${this.settings.id}`;const{adType:e}=this.settings.adManagerLineItem.protoLineItem;this.Bv={[Nt.IMPRESSION_TIMEOUT]:{callback:this._v,timeout:25e3,timeoutId:null},[Nt.VIEWABLE_IMPRESSION_TIMEOUT]:{callback:this.Iv,timeout:Ft.xs[e],timeoutId:null},[Nt.SKIP_AD_TIMEOUT]:{callback:this.Ev,timeout:500,timeoutId:null},[Nt.STOP_AD_TIMEOUT]:{callback:this.Ov,timeout:500,timeoutId:null},[Nt.AD_LOADED_TIMEOUT]:{callback:this.Rv,timeout:25e3,timeoutId:null}},this.qu=i.urlSuffixerService}get createdTimestamp(){return this.Dv}getPrice(){const{advertiserLineItemId:t,creativeType:i,floorPrice:e,lineItemPriority:s}=this.settings.adManagerLineItem.protoLineItem;return $t({lineItemId:t,bidId:this.settings.id,creativeType:i,floorPrice:e,obfuscatedPrice:this.settings.obfuscatedPrice,successRate:this.settings.successRate,priority:s,cpm:this.settings.cpm})}skipAd(){this.Cv(Nt.SKIP_AD_TIMEOUT).setTimeout()}stopAd(t){this.Cv(Nt.STOP_AD_TIMEOUT).setTimeout()}startAd(){this.wv&&(0,i.n)({message:"AdManager_ABaseBidAdaptor_samebid",exception:"startAd",callStack:`adv:${this.settings.adManagerLineItem.protoLineItem.advertiserLineItemId} bidid: ${this.Fv}`,level:i.D.CRITICAL}),this.wv=!0,this.Cv(Nt.IMPRESSION_TIMEOUT).setTimeout()}initAd(t,e,s,n,r,h,o){this.bv&&(0,i.n)({message:"AdManager_ABaseBidAdaptor_samebid",exception:"initAd",callStack:`adv:${this.settings.adManagerLineItem.protoLineItem.advertiserLineItemId} bidid: ${this.Fv}`,level:i.D.CRITICAL}),this.bv=!0,this.Cv(Nt.AD_LOADED_TIMEOUT).setTimeout(),this.$v(o),this.Vv=new Ht(this),this.Vv.onTrackingLifecycleEvent(Ut.Win)}setAdVolume(t){this.fv.volume=t,(0,m.Q1)(this.fv,t),t<=0?this.settings.adEnforcer.start(Dt.Mute):this.settings.adEnforcer.stop(Dt.Mute)}get impressionStarted(){return this.yv}get creativeId(){return this.mv}set creativeId(t){(0,P.QM)(this.creativeId)||(this.mv=t)}get onAdViewableImpression(){return this.Sv.asObservable()}Uv(t){let i;(0,P.kE)(t.payload.skipOffset)&&(i=t.payload.skipOffset);const e={type:g.fI.AdLoaded,payload:{adType:this.settings.adManagerLineItem.protoLineItem.adType,adLoadedData:{skipOffset:i},adSkipMode:this.settings.adManagerLineItem.protoLineItem.skipMode}};return this.settings.adLoadedPayload=e,e}Nv(t){return{type:g.fI.AdImpression,payload:{adType:this.settings.adManagerLineItem.protoLineItem.adType,adSkipMode:this.settings.adManagerLineItem.protoLineItem.skipMode,adSourceData:{moatTrackingEnabled:this.settings.adManagerLineItem.protoLineItem.moatTrackingEnabled,creativeId:this.settings.adManagerLineItem.protoLineItem.cnxCreativeId,adId:this.settings.adManagerLineItem.protoLineItem.advertiserLineItemId,length:this.getAdDuration(),adVideoUrl:this.adVideoUrl,name:qt,skipOffset:this.settings.adLoadedPayload.payload.adLoadedData.skipOffset},customAdData:{ADVERTISER:this.settings.requestMetadata.data.rtbAdomain,CREATIVE_ID:this.creativeId,CAMPAIGN_ID:this.settings.requestMetadata.data.rtbCampainId}}}}Hv(t){return{type:g.fI.AdVideoStart,payload:{adType:this.settings.adManagerLineItem.protoLineItem.adType,adSkipMode:this.settings.adManagerLineItem.protoLineItem.skipMode,adSourceData:{moatTrackingEnabled:this.settings.adManagerLineItem.protoLineItem.moatTrackingEnabled,creativeId:this.settings.adManagerLineItem.protoLineItem.cnxCreativeId,adId:this.settings.adManagerLineItem.protoLineItem.advertiserLineItemId,length:this.getAdDuration(),name:qt},customAdData:{ADVERTISER:this.settings.requestMetadata.data.rtbAdomain,CREATIVE_ID:this.creativeId,CAMPAIGN_ID:this.settings.requestMetadata.data.rtbCampainId}}}}Pv(t){if(t.payload||(t.payload={}),t.payload.adType=this.settings.adManagerLineItem.protoLineItem.adType,this.zv(t))switch(t.type){case g.fI.AdLoaded:0,this.Vv.onTrackingLifecycleEvent(Ut.AdLoaded),this.Cv(Nt.AD_LOADED_TIMEOUT).clearTimeout(),this.hf.next(this.Uv(t));break;case g.fI.AdImpression:this.Vv.onTrackingLifecycleEvent(Ut.AdImpression),this.Cv(Nt.IMPRESSION_TIMEOUT).clearTimeout(),this.qv(),(0,m.cn)(this.vv,zt),this.hf.next(this.Nv(t)),this.yv=!0;break;case g.fI.AdVideoStart:this.Vv.onTrackingLifecycleEvent(Ut.AdStarted),this.hf.next(this.Hv(t));break;case g.fI.AdStopped:case g.fI.AdSkipped:case g.fI.AdError:this.bl&&(0,i.n)({message:"AdManager_ABaseBidAdaptor_double_destroy",exception:this.settings.adManagerLineItem.protoLineItem.advertiserLineItemId,level:i.D.WARN}),this.hu(),this.hf.next(t);break;default:this.hf.next(t)}else this.Pv({type:g.fI.AdError,payload:{errorMessage:Vt.InvalidVpaidEvent}})}$v(t){this.gv=this.Wv(),this.vv=this.gv.slotsContainer,(0,m.cn)(this.vv,this.jv),this.dv=this.gv.adSlot,this.dv.id=this.Fv,this.vv.id=this.settings.bidSlotId,this.fv=this.gv.videoSlot,this.fv.volume=t,(0,m.Q1)(this.fv,t),this.settings.adEnforcer.registerContainer(this.vv,this.Fv),this.nf.push(this.settings.adEnforcer.onEnforcerEvent.subscribe((t=>{this.Gv(t)}))),this.settings.adEnforcer.start(Dt.All)}Wv(){return this.settings.adSlotContainerRecycler.requestAdSlot(this.settings.adContainer)}hu(){this.bl=!0,(0,m.IV)(this.vv,zt),(0,m.IV)(this.vv,this.jv),this.dv.removeAttribute("id"),this.vv.removeAttribute("id"),(0,pt.i)(this.nf),this.kv(),this.settings.adEnforcer.deregisterContainer(this.vv),this.settings.viewabilityService.off(this.dv,this.Mv),null!==this.xv&&this.uv.clearTimeout(this.xv),this.Jv()}Jv(){this.xv=this.uv.setTimeout((()=>{this.settings.adSlotContainerRecycler.destroyAdSlot(this.gv)}),500)}Tv(){const{advertiserLineItemId:t,publisherLineItemId:i}=this.settings.adManagerLineItem.protoLineItem;this.Sv.next({advertiserLineItemId:t,publisherLineItemId:i,rtbSeatId:this.settings.requestMetadata.data.rtbSeatId,dspId:this.settings.requestMetadata.data.dspId})}qv(){const t=Ft.fJ,i=this.dv;this.settings.viewabilityService.on(i,this.Mv,{threshold:t}),this.Mv(this.settings.viewabilityService.check({threshold:t,element:i}))}kv(){Object.keys(this.Bv).forEach((t=>{this.Cv(t).clearTimeout()}))}zv(t){return!(!this.yv&&(t.type===g.fI.AdStopped||t.type===g.fI.AdSkipped))}Gv(t){if(t.detectedContainer!==this.vv)return;let e;switch(t.type){case Bt.BADURI_DETECTED:e="AdManager_enforcer_BadUri";break;case Bt.MALWARE_DETECTED:e="AdManager_enforcer_malware",this.Pv({type:g.fI.AdError,payload:{errorMessage:Vt.EnforcementMalware}});break;case Bt.VOLUME_DETECTED:e="AdManager_enforcer_soundBlock",this.Pv({type:g.fI.AdError,payload:{errorMessage:Vt.EnforcementVolume}})}(0,i.n)({message:e,exception:t.message,level:i.D.WARN})}Qv(t,e,s){const n=this.settings.adManagerLineItem.protoLineItem.advertiserLineItemId,r=this.creativeId;(0,i.n)({message:`AdManager_${t}_${e}`,exception:`advertiserLineItemId:${n}_creativeId:${r}_errorMessage:${null==s?void 0:s.message}`,callStack:null==s?void 0:s.stack,level:i.D.WARN},{throttle:5})}}var Gt;!function(t){t.BANNED_IMA_ADS_ID=["9026814","9053547"],t.KEYWORDS_FOR_BANNED_VAST=["nrb-v.ybp.yahoo.comvasterror","pr.ybp.yahoo.com/vasterror","//s.yimg.com/ff/vista.js"]}(Gt||(Gt={}));var Jt=n(3640);class Qt extends jt{constructor(t,i,e,s,n,r,h){super(),this.Xv=t,this.Zt=i,this.Yv=e,this.Kv=s,this.Zv=n,this.tg=r,this.ig=h,this.eg=new x.x,this.sg=t=>{if(!this.ng(t))return;let i="";try{i=t.getError().getMessage()+"_"+t.getError().getErrorCode()+"_"+t.getError().getVastErrorCode()}catch(t){}this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.ImaError+"_"+i}})},this.rg=t=>{const i=this.Xv.AdEvent.Type;switch(t.type){case i.CLICK:this.hf.next({type:g.fI.AdClickThru,payload:{}});break;case i.LOADED:this.Is(t);break;case i.IMPRESSION:const e={adsManager:this.Zv,adContainer:this.hg,viewMode:this.ag(this.cg),adTag:this.Kv};this.hf.next({type:g.fI.AdVideoStart}),this.hf.next({type:g.fI.AdImpression,payload:{imaMetadata:e}});break;case i.STARTED:this.hf.next({type:g.fI.AdStarted});break;case i.FIRST_QUARTILE:this.hf.next({type:g.fI.AdVideoFirstQuartile});break;case i.MIDPOINT:this.hf.next({type:g.fI.AdVideoMidpoint});break;case i.THIRD_QUARTILE:this.hf.next({type:g.fI.AdVideoThirdQuartile});break;case i.COMPLETE:this.hf.next({type:g.fI.AdVideoComplete}),this.hf.next({type:g.fI.AdStopped,payload:{shouldTrackPostBid:!0}});break;case i.ALL_ADS_COMPLETED:break;case i.DURATION_CHANGE:this.hf.next({type:g.fI.AdDurationChange});break;case i.PAUSED:this.hf.next({type:g.fI.AdPaused});break;case i.RESUMED:this.hf.next({type:g.fI.AdPlaying});break;case i.LINEAR_CHANGED:this.hf.next({type:g.fI.AdLinearChange});break;case i.SKIPPABLE_STATE_CHANGED:this.hf.next({type:g.fI.AdSkippableStateChange});break;case i.SKIPPED:this.hf.next({type:g.fI.AdSkipped});break;case i.VOLUME_CHANGED:this.hf.next({type:g.fI.AdVolumeChange});break;case i.USER_CLOSE:this.hf.next({type:g.fI.AdUserClose});break;case i.LOG:this.hf.next({type:g.fI.AdLog})}},this.ug()}get onCreativeReceived(){return this.eg.asObservable()}initAd(t,i,e,s,n,r){this.hg=r.slot,this.dg=r.videoSlot,this.cg=e||g.zc.Normal;try{this.Zv.setVolume(0),this.Zv.init(t,i,this.ag(this.cg))}catch(t){this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.ImaManagerInit}})}}startAd(){try{this.Zv.start()}catch(t){this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.WrapperStartAdError+`_${t.message}`}})}}stopAd(t){this.Zv.stop(),this.hf.next({type:g.fI.AdStopped,payload:{shouldTrackPostBid:!0}})}resizeAd(t,i,e){this.Zv.resize(t,i,this.ag(e))}pauseAd(){this.Zv.pause()}resumeAd(){this.Zv.resume(),this.Zt===dt.M.Ios&&(0,m.UR)(this.dg)}expandAd(){this.Zv.expand()}collapseAd(){this.Zv.collapse()}skipAd(){this.Zv.skip()}getAdRemainingTime(){return this.Zv.getRemainingTime()||0}getAdDuration(){return this.pg?this.pg.getDuration():0}getAdVolume(){return this.Zv.getVolume()}getAdMediaWidth(){return this.pg?this.pg.getVastMediaWidth():0}getAdMediaHeight(){return this.pg?this.pg.getVastMediaHeight():0}setAdVolume(t){this.Zv.setVolume(t)}getMediaFile(){return this.pg?this.pg.getMediaUrl():void 0}ug(){this.Yv.addEventListener(this.Xv.AdErrorEvent.Type.AD_ERROR,this.sg),this.Zv.addEventListener(this.Xv.AdErrorEvent.Type.AD_ERROR,this.sg),Object.keys(this.Xv.AdEvent.Type).forEach((t=>{this.Zv.addEventListener(this.Xv.AdEvent.Type[t],this.rg,!1)}))}fg(){this.Yv.removeEventListener(this.Xv.AdErrorEvent.Type.AD_ERROR,this.sg),this.Zv.removeEventListener(this.Xv.AdErrorEvent.Type.AD_ERROR,this.sg),Object.keys(this.Xv.AdEvent.Type).forEach((t=>{this.Zv.removeEventListener(this.Xv.AdEvent.Type[t],this.rg,!1)}))}ag(t){return t===g.zc.Fullscreen?this.Xv.ViewMode.FULLSCREEN:this.Xv.ViewMode.NORMAL}vg(t){return Gt.BANNED_IMA_ADS_ID.some((i=>i===t))}ng(t){const i=t.getUserRequestContext();return!i||i.id===this.tg.id}Is(t){if(this.pg=t.getAd(),this.vg(this.pg.getAdId()))return void this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.VpaidInvalid}});this.eg.next(this.pg.getCreativeId());let i=-1,e="";try{i=this.pg.getSkipTimeOffset();const s=t.getAdData().clickThroughUrl;e=(0,P.QM)(s)?s:void 0}catch(t){}(0,Jt.A)(this.ig,e).then((t=>{t?this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.DomainBlocked}}):this.hf.next({type:g.fI.AdLoaded,payload:{skipOffset:i}})}))}destroy(){try{this.fg(),setTimeout((()=>{this.Zv.destroy()}))}catch(t){}}}const Xt={ImaObjectNotFound:Vt.ImaObjectNotFound,ImaScriptFailure:Vt.ImaScriptFailure},Yt="//imasdk.googleapis.com/js/sdkloader/ima3.js";class Kt{static preloadImaSdk(t){(0,m._w)(Yt,t)}static fetchImaSdk(t,e){return new Promise(((s,n)=>{const r=Kt.gg(t);if(r)return void s(r);const h=e&&1===(0,ut.Vm)([95,5]);(0,m.dZ)({src:Yt},t.document.head,t,(()=>{const e=Kt.gg(t);e?s(e):(h&&(0,i.n)({message:"AdManager_ImaIntegrator_no_image_object_found_after_loading_script",level:i.D.CRITICAL},{throttle:2,sendMaxLog:!1}),n(Xt.ImaObjectNotFound))}),(()=>{n(Xt.ImaScriptFailure)}),h,"AdManager_ImaIntegrator_unable_to_insert_ima_sdk_script")}))}static gg(t){return t.google&&t.google.ima}}class Zt extends Wt{constructor(t,i){super(t,i),this.uv=t,this.settings=i,this.gv=null,this.adMediaType="ima",this.adSourceType=s.ProtoAdsourceTypeEnum.Ima,this.mg=[],this.gv=this.settings.imaAdSlotContainer,this.yg=new Qt(this.settings.imaSdk,this.settings.os,this.settings.imaAdsLoader,this.settings.url,this.settings.imaAdsManager,this.settings.requestAdsContext,this.settings.adManagerLineItem.protoLineItem.publisherLineItemId)}initAd(t,i,e,s,n,r,h){try{super.initAd(t,i,e,s,n,r,h),this.settings.adManagerLineItem.protoLineItem.moatTrackingEnabled&&this.bg(),this.mg.push(this.yg.onVpaidEvent.subscribe((t=>{this.Pv(t)})),this.yg.onCreativeReceived.subscribe((t=>{this.creativeId=t}))),this.yg.initAd(t,i,e,s,n,{slot:this.dv,videoSlot:this.fv})}catch(t){this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.AdaptorInitAdError+`_${t.message}`}})}}startAd(){try{super.startAd(),this.yg.startAd()}catch(t){this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.AdaptorStartAdError+`_${t.message}`}})}}stopAd(t){try{super.stopAd(t),this.yg.stopAd(t)}catch(t){this.Qv("ImaBidAdaptor","stopAd",t)}}resizeAd(t,i,e){try{this.yg.resizeAd(t,i,e)}catch(t){this.Qv("ImaBidAdaptor","resizeAd",t)}}pauseAd(){try{this.yg.pauseAd()}catch(t){this.Qv("ImaBidAdaptor","pauseAd",t)}}resumeAd(){try{this.yg.resumeAd()}catch(t){this.Qv("ImaBidAdaptor","resumeAd",t)}}expandAd(){try{this.yg.expandAd()}catch(t){this.Qv("ImaBidAdaptor","expandAd",t)}}collapseAd(){try{this.yg.collapseAd()}catch(t){this.Qv("ImaBidAdaptor","collapseAd",t)}}skipAd(){try{super.skipAd(),this.yg.skipAd()}catch(t){this.Qv("ImaBidAdaptor","skipAd",t)}}getAdRemainingTime(){try{return this.yg.getAdRemainingTime()}catch(t){return this.Qv("ImaBidAdaptor","getAdRemainingTime",t),0}}getAdDuration(){try{return this.yg&&this.yg.getAdDuration()||this.settings.adManagerLineItem.protoLineItem.duration}catch(t){return this.Qv("ImaBidAdaptor","getAdDuration",t),0}}getAdVolume(){try{return this.yg.getAdVolume()}catch(t){return this.Qv("ImaBidAdaptor","getAdVolume",t),0}}getAdMediaSize(){return{width:this.yg.getAdMediaWidth(),height:this.yg.getAdMediaHeight()}}setAdVolume(t){try{super.setAdVolume(t),this.yg.setAdVolume(t)}catch(t){this.Qv("ImaBidAdaptor","setAdVolume",t)}}get adVideoUrl(){return this.yg.getMediaFile()}get declaredDurationInSeconds(){return this.yg.getAdDuration()}Nv(t){const i=super.Nv(t);return i.payload.adSourceData.imaMetadata=t.payload.imaMetadata,i}Wv(){return this.gv}Jv(){this.settings.adSlotContainerRecycler.recycleAdSlot(this.gv)}bg(){Kt.fetchImaSdk(this.settings.globalDomUtilsService.getGlobalClosestTop().topFrame,!1)}hu(){try{super.hu(),(0,pt.i)(this.mg),this.yg.destroy()}catch(t){this.Qv("ImaBidAdaptor","_destroy",t)}}}class ti{constructor(t,i,e,s,n,r,h){this.Xv=t,this.Yv=i,this.Tu=e,this.Cu=s,this.Kv=n,this.dg=r,this.Ue=h,this.wg=new x.x,this.xg=new x.x,this.Sg={id:(0,ut.qs)()},this.Zv=null,this.sg=t=>{if(!this.ng(t))return;switch(t.getError().getErrorCode()){case this.Xv.AdError.ErrorCode.VAST_EMPTY_RESPONSE:this._g(Ot.ImaVastEmptyResponse);break;case this.Xv.AdError.ErrorCode.VAST_WRAPPER_ERROR:case this.Xv.AdError.ErrorCode.VAST_MALFORMED_RESPONSE:this._g(Ot.ImaInvalidResponse);break;default:this._g(Ot.ImaRequestException)}},this.Ag=t=>{this.ng(t)&&(this.Zv=t.getAdsManager(this.dg,{loadVideoTimeout:25*ht.s_}),this.Pg(),this.wg.next({imaAdsManager:this.Zv,requestAdsContext:this.Sg}))},this.Yv.addEventListener(this.Xv.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED,this.Ag),this.Yv.addEventListener(this.Xv.AdErrorEvent.Type.AD_ERROR,this.sg)}get onSuccess(){return this.wg.asObservable()}get onError(){return this.xg.asObservable()}loadAd(){const t=new this.Xv.AdsRequest;t.adTagUrl=this.Kv,t.linearAdSlotWidth=t.nonLinearAdSlotWidth=this.Tu,t.linearAdSlotHeight=t.nonLinearAdSlotHeight=this.Cu,t.pageUrl=this.Ue,this.Yv.requestAds(t,this.Sg)}_g(t){this.xg.next(t)}Pg(){this.Yv.removeEventListener(this.Xv.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED,this.Ag),this.Yv.removeEventListener(this.Xv.AdErrorEvent.Type.AD_ERROR,this.sg)}ng(t){const i=t.getUserRequestContext();return!i||i.id===this.Sg.id}destroy(){var t;try{this.Pg(),null===(t=this.Zv)||void 0===t||t.destroy()}catch(t){}}}var ii;!function(t){t[t.Transient=0]="Transient",t[t.Singleton=1]="Singleton",t[t.ResolutionScoped=2]="ResolutionScoped",t[t.ContainerScoped=3]="ContainerScoped"}(ii||(ii={}));const ei=ii;var si=function(t,i){return si=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)i.hasOwnProperty(e)&&(t[e]=i[e])},si(t,i)};function ni(t,i){function e(){this.constructor=t}si(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)}function ri(t){var i="function"==typeof Symbol&&Symbol.iterator,e=i&&t[i],s=0;if(e)return e.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&s>=t.length&&(t=void 0),{value:t&&t[s++],done:!t}}};throw new TypeError(i?"Object is not iterable.":"Symbol.iterator is not defined.")}function hi(t,i){var e="function"==typeof Symbol&&t[Symbol.iterator];if(!e)return t;var s,n,r=e.call(t),h=[];try{for(;(void 0===i||i-- >0)&&!(s=r.next()).done;)h.push(s.value)}catch(t){n={error:t}}finally{try{s&&!s.done&&(e=r.return)&&e.call(r)}finally{if(n)throw n.error}}return h}function oi(){for(var t=[],i=0;i0},t.prototype.clear=function(){this.kg.clear()},t.prototype.ensure=function(t){this.kg.has(t)||this.kg.set(t,[])},t}();const gi=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return ni(i,t),i}(vi);const mi=function(){this.scopedResolutions=new Map};function yi(t,i,e){var s,n,r=hi(t.toString().match(/constructor\(([\w, ]+)\)/)||[],2)[1],h=function(t,i){return null===t?"at position #"+i:'"'+t.split(",")[i].trim()+'" at position #'+i}(void 0===r?null:r,i);return s="Cannot inject the dependency "+h+' of "'+t.name+'" constructor. Reason:',void 0===n&&(n=" "),oi([s],e.message.split("\n").map((function(t){return n+t}))).join("\n")}var bi=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return ni(i,t),i}(vi),wi=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return ni(i,t),i}(vi);const xi=function(){this.preResolution=new bi,this.postResolution=new wi};var Si=new Map,_i=function(){function t(t){this.parent=t,this.Tg=new gi,this.interceptors=new xi}return t.prototype.register=function(t,i,e){var s;if(void 0===e&&(e={lifecycle:ei.Transient}),s=function(t){return ai(t)||fi(t)||pi(t)||ci(t)}(i)?i:{useClass:i},pi(s))for(var n=[t],r=s;null!=r;){var h=r.useToken;if(n.includes(h))throw new Error("Token registration cycle detected! "+oi(n,[h]).join(" -> "));n.push(h);var o=this.Tg.get(h);r=o&&pi(o.provider)?o.provider:null}if((e.lifecycle===ei.Singleton||e.lifecycle==ei.ContainerScoped||e.lifecycle==ei.ResolutionScoped)&&(fi(s)||ci(s)))throw new Error('Cannot use lifecycle "'+ei[e.lifecycle]+'" with ValueProviders or FactoryProviders');return this.Tg.set(t,{provider:s,options:e}),this},t.prototype.registerType=function(t,i){return ui(i)?this.register(t,{useToken:i}):this.register(t,{useClass:i})},t.prototype.registerInstance=function(t,i){return this.register(t,{useValue:i})},t.prototype.registerSingleton=function(t,i){if(ui(t)){if(ui(i))return this.register(t,{useToken:i},{lifecycle:ei.Singleton});if(i)return this.register(t,{useClass:i},{lifecycle:ei.Singleton});throw new Error('Cannot register a type name as a singleton without a "to" token')}var e=t;return i&&!ui(i)&&(e=i),this.register(t,{useClass:e},{lifecycle:ei.Singleton})},t.prototype.resolve=function(t,i){void 0===i&&(i=new mi);var e=this.getRegistration(t);if(!e&&ui(t))throw new Error('Attempted to resolve unregistered dependency token: "'+t.toString()+'"');if(this.executePreResolutionInterceptor(t,"Single"),e){var s=this.resolveRegistration(e,i);return this.executePostResolutionInterceptor(t,s,"Single"),s}if(function(t){return"function"==typeof t||t instanceof li}(t)){s=this.construct(t,i);return this.executePostResolutionInterceptor(t,s,"Single"),s}throw new Error("Attempted to construct an undefined constructor. Could mean a circular dependency problem. Try using `delay` function.")},t.prototype.executePreResolutionInterceptor=function(t,i){var e,s;if(this.interceptors.preResolution.has(t)){var n=[];try{for(var r=ri(this.interceptors.preResolution.getAll(t)),h=r.next();!h.done;h=r.next()){var o=h.value;"Once"!=o.options.frequency&&n.push(o),o.callback(t,i)}}catch(t){e={error:t}}finally{try{h&&!h.done&&(s=r.return)&&s.call(r)}finally{if(e)throw e.error}}this.interceptors.preResolution.setAll(t,n)}},t.prototype.executePostResolutionInterceptor=function(t,i,e){var s,n;if(this.interceptors.postResolution.has(t)){var r=[];try{for(var h=ri(this.interceptors.postResolution.getAll(t)),o=h.next();!o.done;o=h.next()){var a=o.value;"Once"!=a.options.frequency&&r.push(a),a.callback(t,i,e)}}catch(t){s={error:t}}finally{try{o&&!o.done&&(n=h.return)&&n.call(h)}finally{if(s)throw s.error}}this.interceptors.postResolution.setAll(t,r)}},t.prototype.resolveRegistration=function(t,i){if(t.options.lifecycle===ei.ResolutionScoped&&i.scopedResolutions.has(t))return i.scopedResolutions.get(t);var e,s=t.options.lifecycle===ei.Singleton,n=t.options.lifecycle===ei.ContainerScoped,r=s||n;return e=fi(t.provider)?t.provider.useValue:pi(t.provider)?r?t.instance||(t.instance=this.resolve(t.provider.useToken,i)):this.resolve(t.provider.useToken,i):ai(t.provider)?r?t.instance||(t.instance=this.construct(t.provider.useClass,i)):this.construct(t.provider.useClass,i):ci(t.provider)?t.provider.useFactory(this):this.construct(t.provider,i),t.options.lifecycle===ei.ResolutionScoped&&i.scopedResolutions.set(t,e),e},t.prototype.resolveAll=function(t,i){var e=this;void 0===i&&(i=new mi);var s=this.getAllRegistrations(t);if(!s&&ui(t))throw new Error('Attempted to resolve unregistered dependency token: "'+t.toString()+'"');if(this.executePreResolutionInterceptor(t,"All"),s){var n=s.map((function(t){return e.resolveRegistration(t,i)}));return this.executePostResolutionInterceptor(t,n,"All"),n}var r=[this.construct(t,i)];return this.executePostResolutionInterceptor(t,r,"All"),r},t.prototype.isRegistered=function(t,i){return void 0===i&&(i=!1),this.Tg.has(t)||i&&(this.parent||!1)&&this.parent.isRegistered(t,!0)},t.prototype.reset=function(){this.Tg.clear(),this.interceptors.preResolution.clear(),this.interceptors.postResolution.clear()},t.prototype.clearInstances=function(){var t,i;try{for(var e=ri(this.Tg.entries()),s=e.next();!s.done;s=e.next()){var n=hi(s.value,2),r=n[0],h=n[1];this.Tg.setAll(r,h.filter((function(t){return!fi(t.provider)})).map((function(t){return t.instance=void 0,t})))}}catch(i){t={error:i}}finally{try{s&&!s.done&&(i=e.return)&&i.call(e)}finally{if(t)throw t.error}}},t.prototype.createChildContainer=function(){var i,e,s=new t(this);try{for(var n=ri(this.Tg.entries()),r=n.next();!r.done;r=n.next()){var h=hi(r.value,2),o=h[0],a=h[1];a.some((function(t){return t.options.lifecycle===ei.ContainerScoped}))&&s.Tg.setAll(o,a.map((function(t){return t.options.lifecycle===ei.ContainerScoped?{provider:t.provider,options:t.options}:t})))}}catch(t){i={error:t}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(i)throw i.error}}return s},t.prototype.beforeResolution=function(t,i,e){void 0===e&&(e={frequency:"Always"}),this.interceptors.preResolution.set(t,{callback:i,options:e})},t.prototype.afterResolution=function(t,i,e){void 0===e&&(e={frequency:"Always"}),this.interceptors.postResolution.set(t,{callback:i,options:e})},t.prototype.getRegistration=function(t){return this.isRegistered(t)?this.Tg.get(t):this.parent?this.parent.getRegistration(t):null},t.prototype.getAllRegistrations=function(t){return this.isRegistered(t)?this.Tg.getAll(t):this.parent?this.parent.getAllRegistrations(t):null},t.prototype.construct=function(t,i){var e=this;if(t instanceof li)return t.createProxy((function(t){return e.resolve(t,i)}));var s=Si.get(t);if(!s||0===s.length){if(0===t.length)return new t;throw new Error('TypeInfo not known for "'+t.name+'"')}var n=s.map(this.resolveParams(i,t));return new(t.bind.apply(t,oi([void 0],n)))},t.prototype.resolveParams=function(t,i){var e=this;return function(s,n){var r,h,o,a;try{return"object"==typeof(a=s)&&"token"in a&&"multiple"in a?di(s)?s.multiple?(r=e.resolve(s.transform)).transform.apply(r,oi([e.resolveAll(s.token)],s.transformArgs)):(h=e.resolve(s.transform)).transform.apply(h,oi([e.resolve(s.token,t)],s.transformArgs)):s.multiple?e.resolveAll(s.token):e.resolve(s.token,t):di(s)?(o=e.resolve(s.transform,t)).transform.apply(o,oi([e.resolve(s.token,t)],s.transformArgs)):e.resolve(s,t)}catch(t){throw new Error(yi(i,n,t))}}},t}(),Ai=new _i;var Pi="injectionTokens";const ki=function(){return function(t){Si.set(t,function(t){var i=Reflect.getMetadata("design:paramtypes",t)||[],e=Reflect.getOwnMetadata(Pi,t)||{};return Object.keys(e).forEach((function(t){i[+t]=e[t]})),i}(t))}};const Ii=function(){return function(t){ki()(t),Ai.registerSingleton(t)}};if("undefined"==typeof Reflect||!Reflect.getMetadata)throw new Error("tsyringe requires a reflect polyfill. Please add 'import \"reflect-metadata\"' to the top of your entry point.");class Ti{constructor(t=Ai){this.Cg=t}static getInstance(){return this.Mg||(this.Mg=new Ti),this.Mg}static getGlobalContainer(){return this.getInstance().globalContainer}get globalContainer(){return this.Cg}}var Ci=n(655),Mi=n(5720),Ei=function(t){function i(i,e){return t.call(this)||this}return(0,Ci.ZT)(i,t),i.prototype.schedule=function(t,i){return void 0===i&&(i=0),this},i}(Mi.w0),Li={setInterval:function(){for(var t=[],i=0;i=0;o--)(n=t[o])&&(h=(r<3?n(h):r>3?n(i,e,h):n(i,e))||h);return r>3&&h&&Object.defineProperty(i,e,h),h},qi=function(t,i){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,i)};let Wi=Hi=class{constructor(){var t,i;this.Bg=new Map,this.Dg=0,this.jg=(void 0===(t=Hi.TIME_BETWEEN_TICKS)&&(t=0),void 0===i&&(i=ji),t<0&&(t=0),Ni(t,t,i)),this.jg.subscribe((()=>this.Fg()))}setTimeout(t,i=0){return this.$g(t,i,!0)}clearTimeout(t){this.Bg.delete(t)}setInterval(t,i=0){return this.$g(t,i,!1)}clearInterval(t){this.Bg.delete(t)}Vg(t){try{t.callback()}catch(t){(0,i.n)({message:"TimerService_error",callStack:t.stack,exception:t.message,level:i.D.INFO},{throttle:1})}}Fg(){const t=(new Date).getTime(),i=[];for(const[e,s]of this.Bg)t-s.startTime{setTimeout((()=>{i(Ot.ImaTimeout)}),25e3)})),i=this.qg(this.zg);return Promise.race([i,t]).then((t=>(this.metrics.fetchEnd=(new Date).getTime(),this.Ug=!0,this.Wg&&(0,pt.i)(this.Hg),t))).catch((t=>{throw this.metrics.fetchEnd=(new Date).getTime(),this.Ug=!0,this.Wg&&((0,pt.i)(this.Hg),this.Wg.destroy(),this.settings.adSlotContainerRecycler.recycleAdSlot(this.zg)),t}))}qg(t){return t.fetchImaDependencies().then((t=>(this.Jg=t,this.Qg(t)))).then((t=>this.Xg(t))).catch((t=>{throw(0,P.$K)(t)?t:Ot.ImaRequestException}))}Qg(t){return this.Ug?Promise.reject():new Promise(((i,e)=>{const s=this.Yg();this.Wg=new ti(t.imaSdk,t.imaAdsLoader,s.width,s.height,this.settings.url,this.zg.videoSlot,this.settings.pageUrl),this.Hg.push(this.Wg.onSuccess.subscribe((t=>{i(t)})),this.Wg.onError.subscribe((t=>{e(t)}))),this.Wg.loadAd()}))}Yg(){return this.settings.callingState.adContainerState.get(this.settings.adManagerLineItem.protoLineItem.adType)}Xg(t){const i=Ti.getGlobalContainer().resolve(Wi);return new Zt(i,{id:this.settings.id,adManagerLineItem:this.settings.adManagerLineItem,trackers:this.settings.trackersInformation,url:this.settings.url,requestMetadata:this.settings.requestMetadata,callingState:this.settings.callingState,adContainer:this.settings.adContainer,globalDomUtilsService:this.settings.globalDomUtilsService,viewabilityService:this.settings.viewabilityService,cpm:this.settings.cpm,obfuscatedPrice:this.settings.obfuscatedPrice,adEnforcer:this.settings.adEnforcer,successRate:this.settings.successRate,os:this.settings.os,adSlotContainerRecycler:this.settings.adSlotContainerRecycler,externalCreativeId:this.settings.creativeId,imaSdk:this.Jg.imaSdk,imaAdsLoader:this.Jg.imaAdsLoader,imaAdsManager:t.imaAdsManager,requestAdsContext:t.requestAdsContext,imaAdSlotContainer:this.zg,bidSlotId:this.settings.bidSlotId,pageUrl:this.settings.pageUrl,urlSuffixerService:this.settings.urlSuffixerService})}}var Ji,Qi,Xi,Yi=n(2324);!function(t){t[t.Javascript=0]="Javascript",t[t.Video=1]="Video"}(Ji||(Ji={})),function(t){function i(t){return/^\s*$/.test(t)?null:/^(?:true|false)$/i.test(t)?"true"===t.toLowerCase():isFinite(t)?parseFloat(t):isFinite(Date.parse(t))?new Date(t):"string"==typeof t?t.trim():t}t.JXONTree=function t(e){let s=0,n="";if(this.keyAttributes||(this.keyAttributes={}),e.hasChildNodes()){for(let i,s,r,h=0;h0:e.hasAttributes()){let t;for(;s").replace(/</g,"<").replace(/&/g,"&")}}(Qi||(Qi={}));class Ki{constructor(t){this.Kg=["text/javascript","text/javascript1.0","text/javascript1.2","text/javascript1.4","text/jscript","application/javascript","application/x-javascript","text/ecmascript","text/ecmascript1.0","text/ecmascript1.2","text/ecmascript1.4","text/livescript","application/ecmascript","application/x-ecmascript"],this.Zg="VPAID",this.delivery=void 0,this.type=void 0,this.width=0,this.height=0,this.codec=void 0,this.id=void 0,this.bitrate=void 0,this.minBitrate=void 0,this.maxBitrate=void 0,this.scalable=void 0,this.maintainAspectRatio=void 0,this.apiFramework=void 0,this.src=void 0,this.delivery=t.keyAttributes.delivery,this.type=t.keyAttributes.type,this.width=t.keyAttributes.width,this.height=t.keyAttributes.height,this.codec=t.keyAttributes.codec,this.id=t.keyAttributes.id,this.bitrate=t.keyAttributes.bitrate,this.minBitrate=t.keyAttributes.minbitrate,this.maxBitrate=t.keyAttributes.maxbitrate,this.scalable=t.keyAttributes.scalable,this.maintainAspectRatio=t.keyAttributes.maintainaspectratio,this.apiFramework=t.keyAttributes.apiframework,this.src=Qi.getKeyValue(t)}isSupported(){return!("application/x-shockwave-flash"===this.type||"video/x-flv"===this.type)}getMediaFileType(){return this.apiFramework===this.Zg||(0,a.d3)(this.type,this.Kg)?Ji.Javascript:Ji.Video}}class Zi{constructor(t){this.clickThrough=void 0,this.clickTrackings=[],this.customClicks=[],this.clickThrough=Qi.getKeyValue(t.clickthrough),this.clickTrackings=this.tm((0,a.qo)(t.clicktracking)),this.customClicks=this.tm((0,a.qo)(t.customclick))}tm(t){const i=[];return void 0!==t[0]&&t.forEach((t=>{i.push(Qi.getKeyValue(t))})),i}}class te{constructor(t){this.duration=void 0,this.mediaFiles=[],this.trackingEvents=[],this.skipoffset=void 0,this.videoClicks=void 0,this.duration=(0,Yi.pP)(Qi.getKeyValue(t.duration)),this.skipoffset=(0,Yi.QI)(t.keyAttributes.skipoffset,this.duration),t.mediafiles&&(this.mediaFiles=this.im((0,a.qo)(t.mediafiles.mediafile))),t.trackingevents&&(this.trackingEvents=Xi.parseTrackingEvents((0,a.qo)(t.trackingevents.tracking),this.duration)),t.videoclicks&&(this.videoClicks=new Zi(t.videoclicks)),t.adparameters&&(this.adParameters=Qi.getKeyValue(t.adparameters),t.adparameters["@xmlEncoded"]&&(this.adParameters=Qi.decodeXMLText(this.adParameters)))}im(t){const i=[];return void 0!==t[0]&&t.forEach((t=>{const e=new Ki(t);e.isSupported()&&i.push(e)})),i}isSupported(){return!0}}class ie{constructor(t){this.minSuggestedDuration=void 0,this.staticResource={},this.htmlResource={},this.iframeResource={},this.nonLinearClickTracking={},this.id=t.keyAttributes.id,this.width=t.keyAttributes.width,this.height=t.keyAttributes.height,this.expandedWidth=t.keyAttributes.expandedheight,this.expandedHeight=t.keyAttributes.expandedwidth,this.scalable=t.keyAttributes.scalable,this.maintainAspectRatio=t.keyAttributes.maintainaspectratio,this.apiFramework=t.keyAttributes.apiframework,this.minSuggestedDuration=(0,Yi.pP)(t.keyAttributes.minsuggestedduration),this.nonLinearClickThrough=t.nonlinearclickthrough.keyValue,t.nonlinearclicktracking&&(this.nonLinearClickTracking.id=t.nonlinearclicktracking.keyAttributes.id,this.nonLinearClickTracking.uri=t.nonlinearclicktracking.keyValue),t.staticresource&&(this.staticResource.creativeType=t.staticresource.keyAttributes.creativetype,this.staticResource.uri=t.staticresource.keyValue),t.iframeresource&&(this.iframeResource.uri=t.iframeresource.keyValue),t.htmlresource&&(this.htmlResource.uri=t.htmlresource.keyValue)}isSupported(){return"VPAID"===this.apiFramework?((0,i.n)({message:"AdManager_NonLinearAd_VPAID_found",level:i.D.INFO}),!1):this.width&&this.height?!(!this.staticResource.creativeType||!this.staticResource.uri)||(this.htmlResource.uri&&(0,i.n)({message:"AdManager_NonLinearAd_htmlResource_found",level:i.D.INFO}),this.iframeResource.uri&&(0,i.n)({message:"AdManager_NonLinearAd_iframeResource_found",level:i.D.INFO}),!1):((0,i.n)({message:"AdManager_NonLinearAd_no_dimensions",level:i.D.INFO}),!1)}}class ee{constructor(t){this.nonLinearAdList=[],this.trackingEvents=[],t.nonlinear&&(this.nonLinearAdList=this.nm((0,a.qo)(t.nonlinear))),t.trackingevents&&(this.trackingEvents=Xi.parseTrackingEvents((0,a.qo)(t.trackingevents.tracking))),t.adparameters&&(this.adParameters=Qi.getKeyValue(t.adparameters),t.adparameters["@xmlEncoded"]&&(this.adParameters=Qi.decodeXMLText(this.adParameters)))}isSupported(){return!0}nm(t){const i=[];return t.forEach((t=>{const e=new ie(t);e.isSupported()&&i.push(e)})),i}}class se{constructor(t){if(this.id=void 0,this.sequence=void 0,this.adId=void 0,this.linear=void 0,this.nonLinear=void 0,this.id=t.keyAttributes.id,this.sequence=t.keyAttributes.sequence,this.adId=t.keyAttributes.adid,t.linear)try{this.linear=new te(t.linear)}catch(t){(0,i.n)({callStack:t.stack,level:i.D.WARN,exception:t.message,message:"Creative_Linear"})}if(t.nonlinearads)try{this.nonLinear=new ee(t.nonlinearads)}catch(t){(0,i.n)({callStack:t.stack,level:i.D.WARN,exception:t.message,message:"Creative_NonLinear"})}}isSupported(){return!0}}class ne{constructor(t,i){this.name=t.keyAttributes.event,this.uri=Qi.getKeyValue(t),"progress"===this.name&&(this.offset=(0,Yi.QI)(t.keyAttributes.offset,i))}}!function(t){function i(t){const i=[];return void 0!==t[0]&&t.forEach((t=>{i.push(Qi.getKeyValue(t))})),i}t.parseImpressions=function(t){return i(t)},t.parseCretives=function(t){const i=[];return t.forEach((t=>{i.push(new se(t))})),i},t.parseErrors=function(t){return i(t)},t.parseTrackingEvents=function(t,i){const e=[];return void 0!==t[0]&&t.forEach((t=>{e.push(new ne(t,i))})),e}}(Xi||(Xi={}));class re{constructor(t){var i;this.description=void 0,this.advertiser=void 0,this.surveys=void 0,this.errors=void 0,this.pricing=void 0,this.extensions=void 0,this.adTitle=Qi.getKeyValue(t.adtitle),this.adSystem=Qi.getKeyValue(t.adsystem),this.impressions=Xi.parseImpressions((0,a.qo)(t.impression)),this.creatives=(null===(i=t.creatives)||void 0===i?void 0:i.creative)?Xi.parseCretives((0,a.qo)(t.creatives.creative)):[],this.description=Qi.getKeyValue(t.description),this.advertiser=Qi.getKeyValue(t.advertiser),this.surveys=Qi.getKeyValue(t.survey),this.errors=Xi.parseErrors((0,a.qo)(t.error)),this.pricing=Qi.getKeyValue(t.pricing),this.extensions=Qi.getKeyValue(t.extensions)}isSupported(){return!0}}class he{constructor(t){var i;this.adSystem=void 0,this.impressions=[],this.VASTAdTagURI=void 0,this.creatives=[],this.errors=void 0,this.extensions=void 0,this.fallowAdditionalWrappers=void 0,this.allowMultipleAds=void 0,this.fallbackOnNoAd=void 0,this.adSystem=Qi.getKeyValue(t.adsystem),this.impressions=Xi.parseImpressions((0,a.qo)(t.impression)),this.VASTAdTagURI=Qi.getKeyValue(t.vastadtaguri),this.creatives=(null===(i=t.creatives)||void 0===i?void 0:i.creative)?Xi.parseCretives((0,a.qo)(t.creatives.creative)):[],this.errors=Xi.parseErrors((0,a.qo)(t.error)),this.extensions=t.extensions,this.fallowAdditionalWrappers=!t.keyAttributes.followadditionalwrappers||t.keyAttributes.followadditionalwrappers,this.allowMultipleAds=t.keyAttributes.allowmultipleads,this.fallbackOnNoAd=t.keyAttributes.fallbackonnoad}}class oe{constructor(t){Array.isArray(t)?this.rm(t):this.hm(t)}isSupported(){return!0}hm(t){this.id=t.keyAttributes.id,this.sequence=t.keyAttributes.sequence,t.inline?this.inLine=new re(t.inline):t.wrapper&&(this.wrapper=new he(t.wrapper))}rm(t){const i=t.filter((t=>{const i=this.om(t).filter((t=>t.linear));return!!(0,a.BZ)(i)}));(0,a.BZ)(i)&&this.hm(i[0])}om(t){return t.inline?(0,a.qo)(t.inline.creatives.creative):t.wrapper?(0,a.qo)(t.wrapper.creatives.creative):[]}}class ae{constructor(t=2){this.am=t}parseVastXml(t){try{if(!this.lm(t))return{error:!0,errorReason:Ot.XmlInvalidString};if(this.um(t))return{error:!0,errorReason:Ot.XmlInvalidAd};const i=(new DOMParser).parseFromString(t,"application/xml"),e=new Qi.JXONTree(i.documentElement);if(!this.dm(e,this.am))return{error:!0,errorReason:Ot.XmlInvalidTree};const s=new oe(e.ad);return this.pm(s)?{error:!1,result:s}:{error:!0,errorReason:Ot.XmlInvalidAd}}catch(t){return{error:!0,errorReason:Ot.XmlParseGeneral}}}lm(t){return(0,P.QM)(t)}um(t){return Gt.KEYWORDS_FOR_BANNED_VAST.some((i=>t.includes(i)))}dm(t,i){if(!t.ad)return!1;const e=parseInt(t.keyAttributes.version,10);return!(e&&e{var i;return null===(i=null==t?void 0:t.linear)||void 0===i?void 0:i.mediaFiles.length})),i=[...e.creatives].filter((t=>{var i;return null===(i=null==t?void 0:t.nonLinear)||void 0===i?void 0:i.nonLinearAdList.length}));if(!(0,a.BZ)(t)&&!(0,a.BZ)(i))return!1}return!0}}class ce{constructor(t){this.mediaFiles=[],this.nonLinearFiles=[],this.adTitle=void 0,this.adParameters=void 0,this.linearClickThrough=void 0,this.creativeId=void 0,t.forEach((t=>{t.inLine?(this.adTitle=t.inLine.adTitle,this.Qf(t.inLine.creatives)):t.wrapper&&this.Qf(t.wrapper.creatives)}))}Yf(t){this.duration=t.duration,this.fm(t.mediaFiles),this.vm(t.skipoffset),this.gm(t.adParameters),t.videoClicks&&t.videoClicks.clickThrough&&this.bm(t.videoClicks.clickThrough)}wm(t){this.xm(t.nonLinearAdList),this.gm(t.adParameters)}xm(t){this.nonLinearFiles=[...this.nonLinearFiles,...t]}gm(t){this.adParameters=t}vm(t){this.skipoffset=t}fm(t){this.mediaFiles=[...this.mediaFiles,...t]}bm(t){this.linearClickThrough=t}Qf(t){t.forEach((t=>{this.creativeId=t.id,t.linear&&this.Yf(t.linear),t.nonLinear&&this.wm(t.nonLinear)}))}}var le,ue=n(2817);!function(t){t[t.FirstQuartile=0]="FirstQuartile",t[t.SecondQuartile=1]="SecondQuartile",t[t.ThirdQuartile=2]="ThirdQuartile",t[t.FourthQuartile=3]="FourthQuartile"}(le||(le={}));var de,pe,fe=n(5874);function ve(t,i,e,s){t.style.top=`${function(t,i,e,s,n){let r=i-s.clientY;const h=s.clientY+s.height-i;n.alignTop&&r>t.offsetHeight?r-=t.offsetHeight:!n.alignTop&&hs.height&&(r=s.height-t.offsetHeight));return r}(t,i.clientY,i.height,e,s)}px`,t.style.left=`${function(t,i,e,s){const n=s.distanceFromMargin?s.distanceFromMargin:0;let r=Math.ceil(i)-Math.ceil(e.clientX),h=i,o=h+t.offsetWidth;const a=e.clientX+e.width;if(s.alignMiddle){const i=t.offsetWidth/2;r-=Math.ceil(i),h-=i,o-=i}if(s.alignMiddle||s.forceRight)return e.clientX>h?r=0+n:aa&&(r-=t.offsetWidth);return r}(t,i.clientX,e,s)}px`}!function(t){t[t.Top=1]="Top",t[t.Bottom=2]="Bottom",t[t.Right=4]="Right",t[t.Left=8]="Left",t[t.Middle=16]="Middle"}(de||(de={}));class ge extends h._{constructor(t,i,e,s,n){super(),this.mediator=t,this.Sr=i,this._m=e,this.Qt=n,this.Am=i.createElementByString(s)}getContainer(){return this.Am}getCoordinates(t){const i=this.Sr.getElementCoordinates(this.Am);return this.Qt&&t?((t&de.Top)===de.Top&&(i.clientY-=this.Am.clientHeight),(t&de.Right)===de.Right&&(i.clientX+=this.Am.clientWidth)):i.clientX+=i.width/2,i}showComponent(t=!1){if(!this.Am||!this.Am.parentElement)return;const i=(0,m.pv)(this.Am.parentElement,"cnx-ui-btn")?this.Am.parentElement:this.Am;t&&(0,m.GF)(i)?(0,m.Ji)(i):(0,m.Ho)(i)}hideComponent(t=!1){if(!this.Am||!this.Am.parentElement)return;const i=(0,m.pv)(this.Am.parentElement,"cnx-ui-btn")?this.Am.parentElement:this.Am;t&&!(0,m.GF)(i)?(0,m.U6)(i,(()=>(0,m.MV)(i))):(0,m.MV)(i)}destroy(){this.Am.innerHTML="",this.Am.style.display="none",this._m.unregisterAll(this)}}!function(t){t[t.SimpleMenuItem=0]="SimpleMenuItem",t[t.ToggleMenuItem=1]="ToggleMenuItem",t[t.SubmenuMenuItem=2]="SubmenuMenuItem"}(pe||(pe={}));class me extends ge{constructor(t,i,e,s,n,r,h,o){super(t,i,e,s,o),this.eventName=n,this.Pm=r,this.km=h,this.Im=[],this.eventList=[w[w.RebindComponent],fe.Z[fe.Z.HoldStart],fe.Z[fe.Z.HoldEnd],w[w.ContextMenuOpen],w[w.ContextMenuClose]],this.Tm=!1,this.Cm=10,this.Mm=t=>{this.Em.removeChild(t.target),this.Em.style.width=`${this.Am.clientWidth}px`},this.close=t=>{t&&(0,ut.Of)(t.target,c.s6.ContextController,this.Cm)||!1!==this.isOpen&&(this.Tm&&(this.mediator.publish(this,fe.Z[fe.Z.HoldEnd]),(0,m.IV)(this.km,c.Gj.OnHold),this.Tm=!1),this.isOpen=!1,this.mediator.publish(this,w[w.ContextMenuClose]),(0,m.cn)(this.Am,c.Gj.Invisible),this._m.removeGlobalActions(this.Am),this.closeAllSubmenuItems())},this.close(),this.cacheCoordinates(),this.eventList.push(this.eventName),this.Em=this.Am.getElementsByClassName(c.Ng.Container)[0],this.Lm=this.Sr.createElementByString(``),this.Em.appendChild(this.Lm),(0,m.cn)(this.Em,c.s6.ContextController)}addNewItemsEvent(t){const i=t.filter((t=>!(0,a.d3)(t,this.eventList)));i.length>0&&(this.eventList=[...this.eventList,...i],this.mediator.publish(this,w[w.RebindComponent],{payload:this.Pm}))}cacheCoordinates(){this.Om=this.Sr.getElementCoordinates(this.km)}positionContextMenu(t){this.cacheCoordinates(),ve(this.Am,t,this.Om,{alignMiddle:this.alignMiddle,alignTop:this.alignTop,forceRight:this.forceRight})}Rm(t){switch(t.type){case pe.SimpleMenuItem:this.close();break;case pe.SubmenuMenuItem:this.Bm(t)}}sendEvent(t,i){this.mediator.publish(this,t,i)}Bm(t){const i=this.Am.clientWidth;t.isOpen?(t.$menuContainer.addEventListener("transitionend",this.Mm),this.Lm.style.left="0px",t.$menuContainer.style.left="0px"):(t.$menuContainer.removeEventListener("transitionend",this.Mm),this.Em.style.width=2*i+"px",this.Em.appendChild(t.$menuContainer),(0,m.Tp)(this.Em),this.Lm.style.left=-i+"px",t.$menuContainer.style.left=-i+"px"),t.isOpen=!t.isOpen}closeAllSubmenuItems(){this.Im.forEach((t=>{t.type===pe.SubmenuMenuItem&&t.isOpen&&this.Bm(t)}))}buildContextMenu(t){let i=[];this.Lm.innerHTML="",this.Em.style.width=`${this.Am.clientWidth}px`,this.Im.forEach((t=>this.unsubscribeAll(t))),this.Im=t,this.Im.forEach((t=>{i=[...i,...t.eventList],t.eventList.forEach((i=>this.subscribe(i,t,(e=>{this.Rm(t),this.sendEvent(i,e)})))),t.initComponent(),this.Lm.appendChild(t.getContainer())})),this.addNewItemsEvent(i)}getAnchorCoordinatesTo(t){return null==t?void 0:t.getCoordinates()}open(t,i=!1){i&&(this.Tm=i,this.mediator.publish(this,fe.Z[fe.Z.HoldStart]),(0,m.cn)(this.km,c.Gj.OnHold)),this.isOpen=!0,this.mediator.publish(this,w[w.ContextMenuOpen]),this.positionContextMenu(t);const e={interactionend:this.close};this._m.addGlobalActions(this.Am,e),(0,m.IV)(this.Am,c.Gj.Invisible)}}class ye extends ge{constructor(t,i,e,s,n){super(t,i,e,s,n),this.eventList=[fe.Z[fe.Z.Scroll],fe.Z[fe.Z.Click]],this.Dm=t=>{this.onInteractionHandler(t)},this.onBeforeClick=t=>{t.stopPropagation()},this.onClick=t=>{this.onInteractionHandler(t),this.onClickHandler(t)}}onInteractionHandler(t){t.stopPropagation()}onClickHandler(t){}initComponent(){const t={interactionstart:this.onBeforeClick,interaction:this.Dm,click:this.onClick};this._m.register(this.Am,this,this._m,t),this.Qt&&(this.subscribe(fe.Z[fe.Z.Click],this._m,(()=>{this.onClickHandler()})),this.relay(fe.Z[fe.Z.Scroll],this._m,this,this.mediator))}destroy(){this.unsubscribeAll(this._m),super.destroy()}}class be extends ye{constructor(t,i,e,s,n){super(t,i,e,be.getTemplate(n),s),this.mediator=t,this.jm=!1,this.type=pe.SimpleMenuItem,this.eventList=[],this.event=n.activeEvent,this.name=n.name,n.eventList?this.eventList=n.eventList:this.eventList.push(this.event),this.Fm=this.Am.getElementsByClassName(c.Ng.ItemTitle)[0],this.$m=this.Am.getElementsByClassName(c.Ng.ItemIcon)[0]}static getTemplate(t){const i=`${t.icon}`,e=`${t.label}`;return`\n ${t.icon?i:""}\n ${t.name}\n ${t.label?e:""}\n `}onClickHandler(t){this.mediator.publish(this,this.event)}changeItemName(t){this.Fm.innerHTML=t}changeItemIcon(t){this.$m.innerHTML=t}get isActive(){return this.jm}set isActive(t){this.jm=t,this.jm?(0,m.cn)(this.Am,c.Gj.Active,c.iu.AccentColor):(0,m.IV)(this.Am,c.Gj.Active,c.iu.AccentColor)}}var we,xe;!function(t){t.MainContainer="cnx-scrollbar",t.Wrapper="cnx-scrollbar-wrapper",t.Content="cnx-scrollbar-content",t.Horizontal="cnx-scrollbar-horizontal",t.Handle="cnx-scrollbar-handle",t.PreventSelect="cnx-scrollbar-prevent-select",t.ShowOnHover="cnx-scrollbar-show-on-hover"}(we||(we={}));class Se{constructor(t,i={}){if(this.Um=t,this.Wt=i,this.Nm=0,this.Hm=t=>{t.preventDefault(),this.zm=t.pageY,this.qm=t.pageX,(0,m.cn)(this.Wm,we.PreventSelect),(0,m.cn)(this.Ne.document.body,we.PreventSelect),this.Ne.document.addEventListener("mousemove",this.Gm),this.Ne.document.addEventListener("mouseup",this.Jm)},this.Gm=t=>{const i=this.Wt.horizontal?t.pageX-this.qm:t.pageY-this.zm;this.zm=t.pageY,this.qm=t.pageX,(0,m.PM)(this.Ne,(()=>{this.Wt.horizontal?this.Qm.scrollLeft+=i/this.Xm:this.Qm.scrollTop+=i/this.Xm}))},this.Jm=t=>{(0,m.IV)(this.Wm,we.PreventSelect),(0,m.IV)(this.Ne.document.body,we.PreventSelect),this.Ne.document.removeEventListener("mousemove",this.Gm),this.Ne.document.removeEventListener("mouseup",this.Jm)},this.Ym=t=>{if(!this.Wt.horizontal)return;const i=t.deltaMode?100*(t.deltaY<0?-1:1):t.deltaY,e=Math.floor(i)/33*20,s=this.Nm+e;s>=-1*this.Wm.clientWidth&&s<=this.Qm.scrollWidth-this.Wm.clientWidth&&(this.Nm=s),(0,m.PM)(this.Ne,(()=>this.Qm.scrollLeft=this.Nm))},this.Zm=()=>{clearTimeout(this.ty),this.ty=setTimeout((()=>{this.iy()}),50)},this.iy=()=>{const t=this.Wt.horizontal?this.Qm.scrollWidth:this.Qm.scrollHeight,i=this.Wt.horizontal?this.Um.clientWidth:this.Um.clientHeight;this.Xm=i/t;const e=-1*(this.Um.clientWidth-(this.Wm.clientWidth||4)-4),s=this.Um.clientHeight-this.Wm.clientHeight-4;(0,m.PM)(this.Ne,(()=>{if(this.Xm>=1)(0,m.MV)(this.Wm);else{if((0,m.Ho)(this.Wm),this.Wt.horizontal)return void(0,m.T7)(this.Wm,{width:`${Math.max(100*this.Xm,10)}%`,height:"",top:`${s}px`,right:"",left:this.Qm.scrollLeft/t*100+"%"});(0,m.T7)(this.Wm,{width:"",height:`${Math.max(100*this.Xm,10)}%`,top:this.Qm.scrollTop/t*100+"%",right:`${e}px`,left:""})}}))},this.Ne=(0,m.LT)(t),!this.Ne)throw new Error("window was not found");this.ey(),this.Wm.addEventListener("mousedown",this.Hm),this.Wt.overrideNativeHorizontalScroll&&this.Qm.addEventListener("wheel",this.Ym,{passive:!0}),this.Ne.addEventListener("resize",this.Zm),this.Qm.addEventListener("scroll",this.iy),this.Qm.addEventListener("mouseenter",this.iy),(0,m.cn)(this.Um,we.MainContainer,this.Wt.horizontal?we.Horizontal:void 0,this.Wt.showOnHover?we.ShowOnHover:void 0),this.iy();const e=(0,m.Dx)(this.Um,this.Ne);"0px"===e.height&&"0px"!==e.maxHeight&&(0,m.T7)(this.Um,{height:e.maxHeight})}ey(){for(this.Wm=(0,m.G$)(``,this.Ne),this.sy=(0,m.G$)(``,this.Ne),this.Qm=(0,m.G$)(``,this.Ne),this.sy.appendChild(this.Qm);this.Um.firstChild;)this.Qm.appendChild(this.Um.firstChild);this.Um.appendChild(this.sy),this.Um.insertAdjacentElement("beforeend",this.Wm)}destroy(){for(this.removeListeners(),(0,m.bX)(this.Wm);this.Qm.firstChild;)this.Um.appendChild(this.Qm.firstChild);(0,m.bX)(this.sy),(0,m.IV)(this.Um,we.MainContainer,we.Horizontal,we.ShowOnHover)}removeListeners(){this.Ne.document.removeEventListener("mousemove",this.Gm),this.Ne.document.removeEventListener("mouseup",this.Jm),this.Wm.removeEventListener("mousedown",this.Hm),this.Qm.removeEventListener("wheel",this.Ym),this.Ne.removeEventListener("resize",this.Zm),this.Qm.removeEventListener("scroll",this.iy),this.Qm.removeEventListener("mouseenter",this.iy)}}class _e extends me{constructor(t,i,e,s,n,r,h,o,a){super(t,i,e,s,n,r,h,o),this.resizeObserver=a,this.alignMiddle=!0,this.alignTop=!0,this.forceRight=!1,this.ny=[],this.hy=new be(this,this.Sr,this._m,this.Qt,{name:"Off",activeEvent:null}),this.oy=[],this.ly=!1}sendEvent(t){this.updateCaptionSelection(t),this.mediator.publish(this,this.eventName,{payload:{event:t?w[w.CaptionOn]:w[w.CaptionOff],data:t}})}createCaptionsMenu(t){if(this.oy===t)return;0===this.ny.length?this.ny.push(this.hy):this.ny=this.ny.slice(0,1),t.forEach((t=>{this.ny.push(new be(this,this.Sr,this._m,this.Qt,{name:t.title,activeEvent:t.file}))}));const i=this.oy.find((t=>{var i;return t.title===(null===(i=this.uy)||void 0===i?void 0:i.name)}));this.uy&&i&&this.updateCaptionSelection(i.file),(0,m.T7)(this.getContainer(),{height:"auto"}),this.oy=t,this.resizeObserver&&!this.ly&&(this.resizeObserver.on(this.getContainer(),(t=>this.py(t))),this.ly=!0),this.buildContextMenu(this.ny)}initComponent(){}onResize(t){this.cacheCoordinates(),this.isOpen&&this.positionContextMenu(t)}updateCaptionSelection(t){this.ny.forEach((t=>t.isActive=!1));const i=this.oy.find((i=>i.file===t));i?this.uy=this.ny.find((t=>t.name===i.title)):t||(this.uy=this.ny.find((t=>"Off"===t.name))),this.uy&&(this.uy.isActive=!0)}py(t){t.clientHeight>=188&&(0,m.T7)(t,{height:"188px"}),this.vy||(this.vy=new Se(t,{horizontal:!1}),(0,m.cn)(t,c.Gj.HasCustomScrollbar))}}!function(t){t[t.PlayButton=0]="PlayButton",t[t.BigPlayButton=1]="BigPlayButton",t[t.VolumeButton=2]="VolumeButton",t[t.VolumeProgress=3]="VolumeProgress",t[t.VolumeControls=4]="VolumeControls",t[t.ExpandButton=5]="ExpandButton",t[t.SettingsButton=6]="SettingsButton",t[t.CaptionButton=7]="CaptionButton",t[t.CaptionComponent=8]="CaptionComponent",t[t.CastButton=9]="CastButton",t[t.ShareButton=10]="ShareButton",t[t.UpNextButton=11]="UpNextButton",t[t.UpNextBox=12]="UpNextBox",t[t.PreviousButton=13]="PreviousButton",t[t.LogoComponent=14]="LogoComponent",t[t.LogoOutstream=15]="LogoOutstream",t[t.MoreButton=16]="MoreButton",t[t.ElapsedTimeLabel=17]="ElapsedTimeLabel",t[t.TotalDurationLabel=18]="TotalDurationLabel",t[t.RemainingDurationLabel=19]="RemainingDurationLabel",t[t.ProgressBar=20]="ProgressBar",t[t.QualityMenu=21]="QualityMenu",t[t.QueStateOverlay=22]="QueStateOverlay",t[t.Loader=23]="Loader",t[t.ContextMenu=24]="ContextMenu",t[t.ElementsSettingsMenu=25]="ElementsSettingsMenu",t[t.CloseButton=26]="CloseButton",t[t.SkipAdButton=27]="SkipAdButton",t[t.AdLoadingScreen=28]="AdLoadingScreen",t[t.CtaButton=29]="CtaButton",t[t.PlayspaceProgressBar=30]="PlayspaceProgressBar",t[t.PlayspaceSettingsMenu=31]="PlayspaceSettingsMenu",t[t.ClickToPlayButton=32]="ClickToPlayButton",t[t.SlideTitle=33]="SlideTitle",t[t.SkipAd=34]="SkipAd",t[t.TopTitle=35]="TopTitle",t[t.TopLogo=36]="TopLogo",t[t.TopSlideTitle=37]="TopSlideTitle",t[t.TopStoryTitle=38]="TopStoryTitle",t[t.TextLabel=39]="TextLabel",t[t.LivePoster=40]="LivePoster",t[t.LiveIcon=41]="LiveIcon",t[t.ElementsCaptionMenu=42]="ElementsCaptionMenu",t[t.NonLinearComponent=43]="NonLinearComponent"}(xe||(xe={}));class Ae extends ye{constructor(){super(...arguments),this.onClick=t=>{this.onInteractionHandler(t),this.onClickHandler(),this.addBoomEffect()}}addBoomEffect(){(0,m.cn)(this.Am,"cnx-boom"),(0,m.Tp)(this.Am),(0,m.cn)(this.Am,"cnx-boom-anim");const t=i=>{"transform"===i.propertyName&&((0,m.IV)(this.Am,"cnx-boom"),(0,m.IV)(this.Am,"cnx-boom-anim"),this.Am.removeEventListener("transitionend",t))};this.Am.addEventListener("transitionend",t)}initComponent(){super.initComponent(),this.Am.appendChild(this.Sr.createElementByString(''))}}class Pe extends Ae{constructor(){super(...arguments),this.eventList=[w[w.HoverStart],w[w.HoverEnd],...this.eventList],this.onStartHover=()=>{(0,m.cn)(this.Am,c.Gj.HoverStart),(0,m.cn)(this.Am,c.Gj.HoverEnd),this.mediator.publish(this,w[w.HoverStart])},this.onEndHover=()=>{(0,m.IV)(this.Am,c.Gj.HoverEnd),this.mediator.publish(this,w[w.HoverEnd])}}initComponent(){super.initComponent(),this.Qt?(this.Am.addEventListener("touchstart",this.onStartHover,{passive:!0}),this.Am.addEventListener("touchend",this.onEndHover),this.Am.addEventListener("touchcancel",this.onEndHover)):(this.Am.addEventListener("mouseenter",this.onStartHover),this.Am.addEventListener("mouseleave",this.onEndHover))}destroy(){this.Qt?(this.Am.removeEventListener("touchstart",this.onStartHover),this.Am.removeEventListener("touchend",this.onEndHover),this.Am.removeEventListener("touchcancel",this.onEndHover)):(this.Am.removeEventListener("mouseenter",this.onStartHover),this.Am.removeEventListener("mouseleave",this.onEndHover)),super.destroy()}onInteractionHandler(t){this.onEndHoverClick()}onEndHoverClick(){(0,m.IV)(this.Am,c.Gj.HoverEnd),(0,m.IV)(this.Am,c.Gj.HoverStart)}}class ke extends Pe{constructor(){super(...arguments),this.eventList=[w[w.Settings],...this.eventList],this.gy="Settings"}onClickHandler(){this.mediator.publish(this,w[w.Settings])}toggleHDFlag(t){t?(0,m.cn)(this.Am,c.Gj.Active):(0,m.IV)(this.Am,c.Gj.Active)}get tooltip(){return this.gy}}const Ie='';class Te extends Pe{constructor(t,i,e,s,n,r=!1,h){super(t,i,e,s,h),this.my=n,this.isActive=r}onClickHandler(){this.isActive=!this.isActive,this.onStateChange()}get isActive(){return this.Wa}set isActive(t){this.Wa=t,this.Wa?(0,m.cn)(this.Am,this.my):(0,m.IV)(this.Am,this.my)}}class Ce extends Te{constructor(){super(...arguments),this.eventList=[w[w.CaptionMenu],w[w.CaptionOn],w[w.CaptionOff],w[w.StateChanged],...this.eventList],this.gy="Closed Captions"}onClickHandler(){this.mediator.publish(this,w[w.CaptionMenu])}onStateChange(){this.mediator.publish(this,this.isActive?w[w.CaptionOn]:w[w.CaptionOff]),this.mediator.publish(this,w[w.StateChanged])}get tooltip(){return this.gy}}const Me='';class Ee extends ye{constructor(){super(...arguments),this.nd=!1,this.eventList=[w[w.Next]]}onClickHandler(){this.mediator.publish(this,w[w.Next])}show(){this.nd=!0,this.Am.classList.add("cnx-fade-in-up-next")}hide(){this.nd=!1,this.Am.classList.remove("cnx-fade-in-up-next")}isInView(){return this.nd}updateCard(t,i){const e=this.Am.getElementsByTagName("img")[0];e.setAttribute("src",t),e.style.display="none",e.onload=()=>{e.style.display="block"};this.Am.getElementsByClassName("cnx-up-next-box-text")[0].innerHTML=(0,P.QM)(i)?i:""}}class Le extends ge{constructor(t,i,e,s,n){super(t,i,e,s),this.settings=n,this.eventList=[],this.yy=144,this.by=36}createLogo(){let t=this.Sr.createElement("img");t.onload=()=>{t=this.resizeLogo(t),this.Am.appendChild(t)},t.src=this.settings.logoUrl,t.alt=""}resizeLogo(t){const i=t.naturalWidth,e=t.naturalHeight;if(!i||!e)return t;if(this.settings.logoPosition===wt.ProtoLogoPositionMode.ControlBar)t.style.setProperty("height",`${this.by}px`,"important"),t.style.setProperty("width",`${this.by}px`,"important");else{const s=i/e;this.by*s>this.yy?(t.style.setProperty("width",`${this.yy}px`,"important"),t.style.setProperty("height","auto","important")):(t.style.setProperty("width","auto","important"),t.style.setProperty("height",`${this.by}px`,"important"))}return t}initComponent(){try{this.createLogo()}catch(t){(0,i.n)({message:"LogoComponent_createLogo",exception:t.message,callStack:t.stack,level:i.D.CRITICAL})}}}class Oe extends ge{constructor(){super(...arguments),this.eventList=[]}initComponent(){this.wy=this.Am.getElementsByTagName("cnx-span")[0]}setTime(t){isNaN(t)||"number"!=typeof t?(0,m.cn)(this.Am,c.Gj.Invisible):(this.wy.innerHTML=(0,Yi.to)(t),(0,m.IV)(this.Am,c.Gj.Invisible))}}const Re='';class Be extends ge{constructor(t,i,e,s,n=!1){super(t,i,e,s,n),this.xy=0,this.Sy=null,this._y=0,this.Ay=0,this.Py=100,this.cacheDomElements()}cacheDomElements(){this.ky=this.Am.getElementsByClassName("cnx-progress-fill")[0],this.Iy=this.Am.getElementsByClassName("cnx-progress-rail")[0]}cacheWidths(){this.xy=this.fixedRailWidth?this.fixedRailWidth:this.Iy.getBoundingClientRect().width,this.Sy=this.Iy.getBoundingClientRect().left}updateUi(t){const i=this.getComputedTranslation(t);this._y=i,this.ky.style.transform=`translateX(${i}px)`}isValidTranslation(){return this._y>=0&&this._y<=this.xy}getComputedTranslation(t){return t<0?0:t>this.xy?this.xy:t}setProgress(t){this.cacheWidths();const i=this.getComputedTranslation((0,lt.dQ)(0,100,0,this.xy,t));this.updateUi(i)}disableTransition(){(0,m.cn)(this.Am,c.Gj.NoTransition)}enableTransition(){(0,m.IV)(this.Am,c.Gj.NoTransition)}Ty(t){this.disableTransition(),this.setProgress(t),(0,m.Tp)(this.ky),this.enableTransition()}forceStartState(){this.Ty(this.Ay)}forceEndState(){this.Ty(this.Py)}initComponent(){this.cacheWidths()}destroy(){super.destroy()}}class De extends Be{constructor(t,i,e,s,n=!1){super(t,i,e,s,n),this.Cy=0,this._n=null,this.My=!1,this.eventList=[w[w.DraggingStart],w[w.DraggingStopped]],this.Ey=t=>{this.cacheWidths(),this.Ly(this.Oy(t)),this.Qt?this.Am.addEventListener(this.Ry,this.By):this.Sr.addEventListenerOnGlobal(this.Ry,this.By),this.onDragStart()},this.By=t=>{null===this._n&&(this.My||(this.My=!0,this.disableTransition()),this._n=this.Sr.requestAnimationFrameHelper((()=>{const i=this.Dy+(this.Oy(t)-this.jy);this.isValidTranslation()&&this.Fy(i),this._n=null})))},this.$y=t=>{t.stopPropagation(),this.Qt?this.Am.removeEventListener(this.Ry,this.By):this.Sr.removeEventListenerOnGlobal(this.Ry,this.By),this.My=!1,this.enableTransition(),this.onDragEnd()},this.Ry=n?"touchmove":"mousemove"}cacheDomElements(){super.cacheDomElements(),this.Vy=this.Am.getElementsByClassName("cnx-progress-handle")[0]}cacheWidths(){super.cacheWidths(),this.Cy=this.Vy.getBoundingClientRect().width/2}updateUi(t){super.updateUi(t);const i=this.getComputedTranslation(t);this.Vy.style.transform=`translateX(${i-this.Cy}px)`}onDragEnd(){this.mediator.publish(this,w[w.DraggingStopped])}onDragStart(){this.mediator.publish(this,w[w.DraggingStart])}Oy(t){return this.Qt?t.touches.item(0).clientX:t.clientX}Ly(t){this.Dy=t-this.Sy,this.jy=t,this.Fy(this.Dy)}Fy(t){if(this.isValidTranslation()){const i=this.getComputedTranslation(t),e=0,s=this.xy,n=0,r=100;this.updateUi(i),this.onProgressChange((0,lt.dQ)(e,s,n,r,i))}}setProgress(t){super.setProgress(t)}initComponent(){super.initComponent();const t={interactionstart:this.Ey,interactionend:this.$y};this._m.register(this.Am,this,this._m,t)}destroy(){super.destroy()}}class je extends De{constructor(t,i,e,s,n=!1){super(t,i,e,s,n),this.Uy=!1,this.Ny=t=>{(0,m.cn)(this.Am,c.Gj.HoverEnd),this.Uy=!0},this.Hy=t=>{const i=this.getComputedTranslation(t.clientX-this.Sy);this.zy.style.transform=`translateX(${i}px)`},this.Wy=t=>{this.zy.style.transform="translateX(0)",this.Uy=!1,this.Gy()},this.eventList=this.eventList.concat([w[w.Seek],w[w.SeekingStart],w[w.SeekingStopped]])}onProgressChange(t){this.mediator.publish(this,w[w.Seek],{payload:t-.1})}onDragEnd(){super.onDragEnd(),this.mediator.publish(this,w[w.SeekingStopped]),this.Gy()}onDragStart(){super.onDragStart(),this.mediator.publish(this,w[w.SeekingStart])}Gy(){this.Uy||this.My||(0,m.IV)(this.Am,c.Gj.HoverEnd)}initComponent(){super.initComponent(),this.Am.addEventListener("mousemove",this.Hy),this.Am.addEventListener("mouseenter",this.Ny),this.Am.addEventListener("mouseleave",this.Wy),this.zy=this.Am.getElementsByClassName("cnx-progress-follow")[0]}hide(){(0,m.MV)(this.Am)}show(){(0,m.Ho)(this.Am)}destroy(){super.destroy(),this.Am.removeEventListener("mousemove",this.Hy),this.Am.removeEventListener("mouseenter",this.Ny),this.Am.removeEventListener("mouseleave",this.Wy)}}const Fe='';class $e extends ge{constructor(){super(...arguments),this.eventList=[]}initComponent(){this.hide()}show(){(0,m.Ho)(this.Am)}hide(){(0,m.MV)(this.Am)}}const Ve='';var Ue=n(7089),Ne=n(45);class He extends me{constructor(){super(...arguments),this.alignMiddle=!1,this.alignTop=!1,this.forceRight=!0}Jy(){const t=Ne.g.version?`V${Ne.g.version}`:"dev",i=[new be(this,this.Sr,this._m,this.Qt,{activeEvent:w[w.AboutClick],name:"About Connatix",icon:Ue,label:t})];this.buildContextMenu(i)}initComponent(){this.Jy()}onResize(){this.cacheCoordinates(),this.close()}}const ze="About Connatix",qe="Closed Captions";var We=n(9335);class Ge extends ye{constructor(t,i,e,s,n){super(t,i,e,Ge.getTemplate(n),s),this.mediator=t,this.Im=[],this.jm=!1,this.type=pe.SubmenuMenuItem,this.eventList=[],this.isOpen=!1,this.event=n.event,this.eventList.push(this.event),this.Qy=new be(this,i,e,s,{activeEvent:n.event,name:n.name.toUpperCase(),icon:""}),this.$menuContainer=this.Sr.createElementByString(``),this.Xy=this.Am.getElementsByClassName(c.Ng.ItemExtra)[0]}static getTemplate(t){const i=`${t.icon}`;return`\n ${t.icon?i:""}\n ${t.name}\n ${t.label?t.label:""}${We}\n `}onClickHandler(t){this.mediator.publish(this,this.event)}handleItemsEvents(t){this.mediator.publish(this,this.event,{payload:t===this.event?void 0:t})}buildContextMenu(t){this.$menuContainer.innerHTML="",this.Im.forEach((t=>this.unsubscribeAll(t))),this.Im=[this.Qy,...t],this.Im.forEach((t=>{t.eventList.forEach((i=>this.subscribe(i,t,(()=>this.handleItemsEvents(i))))),t.initComponent(),this.$menuContainer.appendChild(t.getContainer())}))}changeLabel(t){this.Xy.innerHTML=`${t}${We}`}get isActive(){return this.jm}set isActive(t){this.jm=t,this.jm?(0,m.cn)(this.Am,c.Gj.Active):(0,m.IV)(this.Am,c.Gj.Active)}}class Je extends Ge{constructor(t,i,e,s,n,r,h){super(t,i,e,s,{event:w[w.CaptionMenu],name:n,icon:Me,options:[]}),this.mediator=t,this.resizeObserver=h,this.ny=[],this.hy=new be(this,this.Sr,this._m,this.Qt,{name:"Off",activeEvent:null}),this.oy=[],this.isActive=r}handleItemsEvents(t){t!==w[w.CaptionMenu]&&this.isOpen&&(this.updateSelection(t),(0,m.T7)(this.$menuContainer,{height:"0"}),this.mediator.publish(this,this.event,{payload:{event:t?w[w.CaptionOn]:w[w.CaptionOff],data:t}}))}createCaptionsMenu(t){0===this.ny.length?this.ny.push(this.hy):this.ny=this.ny.slice(0,1),t.forEach((t=>{this.ny.push(new be(this,this.Sr,this._m,this.Qt,{name:t.title,activeEvent:t.file}))}));let i=!1;this.oy.length!==t.length&&(i=!0),this.updateMenu(),this.oy=t;const e=this.oy.find((t=>{var i;return t.title===(null===(i=this.uy)||void 0===i?void 0:i.name)}));this.uy&&e&&this.updateSelection(e.file),this.buildContextMenu(this.ny),this.resizeObserver&&i&&(this.resizeObserver.off(this.$menuContainer,(t=>this.py(t))),this.resizeObserver.on(this.$menuContainer,(t=>this.py(t))))}updateSelection(t){this.ny.forEach((t=>t.isActive=!1));const i=this.oy.find((i=>i.file===t));i?this.uy=this.ny.find((t=>t.name===i.title)):t||(this.uy=this.ny.find((t=>"Off"===t.name))),this.uy&&(this.uy.isActive=!0)}updateMenu(){(0,m.T7)(this.$menuContainer,{height:"auto"})}reset(){var t;this.resizeObserver.off(this.$menuContainer,(t=>this.py(t))),null===(t=this.vy)||void 0===t||t.removeListeners(),this.vy=null,this.oy=[]}py(t){t.clientHeight>=188&&(0,m.T7)(t,{height:"188px"}),this.vy||(this.vy=new Se(t,{horizontal:!1}),(0,m.cn)(t,c.Gj.HasCustomScrollbar))}}class Qe extends me{constructor(t,i,e,s,n,r,h,o,a,c=!0,l){super(t,i,e,s,n,r,h,a),this.alignMiddle=!1,this.alignTop=!1,this.forceRight=!1,this.Yy=[new be(this,this.Sr,this._m,this.Qt,{activeEvent:w[w.AboutClick],name:ze,icon:Ue,label:Ne.g.version?`V${Ne.g.version}`:"dev"})],this.Ky=new Je(this,this.Sr,this._m,this.Qt,qe,c,l),this.Zy=[this.Ky],this.tb=o}ib(){let t=this.Yy;this.tb===c.Rq.Lg&&(t=[...this.Zy,...this.Yy]),this.buildContextMenu(t)}initComponent(){this.ib()}onResize(t,i){this.isOpen&&this.positionContextMenu(t),this.tb!==i?(this.tb=i,this.closeAllSubmenuItems(),this.ib()):this.tb=i}toggleCaptionState(t){this.Ky.isActive!==t&&(this.Ky.isActive=t)}hideCaptionOption(){this.Ky.hideComponent()}showCaptionOption(){this.Ky.showComponent()}updateCaptionSelection(t){this.Ky.updateSelection(t)}updateMenu(){this.Ky.updateMenu()}getAnchorCoordinatesTo(t){let i=de.Right;return this.tb!==c.Rq.Xl&&this.tb!==c.Rq.Xxl&&(i|=de.Top),t.getCoordinates(i)}createCaptionsMenu(t){this.Ky.createCaptionsMenu(t)}reset(){var t;null===(t=this.Ky)||void 0===t||t.reset()}}var Xe=n(8852);class Ye extends ge{constructor(){super(...arguments),this.eventList=[]}initComponent(){this.eb=this.Am.getElementsByClassName(c.Yk.CaptionContainer)[0]}updateCaptions(t){this.eb.innerHTML=t&&t.text?(0,Xe.f5)(t.text,"
"):""}}class Ke extends Le{constructor(){super(...arguments),this.sb="cnx-logo-height",this.rb="cnx-logo-width"}createLogo(){this.Am.onload=()=>{this.Am.style.visibility="visible",this.resizeLogo(this.Am)},this.Am.style.visibility="hidden",this.Am.src=this.settings.logoUrl}resizeLogo(t){const i=t.naturalWidth,e=t.naturalHeight;return i&&e?(i>e?(0,m.cn)(t,this.rb):(0,m.cn)(t,this.sb),t):t}}var Ze,ts=n(834),is=n(1639);!function(t){t[t.Play=0]="Play",t[t.Pause=1]="Pause"}(Ze||(Ze={}));class es extends Pe{constructor(t,i,e,s,n){super(t,i,e,s,n),this.hb=!1,this.eventList=[w[w.Play],w[w.Pause],w[w.Replay],w[w.StateChanged],...this.eventList],this.ob="Play",this.ab="Pause",this.setState(Ze.Pause)}onClickHandler(){this.Wa===Ze.Pause?this.mediator.publish(this,w[w.Pause]):this.hb?this.mediator.publish(this,w[w.Replay]):this.mediator.publish(this,w[w.Play])}cb(){}toggleReplay(t){this.hb=t}setState(t){this.Wa!==t&&(this.Wa=t,this.cb(),this.mediator.publish(this,w[w.StateChanged]))}get tooltip(){return this.Wa===Ze.Play?this.ob:this.ab}}class ss extends De{constructor(t,i,e,s,n=!1){super(t,i,e,s,n),this.lb=80,this.fixedRailWidth=this.lb,this.eventList.push(w[w.Volume])}onProgressChange(t){this.mediator.publish(this,w[w.Volume],{payload:t})}}var ns;!function(t){t[t.expand=0]="expand",t[t.collapse=1]="collapse"}(ns||(ns={}));class rs extends Pe{constructor(){super(...arguments),this.eventList=[w[w.Expand],w[w.Collapse],...this.eventList],this.ub="Full Screen",this.pb="Exit Full Screen"}onClickHandler(){switch(this.Wa){case ns.collapse:this.mediator.publish(this,w[w.Expand]);break;case ns.expand:this.mediator.publish(this,w[w.Collapse]);break;default:this.mediator.publish(this,w[w.Expand])}}cb(){this.Am&&(this.Wa===ns.expand?this.Am.classList.add(c.Gj.Active):this.Am.classList.remove(c.Gj.Active))}setState(t){this.Wa!==t&&(this.Wa=t,this.cb())}get tooltip(){return this.Wa===ns.expand?this.pb:this.ub}}function hs(t,i,e){const s=e?H[H.Auto]:i.height.toString();t.forEach((t=>t.name.includes(s)?t.isActive=!0:t.isActive=!1));const n=t.find((t=>H[t.event]===H.Auto));if(e){const e=t.find((t=>t.event===i.height.toString()));if(e){const t=`${n.name} (${e.name})`;n.changeItemName(t)}}else n.changeItemName(n.name)}class os extends me{constructor(){super(...arguments),this.alignMiddle=!0,this.alignTop=!0,this.forceRight=!1,this.ny=[],this.fb={height:360,quality:H.Auto},this.vb=!0}sendEvent(t){this.vb=H[t]===H.Auto,this.mediator.publish(this,this.eventName,{payload:{height:this.vb?this.fb.height:parseInt(t,10),quality:this.vb?H.Auto:H.Strict}})}initComponent(){}createQualityMenu(t){this.ny=[],this.gb=t,this.gb.forEach((t=>{this.ny.push(new be(this,this.Sr,this._m,this.Qt,{name:`${t.videoHeight}p`,activeEvent:t.videoHeight.toString(),label:t.isHD?"HD":void 0}))})),this.ny.push(new be(this,this.Sr,this._m,this.Qt,{name:H[H.Auto],activeEvent:H[H.Auto]})),hs(this.ny,this.fb,this.vb),this.buildContextMenu(this.ny)}onResize(t){this.cacheCoordinates(),this.isOpen&&this.positionContextMenu(t)}updateQuality(t){(0,a.BZ)(this.gb)&&(this.vb=t.quality===H.Auto,this.fb.quality=t.quality,this.fb.height=(0,lt.DE)(t.height,this.gb.map((t=>t.videoHeight))),hs(this.ny,this.fb,this.vb))}}class as extends ge{constructor(){super(...arguments),this.eventList=[]}initComponent(){this.hide()}show(){(0,m.Ho)(this.Am),(0,m.Tp)(this.Am),(0,m.cn)(this.Am,c.Gj.Active)}hide(){(0,m.IV)(this.Am,c.Gj.Active),(0,m.MV)(this.Am)}}class cs extends Pe{constructor(t,i,e,s,n,r,h){super(t,i,e,s,n),this.tooltip=h,this.mb=xe[r],this.eventList.push(this.mb)}onClickHandler(){this.mediator.publish(this,this.mb)}}class ls extends ye{constructor(t,i,e,s,n,r,h){super(t,i,e,s,n),this.tooltip=h,this.eventList=[],this.mb=xe[r],this.eventList.push(this.mb)}onClickHandler(){this.mediator.publish(this,this.mb)}}class us{constructor(t,i,e,s){this.Sr=t,this._m=i,this.Qt=e,this.yb=new Map,Object.keys(s).forEach((t=>this.bb(xe[t],s[t])))}getButton(t,i){const{isHoverable:e,template:s,tooltip:n}=this.wb(t);return e?new cs(i,this.Sr,this._m,s,this.Qt,t,n):new ls(i,this.Sr,this._m,s,this.Qt,t,n)}isGeneralComponent(t){return this.yb.has(t)}wb(t){return this.yb.get(t)}bb(t,i){this.yb.set(t,i)}}var ds=n(1215);function ps(t,i,e=!0){return e?`\n \n \n ${i}\n \n \n `.trim():`${i}`}var fs=n(9040),vs=n(89);const gs={[xe[xe.MoreButton]]:{template:ps(xe.MoreButton,vs),tooltip:"More",isHoverable:!0},[xe[xe.CloseButton]]:{template:ps(xe.CloseButton,ds),tooltip:"Close Player",isHoverable:!0},[xe[xe.UpNextButton]]:{template:ps(xe.UpNextButton,fs),tooltip:"Next",isHoverable:!0},[xe[xe.PreviousButton]]:{template:ps(xe.PreviousButton,fs),tooltip:"Previous",isHoverable:!0}};class ms extends Pe{constructor(){super(...arguments),this.eventList=[w[w.SkipAd],...this.eventList],this.xb=-1,this.Sb=-1}initComponent(){super.initComponent(),this.hideComponent(),this._b=this.Am.getElementsByTagName("cnx-span")[0],this._b.innerHTML="Ad",this.Ab=this.Am.querySelectorAll(`.${c.Hs.Timer} svg`)[0]}setSecondsUntilSkip(t){this.xb=Math.ceil(t),this.Sb=-1,this.xb>0&&(0,m.T7)(this.Ab,{"animation-duration":this.xb+"s"})}tickDown(t){const i=this.xb-Math.floor(t);if(i<0||0===this.Sb)return;const e=(0,m.pv)(this.Am,c.Hs.InTimer);this.Sb=i,0===this.Sb?(e&&(0,m.IV)(this.Am,c.Hs.InTimer),this._b.innerHTML="Ad"):(e||(0,m.cn)(this.Am,c.Hs.InTimer),this._b.innerHTML=`in ${this.Sb}s`)}get tooltip(){}onClickHandler(){0===this.Sb&&this.mediator.publish(this,w[w.SkipAd])}}var ys=n(4670);class bs extends ge{constructor(){super(...arguments),this.eventList=[]}initComponent(){this.Pb=this.Am.getElementsByClassName(c.mr.BackgroundImg)[0],this.kb=this.Am.getElementsByClassName(c.mr.Icon)[0],this.kb.innerHTML=ys,this.Ib=this.Am.getElementsByClassName(c.mr.ButtonContainer)[0];const t=this.Am.getElementsByClassName(c.mr.Button)[0];this.Tb=this.Sr.createElementByString(``),this.Tb.target=ue.bS.Blank,this.Tb.appendChild(t),this.Ib.innerHTML="",this.Ib.appendChild(this.Tb),this.Cb=this.Am.getElementsByClassName(c.mr.InfoContainer)[0],this.Mb=this.Am.getElementsByClassName(c.mr.FallbackContainer)[0],this.Eb=this.Am.getElementsByClassName(c.mr.SlotCountText)[0]}setBackgroundImg(t){(0,P.QM)(t)?((0,m.IV)(this.Pb,c.Gj.DisplayNone),this.Pb.src=t):(0,m.cn)(this.Pb,c.Gj.DisplayNone)}setClickUrl(t){if(!(0,P.QM)(t))return(0,m.Ho)(this.Mb),void(0,m.MV)(this.Cb);(0,m.Ho)(this.Cb),(0,m.MV)(this.Mb),this.Tb.href=t}setFallbackText(t,i){const e=t||1,s=i||1;this.Eb.innerHTML=`Loading ad ${e}/${s}`}}class ws{constructor(t,i,e,s={},n={}){this.Sr=t,this._m=i,this.Am=e,this.Wt=s,this.Lb={[xe.PlayButton]:t=>this.Ob(!1,t),[xe.BigPlayButton]:t=>this.Ob(!0,t),[xe.VolumeProgress]:t=>new ss(t,this.Sr,this._m,''),[xe.ExpandButton]:t=>new rs(t,this.Sr,this._m,'',this.Wt.isMobile),[xe.QualityMenu]:t=>new os(t,this.Sr,this._m,'',w[w.Quality],xe.QualityMenu,this.Am,this.Wt.isMobile),[xe.Loader]:t=>new as(t,this.Sr,this._m,Ve),[xe.SkipAdButton]:t=>new ms(t,this.Sr,this._m,'Skip ',this.Wt.isMobile),[xe.AdLoadingScreen]:t=>new bs(t,this.Sr,this._m,'Loading PodsVisit Advertiser websiteGO TO PAGE')},this.Ob=(t,i)=>new es(i,this.Sr,this._m,function(t=!1){return`\n \n \n ${ts}\n ${is}\n \n \n`.trim()}(t),this.Wt.isMobile),this.Rb=t=>i=>{const e=this.Lb[t];if(e)return e(i)},this.Bb=new us(this.Sr,this._m,this.Wt.isMobile,Object.assign(Object.assign({},gs),n))}createComponent(t,i){const e=this.Rb(t)(i);return e||(this.Bb.isGeneralComponent(t)?this.Bb.getButton(t,i):void 0)}}var xs;!function(t){t[t.Mute=0]="Mute",t[t.Unmute=1]="Unmute"}(xs||(xs={}));class Ss extends Pe{constructor(t,i,e,s,n,r){super(t,i,e,s,r),this.eventList=[w[w.Mute],w[w.Unmute],w[w.StateChanged],...this.eventList],this.Db="Mute",this.jb="Unmute",this.Wa=n}onClickHandler(){this.Wa===xs.Mute?(this.mediator.publish(this,w[w.Unmute]),this.setState(xs.Unmute)):(this.mediator.publish(this,w[w.Mute]),this.setState(xs.Mute))}cb(){this.Wa===xs.Mute?(0,m.L_)(this.Am,"cnx-sound-on","cnx-sound-off"):(0,m.L_)(this.Am,"cnx-sound-off","cnx-sound-on")}get tooltip(){return this.Wa===xs.Mute?this.jb:this.Db}initComponent(){super.initComponent(),this.cb()}setState(t){this.Wa!==t&&(this.Wa=t,this.cb(),this.mediator.publish(this,w[w.StateChanged]))}setVolume(t){t>0?this.setState(xs.Unmute):this.setState(xs.Mute)}}class _s{constructor(t,i){this.Fb=t,this.Sr=i,this.$b=/\[\[([0-9]+)]]/g,this.Vb=[],this.Ub=[],this.Hb=this.Sr.createElementByString(this.zb(this.Fb))}qb(t){return``}zb(t){return t.replace(this.$b,((t,i)=>(this.Vb.push(parseInt(i,10)),this.qb(i))))}Gb(t,i){return this.Ub.some((i=>i.slotName===t))||this.Ub.some((t=>t.component===i))?null:this.Hb.getElementsByClassName(`pl_${t}`)[0]}getComponentList(){return this.Vb}getRenderedDom(){return this.Hb}registerSlot(t,i){const e=this.Gb(t,i);if(null!==e){const s=i.getContainer();return e.parentNode.replaceChild(s,e),this.Ub.push({component:i,slotName:t}),!0}return!1}initComponents(){this.Ub.forEach((t=>t.component.initComponent()))}}class As extends h._{constructor(t,i,e){super(),this.globalDomUtilsService=t,this.templateString=i,this.componentFactory=e,this.Jb={},this.Qb=new _s(i,t),this.addComponents()}addComponents(){this.Qb.getComponentList().forEach((t=>{const i=this.componentFactory.createComponent(t,this);this.registerComponent(t,i)}))}registerComponent(t,i){this.Qb.registerSlot(t,i),this.Jb[t]=i,this.Xb(i)}Xb(t){t.eventList.forEach((i=>{this.subscribe(i,t,(e=>{i===w[w.RebindComponent]&&this.rebindComponentEvents(t),this.handleComponentEvent(i,e,t)}))}))}rebindComponentEvents(t){t&&(this.unsubscribeAll(t),this.Xb(t))}getComponent(t){return this.Jb[t]}destroy(){Object.keys(this.Jb).forEach((t=>{this.Jb[t].destroy()}))}}class Ps extends As{constructor(t,i,e,s){super(i,e,s),this.mediator=t,this.Am=this.Qb.getRenderedDom()}getContainer(){return this.Am}initComponent(){this.Qb.initComponents()}showComponent(){(0,m.Ho)(this.Am)}hideComponent(){(0,m.MV)(this.Am)}}class ks extends Ps{constructor(t,i,e,s){super(t,i,e,s),this.Yb=null,this.eventList=[w[w.Volume],w[w.VolumeHoverStart],w[w.VolumeHoverStopped],w[w.DraggingStopped],w[w.DraggingStart],w[w.HoverStart],w[w.HoverEnd],w[w.StateChanged]],this.Kb=.2,this.Zb=600,this.tw=!1,this.iw=t=>{clearTimeout(this.Yb),(0,m.cn)(this.Am,"cnx-mod-hover"),this.mediator.publish(this,w[w.VolumeHoverStart])},this.ew=()=>{this.tw||(null!==this.Yb&&clearTimeout(this.Yb),this.Yb=setTimeout((()=>{(0,m.IV)(this.Am,"cnx-mod-hover"),this.mediator.publish(this,w[w.VolumeHoverStopped])}),this.Zb))},this.rw=this.Kb,this.hw=this.getComponent(xe.VolumeButton),this.ow=this.getComponent(xe.VolumeProgress)}handleComponentEvent(t,i,e){let s;switch(t){case w[w.Volume]:s=i.payload/100,this.aw(s),this.cw(i.payload);break;case w[w.Mute]:s=0,this.setVolumeProgress(0);break;case w[w.Unmute]:s=this.rw,this.setVolumeProgress(100*this.rw);break;case w[w.DraggingStopped]:this.tw=!1,this.mediator.publish(this,w[w.DraggingStopped]),this.ew();break;case w[w.DraggingStart]:this.tw=!0,this.mediator.publish(this,w[w.DraggingStart]);break;case w[w.HoverStart]:this.mediator.publish(this,w[w.HoverStart],{payload:{targetComponent:e}});break;case w[w.HoverEnd]:this.mediator.publish(this,w[w.HoverEnd],{payload:{targetComponent:e}});break;case w[w.StateChanged]:this.mediator.publish(this,w[w.StateChanged],{payload:{targetComponent:e}})}void 0!==s&&this.lw(s)}aw(t){t\n \n [[${xe.VolumeButton}]]\n \n \n [[${xe.VolumeProgress}]]\n \n
\n`.trim();var Ts=n(2040),Cs=n(8808);const Ms={[xe[xe.ShareButton]]:{template:ps(xe.ShareButton,Cs),tooltip:"Share",isHoverable:!0},[xe[xe.CastButton]]:{template:ps(xe.CastButton,Ts),tooltip:"Cast",isHoverable:!0}};var Es=n(1505),Ls=n(3653);const Os=90*ht.Y0,Rs="This live stream will start shortly";class Bs extends ge{constructor(){super(...arguments),this.eventList=[],this.uw=null}initComponent(){this.dw=this.Sr.createElementByString(""),this.Am.appendChild(this.dw),this.pw=this.Am.getElementsByTagName("cnx-span")[0],this.fw=this.Am.getElementsByClassName("cnx-live-message")[0],this.gw=this.Am.getElementsByClassName("cnx-live-icon")[0]}setPosterSrc(t){(0,P.QM)(t)&&(this.dw.src=t)}setPosterAltText(t){this.dw.alt=t}setIconToStarting(){this.gw.innerHTML=`${Es}`}setIconToEnded(){this.gw.innerHTML=`${Ls}`}setMessageToStarting(){this.mw(Rs)}setMessageToEnded(){this.mw("This live stream is not currently available. Please check again shortly")}setMessageToNotSupported(){this.mw("Live stream not supported by browser")}handleDelayedStart(t){(0,P.r)(Date.parse(t))&&(this.yw=new Date(t),this.ww()>0&&(this.xw(),clearInterval(this.uw),this.uw=setInterval((()=>{this.xw()}),ht.s_*ht.Y0)))}showMessage(){(0,m.Ho)(this.gw),(0,m.Ho)(this.fw)}hideMessage(){(0,m.MV)(this.gw),(0,m.MV)(this.fw)}show(){(0,m.Ho)(this.Am),(0,m.cn)(this.Am,c.Gj.Active)}hide(){(0,m.IV)(this.Am,c.Gj.Active),(0,m.MV)(this.Am)}destroy(){super.destroy(),clearInterval(this.uw)}xw(){const t=this.ww();if(t>0){const i=this.Sw(t);this.mw(`Live in ${i}`)}else this.mw(Rs),clearInterval(this.uw),this.uw=null}ww(){return(Math.max(this.yw.getTime(),Date.now())-Date.now())/ht.s_}Sw(t){const i=t>=Os?Math.round(t/(ht.Y0*ht.oG)):Math.ceil(t/ht.Y0);return`${i} ${t>=Os?"hours":"minute"+(1===i?"":"s")}`}mw(t){this.pw.innerHTML=t}}class Ds extends ge{constructor(){super(...arguments),this.eventList=[]}initComponent(){this.hideComponent()}}class js extends Pe{constructor(){super(...arguments),this.eventList=[w[w.NonLinearClose],...this.eventList]}initComponent(){super.initComponent(),this.showComponent()}get tooltip(){}onClickHandler(){this.mediator.publish(this,w[w.NonLinearClose])}}class Fs extends ws{constructor(t,i,e,s,n,r){super(t,i,e,s,Ms),this.Sr=t,this.Am=e,this.Wt=s,this.Aw=n,this.Er=r,this.Pw={[xe.VolumeControls]:t=>new ks(t,this.Sr,Is,this),[xe.VolumeButton]:t=>new Ss(t,this.Sr,this._m,'',xs.Mute,this.Wt.isMobile),[xe.SettingsButton]:t=>new ke(t,this.Sr,this._m,Ie,this.Wt.isMobile),[xe.CaptionButton]:t=>new Ce(t,this.Sr,this._m,Me,c.Gj.Active,this.Wt.closedCaptionDefault,this.Wt.isMobile),[xe.UpNextBox]:t=>new Ee(t,this.Sr,this._m,'NEXT',this.Wt.isMobile),[xe.LogoComponent]:t=>{if(!(0,P.$K)(this.Wt.logoUrl)&&!(0,P.$K)(this.Wt.logoPosition))throw new Error("custom logo is undefined");return new Le(t,this.Sr,this._m,'',{logoUrl:this.Wt.logoUrl,logoPosition:this.Wt.logoPosition})},[xe.LogoOutstream]:t=>{if(!(0,P.$K)(this.Wt.logoUrl)&&!(0,P.$K)(this.Wt.logoPosition))throw new Error("outstream logo undefined");return new Ke(t,this.Sr,this._m,'',{logoUrl:this.Wt.logoUrl})},[xe.LivePoster]:t=>new Bs(t,this.Sr,this._m,' '),[xe.LiveIcon]:t=>new Ds(t,this.Sr,this._m,''),[xe.ElapsedTimeLabel]:t=>new Oe(t,this.Sr,this._m,Re),[xe.TotalDurationLabel]:t=>new Oe(t,this.Sr,this._m,Re),[xe.RemainingDurationLabel]:t=>new Oe(t,this.Sr,this._m,Re),[xe.ProgressBar]:t=>new je(t,this.Sr,this._m,Fe,this.Wt.isMobile),[xe.QueStateOverlay]:t=>new $e(t,this.Sr,this._m,Ve),[xe.ContextMenu]:t=>new He(t,this.Sr,this._m,'',w[w.ContextClick],xe.ContextMenu,this.Am,this.Wt.isMobile),[xe.ElementsSettingsMenu]:t=>new Qe(t,this.Sr,this._m,'',w[w.SettingsMenu],xe.ElementsSettingsMenu,this.Am,this.Aw,this.Wt.isMobile,this.Wt.closedCaptionDefault,this.Er),[xe.ElementsCaptionMenu]:t=>new _e(t,this.Sr,this._m,'',w[w.CaptionMenu],xe.ElementsCaptionMenu,this.Am,this.Wt.isMobile,this.Er),[xe.CaptionComponent]:t=>new Ye(t,this.Sr,this._m,''),[xe.NonLinearComponent]:t=>new js(t,this.Sr,this._m,'',this.Wt.isMobile)},this.kw=t=>i=>{const e=this.Pw[t];if(e)return e(i)}}createComponent(t,i){return this.kw(t)(i)||super.createComponent(t,i)}}var $s;!function(t){t.InPod="cnx-ad-in-pod",t.AdMarkerInPodTextContainer="cnx-ad-marker-text",t.AdDurationLabel="cnx-ad-duration",t.AdTitleLabel="cnx-ad-title",t.AdMarkerTitleContainer="cnx-ad-marker-title",t.AdMarkerTitleText="cnx-ad-title-text",t.CardImage="cnx-ad-card-image",t.CardTitle="cnx-ad-card-title",t.AdUiContent="cnx-ui-ad-content",t.AdUiNonLinearAdSlot="cnx-non-linear-ad-slot"}($s||($s={}));class Vs extends As{constructor(t,i,e,s,n){super(e,s,n),this.mediator=t,this.$container=i,this.componentFactory=n,this.$uiContainer=this.Qb.getRenderedDom(),i.appendChild(this.$uiContainer),this.Qb.initComponents()}changeState(t){const i=this.Iw[t];i!==this.currentState&&this.currentState.canTransitionToState(i)&&(this.currentState.exitState(i),i.enterState())}hide(){(0,m.cn)(this.$uiContainer,c.Gj.DisplayNone)}show(){(0,m.IV)(this.$uiContainer,c.Gj.DisplayNone)}destroy(){super.destroy(),this.$uiContainer.parentNode.removeChild(this.$uiContainer)}}class Us extends Vs{constructor(t,i,e,s,n,r={}){super(t,s,i,n,new Fs(i,e,s,r)),this.mediator=t,this.globalDomUtilsService=i,this.$container=s,this.settings=r,this.Iw={},this.Tw=this.$container.querySelector(`.${$s.AdUiNonLinearAdSlot}`)}handleComponentEvent(t,i){this.mediator.publish(this,t,i)}show(){super.show()}hide(){super.hide()}get adUiNonLinearAdSlot(){return this.Tw}}class Ns{constructor(){}get template(){return`\n \n \n [[${xe.NonLinearComponent}]]\n \n \n `.trim()}}class Hs extends h._{constructor(t,i,e){super(),this.imageUrl=t,this.Cw=i,this._m=e,this.Mw=new x.x,this.xg=new x.x,this.Ew=new x.x,this.Lw=new x.x}get onDisplayAd(){return this.Mw.asObservable()}get onError(){return this.xg.asObservable()}get onClick(){return this.Ew.asObservable()}get onClickClose(){return this.Lw.asObservable()}destroy(){this.Ow.hide(),this.Ow.adUiNonLinearAdSlot.removeChild(this.Rw),this.Ow.destroy()}initializeAd(t,i,e,s){this.Bw=t,this.Dw(),this.jw(s,i,e),this.Ow.adUiNonLinearAdSlot.appendChild(this.Rw)}getAdMediaWidth(){return this.Rw.clientWidth}getAdMediaHeight(){return this.Rw.clientHeight}jw(t,i,e){this.Rw=this.Cw.createElement("img"),this.Rw.onload=()=>{this.Mw.next()},this.Rw.onerror=()=>{this.xg.next(Vt.VastNonLinearImageLoadFailure)},this.Rw.onclick=()=>{this.Ew.next()},t?this.Fw(i,e):(0,m.T7)(this.Rw,{height:`${i.height}px`,width:`${i.width}px`,display:"block","pointer-events":"all"}),this.Rw.src=this.imageUrl}Dw(){this.Ow=new Us(this,this.Cw,this._m,this.Bw,(new Ns).template),this.subscribe(w[w.NonLinearClose],this.Ow,(()=>{this.Lw.next()}))}Fw(t,i){const e=(0,lt.Tc)(i.height,rt.NON_LINEAR_MAX_HEIGHT_PERCENT),s=i.width,n=t.height/e;t.width/s>n?(0,m.T7)(this.Rw,{width:"100%",display:"block","pointer-events":"all"}):(0,m.T7)(this.Rw,{height:"100%",display:"block","pointer-events":"all"})}}class zs{constructor(t,i=0,e=1e3){this.uv=t,this.timerDuration=i,this.$w=e,this.Vw=0,this.Uw=null,this.Nw=!1,this.Hw=!1,this.zw=new x.x,this.qw=new x.x,this.Ww=new x.x,this.Gw=[{event:le.FirstQuartile,quartile:1},{event:le.SecondQuartile,quartile:2},{event:le.ThirdQuartile,quartile:3},{event:le.FourthQuartile,quartile:4}],this.Qw=null,this.Xw=()=>{this.Yw(),this.zw.next(),this.Kw(this.Vw,this.timerDuration),this.Zw(),this.tx=(new Date).getTime()},i||this.disable()}start(){this.Hw=!0,null===this.Uw&&this.sx()}stop(){this.Hw=!1,null!==this.Uw&&(this.Yw(),this.nx())}reset(t){t&&(this.timerDuration=t),this.Vw=0,this.Nw=!1,this.Qw=null,(null!==this.Uw||this.Hw)&&(this.nx(),this.sx())}get timeElapsed(){return this.Vw}get timeRemaining(){return this.timerDuration-this.Vw}disable(){this.Nw=!0,this.nx()}get onTimeUpdate(){return this.zw.asObservable()}get onTimeElapsed(){return this.qw.asObservable()}get onQuartile(){return this.Ww.asObservable()}Yw(){this.Vw+=(new Date).getTime()-this.tx}sx(){this.Nw||(this.Zw(),this.tx=(new Date).getTime(),this.Uw=this.uv.setInterval(this.Xw,this.$w))}nx(){this.uv.clearInterval(this.Uw),this.Uw=null}hx(){this.disable(),this.qw.next(),this.Vw=0}Zw(){this.Vw/ht.s_>=this.timerDuration/ht.s_&&this.hx()}Kw(t,i){const e=Math.floor((0,lt.dQ)(0,i,1,4,t));this.Qw<=e&&this.Gw.forEach((({event:t,quartile:i})=>{i===e&&i!==this.Qw&&(this.Ww.next(t),this.Qw=i)}))}}const qs={[le.FirstQuartile]:g.fI.AdVideoFirstQuartile,[le.SecondQuartile]:g.fI.AdVideoMidpoint,[le.ThirdQuartile]:g.fI.AdVideoThirdQuartile,[le.FourthQuartile]:g.fI.AdVideoComplete};class Ws extends Wt{constructor(t,i){super(t,i),this.uv=t,this.settings=i,this.adMediaType="nonLinearVast",this.adSourceType=s.ProtoAdsourceTypeEnum.VastMedia,this.ox=[],this.$w=500,this.lx=0,this.nonLinearOnClick=()=>{this.ux.nonLinearClickTracking.uri&&this.settings.globalDomUtilsService.trackWithImages([this.ux.nonLinearClickTracking.uri]),this.ux.nonLinearClickThrough&&this.settings.globalDomUtilsService.open(this.ux.nonLinearClickThrough,ue.bS.Blank),this.Pv({type:g.fI.AdClickThru,payload:{}})}}initAd(t,i,e,s,n,r,h){try{if(super.initAd(t,i,e,s,n,r,h),this.ux=this.vx(),!this.ux)return void this.Pv({type:g.fI.AdError,payload:{errorMessage:Vt.VastUnsupportedMedia}});this.gx(),this.mx(),this.Pv({type:g.fI.AdLoaded,payload:{}})}catch(t){this.Pv({type:g.fI.AdError,payload:{errorMessage:Vt.AdaptorInitAdError+`_${t.message}`}})}}startAd(){super.startAd(),this.yx.start(),this.ox.push(this.wx.onDisplayAd.subscribe((()=>{this.Pv({type:g.fI.AdStarted}),this.Pv({type:g.fI.AdVideoStart}),this.Pv({type:g.fI.AdImpression,payload:{}})})),this.wx.onError.subscribe((t=>{this.Pv({type:g.fI.AdError,payload:{errorMessage:t}})})),this.wx.onClick.subscribe((()=>this.nonLinearOnClick())),this.wx.onClickClose.subscribe((()=>{this.Pv({type:g.fI.AdUserClose,payload:{}}),this.stopAd(g.r5)})));const t={height:this.ux.height,width:this.ux.width},i={height:this.fv.clientHeight,width:this.fv.clientWidth};this.wx.initializeAd(this.dv,t,i,this.ux.scalable)}get adVideoUrl(){return this.xx}get declaredDurationInSeconds(){return this.lx/ht.s_}getAdMediaSize(){return{height:this.wx.getAdMediaHeight(),width:this.wx.getAdMediaWidth()}}resizeAd(t,i,e){}pauseAd(){this.yx.stop()}resumeAd(){this.yx.start()}expandAd(){}collapseAd(){}getAdRemainingTime(){return this.yx.timeRemaining}getAdDuration(){return this.lx/ht.s_}getAdVolume(){return 0}gx(){this.ux.staticResource&&(this.wx=new Hs(this.ux.staticResource.uri,this.settings.globalDomUtilsService,this.settings.interactionService),this.xx=this.ux.staticResource.creativeType,this.Sx())}Sx(){this.fv.style.visibility="hidden"}mx(){var t;this.lx=(null===(t=this.settings.adManagerLineItem.protoLineItem.nonlinearLineItemSettings)||void 0===t?void 0:t.nonLinearAdTimeSeconds)*ht.s_,this.yx=new zs(this.uv,this.lx,this.$w),this.ox.push(this.yx.onTimeUpdate.subscribe((()=>{this.Pv({type:g.fI.AdRemainingTimeChange})})),this.yx.onTimeElapsed.subscribe((()=>{this.stopAd("nonLinearTimerElapsed")})),this.yx.onQuartile.subscribe((t=>{this.Pv({type:qs[t],payload:{}})})))}hu(){var t,i;try{super.hu(),null===(t=this.yx)||void 0===t||t.stop(),(0,pt.i)(this.ox),null===(i=this.wx)||void 0===i||i.destroy()}catch(t){this.Qv("NonLinearBidAdaptor","_destroy",t)}}vx(){let t;if(t=this.settings.vastResponse.nonLinearFiles.find((t=>!0===t.scalable)),!t){const i=(0,lt.Tc)(this.fv.clientHeight,rt.NON_LINEAR_MAX_HEIGHT_PERCENT);t=this.settings.vastResponse.nonLinearFiles.find((t=>t.height<=i&&t.width<=this.fv.clientWidth))}return t}}function Gs(t,i){t.sort(((t,i)=>t.width===i.width?t.bitrate-i.bitrate:t.width-i.width));for(let e=0;e=i)return t[e-1]||t[e];return t[t.length-1]}const Js=()=>`cnx_bid_slot_${(0,ut.qs)()}`,Qs={enableWorker:!1,capLevelToPlayerSize:!0,cnxRenderWindow:window,maxBufferSize:5e6,maxBufferLength:5,maxMaxBufferLength:10,liveBackBufferLength:0};class Xs{constructor(t,i,e,s,n){this._x=t,this.Ax=i,this.Px=e,this.Cw=s,this.kx=n,this.Ix=[],this.Tx=(t,i)=>{if(i.fatal)switch(i.type){case this._x.ErrorTypes.NETWORK_ERROR:if(i.details===this._x.ErrorDetails.MANIFEST_PARSING_ERROR||i.details===this._x.ErrorDetails.MANIFEST_LOAD_ERROR)return void this.Cx();this.Mx.startLoad();break;case this._x.ErrorTypes.MEDIA_ERROR:this.Mx.recoverMediaError();break;default:this.Cx()}},this.Ex=()=>{this.Mx.off(this._x.Events.MEDIA_ATTACHED,this.Ex),this.Mx.loadSource(this.Ax),this.Mx.once(this._x.Events.MANIFEST_PARSED,this.Lx)},this.Lx=()=>{this.Mx.off(this._x.Events.MANIFEST_PARSED,this.Lx),this.Ox(),this.kx.forceMaxLevel&&this.Rx(),this.kx.forceResolutionHeight&&this.Bx(this.kx.forceResolutionHeight),this.jx()},(this.kx.forceMaxLevel||this.kx.forceResolutionHeight)&&(Qs.capLevelToPlayerSize=!1)}start(t,i){this.jx=t,this.Cx=i,this._x&&this._x.isSupported()?(this.Mx=new this._x(Object.assign(Object.assign({},Qs),{cnxRenderWindow:this.Cw.global})),this.Fx()):this.Cx()}destroy(){this.Mx&&(this.Mx.destroy(),this.Mx=null)}Fx(){this.Mx.on(this._x.Events.ERROR,this.Tx),this.Mx.attachMedia(this.Px),this.Mx.once(this._x.Events.MEDIA_ATTACHED,this.Ex)}Rx(){const t=this.Mx.levels.length-1;this.$x(t)}Bx(t){const i=this.Ix.find((i=>i.height===t));i&&this.$x(i.level)}$x(t){this.Mx.currentLevel=t,this.Mx.startLevel=t,this.Mx.nextLevel=t}Ox(){this.Mx.levels.forEach(((t,i)=>{this.Ix.find((({height:i})=>i===t.height))||this.Ix.push({level:i,height:t.height})}))}}var Ys=n(2356);const Ks="huffpost",Zs=540;class tn extends jt{constructor(t,e,s,n,r,h,o,a,c,l=!1,u){super(),this.Sr=t,this.Vx=e,this.dg=s,this.Zt=n,this.Ux=r,this.Nx=h,this.Hx=o,this.zx=a,this._x=c,this.qx=l,this.si=u,this.Wx=!1,this.pageFocus=new Ys.v(this.Sr),this.Gx=Object.values(N),this.Jx=!1,this.Qx=!0,this.Xx=!1,this.Yx=[{event:g.fI.AdVideoStart,position:0},{event:g.fI.AdVideoFirstQuartile,position:25},{event:g.fI.AdVideoMidpoint,position:50},{event:g.fI.AdVideoThirdQuartile,position:75},{event:g.fI.AdVideoComplete,position:100}],this.Kx=this.Yx[0],this.Zx=t=>{try{switch(t.type){case N.Pause:if(this.Nx&&!this.Qx)return this.Qx=!0,void this.tS("pause_event_loopAd");this.Jx=!1;break;case N.Play:if(!this.Jx&&this.qx)return void this.dg.pause();break;case N.Canplay:case N.Durationchange:this.iS();break;case N.Timeupdate:this.eS();break;case N.Error:this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.VastVideoTagEventError}});break;case"click":this.hf.next({type:g.fI.AdClickThru,payload:{}})}}catch(t){(0,i.n)({level:i.D.CRITICAL,callStack:t.stack,message:"AdManager_VastIntegrator_onVideoEvent",exception:t.message},{throttle:10,sendMaxLog:!1})}}}initAd(t,i,e,s,n,r){try{this.dg=r.videoSlot,this.width=t,this.height=i,this.bm(this.Ux,this.dg.parentElement),this.resizeAd(t,i,e),this.addVideoEvents(this.dg),this.zx&&this._x&&this._x.isSupported()?this.sS(this._x):(this.dg.setAttribute("src",this.Vx),this.dg.setAttribute("preload","metadata"),this.dg.load()),this.pageFocus.isDocumentVisible()||this.iS()}catch(t){this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.WrapperInitAdError+`_${t.message}`}})}}startAd(){try{(0,m.cn)(this.dg,"cnx-ad-video-slot"),this.Jx=!0,this.pageFocus.isDocumentVisible()?this.dg.play().then((()=>{this.hf.next({type:g.fI.AdStarted}),this.hf.next({type:g.fI.AdImpression,payload:{}})})).catch((t=>{this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.VastPlayPromiseReject}})})):(this.hf.next({type:g.fI.AdStarted}),this.hf.next({type:g.fI.AdImpression,payload:{}}),this.dg.play())}catch(t){this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.WrapperStartAdError+`_${t.message}`}})}}stopAd(t){this.qx&&this.dg.pause(),"videoComplete"===t&&this.Nx?this.hf.next({type:g.fI.AdStopped,payload:{shouldTrackPostBid:!1}}):this.hf.next({type:g.fI.AdStopped,payload:{shouldTrackPostBid:!0}})}resizeAd(t,i,e){(0,m.T7)(this.dg,{width:`${t}px`,height:`${i}px`}),this.hf.next({type:g.fI.AdSizeChange})}pauseAd(){this.Jx=!1,this.Hx&&void 0===this.Kx&&(this.Kx=this.Yx[0]),this.dg.pause(),this.hf.next({type:g.fI.AdPaused})}resumeAd(){this.Nx&&void 0===this.Kx&&(this.Kx=this.Yx[0]),this.Jx=!0,this.tS("resumeAd"),this.Zt===dt.M.Ios&&(0,m.UR)(this.dg),this.hf.next({type:g.fI.AdPlaying})}expandAd(){}collapseAd(){}skipAd(){this.hf.next({type:g.fI.AdSkipped})}getAdRemainingTime(){return this.dg.duration-this.dg.currentTime}getAdDuration(){return this.dg.duration?this.dg.duration:0}getAdVolume(){return this.dg.volume}setAdVolume(t){this.dg.volume=t}getAdMediaWidth(){return this.dg.videoWidth}getAdMediaHeight(){return this.dg.videoHeight}destroy(){if(!this.Hx&&!this.Nx)try{(0,m.IV)(this.dg,"cnx-ad-video-slot"),this.nS(this.dg),this.dg.removeAttribute("src"),this.rS&&(this.rS.destroy(),this.rS=null)}catch(t){(0,i.n)({level:i.D.WARN,message:"AdManager_VastIntegrator_destroyAd",exception:t.message,callStack:t.stack})}}sS(t){let i={forceMaxLevel:!0};this.si&&this.si.includes(Ks)&&(i={forceMaxLevel:!1,forceResolutionHeight:Zs}),this.rS=new Xs(t,this.Vx,this.dg,this.Sr,i),this.rS.start((()=>{this.iS()}),(()=>{this.hf.next({type:g.fI.AdError,payload:{errorMessage:Vt.CnxMediaSrcNotSupported}})}))}bm(t,i){this.hS=this.Sr.createElement("a"),t&&(this.hS.href=t,this.hS.target="_blank"),(0,m.cn)(this.hS,"cnx-ad-slot"),i.appendChild(this.hS),this.hS.addEventListener("click",this.Zx)}addVideoEvents(t){this.Gx.forEach((i=>{t.addEventListener(i,this.Zx)})),this.hS&&this.hS.addEventListener("click",this.Zx)}nS(t){this.Gx.forEach((i=>{t.removeEventListener(i,this.Zx)})),this.hS&&this.hS.removeEventListener("click",this.Zx)}iS(){this.Wx||(this.Wx=!0,this.hf.next({type:g.fI.AdLoaded,payload:{}}))}eS(){this.hf.next({type:g.fI.AdRemainingTimeChange});const t=(0,lt.dQ)(0,this.dg.duration,0,100,this.dg.currentTime);if(this.Kx&&t>=this.Kx.position){this.Xx||this.hf.next({type:this.Kx.event});const t=this.Kx;this.Kx=this.Yx[this.Yx.indexOf(this.Kx)+1],t.event===g.fI.AdVideoComplete&&(this.Nx&&(this.dg.currentTime=.01),this.Qx=!1,this.stopAd("videoComplete"),this.Xx=!0)}}tS(t){try{this.dg.play().catch((e=>(0,i.n)({level:i.D.WARN,message:`AdManager_VastIntegrator_play_${t}`,exception:`playError: ${e.message}`,callStack:e.stack})))}catch(e){(0,i.n)({level:i.D.WARN,message:`AdManager_VastIntegrator__play_${t}`,exception:`promiseError: ${e.message}`,callStack:e.stack})}}}var en,sn;!function(t){t.errorIframe="Error creating iframe"}(en||(en={}));class nn{constructor(t,i,e){this.Sr=t,this.Nc=i,this.en=e}oS(t,i,e){let s=!1;return n=>{n.contentWindow&&!s&&(s=!0,this.aS(n,this.cS(t,i),e))}}lS(t,i,e,s,n,r,h=!0){return this.uS(t,this.oS(i,e,s),n,r,h)}uS(t,i,e,s,n=!0){const r=this.Sr.createElement("iframe",s);return r.allow="autoplay",r.src="javascript:false",r.srcdoc="",r.width="100%",r.height="100%",r.style.position="absolute",r.style.left="0",r.style.top="0",r.style.margin="0px",r.style.padding="0px",r.style.border="0px",r.style.width="100%",r.style.height="100%",n||(r.style.display="none"),r.setAttribute("SCROLLING","NO"),null==e||e.forEach((t=>{r.setAttribute(t.key,t.value)})),r.onload=()=>{i(r)},t.appendChild(r),i(r),r}aS(t,i,e){const s=(0,m.LT)(t);(class{static executeAsync(t,i){this.dS(t)(i)}static pS(t){return!!t.cnxProxyTask}static dS(t){return this.pS(t)||this.fS(t),t.cnxProxyTask}static fS(t){const i=t.document.head;(0,m.ML)(i,t,"\n window.cnxProxyTask = function(task) {\n setTimeout(function(){\n task();\n }, 0);\n }\n")}}).executeAsync(s,(()=>{try{const e=t.contentWindow&&t.contentWindow.document;e.open(),e.write(i)}catch(i){this.vS(t,i),t=null}e(t)}))}cS(t,i){return Object.keys(i).forEach((function(e){const s="object"==typeof i[e]?JSON.stringify(i[e]):i[e];t=t.replace(new RegExp(`{{${e}}}`,"g"),s)})),t}loadIframe(t){const i=''+(t.customHead?t.customHead:"")+''+(t.customHtml?t.customHtml:"")+'