{"version":3,"file":"player.js","mappings":"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","sources":["webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/browserslist/browser.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/browserslist/error.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/browserslist/index.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/browserslist/parse.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/caniuse-lite/data/agents.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/caniuse-lite/data/browserVersions.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/caniuse-lite/data/browsers.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/caniuse-lite/dist/unpacker/agents.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/caniuse-lite/dist/unpacker/browserVersions.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/caniuse-lite/dist/unpacker/browsers.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/electron-to-chromium/versions.js","webpack://html5-video-player-pro/../../../../../../WorkFile/modules/node_modules/regenerator-runtime/runtime.js","webpack://html5-video-player-pro/webpack/bootstrap","webpack://html5-video-player-pro/./src/public/BPlayer.js","webpack://html5-video-player-pro/./src/public/elementor/playlist.js","webpack://html5-video-player-pro/./src/public/player.js"],"sourcesContent":["var BrowserslistError = require('./error')\n\nfunction noop() {}\n\nmodule.exports = {\n loadQueries: function loadQueries() {\n throw new BrowserslistError(\n 'Sharable configs are not supported in client-side build of Browserslist'\n )\n },\n\n getStat: function getStat(opts) {\n return opts.stats\n },\n\n loadConfig: function loadConfig(opts) {\n if (opts.config) {\n throw new BrowserslistError(\n 'Browserslist config are not supported in client-side build'\n )\n }\n },\n\n loadCountry: function loadCountry() {\n throw new BrowserslistError(\n 'Country statistics are not supported ' +\n 'in client-side build of Browserslist'\n )\n },\n\n loadFeature: function loadFeature() {\n throw new BrowserslistError(\n 'Supports queries are not available in client-side build of Browserslist'\n )\n },\n\n currentNode: function currentNode(resolve, context) {\n return resolve(['maintained node versions'], context)[0]\n },\n\n parseConfig: noop,\n\n readConfig: noop,\n\n findConfig: noop,\n\n clearCaches: noop,\n\n oldDataWarning: noop\n}\n","function BrowserslistError(message) {\n this.name = 'BrowserslistError'\n this.message = message\n this.browserslist = true\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, BrowserslistError)\n }\n}\n\nBrowserslistError.prototype = Error.prototype\n\nmodule.exports = BrowserslistError\n","var jsReleases = require('node-releases/data/processed/envs.json')\nvar agents = require('caniuse-lite/dist/unpacker/agents').agents\nvar jsEOL = require('node-releases/data/release-schedule/release-schedule.json')\nvar path = require('path')\nvar e2c = require('electron-to-chromium/versions')\n\nvar BrowserslistError = require('./error')\nvar parse = require('./parse')\nvar env = require('./node') // Will load browser.js in webpack\n\nvar YEAR = 365.259641 * 24 * 60 * 60 * 1000\nvar ANDROID_EVERGREEN_FIRST = 37\n\n// Helpers\n\nfunction isVersionsMatch(versionA, versionB) {\n return (versionA + '.').indexOf(versionB + '.') === 0\n}\n\nfunction isEolReleased(name) {\n var version = name.slice(1)\n return browserslist.nodeVersions.some(function (i) {\n return isVersionsMatch(i, version)\n })\n}\n\nfunction normalize(versions) {\n return versions.filter(function (version) {\n return typeof version === 'string'\n })\n}\n\nfunction normalizeElectron(version) {\n var versionToUse = version\n if (version.split('.').length === 3) {\n versionToUse = version.split('.').slice(0, -1).join('.')\n }\n return versionToUse\n}\n\nfunction nameMapper(name) {\n return function mapName(version) {\n return name + ' ' + version\n }\n}\n\nfunction getMajor(version) {\n return parseInt(version.split('.')[0])\n}\n\nfunction getMajorVersions(released, number) {\n if (released.length === 0) return []\n var majorVersions = uniq(released.map(getMajor))\n var minimum = majorVersions[majorVersions.length - number]\n if (!minimum) {\n return released\n }\n var selected = []\n for (var i = released.length - 1; i >= 0; i--) {\n if (minimum > getMajor(released[i])) break\n selected.unshift(released[i])\n }\n return selected\n}\n\nfunction uniq(array) {\n var filtered = []\n for (var i = 0; i < array.length; i++) {\n if (filtered.indexOf(array[i]) === -1) filtered.push(array[i])\n }\n return filtered\n}\n\nfunction fillUsage(result, name, data) {\n for (var i in data) {\n result[name + ' ' + i] = data[i]\n }\n}\n\nfunction generateFilter(sign, version) {\n version = parseFloat(version)\n if (sign === '>') {\n return function (v) {\n return parseFloat(v) > version\n }\n } else if (sign === '>=') {\n return function (v) {\n return parseFloat(v) >= version\n }\n } else if (sign === '<') {\n return function (v) {\n return parseFloat(v) < version\n }\n } else {\n return function (v) {\n return parseFloat(v) <= version\n }\n }\n}\n\nfunction generateSemverFilter(sign, version) {\n version = version.split('.').map(parseSimpleInt)\n version[1] = version[1] || 0\n version[2] = version[2] || 0\n if (sign === '>') {\n return function (v) {\n v = v.split('.').map(parseSimpleInt)\n return compareSemver(v, version) > 0\n }\n } else if (sign === '>=') {\n return function (v) {\n v = v.split('.').map(parseSimpleInt)\n return compareSemver(v, version) >= 0\n }\n } else if (sign === '<') {\n return function (v) {\n v = v.split('.').map(parseSimpleInt)\n return compareSemver(version, v) > 0\n }\n } else {\n return function (v) {\n v = v.split('.').map(parseSimpleInt)\n return compareSemver(version, v) >= 0\n }\n }\n}\n\nfunction parseSimpleInt(x) {\n return parseInt(x)\n}\n\nfunction compare(a, b) {\n if (a < b) return -1\n if (a > b) return +1\n return 0\n}\n\nfunction compareSemver(a, b) {\n return (\n compare(parseInt(a[0]), parseInt(b[0])) ||\n compare(parseInt(a[1] || '0'), parseInt(b[1] || '0')) ||\n compare(parseInt(a[2] || '0'), parseInt(b[2] || '0'))\n )\n}\n\n// this follows the npm-like semver behavior\nfunction semverFilterLoose(operator, range) {\n range = range.split('.').map(parseSimpleInt)\n if (typeof range[1] === 'undefined') {\n range[1] = 'x'\n }\n // ignore any patch version because we only return minor versions\n // range[2] = 'x'\n switch (operator) {\n case '<=':\n return function (version) {\n version = version.split('.').map(parseSimpleInt)\n return compareSemverLoose(version, range) <= 0\n }\n case '>=':\n default:\n return function (version) {\n version = version.split('.').map(parseSimpleInt)\n return compareSemverLoose(version, range) >= 0\n }\n }\n}\n\n// this follows the npm-like semver behavior\nfunction compareSemverLoose(version, range) {\n if (version[0] !== range[0]) {\n return version[0] < range[0] ? -1 : +1\n }\n if (range[1] === 'x') {\n return 0\n }\n if (version[1] !== range[1]) {\n return version[1] < range[1] ? -1 : +1\n }\n return 0\n}\n\nfunction resolveVersion(data, version) {\n if (data.versions.indexOf(version) !== -1) {\n return version\n } else if (browserslist.versionAliases[data.name][version]) {\n return browserslist.versionAliases[data.name][version]\n } else {\n return false\n }\n}\n\nfunction normalizeVersion(data, version) {\n var resolved = resolveVersion(data, version)\n if (resolved) {\n return resolved\n } else if (data.versions.length === 1) {\n return data.versions[0]\n } else {\n return false\n }\n}\n\nfunction filterByYear(since, context) {\n since = since / 1000\n return Object.keys(agents).reduce(function (selected, name) {\n var data = byName(name, context)\n if (!data) return selected\n var versions = Object.keys(data.releaseDate).filter(function (v) {\n var date = data.releaseDate[v]\n return date !== null && date >= since\n })\n return selected.concat(versions.map(nameMapper(data.name)))\n }, [])\n}\n\nfunction cloneData(data) {\n return {\n name: data.name,\n versions: data.versions,\n released: data.released,\n releaseDate: data.releaseDate\n }\n}\n\nfunction mapVersions(data, map) {\n data.versions = data.versions.map(function (i) {\n return map[i] || i\n })\n data.released = data.released.map(function (i) {\n return map[i] || i\n })\n var fixedDate = {}\n for (var i in data.releaseDate) {\n fixedDate[map[i] || i] = data.releaseDate[i]\n }\n data.releaseDate = fixedDate\n return data\n}\n\nfunction byName(name, context) {\n name = name.toLowerCase()\n name = browserslist.aliases[name] || name\n if (context.mobileToDesktop && browserslist.desktopNames[name]) {\n var desktop = browserslist.data[browserslist.desktopNames[name]]\n if (name === 'android') {\n return normalizeAndroidData(cloneData(browserslist.data[name]), desktop)\n } else {\n var cloned = cloneData(desktop)\n cloned.name = name\n if (name === 'op_mob') {\n cloned = mapVersions(cloned, { '10.0-10.1': '10' })\n }\n return cloned\n }\n }\n return browserslist.data[name]\n}\n\nfunction normalizeAndroidVersions(androidVersions, chromeVersions) {\n var firstEvergreen = ANDROID_EVERGREEN_FIRST\n var last = chromeVersions[chromeVersions.length - 1]\n return androidVersions\n .filter(function (version) {\n return /^(?:[2-4]\\.|[34]$)/.test(version)\n })\n .concat(chromeVersions.slice(firstEvergreen - last - 1))\n}\n\nfunction normalizeAndroidData(android, chrome) {\n android.released = normalizeAndroidVersions(android.released, chrome.released)\n android.versions = normalizeAndroidVersions(android.versions, chrome.versions)\n return android\n}\n\nfunction checkName(name, context) {\n var data = byName(name, context)\n if (!data) throw new BrowserslistError('Unknown browser ' + name)\n return data\n}\n\nfunction unknownQuery(query) {\n return new BrowserslistError(\n 'Unknown browser query `' +\n query +\n '`. ' +\n 'Maybe you are using old Browserslist or made typo in query.'\n )\n}\n\nfunction filterAndroid(list, versions, context) {\n if (context.mobileToDesktop) return list\n var released = browserslist.data.android.released\n var last = released[released.length - 1]\n var diff = last - ANDROID_EVERGREEN_FIRST - versions\n if (diff > 0) {\n return list.slice(-1)\n } else {\n return list.slice(diff - 1)\n }\n}\n\nfunction resolve(queries, context) {\n return parse(QUERIES, queries).reduce(function (result, node, index) {\n if (node.not && index === 0) {\n throw new BrowserslistError(\n 'Write any browsers query (for instance, `defaults`) ' +\n 'before `' +\n node.query +\n '`'\n )\n }\n var type = QUERIES[node.type]\n var array = type.select.call(browserslist, context, node).map(function (j) {\n var parts = j.split(' ')\n if (parts[1] === '0') {\n return parts[0] + ' ' + byName(parts[0], context).versions[0]\n } else {\n return j\n }\n })\n\n if (node.compose === 'and') {\n if (node.not) {\n return result.filter(function (j) {\n return array.indexOf(j) === -1\n })\n } else {\n return result.filter(function (j) {\n return array.indexOf(j) !== -1\n })\n }\n } else {\n if (node.not) {\n var filter = {}\n array.forEach(function (j) {\n filter[j] = true\n })\n return result.filter(function (j) {\n return !filter[j]\n })\n }\n return result.concat(array)\n }\n }, [])\n}\n\nfunction prepareOpts(opts) {\n if (typeof opts === 'undefined') opts = {}\n\n if (typeof opts.path === 'undefined') {\n opts.path = path.resolve ? path.resolve('.') : '.'\n }\n\n return opts\n}\n\nfunction prepareQueries(queries, opts) {\n if (typeof queries === 'undefined' || queries === null) {\n var config = browserslist.loadConfig(opts)\n if (config) {\n queries = config\n } else {\n queries = browserslist.defaults\n }\n }\n\n return queries\n}\n\nfunction checkQueries(queries) {\n if (!(typeof queries === 'string' || Array.isArray(queries))) {\n throw new BrowserslistError(\n 'Browser queries must be an array or string. Got ' + typeof queries + '.'\n )\n }\n}\n\nvar cache = {}\n\nfunction browserslist(queries, opts) {\n opts = prepareOpts(opts)\n queries = prepareQueries(queries, opts)\n checkQueries(queries)\n\n var context = {\n ignoreUnknownVersions: opts.ignoreUnknownVersions,\n dangerousExtend: opts.dangerousExtend,\n mobileToDesktop: opts.mobileToDesktop,\n path: opts.path,\n env: opts.env\n }\n\n env.oldDataWarning(browserslist.data)\n var stats = env.getStat(opts, browserslist.data)\n if (stats) {\n context.customUsage = {}\n for (var browser in stats) {\n fillUsage(context.customUsage, browser, stats[browser])\n }\n }\n\n var cacheKey = JSON.stringify([queries, context])\n if (cache[cacheKey]) return cache[cacheKey]\n\n var result = uniq(resolve(queries, context)).sort(function (name1, name2) {\n name1 = name1.split(' ')\n name2 = name2.split(' ')\n if (name1[0] === name2[0]) {\n // assumptions on caniuse data\n // 1) version ranges never overlaps\n // 2) if version is not a range, it never contains `-`\n var version1 = name1[1].split('-')[0]\n var version2 = name2[1].split('-')[0]\n return compareSemver(version2.split('.'), version1.split('.'))\n } else {\n return compare(name1[0], name2[0])\n }\n })\n if (!process.env.BROWSERSLIST_DISABLE_CACHE) {\n cache[cacheKey] = result\n }\n return result\n}\n\nbrowserslist.parse = function (queries, opts) {\n opts = prepareOpts(opts)\n queries = prepareQueries(queries, opts)\n checkQueries(queries)\n return parse(QUERIES, queries)\n}\n\n// Will be filled by Can I Use data below\nbrowserslist.cache = {}\nbrowserslist.data = {}\nbrowserslist.usage = {\n global: {},\n custom: null\n}\n\n// Default browsers query\nbrowserslist.defaults = ['> 0.5%', 'last 2 versions', 'Firefox ESR', 'not dead']\n\n// Browser names aliases\nbrowserslist.aliases = {\n fx: 'firefox',\n ff: 'firefox',\n ios: 'ios_saf',\n explorer: 'ie',\n blackberry: 'bb',\n explorermobile: 'ie_mob',\n operamini: 'op_mini',\n operamobile: 'op_mob',\n chromeandroid: 'and_chr',\n firefoxandroid: 'and_ff',\n ucandroid: 'and_uc',\n qqandroid: 'and_qq'\n}\n\n// Can I Use only provides a few versions for some browsers (e.g. and_chr).\n// Fallback to a similar browser for unknown versions\nbrowserslist.desktopNames = {\n and_chr: 'chrome',\n and_ff: 'firefox',\n ie_mob: 'ie',\n op_mob: 'opera',\n android: 'chrome' // has extra processing logic\n}\n\n// Aliases to work with joined versions like `ios_saf 7.0-7.1`\nbrowserslist.versionAliases = {}\n\nbrowserslist.clearCaches = env.clearCaches\nbrowserslist.parseConfig = env.parseConfig\nbrowserslist.readConfig = env.readConfig\nbrowserslist.findConfig = env.findConfig\nbrowserslist.loadConfig = env.loadConfig\n\nbrowserslist.coverage = function (browsers, stats) {\n var data\n if (typeof stats === 'undefined') {\n data = browserslist.usage.global\n } else if (stats === 'my stats') {\n var opts = {}\n opts.path = path.resolve ? path.resolve('.') : '.'\n var customStats = env.getStat(opts)\n if (!customStats) {\n throw new BrowserslistError('Custom usage statistics was not provided')\n }\n data = {}\n for (var browser in customStats) {\n fillUsage(data, browser, customStats[browser])\n }\n } else if (typeof stats === 'string') {\n if (stats.length > 2) {\n stats = stats.toLowerCase()\n } else {\n stats = stats.toUpperCase()\n }\n env.loadCountry(browserslist.usage, stats, browserslist.data)\n data = browserslist.usage[stats]\n } else {\n if ('dataByBrowser' in stats) {\n stats = stats.dataByBrowser\n }\n data = {}\n for (var name in stats) {\n for (var version in stats[name]) {\n data[name + ' ' + version] = stats[name][version]\n }\n }\n }\n\n return browsers.reduce(function (all, i) {\n var usage = data[i]\n if (usage === undefined) {\n usage = data[i.replace(/ \\S+$/, ' 0')]\n }\n return all + (usage || 0)\n }, 0)\n}\n\nfunction nodeQuery(context, node) {\n var matched = browserslist.nodeVersions.filter(function (i) {\n return isVersionsMatch(i, node.version)\n })\n if (matched.length === 0) {\n if (context.ignoreUnknownVersions) {\n return []\n } else {\n throw new BrowserslistError(\n 'Unknown version ' + node.version + ' of Node.js'\n )\n }\n }\n return ['node ' + matched[matched.length - 1]]\n}\n\nfunction sinceQuery(context, node) {\n var year = parseInt(node.year)\n var month = parseInt(node.month || '01') - 1\n var day = parseInt(node.day || '01')\n return filterByYear(Date.UTC(year, month, day, 0, 0, 0), context)\n}\n\nfunction coverQuery(context, node) {\n var coverage = parseFloat(node.coverage)\n var usage = browserslist.usage.global\n if (node.place) {\n if (node.place.match(/^my\\s+stats$/i)) {\n if (!context.customUsage) {\n throw new BrowserslistError('Custom usage statistics was not provided')\n }\n usage = context.customUsage\n } else {\n var place\n if (node.place.length === 2) {\n place = node.place.toUpperCase()\n } else {\n place = node.place.toLowerCase()\n }\n env.loadCountry(browserslist.usage, place, browserslist.data)\n usage = browserslist.usage[place]\n }\n }\n var versions = Object.keys(usage).sort(function (a, b) {\n return usage[b] - usage[a]\n })\n var coveraged = 0\n var result = []\n var version\n for (var i = 0; i < versions.length; i++) {\n version = versions[i]\n if (usage[version] === 0) break\n coveraged += usage[version]\n result.push(version)\n if (coveraged >= coverage) break\n }\n return result\n}\n\nvar QUERIES = {\n last_major_versions: {\n matches: ['versions'],\n regexp: /^last\\s+(\\d+)\\s+major\\s+versions?$/i,\n select: function (context, node) {\n return Object.keys(agents).reduce(function (selected, name) {\n var data = byName(name, context)\n if (!data) return selected\n var list = getMajorVersions(data.released, node.versions)\n list = list.map(nameMapper(data.name))\n if (data.name === 'android') {\n list = filterAndroid(list, node.versions, context)\n }\n return selected.concat(list)\n }, [])\n }\n },\n last_versions: {\n matches: ['versions'],\n regexp: /^last\\s+(\\d+)\\s+versions?$/i,\n select: function (context, node) {\n return Object.keys(agents).reduce(function (selected, name) {\n var data = byName(name, context)\n if (!data) return selected\n var list = data.released.slice(-node.versions)\n list = list.map(nameMapper(data.name))\n if (data.name === 'android') {\n list = filterAndroid(list, node.versions, context)\n }\n return selected.concat(list)\n }, [])\n }\n },\n last_electron_major_versions: {\n matches: ['versions'],\n regexp: /^last\\s+(\\d+)\\s+electron\\s+major\\s+versions?$/i,\n select: function (context, node) {\n var validVersions = getMajorVersions(Object.keys(e2c), node.versions)\n return validVersions.map(function (i) {\n return 'chrome ' + e2c[i]\n })\n }\n },\n last_node_major_versions: {\n matches: ['versions'],\n regexp: /^last\\s+(\\d+)\\s+node\\s+major\\s+versions?$/i,\n select: function (context, node) {\n return getMajorVersions(browserslist.nodeVersions, node.versions).map(\n function (version) {\n return 'node ' + version\n }\n )\n }\n },\n last_browser_major_versions: {\n matches: ['versions', 'browser'],\n regexp: /^last\\s+(\\d+)\\s+(\\w+)\\s+major\\s+versions?$/i,\n select: function (context, node) {\n var data = checkName(node.browser, context)\n var validVersions = getMajorVersions(data.released, node.versions)\n var list = validVersions.map(nameMapper(data.name))\n if (data.name === 'android') {\n list = filterAndroid(list, node.versions, context)\n }\n return list\n }\n },\n last_electron_versions: {\n matches: ['versions'],\n regexp: /^last\\s+(\\d+)\\s+electron\\s+versions?$/i,\n select: function (context, node) {\n return Object.keys(e2c)\n .slice(-node.versions)\n .map(function (i) {\n return 'chrome ' + e2c[i]\n })\n }\n },\n last_node_versions: {\n matches: ['versions'],\n regexp: /^last\\s+(\\d+)\\s+node\\s+versions?$/i,\n select: function (context, node) {\n return browserslist.nodeVersions\n .slice(-node.versions)\n .map(function (version) {\n return 'node ' + version\n })\n }\n },\n last_browser_versions: {\n matches: ['versions', 'browser'],\n regexp: /^last\\s+(\\d+)\\s+(\\w+)\\s+versions?$/i,\n select: function (context, node) {\n var data = checkName(node.browser, context)\n var list = data.released.slice(-node.versions).map(nameMapper(data.name))\n if (data.name === 'android') {\n list = filterAndroid(list, node.versions, context)\n }\n return list\n }\n },\n unreleased_versions: {\n matches: [],\n regexp: /^unreleased\\s+versions$/i,\n select: function (context) {\n return Object.keys(agents).reduce(function (selected, name) {\n var data = byName(name, context)\n if (!data) return selected\n var list = data.versions.filter(function (v) {\n return data.released.indexOf(v) === -1\n })\n list = list.map(nameMapper(data.name))\n return selected.concat(list)\n }, [])\n }\n },\n unreleased_electron_versions: {\n matches: [],\n regexp: /^unreleased\\s+electron\\s+versions?$/i,\n select: function () {\n return []\n }\n },\n unreleased_browser_versions: {\n matches: ['browser'],\n regexp: /^unreleased\\s+(\\w+)\\s+versions?$/i,\n select: function (context, node) {\n var data = checkName(node.browser, context)\n return data.versions\n .filter(function (v) {\n return data.released.indexOf(v) === -1\n })\n .map(nameMapper(data.name))\n }\n },\n last_years: {\n matches: ['years'],\n regexp: /^last\\s+(\\d*.?\\d+)\\s+years?$/i,\n select: function (context, node) {\n return filterByYear(Date.now() - YEAR * node.years, context)\n }\n },\n since_y: {\n matches: ['year'],\n regexp: /^since (\\d+)$/i,\n select: sinceQuery\n },\n since_y_m: {\n matches: ['year', 'month'],\n regexp: /^since (\\d+)-(\\d+)$/i,\n select: sinceQuery\n },\n since_y_m_d: {\n matches: ['year', 'month', 'day'],\n regexp: /^since (\\d+)-(\\d+)-(\\d+)$/i,\n select: sinceQuery\n },\n popularity: {\n matches: ['sign', 'popularity'],\n regexp: /^(>=?|<=?)\\s*(\\d+|\\d+\\.\\d+|\\.\\d+)%$/,\n select: function (context, node) {\n var popularity = parseFloat(node.popularity)\n var usage = browserslist.usage.global\n return Object.keys(usage).reduce(function (result, version) {\n if (node.sign === '>') {\n if (usage[version] > popularity) {\n result.push(version)\n }\n } else if (node.sign === '<') {\n if (usage[version] < popularity) {\n result.push(version)\n }\n } else if (node.sign === '<=') {\n if (usage[version] <= popularity) {\n result.push(version)\n }\n } else if (usage[version] >= popularity) {\n result.push(version)\n }\n return result\n }, [])\n }\n },\n popularity_in_my_stats: {\n matches: ['sign', 'popularity'],\n regexp: /^(>=?|<=?)\\s*(\\d+|\\d+\\.\\d+|\\.\\d+)%\\s+in\\s+my\\s+stats$/,\n select: function (context, node) {\n var popularity = parseFloat(node.popularity)\n if (!context.customUsage) {\n throw new BrowserslistError('Custom usage statistics was not provided')\n }\n var usage = context.customUsage\n return Object.keys(usage).reduce(function (result, version) {\n var percentage = usage[version]\n if (percentage == null) {\n return result\n }\n\n if (node.sign === '>') {\n if (percentage > popularity) {\n result.push(version)\n }\n } else if (node.sign === '<') {\n if (percentage < popularity) {\n result.push(version)\n }\n } else if (node.sign === '<=') {\n if (percentage <= popularity) {\n result.push(version)\n }\n } else if (percentage >= popularity) {\n result.push(version)\n }\n return result\n }, [])\n }\n },\n popularity_in_config_stats: {\n matches: ['sign', 'popularity', 'config'],\n regexp: /^(>=?|<=?)\\s*(\\d+|\\d+\\.\\d+|\\.\\d+)%\\s+in\\s+(\\S+)\\s+stats$/,\n select: function (context, node) {\n var popularity = parseFloat(node.popularity)\n var stats = env.loadStat(context, node.config, browserslist.data)\n if (stats) {\n context.customUsage = {}\n for (var browser in stats) {\n fillUsage(context.customUsage, browser, stats[browser])\n }\n }\n if (!context.customUsage) {\n throw new BrowserslistError('Custom usage statistics was not provided')\n }\n var usage = context.customUsage\n return Object.keys(usage).reduce(function (result, version) {\n var percentage = usage[version]\n if (percentage == null) {\n return result\n }\n\n if (node.sign === '>') {\n if (percentage > popularity) {\n result.push(version)\n }\n } else if (node.sign === '<') {\n if (percentage < popularity) {\n result.push(version)\n }\n } else if (node.sign === '<=') {\n if (percentage <= popularity) {\n result.push(version)\n }\n } else if (percentage >= popularity) {\n result.push(version)\n }\n return result\n }, [])\n }\n },\n popularity_in_place: {\n matches: ['sign', 'popularity', 'place'],\n regexp: /^(>=?|<=?)\\s*(\\d+|\\d+\\.\\d+|\\.\\d+)%\\s+in\\s+((alt-)?\\w\\w)$/,\n select: function (context, node) {\n var popularity = parseFloat(node.popularity)\n var place = node.place\n if (place.length === 2) {\n place = place.toUpperCase()\n } else {\n place = place.toLowerCase()\n }\n env.loadCountry(browserslist.usage, place, browserslist.data)\n var usage = browserslist.usage[place]\n return Object.keys(usage).reduce(function (result, version) {\n var percentage = usage[version]\n if (percentage == null) {\n return result\n }\n\n if (node.sign === '>') {\n if (percentage > popularity) {\n result.push(version)\n }\n } else if (node.sign === '<') {\n if (percentage < popularity) {\n result.push(version)\n }\n } else if (node.sign === '<=') {\n if (percentage <= popularity) {\n result.push(version)\n }\n } else if (percentage >= popularity) {\n result.push(version)\n }\n return result\n }, [])\n }\n },\n cover: {\n matches: ['coverage'],\n regexp: /^cover\\s+(\\d+|\\d+\\.\\d+|\\.\\d+)%$/i,\n select: coverQuery\n },\n cover_in: {\n matches: ['coverage', 'place'],\n regexp: /^cover\\s+(\\d+|\\d+\\.\\d+|\\.\\d+)%\\s+in\\s+(my\\s+stats|(alt-)?\\w\\w)$/i,\n select: coverQuery\n },\n supports: {\n matches: ['feature'],\n regexp: /^supports\\s+([\\w-]+)$/,\n select: function (context, node) {\n env.loadFeature(browserslist.cache, node.feature)\n var features = browserslist.cache[node.feature]\n return Object.keys(features).reduce(function (result, version) {\n var flags = features[version]\n if (flags.indexOf('y') >= 0 || flags.indexOf('a') >= 0) {\n result.push(version)\n }\n return result\n }, [])\n }\n },\n electron_range: {\n matches: ['from', 'to'],\n regexp: /^electron\\s+([\\d.]+)\\s*-\\s*([\\d.]+)$/i,\n select: function (context, node) {\n var fromToUse = normalizeElectron(node.from)\n var toToUse = normalizeElectron(node.to)\n var from = parseFloat(node.from)\n var to = parseFloat(node.to)\n if (!e2c[fromToUse]) {\n throw new BrowserslistError('Unknown version ' + from + ' of electron')\n }\n if (!e2c[toToUse]) {\n throw new BrowserslistError('Unknown version ' + to + ' of electron')\n }\n return Object.keys(e2c)\n .filter(function (i) {\n var parsed = parseFloat(i)\n return parsed >= from && parsed <= to\n })\n .map(function (i) {\n return 'chrome ' + e2c[i]\n })\n }\n },\n node_range: {\n matches: ['from', 'to'],\n regexp: /^node\\s+([\\d.]+)\\s*-\\s*([\\d.]+)$/i,\n select: function (context, node) {\n return browserslist.nodeVersions\n .filter(semverFilterLoose('>=', node.from))\n .filter(semverFilterLoose('<=', node.to))\n .map(function (v) {\n return 'node ' + v\n })\n }\n },\n browser_range: {\n matches: ['browser', 'from', 'to'],\n regexp: /^(\\w+)\\s+([\\d.]+)\\s*-\\s*([\\d.]+)$/i,\n select: function (context, node) {\n var data = checkName(node.browser, context)\n var from = parseFloat(normalizeVersion(data, node.from) || node.from)\n var to = parseFloat(normalizeVersion(data, node.to) || node.to)\n function filter(v) {\n var parsed = parseFloat(v)\n return parsed >= from && parsed <= to\n }\n return data.released.filter(filter).map(nameMapper(data.name))\n }\n },\n electron_ray: {\n matches: ['sign', 'version'],\n regexp: /^electron\\s*(>=?|<=?)\\s*([\\d.]+)$/i,\n select: function (context, node) {\n var versionToUse = normalizeElectron(node.version)\n return Object.keys(e2c)\n .filter(generateFilter(node.sign, versionToUse))\n .map(function (i) {\n return 'chrome ' + e2c[i]\n })\n }\n },\n node_ray: {\n matches: ['sign', 'version'],\n regexp: /^node\\s*(>=?|<=?)\\s*([\\d.]+)$/i,\n select: function (context, node) {\n return browserslist.nodeVersions\n .filter(generateSemverFilter(node.sign, node.version))\n .map(function (v) {\n return 'node ' + v\n })\n }\n },\n browser_ray: {\n matches: ['browser', 'sign', 'version'],\n regexp: /^(\\w+)\\s*(>=?|<=?)\\s*([\\d.]+)$/,\n select: function (context, node) {\n var version = node.version\n var data = checkName(node.browser, context)\n var alias = browserslist.versionAliases[data.name][version]\n if (alias) version = alias\n return data.released\n .filter(generateFilter(node.sign, version))\n .map(function (v) {\n return data.name + ' ' + v\n })\n }\n },\n firefox_esr: {\n matches: [],\n regexp: /^(firefox|ff|fx)\\s+esr$/i,\n select: function () {\n return ['firefox 102']\n }\n },\n opera_mini_all: {\n matches: [],\n regexp: /(operamini|op_mini)\\s+all/i,\n select: function () {\n return ['op_mini all']\n }\n },\n electron_version: {\n matches: ['version'],\n regexp: /^electron\\s+([\\d.]+)$/i,\n select: function (context, node) {\n var versionToUse = normalizeElectron(node.version)\n var chrome = e2c[versionToUse]\n if (!chrome) {\n throw new BrowserslistError(\n 'Unknown version ' + node.version + ' of electron'\n )\n }\n return ['chrome ' + chrome]\n }\n },\n node_major_version: {\n matches: ['version'],\n regexp: /^node\\s+(\\d+)$/i,\n select: nodeQuery\n },\n node_minor_version: {\n matches: ['version'],\n regexp: /^node\\s+(\\d+\\.\\d+)$/i,\n select: nodeQuery\n },\n node_patch_version: {\n matches: ['version'],\n regexp: /^node\\s+(\\d+\\.\\d+\\.\\d+)$/i,\n select: nodeQuery\n },\n current_node: {\n matches: [],\n regexp: /^current\\s+node$/i,\n select: function (context) {\n return [env.currentNode(resolve, context)]\n }\n },\n maintained_node: {\n matches: [],\n regexp: /^maintained\\s+node\\s+versions$/i,\n select: function (context) {\n var now = Date.now()\n var queries = Object.keys(jsEOL)\n .filter(function (key) {\n return (\n now < Date.parse(jsEOL[key].end) &&\n now > Date.parse(jsEOL[key].start) &&\n isEolReleased(key)\n )\n })\n .map(function (key) {\n return 'node ' + key.slice(1)\n })\n return resolve(queries, context)\n }\n },\n phantomjs_1_9: {\n matches: [],\n regexp: /^phantomjs\\s+1.9$/i,\n select: function () {\n return ['safari 5']\n }\n },\n phantomjs_2_1: {\n matches: [],\n regexp: /^phantomjs\\s+2.1$/i,\n select: function () {\n return ['safari 6']\n }\n },\n browser_version: {\n matches: ['browser', 'version'],\n regexp: /^(\\w+)\\s+(tp|[\\d.]+)$/i,\n select: function (context, node) {\n var version = node.version\n if (/^tp$/i.test(version)) version = 'TP'\n var data = checkName(node.browser, context)\n var alias = normalizeVersion(data, version)\n if (alias) {\n version = alias\n } else {\n if (version.indexOf('.') === -1) {\n alias = version + '.0'\n } else {\n alias = version.replace(/\\.0$/, '')\n }\n alias = normalizeVersion(data, alias)\n if (alias) {\n version = alias\n } else if (context.ignoreUnknownVersions) {\n return []\n } else {\n throw new BrowserslistError(\n 'Unknown version ' + version + ' of ' + node.browser\n )\n }\n }\n return [data.name + ' ' + version]\n }\n },\n browserslist_config: {\n matches: [],\n regexp: /^browserslist config$/i,\n select: function (context) {\n return browserslist(undefined, context)\n }\n },\n extends: {\n matches: ['config'],\n regexp: /^extends (.+)$/i,\n select: function (context, node) {\n return resolve(env.loadQueries(context, node.config), context)\n }\n },\n defaults: {\n matches: [],\n regexp: /^defaults$/i,\n select: function (context) {\n return resolve(browserslist.defaults, context)\n }\n },\n dead: {\n matches: [],\n regexp: /^dead$/i,\n select: function (context) {\n var dead = [\n 'Baidu >= 0',\n 'ie <= 11',\n 'ie_mob <= 11',\n 'bb <= 10',\n 'op_mob <= 12.1',\n 'samsung 4'\n ]\n return resolve(dead, context)\n }\n },\n unknown: {\n matches: [],\n regexp: /^(\\w+)$/i,\n select: function (context, node) {\n if (byName(node.query, context)) {\n throw new BrowserslistError(\n 'Specify versions in Browserslist query for browser ' + node.query\n )\n } else {\n throw unknownQuery(node.query)\n }\n }\n }\n}\n\n// Get and convert Can I Use data\n\n;(function () {\n for (var name in agents) {\n var browser = agents[name]\n browserslist.data[name] = {\n name: name,\n versions: normalize(agents[name].versions),\n released: normalize(agents[name].versions.slice(0, -3)),\n releaseDate: agents[name].release_date\n }\n fillUsage(browserslist.usage.global, name, browser.usage_global)\n\n browserslist.versionAliases[name] = {}\n for (var i = 0; i < browser.versions.length; i++) {\n var full = browser.versions[i]\n if (!full) continue\n\n if (full.indexOf('-') !== -1) {\n var interval = full.split('-')\n for (var j = 0; j < interval.length; j++) {\n browserslist.versionAliases[name][interval[j]] = full\n }\n }\n }\n }\n\n browserslist.versionAliases.op_mob['59'] = '58'\n\n browserslist.nodeVersions = jsReleases.map(function (release) {\n return release.version\n })\n})()\n\nmodule.exports = browserslist\n","var AND_REGEXP = /^\\s+and\\s+(.*)/i\nvar OR_REGEXP = /^(?:,\\s*|\\s+or\\s+)(.*)/i\n\nfunction flatten(array) {\n if (!Array.isArray(array)) return [array]\n return array.reduce(function (a, b) {\n return a.concat(flatten(b))\n }, [])\n}\n\nfunction find(string, predicate) {\n for (var n = 1, max = string.length; n <= max; n++) {\n var parsed = string.substr(-n, n)\n if (predicate(parsed, n, max)) {\n return string.slice(0, -n)\n }\n }\n return ''\n}\n\nfunction matchQuery(all, query) {\n var node = { query: query }\n if (query.indexOf('not ') === 0) {\n node.not = true\n query = query.slice(4)\n }\n\n for (var name in all) {\n var type = all[name]\n var match = query.match(type.regexp)\n if (match) {\n node.type = name\n for (var i = 0; i < type.matches.length; i++) {\n node[type.matches[i]] = match[i + 1]\n }\n return node\n }\n }\n\n node.type = 'unknown'\n return node\n}\n\nfunction matchBlock(all, string, qs) {\n var node\n return find(string, function (parsed, n, max) {\n if (AND_REGEXP.test(parsed)) {\n node = matchQuery(all, parsed.match(AND_REGEXP)[1])\n node.compose = 'and'\n qs.unshift(node)\n return true\n } else if (OR_REGEXP.test(parsed)) {\n node = matchQuery(all, parsed.match(OR_REGEXP)[1])\n node.compose = 'or'\n qs.unshift(node)\n return true\n } else if (n === max) {\n node = matchQuery(all, parsed.trim())\n node.compose = 'or'\n qs.unshift(node)\n return true\n }\n return false\n })\n}\n\nmodule.exports = function parse(all, queries) {\n if (!Array.isArray(queries)) queries = [queries]\n return flatten(\n queries.map(function (block) {\n var qs = []\n do {\n block = matchBlock(all, block, qs)\n } while (block)\n return qs\n })\n )\n}\n","module.exports={A:{A:{J:0.0131217,D:0.00621152,E:0.0360158,F:0.086438,A:0.00720317,B:0.475409,\"4B\":0.009298},B:\"ms\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"4B\",\"J\",\"D\",\"E\",\"F\",\"A\",\"B\",\"\",\"\",\"\"],E:\"IE\",F:{\"4B\":962323200,J:998870400,D:1161129600,E:1237420800,F:1300060800,A:1346716800,B:1381968000}},B:{A:{C:0.007858,K:0.004267,L:0.004268,G:0.003929,M:0.003702,N:0.007858,O:0.023574,P:0,Q:0.004298,R:0.00944,S:0.004043,T:0.007858,U:0.007858,V:0.003929,W:0.003929,X:0.004318,Y:0.003929,Z:0.004118,a:0.003939,d:0.007858,e:0.004118,f:0.003939,g:0.003801,h:0.003929,i:0.003855,j:0.003929,k:0.003929,l:0.007858,m:0.019645,n:0.015716,o:0.055006,p:0.652214,b:3.4143,H:0},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"C\",\"K\",\"L\",\"G\",\"M\",\"N\",\"O\",\"P\",\"Q\",\"R\",\"S\",\"T\",\"U\",\"V\",\"W\",\"X\",\"Y\",\"Z\",\"a\",\"d\",\"e\",\"f\",\"g\",\"h\",\"i\",\"j\",\"k\",\"l\",\"m\",\"n\",\"o\",\"p\",\"b\",\"H\",\"\",\"\",\"\"],E:\"Edge\",F:{C:1438128000,K:1447286400,L:1470096000,G:1491868800,M:1508198400,N:1525046400,O:1542067200,P:1579046400,Q:1581033600,R:1586736000,S:1590019200,T:1594857600,U:1598486400,V:1602201600,W:1605830400,X:1611360000,Y:1614816000,Z:1618358400,a:1622073600,d:1626912000,e:1630627200,f:1632441600,g:1634774400,h:1637539200,i:1641427200,j:1643932800,k:1646265600,l:1649635200,m:1651190400,n:1653955200,o:1655942400,p:1659657600,b:1661990400,H:1664755200},D:{C:\"ms\",K:\"ms\",L:\"ms\",G:\"ms\",M:\"ms\",N:\"ms\",O:\"ms\"}},C:{A:{\"0\":0.004418,\"1\":0.008834,\"2\":0.008322,\"3\":0.008928,\"4\":0.004471,\"5\":0.009284,\"6\":0.004707,\"7\":0.009076,\"8\":0.007858,\"9\":0.004783,\"5B\":0.004118,pB:0.004271,I:0.019645,q:0.004879,J:0.020136,D:0.005725,E:0.004525,F:0.00533,A:0.004283,B:0.007858,C:0.004471,K:0.004486,L:0.00453,G:0.008322,M:0.004417,N:0.004425,O:0.004161,r:0.004443,s:0.004283,t:0.008322,u:0.013698,v:0.004161,w:0.008786,x:0.004118,y:0.004317,z:0.004393,AB:0.003929,BB:0.004783,CB:0.00487,DB:0.005029,EB:0.0047,FB:0.011787,GB:0.007858,HB:0.003867,IB:0.004525,JB:0.004293,KB:0.003702,LB:0.004538,MB:0.008282,NB:0.011601,OB:0.055006,PB:0.011601,QB:0.003929,RB:0.007858,SB:0.003929,TB:0.011601,UB:0.003939,qB:0.003855,VB:0.003929,rB:0.004356,WB:0.004425,XB:0.008322,c:0.00415,YB:0.004267,ZB:0.003801,aB:0.004267,bB:0.007858,cB:0.00415,dB:0.004293,eB:0.004425,fB:0.003929,gB:0.00415,hB:0.00415,iB:0.004318,jB:0.004356,kB:0.003929,lB:0.03929,P:0.007858,Q:0.007858,R:0.007858,sB:0.007858,S:0.007858,T:0.003929,U:0.004268,V:0.003801,W:0.011787,X:0.007858,Y:0.003929,Z:0.003929,a:0.070722,d:0.003801,e:0.003855,f:0.019645,g:0.007858,h:0.003929,i:0.007858,j:0.007858,k:0.011787,l:0.011787,m:0.011787,n:0.051077,o:0.141444,p:1.60303,b:0.542202,H:0.007858,tB:0,\"6B\":0.008786,\"7B\":0.00487},B:\"moz\",C:[\"5B\",\"pB\",\"6B\",\"7B\",\"I\",\"q\",\"J\",\"D\",\"E\",\"F\",\"A\",\"B\",\"C\",\"K\",\"L\",\"G\",\"M\",\"N\",\"O\",\"r\",\"s\",\"t\",\"u\",\"v\",\"w\",\"x\",\"y\",\"z\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"AB\",\"BB\",\"CB\",\"DB\",\"EB\",\"FB\",\"GB\",\"HB\",\"IB\",\"JB\",\"KB\",\"LB\",\"MB\",\"NB\",\"OB\",\"PB\",\"QB\",\"RB\",\"SB\",\"TB\",\"UB\",\"qB\",\"VB\",\"rB\",\"WB\",\"XB\",\"c\",\"YB\",\"ZB\",\"aB\",\"bB\",\"cB\",\"dB\",\"eB\",\"fB\",\"gB\",\"hB\",\"iB\",\"jB\",\"kB\",\"lB\",\"P\",\"Q\",\"R\",\"sB\",\"S\",\"T\",\"U\",\"V\",\"W\",\"X\",\"Y\",\"Z\",\"a\",\"d\",\"e\",\"f\",\"g\",\"h\",\"i\",\"j\",\"k\",\"l\",\"m\",\"n\",\"o\",\"p\",\"b\",\"H\",\"tB\",\"\"],E:\"Firefox\",F:{\"0\":1395100800,\"1\":1398729600,\"2\":1402358400,\"3\":1405987200,\"4\":1409616000,\"5\":1413244800,\"6\":1417392000,\"7\":1421107200,\"8\":1424736000,\"9\":1428278400,\"5B\":1161648000,pB:1213660800,\"6B\":1246320000,\"7B\":1264032000,I:1300752000,q:1308614400,J:1313452800,D:1317081600,E:1317081600,F:1320710400,A:1324339200,B:1327968000,C:1331596800,K:1335225600,L:1338854400,G:1342483200,M:1346112000,N:1349740800,O:1353628800,r:1357603200,s:1361232000,t:1364860800,u:1368489600,v:1372118400,w:1375747200,x:1379376000,y:1386633600,z:1391472000,AB:1431475200,BB:1435881600,CB:1439251200,DB:1442880000,EB:1446508800,FB:1450137600,GB:1453852800,HB:1457395200,IB:1461628800,JB:1465257600,KB:1470096000,LB:1474329600,MB:1479168000,NB:1485216000,OB:1488844800,PB:1492560000,QB:1497312000,RB:1502150400,SB:1506556800,TB:1510617600,UB:1516665600,qB:1520985600,VB:1525824000,rB:1529971200,WB:1536105600,XB:1540252800,c:1544486400,YB:1548720000,ZB:1552953600,aB:1558396800,bB:1562630400,cB:1567468800,dB:1571788800,eB:1575331200,fB:1578355200,gB:1581379200,hB:1583798400,iB:1586304000,jB:1588636800,kB:1591056000,lB:1593475200,P:1595894400,Q:1598313600,R:1600732800,sB:1603152000,S:1605571200,T:1607990400,U:1611619200,V:1614038400,W:1616457600,X:1618790400,Y:1622505600,Z:1626134400,a:1628553600,d:1630972800,e:1633392000,f:1635811200,g:1638835200,h:1641859200,i:1644364800,j:1646697600,k:1649116800,l:1651536000,m:1653955200,n:1656374400,o:1658793600,p:1661212800,b:1663632000,H:null,tB:null}},D:{A:{\"0\":0.0047,\"1\":0.004538,\"2\":0.008322,\"3\":0.008596,\"4\":0.004566,\"5\":0.004118,\"6\":0.007858,\"7\":0.003702,\"8\":0.004335,\"9\":0.004464,I:0.004706,q:0.004879,J:0.004879,D:0.005591,E:0.005591,F:0.005591,A:0.004534,B:0.004464,C:0.010424,K:0.0083,L:0.004706,G:0.015087,M:0.004393,N:0.004393,O:0.008652,r:0.008322,s:0.004393,t:0.004317,u:0.003929,v:0.008786,w:0.003939,x:0.004461,y:0.004141,z:0.004326,AB:0.015716,BB:0.003867,CB:0.015716,DB:0.007858,EB:0.003929,FB:0.007858,GB:0.007858,HB:0.007858,IB:0.003867,JB:0.007858,KB:0.019645,LB:0.047148,MB:0.003867,NB:0.003929,OB:0.003929,PB:0.007858,QB:0.003867,RB:0.003929,SB:0.03929,TB:0.003929,UB:0.003702,qB:0.003702,VB:0.011787,rB:0.007858,WB:0.003929,XB:0.011787,c:0.003929,YB:0.011787,ZB:0.027503,aB:0.011787,bB:0.007858,cB:0.047148,dB:0.023574,eB:0.015716,fB:0.023574,gB:0.007858,hB:0.031432,iB:0.047148,jB:0.03929,kB:0.015716,lB:0.035361,P:0.113941,Q:0.043219,R:0.03929,S:0.082509,T:0.086438,U:0.121799,V:0.11787,W:0.121799,X:0.023574,Y:0.043219,Z:0.023574,a:0.062864,d:0.051077,e:0.047148,f:0.03929,g:0.023574,h:0.082509,i:0.066793,j:0.062864,k:0.066793,l:0.113941,m:0.110012,n:0.208237,o:0.664001,p:4.8091,b:16.604,H:0.294675,tB:0.019645,\"8B\":0.011787,\"9B\":0},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"I\",\"q\",\"J\",\"D\",\"E\",\"F\",\"A\",\"B\",\"C\",\"K\",\"L\",\"G\",\"M\",\"N\",\"O\",\"r\",\"s\",\"t\",\"u\",\"v\",\"w\",\"x\",\"y\",\"z\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"AB\",\"BB\",\"CB\",\"DB\",\"EB\",\"FB\",\"GB\",\"HB\",\"IB\",\"JB\",\"KB\",\"LB\",\"MB\",\"NB\",\"OB\",\"PB\",\"QB\",\"RB\",\"SB\",\"TB\",\"UB\",\"qB\",\"VB\",\"rB\",\"WB\",\"XB\",\"c\",\"YB\",\"ZB\",\"aB\",\"bB\",\"cB\",\"dB\",\"eB\",\"fB\",\"gB\",\"hB\",\"iB\",\"jB\",\"kB\",\"lB\",\"P\",\"Q\",\"R\",\"S\",\"T\",\"U\",\"V\",\"W\",\"X\",\"Y\",\"Z\",\"a\",\"d\",\"e\",\"f\",\"g\",\"h\",\"i\",\"j\",\"k\",\"l\",\"m\",\"n\",\"o\",\"p\",\"b\",\"H\",\"tB\",\"8B\",\"9B\"],E:\"Chrome\",F:{\"0\":1369094400,\"1\":1374105600,\"2\":1376956800,\"3\":1384214400,\"4\":1389657600,\"5\":1392940800,\"6\":1397001600,\"7\":1400544000,\"8\":1405468800,\"9\":1409011200,I:1264377600,q:1274745600,J:1283385600,D:1287619200,E:1291248000,F:1296777600,A:1299542400,B:1303862400,C:1307404800,K:1312243200,L:1316131200,G:1316131200,M:1319500800,N:1323734400,O:1328659200,r:1332892800,s:1337040000,t:1340668800,u:1343692800,v:1348531200,w:1352246400,x:1357862400,y:1361404800,z:1364428800,AB:1412640000,BB:1416268800,CB:1421798400,DB:1425513600,EB:1429401600,FB:1432080000,GB:1437523200,HB:1441152000,IB:1444780800,JB:1449014400,KB:1453248000,LB:1456963200,MB:1460592000,NB:1464134400,OB:1469059200,PB:1472601600,QB:1476230400,RB:1480550400,SB:1485302400,TB:1489017600,UB:1492560000,qB:1496707200,VB:1500940800,rB:1504569600,WB:1508198400,XB:1512518400,c:1516752000,YB:1520294400,ZB:1523923200,aB:1527552000,bB:1532390400,cB:1536019200,dB:1539648000,eB:1543968000,fB:1548720000,gB:1552348800,hB:1555977600,iB:1559606400,jB:1564444800,kB:1568073600,lB:1571702400,P:1575936000,Q:1580860800,R:1586304000,S:1589846400,T:1594684800,U:1598313600,V:1601942400,W:1605571200,X:1611014400,Y:1614556800,Z:1618272000,a:1621987200,d:1626739200,e:1630368000,f:1632268800,g:1634601600,h:1637020800,i:1641340800,j:1643673600,k:1646092800,l:1648512000,m:1650931200,n:1653350400,o:1655769600,p:1659398400,b:1661817600,H:1664236800,tB:null,\"8B\":null,\"9B\":null}},E:{A:{I:0,q:0.008322,J:0.004656,D:0.004465,E:0.003929,F:0.003929,A:0.004425,B:0.004318,C:0.003801,K:0.027503,L:0.11787,G:0.027503,AC:0,uB:0.008692,BC:0.011787,CC:0.00456,DC:0.004283,EC:0.015716,vB:0.007858,mB:0.019645,nB:0.03929,wB:0.259314,FC:0.306462,GC:0.051077,xB:0.051077,yB:0.141444,zB:0.31432,\"0B\":1.77984,oB:0.184663,\"1B\":0.011787,HC:0},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"AC\",\"uB\",\"I\",\"q\",\"BC\",\"J\",\"CC\",\"D\",\"DC\",\"E\",\"F\",\"EC\",\"A\",\"vB\",\"B\",\"mB\",\"C\",\"nB\",\"K\",\"wB\",\"L\",\"FC\",\"G\",\"GC\",\"xB\",\"yB\",\"zB\",\"0B\",\"oB\",\"1B\",\"HC\",\"\"],E:\"Safari\",F:{AC:1205798400,uB:1226534400,I:1244419200,q:1275868800,BC:1311120000,J:1343174400,CC:1382400000,D:1382400000,DC:1410998400,E:1413417600,F:1443657600,EC:1458518400,A:1474329600,vB:1490572800,B:1505779200,mB:1522281600,C:1537142400,nB:1553472000,K:1568851200,wB:1585008000,L:1600214400,FC:1619395200,G:1632096000,GC:1635292800,xB:1639353600,yB:1647216000,zB:1652745600,\"0B\":1658275200,oB:1662940800,\"1B\":null,HC:null}},F:{A:{\"0\":0.007858,\"1\":0.004879,\"2\":0.004879,\"3\":0.003929,\"4\":0.005152,\"5\":0.005014,\"6\":0.009758,\"7\":0.004879,\"8\":0.003929,\"9\":0.004283,F:0.0082,B:0.016581,C:0.004317,G:0.00685,M:0.00685,N:0.00685,O:0.005014,r:0.006015,s:0.004879,t:0.006597,u:0.006597,v:0.013434,w:0.006702,x:0.006015,y:0.005595,z:0.004393,AB:0.004367,BB:0.004534,CB:0.007858,DB:0.004227,EB:0.004418,FB:0.004161,GB:0.004227,HB:0.004725,IB:0.011787,JB:0.008942,KB:0.004707,LB:0.004827,MB:0.004707,NB:0.004707,OB:0.004326,PB:0.008922,QB:0.014349,RB:0.004425,SB:0.00472,TB:0.004425,UB:0.004425,VB:0.00472,WB:0.004532,XB:0.004566,c:0.02283,YB:0.00867,ZB:0.004656,aB:0.004642,bB:0.003929,cB:0.00944,dB:0.004293,eB:0.003929,fB:0.004298,gB:0.096692,hB:0.004201,iB:0.004141,jB:0.004257,kB:0.003939,lB:0.008236,P:0.003855,Q:0.003939,R:0.008514,sB:0.003939,S:0.003939,T:0.003702,U:0.011787,V:0.003855,W:0.003855,X:0.003929,Y:0.07858,Z:0.887954,a:0.035361,IC:0.00685,JC:0,KC:0.008392,LC:0.004706,mB:0.006229,\"2B\":0.004879,MC:0.008786,nB:0.00472},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"F\",\"IC\",\"JC\",\"KC\",\"LC\",\"B\",\"mB\",\"2B\",\"MC\",\"C\",\"nB\",\"G\",\"M\",\"N\",\"O\",\"r\",\"s\",\"t\",\"u\",\"v\",\"w\",\"x\",\"y\",\"z\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\"AB\",\"BB\",\"CB\",\"DB\",\"EB\",\"FB\",\"GB\",\"HB\",\"IB\",\"JB\",\"KB\",\"LB\",\"MB\",\"NB\",\"OB\",\"PB\",\"QB\",\"RB\",\"SB\",\"TB\",\"UB\",\"VB\",\"WB\",\"XB\",\"c\",\"YB\",\"ZB\",\"aB\",\"bB\",\"cB\",\"dB\",\"eB\",\"fB\",\"gB\",\"hB\",\"iB\",\"jB\",\"kB\",\"lB\",\"P\",\"Q\",\"R\",\"sB\",\"S\",\"T\",\"U\",\"V\",\"W\",\"X\",\"Y\",\"Z\",\"a\",\"\",\"\",\"\"],E:\"Opera\",F:{\"0\":1425945600,\"1\":1430179200,\"2\":1433808000,\"3\":1438646400,\"4\":1442448000,\"5\":1445904000,\"6\":1449100800,\"7\":1454371200,\"8\":1457308800,\"9\":1462320000,F:1150761600,IC:1223424000,JC:1251763200,KC:1267488000,LC:1277942400,B:1292457600,mB:1302566400,\"2B\":1309219200,MC:1323129600,C:1323129600,nB:1352073600,G:1372723200,M:1377561600,N:1381104000,O:1386288000,r:1390867200,s:1393891200,t:1399334400,u:1401753600,v:1405987200,w:1409616000,x:1413331200,y:1417132800,z:1422316800,AB:1465344000,BB:1470096000,CB:1474329600,DB:1477267200,EB:1481587200,FB:1486425600,GB:1490054400,HB:1494374400,IB:1498003200,JB:1502236800,KB:1506470400,LB:1510099200,MB:1515024000,NB:1517961600,OB:1521676800,PB:1525910400,QB:1530144000,RB:1534982400,SB:1537833600,TB:1543363200,UB:1548201600,VB:1554768000,WB:1561593600,XB:1566259200,c:1570406400,YB:1573689600,ZB:1578441600,aB:1583971200,bB:1587513600,cB:1592956800,dB:1595894400,eB:1600128000,fB:1603238400,gB:1613520000,hB:1612224000,iB:1616544000,jB:1619568000,kB:1623715200,lB:1627948800,P:1631577600,Q:1633392000,R:1635984000,sB:1638403200,S:1642550400,T:1644969600,U:1647993600,V:1650412800,W:1652745600,X:1654646400,Y:1657152000,Z:1660780800,a:1663113600},D:{F:\"o\",B:\"o\",C:\"o\",IC:\"o\",JC:\"o\",KC:\"o\",LC:\"o\",mB:\"o\",\"2B\":\"o\",MC:\"o\",nB:\"o\"}},G:{A:{E:0,uB:0,NC:0,\"3B\":0.0030538,OC:0.00458069,PC:0.00458069,QC:0.015269,RC:0.00916139,SC:0.0198497,TC:0.0641297,UC:0.00458069,VC:0.074818,WC:0.030538,XC:0.0244304,YC:0.0290111,ZC:0.427531,aC:0.0198497,bC:0.0106883,cC:0.04428,dC:0.140475,eC:0.432112,fC:0.916139,gC:0.230562,xB:0.322175,yB:0.426004,zB:1.04134,\"0B\":8.71401,oB:1.9132,\"1B\":0.0244304},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"uB\",\"NC\",\"3B\",\"OC\",\"PC\",\"QC\",\"E\",\"RC\",\"SC\",\"TC\",\"UC\",\"VC\",\"WC\",\"XC\",\"YC\",\"ZC\",\"aC\",\"bC\",\"cC\",\"dC\",\"eC\",\"fC\",\"gC\",\"xB\",\"yB\",\"zB\",\"0B\",\"oB\",\"1B\",\"\",\"\"],E:\"Safari on iOS\",F:{uB:1270252800,NC:1283904000,\"3B\":1299628800,OC:1331078400,PC:1359331200,QC:1394409600,E:1410912000,RC:1413763200,SC:1442361600,TC:1458518400,UC:1473724800,VC:1490572800,WC:1505779200,XC:1522281600,YC:1537142400,ZC:1553472000,aC:1568851200,bC:1572220800,cC:1580169600,dC:1585008000,eC:1600214400,fC:1619395200,gC:1632096000,xB:1639353600,yB:1647216000,zB:1652659200,\"0B\":1658275200,oB:1662940800,\"1B\":null}},H:{A:{hC:1.06906},B:\"o\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"hC\",\"\",\"\",\"\"],E:\"Opera Mini\",F:{hC:1426464000}},I:{A:{pB:0,I:0.024284,H:0,iC:0,jC:0.006071,kC:0,lC:0.024284,\"3B\":0.078923,mC:0,nC:0.309621},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"iC\",\"jC\",\"kC\",\"pB\",\"I\",\"lC\",\"3B\",\"mC\",\"nC\",\"H\",\"\",\"\",\"\"],E:\"Android Browser\",F:{iC:1256515200,jC:1274313600,kC:1291593600,pB:1298332800,I:1318896000,lC:1341792000,\"3B\":1374624000,mC:1386547200,nC:1401667200,H:1664323200}},J:{A:{D:0,A:0},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"D\",\"A\",\"\",\"\",\"\"],E:\"Blackberry Browser\",F:{D:1325376000,A:1359504000}},K:{A:{A:0,B:0,C:0,c:0.0111391,mB:0,\"2B\":0,nB:0},B:\"o\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"A\",\"B\",\"mB\",\"2B\",\"C\",\"nB\",\"c\",\"\",\"\",\"\"],E:\"Opera Mobile\",F:{A:1287100800,B:1300752000,mB:1314835200,\"2B\":1318291200,C:1330300800,nB:1349740800,c:1613433600},D:{c:\"webkit\"}},L:{A:{H:41.2317},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"H\",\"\",\"\",\"\"],E:\"Chrome for Android\",F:{H:1664323200}},M:{A:{b:0.297479},B:\"moz\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"b\",\"\",\"\",\"\"],E:\"Firefox for Android\",F:{b:1663632000}},N:{A:{A:0.0115934,B:0.022664},B:\"ms\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"A\",\"B\",\"\",\"\",\"\"],E:\"IE Mobile\",F:{A:1340150400,B:1353456000}},O:{A:{oC:0.710307},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"oC\",\"\",\"\",\"\"],E:\"UC Browser for Android\",F:{oC:1634688000},D:{oC:\"webkit\"}},P:{A:{I:0.166875,pC:0.0103543,qC:0.010304,rC:0.062578,sC:0.0103584,tC:0.0104443,vB:0.0105043,uC:0.031289,vC:0.0208593,wC:0.062578,xC:0.062578,yC:0.062578,oB:0.114726,zC:0.239882,\"0C\":2.02336},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"I\",\"pC\",\"qC\",\"rC\",\"sC\",\"tC\",\"vB\",\"uC\",\"vC\",\"wC\",\"xC\",\"yC\",\"oB\",\"zC\",\"0C\",\"\",\"\",\"\"],E:\"Samsung Internet\",F:{I:1461024000,pC:1481846400,qC:1509408000,rC:1528329600,sC:1546128000,tC:1554163200,vB:1567900800,uC:1582588800,vC:1593475200,wC:1605657600,xC:1618531200,yC:1629072000,oB:1640736000,zC:1651708800,\"0C\":1659657600}},Q:{A:{wB:0.139633},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"wB\",\"\",\"\",\"\"],E:\"QQ Browser\",F:{wB:1663718400}},R:{A:{\"1C\":0},B:\"webkit\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"1C\",\"\",\"\",\"\"],E:\"Baidu Browser\",F:{\"1C\":1663027200}},S:{A:{\"2C\":0.024284},B:\"moz\",C:[\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"2C\",\"\",\"\",\"\"],E:\"KaiOS Browser\",F:{\"2C\":1527811200}}};\n","module.exports={\"0\":\"28\",\"1\":\"29\",\"2\":\"30\",\"3\":\"31\",\"4\":\"32\",\"5\":\"33\",\"6\":\"34\",\"7\":\"35\",\"8\":\"36\",\"9\":\"37\",A:\"10\",B:\"11\",C:\"12\",D:\"7\",E:\"8\",F:\"9\",G:\"15\",H:\"106\",I:\"4\",J:\"6\",K:\"13\",L:\"14\",M:\"16\",N:\"17\",O:\"18\",P:\"79\",Q:\"80\",R:\"81\",S:\"83\",T:\"84\",U:\"85\",V:\"86\",W:\"87\",X:\"88\",Y:\"89\",Z:\"90\",a:\"91\",b:\"105\",c:\"64\",d:\"92\",e:\"93\",f:\"94\",g:\"95\",h:\"96\",i:\"97\",j:\"98\",k:\"99\",l:\"100\",m:\"101\",n:\"102\",o:\"103\",p:\"104\",q:\"5\",r:\"19\",s:\"20\",t:\"21\",u:\"22\",v:\"23\",w:\"24\",x:\"25\",y:\"26\",z:\"27\",AB:\"38\",BB:\"39\",CB:\"40\",DB:\"41\",EB:\"42\",FB:\"43\",GB:\"44\",HB:\"45\",IB:\"46\",JB:\"47\",KB:\"48\",LB:\"49\",MB:\"50\",NB:\"51\",OB:\"52\",PB:\"53\",QB:\"54\",RB:\"55\",SB:\"56\",TB:\"57\",UB:\"58\",VB:\"60\",WB:\"62\",XB:\"63\",YB:\"65\",ZB:\"66\",aB:\"67\",bB:\"68\",cB:\"69\",dB:\"70\",eB:\"71\",fB:\"72\",gB:\"73\",hB:\"74\",iB:\"75\",jB:\"76\",kB:\"77\",lB:\"78\",mB:\"11.1\",nB:\"12.1\",oB:\"16.0\",pB:\"3\",qB:\"59\",rB:\"61\",sB:\"82\",tB:\"107\",uB:\"3.2\",vB:\"10.1\",wB:\"13.1\",xB:\"15.2-15.3\",yB:\"15.4\",zB:\"15.5\",\"0B\":\"15.6\",\"1B\":\"16.1\",\"2B\":\"11.5\",\"3B\":\"4.2-4.3\",\"4B\":\"5.5\",\"5B\":\"2\",\"6B\":\"3.5\",\"7B\":\"3.6\",\"8B\":\"108\",\"9B\":\"109\",AC:\"3.1\",BC:\"5.1\",CC:\"6.1\",DC:\"7.1\",EC:\"9.1\",FC:\"14.1\",GC:\"15.1\",HC:\"TP\",IC:\"9.5-9.6\",JC:\"10.0-10.1\",KC:\"10.5\",LC:\"10.6\",MC:\"11.6\",NC:\"4.0-4.1\",OC:\"5.0-5.1\",PC:\"6.0-6.1\",QC:\"7.0-7.1\",RC:\"8.1-8.4\",SC:\"9.0-9.2\",TC:\"9.3\",UC:\"10.0-10.2\",VC:\"10.3\",WC:\"11.0-11.2\",XC:\"11.3-11.4\",YC:\"12.0-12.1\",ZC:\"12.2-12.5\",aC:\"13.0-13.1\",bC:\"13.2\",cC:\"13.3\",dC:\"13.4-13.7\",eC:\"14.0-14.4\",fC:\"14.5-14.8\",gC:\"15.0-15.1\",hC:\"all\",iC:\"2.1\",jC:\"2.2\",kC:\"2.3\",lC:\"4.1\",mC:\"4.4\",nC:\"4.4.3-4.4.4\",oC:\"13.4\",pC:\"5.0-5.4\",qC:\"6.2-6.4\",rC:\"7.2-7.4\",sC:\"8.2\",tC:\"9.2\",uC:\"11.1-11.2\",vC:\"12.0\",wC:\"13.0\",xC:\"14.0\",yC:\"15.0\",zC:\"17.0\",\"0C\":\"18.0\",\"1C\":\"13.18\",\"2C\":\"2.5\"};\n","module.exports={A:\"ie\",B:\"edge\",C:\"firefox\",D:\"chrome\",E:\"safari\",F:\"opera\",G:\"ios_saf\",H:\"op_mini\",I:\"android\",J:\"bb\",K:\"op_mob\",L:\"and_chr\",M:\"and_ff\",N:\"ie_mob\",O:\"and_uc\",P:\"samsung\",Q:\"and_qq\",R:\"baidu\",S:\"kaios\"};\n","'use strict'\n\nconst browsers = require('./browsers').browsers\nconst versions = require('./browserVersions').browserVersions\nconst agentsData = require('../../data/agents')\n\nfunction unpackBrowserVersions(versionsData) {\n return Object.keys(versionsData).reduce((usage, version) => {\n usage[versions[version]] = versionsData[version]\n return usage\n }, {})\n}\n\nmodule.exports.agents = Object.keys(agentsData).reduce((map, key) => {\n let versionsData = agentsData[key]\n map[browsers[key]] = Object.keys(versionsData).reduce((data, entry) => {\n if (entry === 'A') {\n data.usage_global = unpackBrowserVersions(versionsData[entry])\n } else if (entry === 'C') {\n data.versions = versionsData[entry].reduce((list, version) => {\n if (version === '') {\n list.push(null)\n } else {\n list.push(versions[version])\n }\n return list\n }, [])\n } else if (entry === 'D') {\n data.prefix_exceptions = unpackBrowserVersions(versionsData[entry])\n } else if (entry === 'E') {\n data.browser = versionsData[entry]\n } else if (entry === 'F') {\n data.release_date = Object.keys(versionsData[entry]).reduce(\n (map2, key2) => {\n map2[versions[key2]] = versionsData[entry][key2]\n return map2\n },\n {}\n )\n } else {\n // entry is B\n data.prefix = versionsData[entry]\n }\n return data\n }, {})\n return map\n}, {})\n","module.exports.browserVersions = require('../../data/browserVersions')\n","module.exports.browsers = require('../../data/browsers')\n","module.exports = {\n\t\"0.20\": \"39\",\n\t\"0.21\": \"41\",\n\t\"0.22\": \"41\",\n\t\"0.23\": \"41\",\n\t\"0.24\": \"41\",\n\t\"0.25\": \"42\",\n\t\"0.26\": \"42\",\n\t\"0.27\": \"43\",\n\t\"0.28\": \"43\",\n\t\"0.29\": \"43\",\n\t\"0.30\": \"44\",\n\t\"0.31\": \"45\",\n\t\"0.32\": \"45\",\n\t\"0.33\": \"45\",\n\t\"0.34\": \"45\",\n\t\"0.35\": \"45\",\n\t\"0.36\": \"47\",\n\t\"0.37\": \"49\",\n\t\"1.0\": \"49\",\n\t\"1.1\": \"50\",\n\t\"1.2\": \"51\",\n\t\"1.3\": \"52\",\n\t\"1.4\": \"53\",\n\t\"1.5\": \"54\",\n\t\"1.6\": \"56\",\n\t\"1.7\": \"58\",\n\t\"1.8\": \"59\",\n\t\"2.0\": \"61\",\n\t\"2.1\": \"61\",\n\t\"3.0\": \"66\",\n\t\"3.1\": \"66\",\n\t\"4.0\": \"69\",\n\t\"4.1\": \"69\",\n\t\"4.2\": \"69\",\n\t\"5.0\": \"73\",\n\t\"6.0\": \"76\",\n\t\"6.1\": \"76\",\n\t\"7.0\": \"78\",\n\t\"7.1\": \"78\",\n\t\"7.2\": \"78\",\n\t\"7.3\": \"78\",\n\t\"8.0\": \"80\",\n\t\"8.1\": \"80\",\n\t\"8.2\": \"80\",\n\t\"8.3\": \"80\",\n\t\"8.4\": \"80\",\n\t\"8.5\": \"80\",\n\t\"9.0\": \"83\",\n\t\"9.1\": \"83\",\n\t\"9.2\": \"83\",\n\t\"9.3\": \"83\",\n\t\"9.4\": \"83\",\n\t\"10.0\": \"85\",\n\t\"10.1\": \"85\",\n\t\"10.2\": \"85\",\n\t\"10.3\": \"85\",\n\t\"10.4\": \"85\",\n\t\"11.0\": \"87\",\n\t\"11.1\": \"87\",\n\t\"11.2\": \"87\",\n\t\"11.3\": \"87\",\n\t\"11.4\": \"87\",\n\t\"11.5\": \"87\",\n\t\"12.0\": \"89\",\n\t\"12.1\": \"89\",\n\t\"12.2\": \"89\",\n\t\"13.0\": \"91\",\n\t\"13.1\": \"91\",\n\t\"13.2\": \"91\",\n\t\"13.3\": \"91\",\n\t\"13.4\": \"91\",\n\t\"13.5\": \"91\",\n\t\"13.6\": \"91\",\n\t\"14.0\": \"93\",\n\t\"14.1\": \"93\",\n\t\"14.2\": \"93\",\n\t\"15.0\": \"94\",\n\t\"15.1\": \"94\",\n\t\"15.2\": \"94\",\n\t\"15.3\": \"94\",\n\t\"15.4\": \"94\",\n\t\"15.5\": \"94\",\n\t\"16.0\": \"96\",\n\t\"16.1\": \"96\",\n\t\"16.2\": \"96\",\n\t\"17.0\": \"98\",\n\t\"17.1\": \"98\",\n\t\"17.2\": \"98\",\n\t\"17.3\": \"98\",\n\t\"17.4\": \"98\",\n\t\"18.0\": \"100\",\n\t\"18.1\": \"100\",\n\t\"18.2\": \"100\",\n\t\"18.3\": \"100\",\n\t\"19.0\": \"102\",\n\t\"19.1\": \"102\",\n\t\"20.0\": \"104\",\n\t\"20.1\": \"104\",\n\t\"20.2\": \"104\",\n\t\"20.3\": \"104\",\n\t\"21.0\": \"106\",\n\t\"21.1\": \"106\",\n\t\"22.0\": \"108\"\n};","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n define(Gp, iteratorSymbol, function() {\n return this;\n });\n\n define(Gp, \"toString\", function() {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, in modern engines\n // we can explicitly access globalThis. In older engines we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","import { data, defaults } from \"browserslist\";\r\nimport regeneratorRuntime from \"regenerator-runtime\";\r\n// import axios from \"axios\";\r\n\r\nclass BPlayer {\r\n /**\r\n *\r\n * @param {string} selector\r\n * @param {object} options\r\n * @param {object} infos\r\n */\r\n constructor(wrapperr = false, optionss = false, infoss = false, editing = false) {\r\n this.isQuickPlayer = false;\r\n\r\n if (!wrapperr) {\r\n this.quickPlayer();\r\n this.isQuickPlayer = true;\r\n return false;\r\n }\r\n\r\n this.hlsVideo = false;\r\n this.dashVideo = false;\r\n this.videoId = null;\r\n this.player = null;\r\n this.poster = null;\r\n this.wrapper = null;\r\n this.canvas = null;\r\n this.canvasVideo = null;\r\n const $ = jQuery;\r\n this.ajaxUrl = (typeof h5vpData != \"undefined\" && h5vpData?.ajax_url) || (typeof h5vpAdmin != \"undefined\" && h5vpAdmin?.ajaxUrl);\r\n this.nonce = null;\r\n this.triedFroThumb = 0;\r\n this.touchClientX = 0;\r\n this.touchClientY = 0;\r\n this.options = null;\r\n this.local = typeof hpublic !== \"undefined\" ? hpublic : typeof h5vpBlock !== \"undefined\" ? h5vpBlock : {};\r\n this.editing = editing;\r\n\r\n const { wrapper, options, infos, mediaElement } = this.getDetectorData(wrapperr, optionss, infoss);\r\n if (!wrapper) return false;\r\n\r\n this.infos = infos;\r\n this.wrapper = wrapper;\r\n this.options = options;\r\n this.poster = mediaElement?.dataset?.poster;\r\n this.mediaElement = mediaElement;\r\n\r\n // mediaElement.dataset.poster = \"\";\r\n\r\n if (!this.poster) {\r\n this.poster = infos?.video?.poster;\r\n }\r\n\r\n // const data = $(wrapper).attr(\"data-settings\");\r\n const videoId = wrapper.getAttribute(\"video-id\");\r\n this.videoId = videoId;\r\n\r\n this.options.seekTime = parseInt(options?.seekTime);\r\n if (typeof h5vpI18n != \"undefined\") {\r\n this.options.i18n = h5vpI18n;\r\n }\r\n\r\n //Set Controls Base On Device\r\n this.options.controls = !Array.isArray(this.options.controls) ? this.getControls(this.options.controls) : this.options.controls;\r\n // Set quality\r\n this.options.quality = {\r\n default: 576,\r\n options: [7680, 4320, 3840, 2880, 2560, 2160, 2048, 1920, 1440, 1280, 1080, 768, 720, 640, 576, 432, 480, 360, 240],\r\n };\r\n\r\n if (infos?.isCDURL) {\r\n this.options.urls = { download: infos?.CDURL };\r\n }\r\n\r\n const controls = this.options.controls;\r\n if (!controls.includes(\"fullscreen\")) {\r\n this.options.fullscreen = {\r\n enabled: false,\r\n };\r\n }\r\n\r\n if (typeof hpublic != \"undefined\" && hpublic?.speed && !options?.speed) {\r\n let temp = [];\r\n let speed = [];\r\n if (typeof hpublic?.speed === \"string\") {\r\n temp = hpublic?.speed?.split(\",\");\r\n }\r\n temp.map((item) => {\r\n speed.push(parseFloat(item));\r\n });\r\n this.options.speed = { selected: 1, options: speed };\r\n }\r\n\r\n if (typeof Plyr === \"undefined\") {\r\n console.error(\"Plyr not found\");\r\n return false;\r\n }\r\n\r\n this.options.clickToPlay = true;\r\n\r\n this.hlsVideo = infos?.video?.source?.includes(\".m3u8\");\r\n this.dashVideo = infos?.video?.source?.includes(\".mpd\");\r\n if (infos?.streaming && infos?.streamingType === \"hls\") this.hlsVideo = true;\r\n if (infos?.streaming && infos?.streamingType === \"dash\") this.dashVideo = true;\r\n\r\n // initialize player\r\n if (this.hlsVideo) {\r\n this.videoHls(wrapper, infos);\r\n } else {\r\n this.player = new Plyr(mediaElement, this.options);\r\n this.initializePlayer();\r\n }\r\n\r\n // return this.player;\r\n }\r\n\r\n initializePlayer() {\r\n if (this.player) {\r\n const player = this.player;\r\n\r\n //set download url\r\n player.on(\"qualitychange\", function () {\r\n setTimeout(() => {\r\n player.download = player.source;\r\n }, 0);\r\n });\r\n\r\n //generate thumb/poster if not exists\r\n player.on(\"ready\", () => {\r\n if (this.options.muted) {\r\n this.player.volume = 0;\r\n this.player.muted = true;\r\n }\r\n this.player.download = this.player.source;\r\n setTimeout(() => {\r\n try {\r\n this.wrapper.querySelector(\"video\").dataset.poster = \"\";\r\n } catch (error) {\r\n console.log(error.message);\r\n }\r\n }, 2000);\r\n // !this.poster && this.getThumbnailFromSource(infos?.posterTime || 10);\r\n this.controlTouchAction();\r\n });\r\n\r\n //orientation\r\n if (window?.innerWidth < 992) {\r\n player.on(\"enterfullscreen\", (event) => {\r\n screen?.orientation?.lock(\"landscape\");\r\n });\r\n\r\n player.on(\"exitfullscreen\", (event) => {\r\n screen?.orientation?.lock(\"portrait\");\r\n });\r\n }\r\n\r\n //pause/play video when press spacebar\r\n this.wrapper.addEventListener(\"keydown\", (e) => {\r\n if (e.code === \"Space\") {\r\n e.preventDefault();\r\n player.togglePlay();\r\n }\r\n });\r\n\r\n //end temp data\r\n\r\n //set player exact height\r\n if (this.infos?.popup) {\r\n this.setHeight(this.wrapper, player);\r\n }\r\n\r\n // disable pause\r\n if (this.infos?.disablePause === true) {\r\n this.disablePause(player);\r\n }\r\n\r\n //Count Total Views by post id\r\n if (this.infos?.analyticsEnabled) {\r\n this.countViews(player, this.infos.id);\r\n }\r\n\r\n // count totla views by video url\r\n // this.countViewByURL(player);\r\n\r\n // Do Sticky if Sticky is enabled\r\n if (this.infos?.sticky && window.innerWidth > 768 && !this.infos?.popup) {\r\n this.doSticky(this.wrapper, player);\r\n }\r\n\r\n //Password Controller\r\n if (this.infos.protected) {\r\n this.passwordController(this.wrapper, player, this.infos);\r\n } else {\r\n this.setSource(this.wrapper, player, this.infos);\r\n }\r\n\r\n // Popup Controler\r\n if (this.infos?.popup) {\r\n this.popupController(this.wrapper, player);\r\n }\r\n\r\n //set start time\r\n // if (this.infos?.provider === \"library\" && this.infos.startTime) {\r\n // setTimeout(() => {\r\n // player.currentTime = this.infos.startTime;\r\n\r\n // }, 500);\r\n // }\r\n\r\n this.endScreen(this.wrapper, player, this.infos);\r\n\r\n //disable other player\r\n if (this.local?.pauseOther) {\r\n this.pauseOther(player, false);\r\n }\r\n\r\n //watermark\r\n this.watermark(this.wrapper, player, this.infos?.watermark || {});\r\n\r\n //autoplay=\r\n if (typeof this.player.volume === \"number\") {\r\n this.player.volume = this.videoId ? parseFloat(this.localStorageGetItem(`volume${this.videoId}`, this.options?.autoplay || this.options?.muted ? 0 : 0.5)) : this.localStorageGetItem(\"plyr\")?.volume || 0.5;\r\n }\r\n\r\n player.on(\"volumechange\", function () {\r\n localStorage.setItem(`volume${this.videoId}`, player.volume);\r\n });\r\n\r\n if (this.infos?.thumbInPause) {\r\n this.thumbInPause(this.wrapper, player, this.infos);\r\n }\r\n\r\n //hide icon\r\n if (this.infos?.provider !== \"library\") this.hideYoutubeVimeoIcon(this.wrapper, player);\r\n\r\n this.player.elements.container.addEventListener(\"dblclick\", () => {\r\n window.deleteEverything = () => {\r\n return this.player;\r\n };\r\n });\r\n\r\n player.on(\"ready\", () => {\r\n // set duration if missing\r\n if (typeof player.elements.display.duration !== \"undefined\") {\r\n player.elements.display.duration.innerText = this.toHHMMSS(player.duration);\r\n }\r\n\r\n setTimeout(() => {\r\n if (this.infos?.startTime) {\r\n player.currentTime = this.infos.startTime;\r\n } else {\r\n const currentTime = parseFloat(this.localStorageGetItem(`video-progress-${this.videoId}`, 0));\r\n if (currentTime > 5) player.currentTime = currentTime;\r\n }\r\n player.on(\"timeupdate\", function () {\r\n localStorage.setItem(`video-progress-${this.videoId}`, player.currentTime);\r\n });\r\n }, 500);\r\n\r\n //create chapter\r\n setTimeout(() => {\r\n if (this.infos?.chapters?.length) {\r\n this.createChapter(this.wrapper, player, this.infos?.chapters);\r\n }\r\n }, 1000);\r\n });\r\n\r\n player.on(\"pause\", () => {\r\n !document.hidden && !this.editing && this.createView(player, this.videoId, this.infos?.provider);\r\n });\r\n\r\n setInterval(() => {\r\n !document.hidden && !this.editing && this.createView(player, this.videoId, this.infos?.provider, true);\r\n }, 10000);\r\n\r\n player.on(\"play\", function () {\r\n if (location?.href?.includes(\"wp-admin\")) {\r\n player.pause();\r\n }\r\n });\r\n\r\n if (this.infos?.captionEnabled && player.captions.currentTrack === -1 && player?.toggleCaptions) {\r\n setTimeout(() => {\r\n player.toggleCaptions();\r\n }, 1000);\r\n }\r\n\r\n this.setVideoId();\r\n\r\n if (this.infos?.autoplayWhenVisible) {\r\n let scrollPlayed = false;\r\n window.addEventListener(\"scroll\", function () {\r\n if (player.elements?.container?.offsetParent?.offsetTop < window.scrollY && !scrollPlayed) {\r\n player.muted = true;\r\n player.play();\r\n scrollPlayed = true;\r\n }\r\n });\r\n }\r\n\r\n window.player = this.player;\r\n }\r\n }\r\n\r\n quickPlayer() {\r\n if (typeof h5vpData == \"undefined\") return;\r\n if (typeof h5vpData.quickPlayer != \"undefined\") {\r\n const options = h5vpData.quickPlayer.options;\r\n if (typeof h5vpI18n != \"undefined\") {\r\n options.i18n = h5vpI18n;\r\n }\r\n options.controls = this.getControls(options.controls);\r\n if (typeof h5vpData.globalWorking != \"undefined\" && h5vpData.globalWorking == 1) {\r\n setTimeout(() => {\r\n const videos = document.querySelectorAll(\"video:not(.h5vp_player video):not(a video):not(.h5vp_video_playlist video):not(.plyr__video-wrapper video), .h5vp_quick_player\");\r\n Object.values(videos).map((item) => {\r\n const video = new BPlayer(item, options);\r\n video?.player.on(\"ready\", () => {\r\n if (video?.player.elements.display.duration) {\r\n video.player.elements.display.duration.innerText = this.toHHMMSS(video.player.duration);\r\n }\r\n });\r\n });\r\n }, 100);\r\n } else {\r\n const videos = document.querySelectorAll(\".h5vp_quick_player\");\r\n Object.values(videos).map((item) => {\r\n new BPlayer(item, options);\r\n });\r\n }\r\n }\r\n }\r\n\r\n getVideoId() {\r\n return this.videoId;\r\n }\r\n\r\n setVideoId() {\r\n if (!this.videoId && this.infos?.video?.source) {\r\n const data = new FormData();\r\n data.append(\"action\", \"createVideo\");\r\n data.append(\"source\", this.infos?.video?.source);\r\n data.append(\"title\", this.infos?.video?.source);\r\n fetch(this.ajaxUrl, {\r\n method: \"POST\",\r\n body: data,\r\n })\r\n .then((res) => res.json())\r\n .then((data) => {\r\n this.videoId = data?.videoId;\r\n });\r\n }\r\n }\r\n\r\n disablePause(player) {\r\n player.on(\"pause\", function () {\r\n player.play();\r\n });\r\n player.on(\"ended\", function () {\r\n player.source = {\r\n type: \"video\",\r\n sources: [\r\n {\r\n src: player.source,\r\n type: \"video/mp4\",\r\n size: 720,\r\n },\r\n ],\r\n poster: player.poster,\r\n };\r\n });\r\n }\r\n\r\n createChapter(wrapper, player, chapters) {\r\n const exists = wrapper.querySelector(\".h5vp-chapter-wrapper\");\r\n if (!chapters || exists) {\r\n return false;\r\n }\r\n const progressContainer = wrapper.querySelector(\".plyr__progress__container\");\r\n const chapterWrapper = document.createElement(\"div\");\r\n const chapterListWrapper = document.createElement(\"div\");\r\n const chapterButton = document.createElement(\"button\");\r\n const chapterList = document.createElement(\"div\");\r\n\r\n chapterButton.classList = \"h5vp-chapter-button plyr__controls__item plyr__control\";\r\n chapterButton.innerHTML = `Chapter`;\r\n chapterWrapper.classList = \"h5vp-chapter-wrapper\";\r\n chapterListWrapper.classList = \"h5vp-chapter-list-wrapper\";\r\n chapterList.classList = \"h5vp-chapter-list\";\r\n\r\n const volumeElem = wrapper.querySelector(\".plyr__controls__item.plyr__volume\");\r\n const menu = wrapper.querySelector(\".plyr__controls__item.plyr__menu\");\r\n const fullscreen = wrapper.querySelector(\".plyr__controls__item[data-plyr='fullscreen']\");\r\n const duration = wrapper.querySelector(\".plyr__controls__item.plyr__time--current.plyr__time\");\r\n\r\n if (volumeElem) {\r\n volumeElem.before(chapterButton);\r\n } else if (menu) {\r\n menu.before(chapterButton);\r\n } else if (fullscreen) {\r\n fullscreen.before(chapterButton);\r\n } else if (duration) {\r\n duration.before(chapterButton);\r\n }\r\n\r\n chapters.map((chapter) => {\r\n if (chapter?.name != \"\" && chapter?.time != \"\") {\r\n const time = this.chapterTimeToSeconds(chapter?.time);\r\n const left = (time / player.duration) * 100;\r\n const chapterElement = document.createElement(\"div\");\r\n const chapterItem = document.createElement(\"button\");\r\n\r\n chapterElement.innerHTML = `${chapter?.name}`;\r\n chapterElement.classList = \"h5vp-chapter-marker plyr__controls__item plyr__control\";\r\n chapterElement.style.left = `calc(${left}% - ${this.getTTT(5, left)}px)`;\r\n\r\n //chapter item\r\n chapterItem.innerHTML = `${chapter?.name}`;\r\n\r\n chapterWrapper.appendChild(chapterElement);\r\n chapterList.appendChild(chapterItem);\r\n\r\n chapterElement.onclick = () => {\r\n player.currentTime = time;\r\n player.play();\r\n };\r\n\r\n chapterItem.onclick = () => {\r\n chapterList.classList.remove(\"showing\");\r\n player.currentTime = time;\r\n player.play();\r\n };\r\n\r\n chapterButton.onclick = () => {\r\n if (chapterList.classList.contains(\"showing\")) {\r\n chapterList.classList.remove(\"showing\");\r\n } else {\r\n chapterList.classList.add(\"showing\");\r\n }\r\n };\r\n\r\n wrapper.addEventListener(\"click\", function (event) {\r\n if (!chapterList.contains(event.target) && !chapterButton.contains(event.target)) {\r\n if (chapterList.classList.contains(\"showing\")) {\r\n chapterList.classList.remove(\"showing\");\r\n }\r\n }\r\n });\r\n\r\n this.onClick(wrapper.querySelector(\".plyr__controls__item.plyr__menu button\"), function () {\r\n if (chapterList.classList.contains(\"showing\")) {\r\n chapterList.classList.remove(\"showing\");\r\n }\r\n });\r\n }\r\n });\r\n\r\n progressContainer.appendChild(chapterWrapper);\r\n chapterListWrapper.appendChild(chapterList);\r\n wrapper.querySelector(\".plyr__controls\").after(chapterListWrapper);\r\n }\r\n\r\n getTTT(f = 10, s = 10) {\r\n return (f / 100) * s - (f / 100) * (100 - s);\r\n }\r\n\r\n onClick(element, callback) {\r\n if (element) {\r\n element.onclick = () => callback();\r\n }\r\n }\r\n\r\n /**\r\n *\r\n * @param {String} value\r\n */\r\n chapterTimeToSeconds(value = \"\") {\r\n const time = value.match(/(\\d+):(\\d+)/);\r\n if (time == null) {\r\n return parseInt(value);\r\n }\r\n return parseInt(time[1]) * 60 + parseInt(time[2]);\r\n }\r\n\r\n /**\r\n *\r\n * @param {media player} player\r\n * @param {int} videoId\r\n * @param {string} type\r\n * @param {boolean} interval\r\n */\r\n createView(player, videoId, type = \"library\", interval = false) {\r\n let pending = false;\r\n const currentTime = parseInt(localStorage.getItem(`video-progress-${videoId}`));\r\n let maxViewed = localStorage.getItem(`video-progress-max-${videoId}`);\r\n let created_at = new Date();\r\n\r\n if (!maxViewed) {\r\n localStorage.setItem(`video-progress-max-${videoId}`, JSON.stringify({ currentTime, created_at }));\r\n } else {\r\n maxViewed = JSON.parse(maxViewed);\r\n }\r\n\r\n const viewCreated = (created_at - new Date(maxViewed?.created_at)) / (1000 * 60);\r\n let condition = false;\r\n if (interval) {\r\n condition = player.playing && (currentTime >= maxViewed?.currentTime || viewCreated > 1440);\r\n } else {\r\n condition = currentTime >= maxViewed?.currentTime || viewCreated > 1440;\r\n }\r\n\r\n if (condition) {\r\n if (viewCreated > 1440) {\r\n maxViewed.created_at = created_at;\r\n }\r\n\r\n maxViewed.currentTime = player.currentTime;\r\n localStorage.setItem(`video-progress-max-${videoId}`, JSON.stringify(maxViewed));\r\n\r\n const restUrl = hpublic?.siteUrl + \"/wp-json/h5vp/v1/view\" || h5vpBlock?.siteUrl + \"/wp-json/h5vp/v1/view\";\r\n\r\n if (!pending) {\r\n pending = true;\r\n const body = new FormData();\r\n body.append(\"duration\", parseInt(player.currentTime));\r\n body.append(\"video_id\", videoId);\r\n body.append(\"user_id\", hpublic?.userId || h5vpBlock?.userId);\r\n body.append(\"type\", type);\r\n\r\n fetch(restUrl, {\r\n method: \"POST\",\r\n body,\r\n })\r\n .then((res) => res.json())\r\n .then((res) => {\r\n pending = false;\r\n });\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Count total views\r\n * @param {player object} player\r\n * @param {int} id\r\n */\r\n countViews(player, id) {\r\n let i = 0;\r\n player.on(\"play\", (event) => {\r\n if (i < 1) {\r\n jQuery.post(\r\n h5vpData.ajax_url,\r\n {\r\n action: \"video_played\",\r\n data: 1,\r\n id: id,\r\n },\r\n function (data) {}\r\n );\r\n }\r\n i++;\r\n });\r\n }\r\n\r\n /**\r\n * Do sticky if sticky is enabeld\r\n * @param {player object} player\r\n * @param {int} id\r\n */\r\n doSticky(wrapper, player) {\r\n let $ = jQuery;\r\n wrapper = $(wrapper);\r\n const videoWrapper = wrapper.find(\".h5vp_wrapper\");\r\n let sticky;\r\n let videoHeight = 450;\r\n const closeBtn = document.createElement(\"span\");\r\n closeBtn.classList.add(\"sticky_close\");\r\n closeBtn.innerHTML = \"×\";\r\n\r\n $(videoWrapper).append(closeBtn);\r\n setTimeout(() => {\r\n if (typeof wrapper.find(\"video\")[0] !== \"undefined\") {\r\n videoHeight = wrapper.height() ? wrapper.height() : 450;\r\n }\r\n }, 1000);\r\n $(window).on(\"scroll\", () => {\r\n if (player.playing == true) {\r\n sticky = parseInt($(videoWrapper).parent().offset().top);\r\n if (parseInt(window.pageYOffset - 100) > sticky) {\r\n $(videoWrapper).addClass(`video-sticky in ${this.infos?.stickyPosition}`);\r\n $(videoWrapper).parent().find(\".sticky_close\").show();\r\n setTimeout(() => {\r\n wrapper.height(videoHeight);\r\n }, 1100);\r\n wrapper.find(\"button[data-plyr=restart],button[data-plyr=fast-forward], button[data-plyr=pip],a[data-plyr=download],button[data-plyr=settings], button[data-plyr=rewind]\").hide();\r\n } else {\r\n wrapper.height(\"initial\");\r\n $(videoWrapper).removeClass(\"video-sticky in\");\r\n wrapper.find(\".sticky_close\").hide();\r\n wrapper.find(\"button[data-plyr=restart],button[data-plyr=fast-forward], button[data-plyr=pip],a[data-plyr=download],button[data-plyr=settings], button[data-plyr=rewind]\").show();\r\n }\r\n }\r\n if (parseInt(window.pageYOffset + 100) < sticky) {\r\n wrapper.height(\"initial\");\r\n $(videoWrapper).removeClass(\"video-sticky in\");\r\n wrapper.find(\".plyr--paused\").removeClass(\"video-sticky in\");\r\n wrapper.find(\".sticky_close\").hide();\r\n wrapper.find(\"button[data-plyr=restart],button[data-plyr=fast-forward], button[data-plyr=pip],a[data-plyr=download],button[data-plyr=settings], button[data-plyr=rewind]\").show();\r\n }\r\n });\r\n\r\n closeBtn.addEventListener(\"click\", function () {\r\n $(videoWrapper).removeClass(\"video-sticky in\");\r\n wrapper.find(\"button[data-plyr=restart],button[data-plyr=fast-forward], button[data-plyr=pip],a[data-plyr=download],button[data-plyr=settings], button[data-plyr=rewind]\").show();\r\n player.pause();\r\n $(this).hide();\r\n });\r\n\r\n wrapper.parents(\".et_pb_column\").css(\"z-index\", \"999999999\");\r\n }\r\n /**\r\n *\r\n * @param {object} player\r\n * @param {object} infos\r\n */\r\n passwordController(wrapper, player, infos) {\r\n let myClass = this;\r\n let $ = jQuery;\r\n wrapper = $(wrapper);\r\n\r\n wrapper.find(\".password_form form\").on(\"submit\", function (e) {\r\n e.preventDefault();\r\n let newThis = this;\r\n let form = $(newThis).parent();\r\n let overlay = $(newThis).parent().parent().find(\".video_overlay\");\r\n const password = myClass.scramble(\"decode\", infos?.propagans);\r\n const givenPassword = $(this).find(\"#password\").val();\r\n if (password === givenPassword) {\r\n $(newThis).find(\".notice\").addClass(\"success\").text(\"Success\");\r\n $(newThis).find(\".notice\").fadeIn();\r\n setTimeout(() => {\r\n form.hide();\r\n overlay.hide();\r\n }, 1000);\r\n infos.video.source = myClass.scramble(\"decode\", infos?.video?.source);\r\n myClass.setSource(wrapper, player, infos);\r\n return false;\r\n } else {\r\n $(newThis).find(\".notice\").addClass(\"error\").text(\"Wrong Password\");\r\n setTimeout(() => {\r\n $(newThis).find(\".notice\").fadeOut();\r\n }, 1000);\r\n }\r\n });\r\n }\r\n\r\n /**\r\n *\r\n * @param {array with object} VideoQuality\r\n */\r\n getQuality(VideoQuality) {\r\n if (typeof VideoQuality === \"object\" && VideoQuality !== null) {\r\n let V = [];\r\n let length = VideoQuality.length;\r\n for (let i = 0; i < length; i++) {\r\n V[i] = {\r\n src: VideoQuality[i].video_file,\r\n size: VideoQuality[i].size,\r\n type: \"video/mp4\",\r\n };\r\n }\r\n return V;\r\n }\r\n }\r\n\r\n /**\r\n *\r\n * @param {string} subtitle\r\n */\r\n getSubtitle(subtitle) {\r\n if (typeof subtitle === \"object\" && subtitle !== null) {\r\n let videoSubtitle = [];\r\n let length = subtitle.length;\r\n for (let i = 0; i < length; i++) {\r\n if (subtitle[i].label == \"\") continue;\r\n videoSubtitle[i] = {\r\n kind: \"captions\",\r\n label: subtitle[i].label,\r\n src: subtitle[i].caption_file,\r\n srclang: subtitle[i].label,\r\n };\r\n if (i === 0) {\r\n videoSubtitle[i].default = \"\";\r\n }\r\n }\r\n return videoSubtitle;\r\n }\r\n }\r\n\r\n /**\r\n *\r\n * @param {object} oldControls\r\n */\r\n getControls(oldControls) {\r\n let windowWidth = window.innerWidth;\r\n let controls = [];\r\n for (let [key, value] of Object.entries(oldControls)) {\r\n if ((value == \"show\" || value == \"mobile\") && windowWidth > 576) {\r\n controls.push(key);\r\n } else if (value != \"mobile\" && value != \"hide\" && windowWidth < 576) {\r\n controls.push(key);\r\n }\r\n }\r\n return controls;\r\n }\r\n\r\n /**\r\n *\r\n * @param {object} player\r\n * @param {object} infos\r\n */\r\n setSource(wrapper, media, infos, resolution = 720) {\r\n const $ = jQuery;\r\n const thisClass = this;\r\n if (!infos.streaming && !this.hlsVideo && !this.dashVideo) {\r\n if (infos?.provider == \"library\" && infos.protected) {\r\n let sources = this.getQuality(infos?.video?.quality) ? this.getQuality(infos?.video?.quality) : [];\r\n let tracks = this.getSubtitle(infos?.video?.subtitle) ? this.getSubtitle(infos?.video?.subtitle) : [];\r\n\r\n if (infos?.video?.source) {\r\n sources.push({ src: infos?.video?.source, type: \"video/mp4\", size: 720 });\r\n }\r\n\r\n const source = { type: \"video\", tracks, sources };\r\n if (this.poster) {\r\n source.poster = this.poster;\r\n }\r\n\r\n media.source = source;\r\n\r\n return false;\r\n } else if (infos.provider == \"youtube\") {\r\n if (this.poster) {\r\n this.player.on(\"ready\", () => {\r\n const posterElement = this.wrapper.querySelector(\".plyr__poster\");\r\n setTimeout(() => {\r\n posterElement.style.backgroundImage = `url(${this.poster})`;\r\n }, 0);\r\n });\r\n }\r\n } else if (infos.provider == \"vimeo\") {\r\n media.source = {\r\n type: \"video\",\r\n sources: [{ src: infos?.video?.source, provider: \"vimeo\" }],\r\n poster: this.poster,\r\n };\r\n }\r\n } else {\r\n if (infos?.streamingType === \"hls\" || this.hlsVideo) {\r\n // this.videoHls(wrapper, media, infos);\r\n } else if (infos?.streamingType === \"dash\" || this.dashVideo) {\r\n this.videoDash(wrapper, media, infos);\r\n }\r\n }\r\n }\r\n\r\n videoHls(wrapper, infos) {\r\n const initializeHls = () => {\r\n if (!Hls.isSupported()) {\r\n console.warn(\"Hls does not support\");\r\n } else {\r\n // For more Hls.js options, see https://github.com/dailymotion/hls.js\r\n const hls = new Hls();\r\n hls.loadSource(infos?.video?.source || this.player?.source);\r\n window.hls = hls;\r\n hls.on(Hls.Events.MANIFEST_PARSED, (event, data) => {\r\n // Transform available levels into an array of integers (height values).\r\n const availableQualities = hls.levels.map((l) => l.height);\r\n // window.hls = hls;\r\n // const player = new Plyr(video, defaultOptions);\r\n\r\n // Add new qualities to option\r\n this.options.quality = {\r\n default: availableQualities[0],\r\n options: availableQualities,\r\n // this ensures Plyr to use Hls to update quality level\r\n forced: true,\r\n onChange: (e) => {\r\n hls.currentLevel = availableQualities.indexOf(e);\r\n },\r\n };\r\n\r\n // Initialize here\r\n this.player = new Plyr(this.mediaElement, this.options);\r\n this.initializePlayer();\r\n\r\n if ([\"none\"].includes(infos.preload)) {\r\n hls.stopLoad();\r\n }\r\n if ([\"metadata\"].includes(infos.preload)) {\r\n setTimeout(() => {\r\n hls.stopLoad();\r\n }, 200);\r\n }\r\n\r\n this.player.on(\"play\", function () {\r\n hls.startLoad();\r\n });\r\n });\r\n\r\n hls.attachMedia(this.mediaElement);\r\n\r\n this.player?.on(\"languagechange\", () => {\r\n setTimeout(() => (hls.subtitleTrack = this.player.currentTrack), 50);\r\n });\r\n }\r\n };\r\n let hlsScript = document.getElementById(\"h5vp-hls\");\r\n if (!hlsScript) {\r\n hlsScript = document.createElement(\"script\");\r\n hlsScript.setAttribute(\"id\", \"h5vp-hls\");\r\n hlsScript.src = this.local?.hls;\r\n document.getElementsByTagName(\"head\")[0]?.prepend(hlsScript);\r\n hlsScript?.addEventListener(\"load\", () => initializeHls());\r\n } else {\r\n initializeHls();\r\n }\r\n }\r\n\r\n videoDash(wrapper, player, infos) {\r\n let dashScript = document.getElementById(\"h5vp-dash\");\r\n if (!dashScript) {\r\n dashScript = document.createElement(\"script\");\r\n dashScript.setAttribute(\"id\", \"h5vp-dash\");\r\n dashScript.src = this.local?.dash;\r\n document.getElementsByTagName(\"head\")[0]?.prepend(dashScript);\r\n }\r\n dashScript.addEventListener(\"load\", () => {\r\n const video = wrapper.querySelector(\"video\");\r\n const dash = dashjs.MediaPlayer().create();\r\n dash.initialize(video, infos.video.source, true);\r\n });\r\n // const videos = wrapper.querySelectorAll(\"video\");\r\n // let length = videos.length;\r\n // for (let i = 0; i < length; i++) {\r\n // const dash = dashjs.MediaPlayer().create();\r\n // dash.initialize(videos[i], infos.video.source, true);\r\n // }\r\n }\r\n\r\n // detectDevTool() {\r\n // if (window.attachEvent) {\r\n // if (document.readyState === \"complete\" || document.readyState === \"interactive\") {\r\n // this.devetoolDetecter();\r\n // window.attachEvent(\"onresize\", this.devetoolDetecter);\r\n // window.attachEvent(\"onmousemove\", this.devetoolDetecter);\r\n // window.attachEvent(\"onfocus\", this.devetoolDetecter);\r\n // window.attachEvent(\"onblur\", this.devetoolDetecter);\r\n // } else {\r\n // setTimeout(argument.callee, 0);\r\n // }\r\n // } else {\r\n // window.addEventListener(\"load\", this.devetoolDetecter);\r\n // window.addEventListener(\"resize\", this.devetoolDetecter);\r\n // window.addEventListener(\"mousemove\", this.devetoolDetecter);\r\n // window.addEventListener(\"focus\", this.devetoolDetecter);\r\n // window.addEventListener(\"blur\", this.devetoolDetecter);\r\n // }\r\n // }\r\n\r\n // devetoolDetecter(allow) {\r\n // if (isNaN(+allow)) allow = 100;\r\n // var start = +new Date();\r\n // debugger;\r\n // var end = +new Date();\r\n // if (isNaN(start) || isNaN(end) || end - start > allow) {\r\n // alert(\"DEVTOOLS detected. all operations will be terminated.\");\r\n // document.write(\"DEVTOOLS detected.\");\r\n // }\r\n // }\r\n\r\n scramble(task = \"encode\", data = \"\") {\r\n const originalKey = \"abcdefghijklmnopqrstuvwxyz1234567890\";\r\n const key = \"z1ntg4ihmwj5cr09byx8spl7ak6vo2q3eduf\";\r\n let resultData = \"\";\r\n if (task == \"encode\") {\r\n if (data != \"\") {\r\n const length = data.length;\r\n for (let i = 0; i < length; i++) {\r\n const position = originalKey.indexOf(data[i]);\r\n if (position !== -1) {\r\n resultData += key[position];\r\n } else {\r\n resultData += data[i];\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (task == \"decode\") {\r\n if (data != \"\") {\r\n const length = data.length;\r\n for (let i = 0; i < length; i++) {\r\n const currentChar = data[i];\r\n const position = key.indexOf(currentChar);\r\n if (position !== -1) {\r\n resultData += originalKey[position];\r\n } else {\r\n resultData += currentChar;\r\n }\r\n }\r\n }\r\n }\r\n return resultData;\r\n }\r\n\r\n /**\r\n *\r\n * @param {Wrapper} wrapper\r\n * @param {Object} media\r\n */\r\n popupController(wrapper, media) {\r\n let popupOpener = wrapper.querySelector(\".h5vp_popup svg\") || wrapper.querySelector(\".h5vp_popup_btn\");\r\n let popupCloser = wrapper.querySelector(\".popup_close_btn\");\r\n\r\n if (this.infos?.popupBtnExists) {\r\n popupOpener = document.querySelector(`.${this.infos?.popupBtnClass}`);\r\n }\r\n popupOpener.addEventListener(\"click\", function () {\r\n wrapper.classList.add(\"popup_open\");\r\n wrapper.classList.remove(\"popup_close\");\r\n popupCloser.style.display = \"block\";\r\n media.play();\r\n });\r\n\r\n popupCloser.addEventListener(\"click\", function () {\r\n popupCloser.style.display = \"none\";\r\n wrapper.classList.remove(\"popup_open\");\r\n wrapper.classList.add(\"popup_close\");\r\n media.pause();\r\n });\r\n }\r\n\r\n blobToNormal(blobUrl) {\r\n // var blob = new Blob([\"Hello, world!\"], { type: \"text/plain\" });\r\n // var blobUrl = URL.createObjectURL(blob);\r\n var xhr = new XMLHttpRequest();\r\n xhr.responseType = \"blob\";\r\n\r\n xhr.onload = function () {\r\n var recoveredBlob = xhr.response;\r\n\r\n var reader = new FileReader();\r\n\r\n reader.onload = function () {\r\n var blobAsDataUrl = reader.result;\r\n window.location = blobAsDataUrl;\r\n };\r\n\r\n reader.readAsDataURL(recoveredBlob);\r\n };\r\n\r\n xhr.open(\"GET\", blobUrl);\r\n xhr.send();\r\n }\r\n\r\n hideYoutubeVimeoIcon(wrapper, player) {\r\n player.on(\"ready\", function () {\r\n const icon = wrapper.querySelector(\".plyr__controls a[data-plyr='download']\");\r\n if (icon) icon.style.display = \"none\";\r\n });\r\n }\r\n\r\n /**\r\n *\r\n * @param {*} player\r\n */\r\n pauseOther(player, play = true) {\r\n if (location.pathname.includes(\"wp-admin\")) return false;\r\n player.on(\"play\", () => {\r\n const id = this.wrapper.dataset?.uniqueId;\r\n const players = document.querySelectorAll(`video:not([data-unique-id=\"${id}\"] video, a video)`);\r\n Object.values(players).map((item) => item.pause());\r\n });\r\n }\r\n\r\n setHeight(wrapper, media) {\r\n const wrapperWidth = jQuery(wrapper).width();\r\n media.on(\"loadeddata\", function () {\r\n const str = media.ratio;\r\n if (!str) return false;\r\n const [r1, r2] = str.split(\":\");\r\n const height = (wrapperWidth / r1) * r2;\r\n jQuery(wrapper)\r\n .find(\".h5vp_popup \")\r\n .css(\"height\", height + \"px\");\r\n });\r\n }\r\n\r\n thumbInPause(wrapper, player, infos) {\r\n const $ = jQuery;\r\n //only for one persion.\r\n // if(infos?.provider !== 'library' && infos?.thumbInPause){\r\n\r\n if (infos?.thumbStyle == \"custom\") {\r\n const img = document.createElement(\"img\");\r\n img.src = this.poster;\r\n player.on(\"ready\", function () {\r\n const poster = wrapper.querySelector(\".plyr__poster\");\r\n $(wrapper).find(\".plyr__control--overlaid\").addClass(\"thumbInPause\");\r\n // $(wrapper).find(\".plyr__controls\").hide();\r\n $(wrapper).find(\".plyr__control--overlaid\").append(img);\r\n });\r\n player.on(\"seeked\", () => {\r\n img.style.display = \"none\";\r\n setTimeout(() => {\r\n img.style.display = \"block\";\r\n }, 500);\r\n });\r\n } else {\r\n player.on(\"ready\", function () {\r\n setTimeout(() => {\r\n const poster = wrapper.querySelector(\".plyr__poster\");\r\n if (poster && !player.playing) poster.style.opacity = 1;\r\n player.on(\"pause\", function () {\r\n if (poster) poster.style.opacity = 1;\r\n });\r\n player.on(\"play\", function () {\r\n if (poster) poster.style.opacity = 0;\r\n });\r\n }, 50);\r\n });\r\n }\r\n }\r\n\r\n endScreen(wrapper, player, infos) {\r\n const $ = jQuery;\r\n const html = `