@sgrsoft/vpe-core-sdk 0.23.3 → 0.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/maManager.d.ts +13 -0
- package/dist/vpe-core-sdk.cjs.js +1 -1
- package/dist/vpe-core-sdk.es.js +711 -686
- package/package.json +1 -1
package/dist/vpe-core-sdk.es.js
CHANGED
|
@@ -1,151 +1,152 @@
|
|
|
1
1
|
function _e() {
|
|
2
|
-
var x = ["
|
|
2
|
+
var x = ["seconds until auto-play", "Blue", "Thin", "Player Execution Failed", "Depressed", "Next video", "347398ncaKqX", "Auto Skip Ending", "24WevMls", "Semi Bold", "Window Color", "Subtitles not available", "Raised", "Unmute", "Cannot play DASH video on iOS.", "You are muted.", "3nAhogb", "The network connection is unstable.", "Language", "Next video will play in {timeTxt} seconds.", "Fullscreen", "Change text, color, and background styles", "Quality", "min", "Skip Intro", "Font Weight", "Skip Opening", "Not used", "hour(s)", "Playback speed", "90ukqUIc", "Auto", "Play", "1886913LXekdZ", "Font Color", "2437780wLtgAn", "Background Opacity", "You do not have permission to play this video.", "Window Opacity", "The live stream is OFFLINE.", "Skip Ending", "Extra Bold", "Drop Shadow", "2256855gskANN", "Invalid DRM token.", "This video may be inappropriate for minors.", "FairPlay certificate validation failed.", "Replay", "Font Size", "18203064cScUbi", "This video may be inappropriate for children under 12 and requires parental guidance.", "Horror", "Authentication Failed", "Normal", "hour", "173750yPRveR", "Black", "Subtitles", "Previous video", "None", "Background Color", "This feature requires the Standard plan.", "Text Edge Style", "Autoplay", "Cannot play video", "Monthly basic API calls exceeded. Please switch to a paid version.", "1195068eqXkrE", "Invalid access. Please check your access_key.", "The license is not valid.", "Imitation risk", "Screen capture / screen recording has been detected.", "Failed to communicate with the DRM license server.", "Mini player", "Default", "Unsupported format.", "Auto Skip Opening", "LIVE", "Subtitle Style", "Turn off captions", "Player Startup Failed", "License", "20MptyOp", "This video may be inappropriate for children under 15 and requires parental guidance.", "Green", "Video will start in {timeTxt}.", "Drugs", "Text Opacity", "Cyan", "Scheduled", "This video is rated for all audiences.", "In a moment"];
|
|
3
3
|
return _e = function() {
|
|
4
4
|
return x;
|
|
5
5
|
}, _e();
|
|
6
6
|
}
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
var h = Mt;
|
|
8
|
+
function Mt(x, t) {
|
|
9
|
+
x = x - 351;
|
|
9
10
|
var e = _e(), i = e[x];
|
|
10
11
|
return i;
|
|
11
12
|
}
|
|
12
|
-
var b = D0;
|
|
13
13
|
(function(x, t) {
|
|
14
|
-
for (var e =
|
|
14
|
+
for (var e = Mt, i = x(); ; )
|
|
15
15
|
try {
|
|
16
|
-
var
|
|
17
|
-
if (
|
|
16
|
+
var n = parseInt(e(368)) / 1 * (parseInt(e(358)) / 2) + -parseInt(e(395)) / 3 + -parseInt(e(387)) / 4 + parseInt(e(407)) / 5 * (-parseInt(e(382)) / 6) + -parseInt(e(418)) / 7 * (-parseInt(e(360)) / 8) + parseInt(e(385)) / 9 * (-parseInt(e(433)) / 10) + parseInt(e(401)) / 11;
|
|
17
|
+
if (n === t) break;
|
|
18
18
|
i.push(i.shift());
|
|
19
19
|
} catch {
|
|
20
20
|
i.push(i.shift());
|
|
21
21
|
}
|
|
22
|
-
})(_e,
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
})(_e, 385799);
|
|
23
|
+
const Jt = { common: { cancel: "Cancel", auto: h(383), normal: "Normal", notUse: h(379), prev: h(410), next: h(357), delayText: h(352), license: h(432), play: h(384), pause: "Pause", replay: h(399), fullOn: h(372), fullOff: "Exit fullscreen", muteOn: "Mute", muteOff: h(365), captionOff: h(430), captionOn: "Turn on captions", setting: "Settings", live: h(428), miniPlayer: h(424), isMute: h(367), subtitle: "Subtitles", subtitleNot: h(363) }, settings: { autoplay: h(415), playbackRate: h(381), captions: h(409), quality: h(374) }, skip: { introSkip: h(376), openingSkip: h(378), endingSkip: h(392), autoSkipIntro: "Auto Skip Intro", autoSkipOpening: h(427), autoSkipEnding: h(359), autoSkipOpeningEnding: "Auto Skip Opening/Ending" }, ageRating: { noticeAll: h(441), notice12: h(402), notice15: h(434), notice19: h(397) }, contentWarning: { sexuality: "Sexuality", violence: "Violence", language: h(370), drugs: h(437), horror: h(403), imitation: h(421), provocative: "Provocative content" }, error: { "01": { title: h(416), desc: h(419) }, "02": { title: h(416), desc: h(389) }, "03": { title: h(404), desc: h(369) }, "04": { title: h(416), desc: "The video could not be played." }, "05": { title: h(416), desc: h(420) }, "06": { title: h(416), desc: h(417) }, "07": { title: h(416), desc: h(426) }, "08": { title: h(416), desc: "Invalid URL format." }, "09": { title: h(416), desc: h(391) }, 10: { title: h(416), desc: h(366) }, 11: { title: h(416), desc: h(396) }, 12: { title: h(416), desc: h(423) }, 13: { title: h(416), desc: h(398) }, 14: { title: h(416), desc: h(422) }, 15: { title: "Player Execution Failed", desc: "Required module was not loaded. (hls.js)" }, 16: { title: h(355), desc: "Required module was not loaded. (dash.js)" }, 17: { title: h(431), desc: h(413) } }, tv: { default: h(425), quality: h(374), subtitleStyle: h(429), subtitleStyleDesc: h(373), applyDefaultStyle: "Apply Default Style", fontColor: h(386), fontSize: h(400), textOpacity: h(438), edgeStyle: h(414), bgColor: h(412), bgOpacity: h(388), windowColor: h(362), windowOpacity: h(390), fontWeight: h(377), weight: { thin: h(354), normal: h(405), semiBold: h(361), bold: "Bold", extraBold: h(393) }, color: { white: "White", black: h(408), red: "Red", green: h(435), blue: h(353), yellow: "Yellow", magenta: "Magenta", cyan: h(439) }, edge: { none: h(411), dropShadow: h(394), raised: h(364), depressed: h(356), uniform: "Uniform" } }, alternative: { hour: h(380), minute: "minute(s)", second: "second(s)", after: h(351), afterMin: h(375), afterHour: h(406), afterDay: "day", startPlay: h(436), nextPlay: h(371), afterPlay: h(440) } };
|
|
24
|
+
var w = Rt;
|
|
25
|
+
function Rt(x, t) {
|
|
26
|
+
x = x - 495;
|
|
26
27
|
var e = Ee(), i = e[x];
|
|
27
28
|
return i;
|
|
28
29
|
}
|
|
29
|
-
var w = M0;
|
|
30
30
|
(function(x, t) {
|
|
31
|
-
for (var e =
|
|
31
|
+
for (var e = Rt, i = x(); ; )
|
|
32
32
|
try {
|
|
33
|
-
var
|
|
34
|
-
if (
|
|
33
|
+
var n = -parseInt(e(558)) / 1 + -parseInt(e(544)) / 2 * (-parseInt(e(533)) / 3) + parseInt(e(559)) / 4 + -parseInt(e(497)) / 5 + parseInt(e(550)) / 6 + -parseInt(e(520)) / 7 + parseInt(e(518)) / 8;
|
|
34
|
+
if (n === t) break;
|
|
35
35
|
i.push(i.shift());
|
|
36
36
|
} catch {
|
|
37
37
|
i.push(i.shift());
|
|
38
38
|
}
|
|
39
|
-
})(Ee,
|
|
39
|
+
})(Ee, 262700);
|
|
40
|
+
const Xt = { common: { cancel: "취소", auto: "자동", normal: "보통", notUse: w(517), prev: w(510), next: "다음 동영상", delayText: "초 뒤 자동재생", license: w(532), play: "재생", pause: w(519), replay: "다시보기", fullOn: "전체화면", fullOff: w(513), muteOn: "음소거", muteOff: w(507), captionOff: w(525), captionOn: w(537), setting: "설정", live: w(526), miniPlayer: w(524), isMute: w(528), subtitle: "자막", subtitleNot: w(514) }, settings: { autoplay: w(551), playbackRate: w(505), captions: "자막", quality: "해상도" }, skip: { introSkip: w(512), openingSkip: w(502), endingSkip: w(545), autoSkipIntro: w(521), autoSkipOpening: w(555), autoSkipEnding: w(547), autoSkipOpeningEnding: "오프닝/엔딩 자동 스킵" }, ageRating: { noticeAll: "이 영상은 전체 관람가 영상입니다.", notice12: w(557), notice15: "이 영상은 15세 미만의 청소년이 시청하기에 부적절하므로 보호자의 시청지도가 필요한 영상입니다.", notice19: w(506) }, contentWarning: { sexuality: w(503), violence: "폭력", language: "욕설", drugs: "약물", horror: "공포", imitation: "모방위험", provocative: "자극적 장면" }, error: { "01": { title: w(554), desc: "잘못된 접근입니다. access_key를 확인해주세요." }, "02": { title: "동영상을 재생할 수 없음", desc: "동영상을 재생할 권한이 없습니다." }, "03": { title: w(549), desc: "네트워크 연결이 원활하지 않습니다." }, "04": { title: w(554), desc: "동영상을 재생할 수 없습니다." }, "05": { title: w(554), desc: w(543) }, "06": { title: w(554), desc: w(560) }, "07": { title: "동영상을 재생할 수 없음", desc: w(522) }, "08": { title: w(554), desc: w(504) }, "09": { title: "동영상을 재생할 수 없음", desc: w(527) }, 10: { title: w(554), desc: w(540) }, 11: { title: w(554), desc: w(556) }, 12: { title: w(554), desc: w(515) }, 13: { title: w(554), desc: w(561) }, 14: { title: w(554), desc: "화면 캡쳐 / 화면 녹화가 감지되었습니다." }, 15: { title: w(553), desc: w(508) }, 16: { title: w(553), desc: w(548) }, 17: { title: w(499), desc: w(500) } }, tv: { default: "기본", quality: "화질", subtitleStyle: w(531), subtitleStyleDesc: w(523), applyDefaultStyle: w(496), fontColor: w(552), fontSize: w(541), textOpacity: w(495), edgeStyle: "글자 테두리 스타일", bgColor: "배경 색상", bgOpacity: w(498), windowColor: w(546), windowOpacity: w(536), fontWeight: "글자 굵기", weight: { thin: "얇게", normal: "보통", semiBold: w(511), bold: "굵게", extraBold: "매우 굵게" }, color: { white: "흰색", black: w(530), red: w(535), green: w(538), blue: w(534), yellow: w(542), magenta: "자홍색", cyan: "청록색" }, edge: { none: "없음", dropShadow: w(501), raised: "양각", depressed: "음각", uniform: "균일" } }, alternative: { hour: "시", minute: "분", second: "초", after: w(539), afterMin: "분 ", afterHour: w(529), afterDay: "일 ", startPlay: w(516), nextPlay: w(509), afterPlay: "예정" } };
|
|
40
41
|
function Ee() {
|
|
41
|
-
var x = ["
|
|
42
|
+
var x = ["{timeTxt} 후 영상이 시작됩니다.", "사용안함", "2032416FTymdS", "일시정지", "1446172OAxPAJ", "인트로 자동 스킵", "지원하지 않는 형식입니다.", "텍스트, 색상, 배경 스타일 변경", "미니플레이어", "자막끄기", "실시간", "라이브스트림이 OFFLINE 입니다.", "음소거 상태입니다.", "시간 ", "검정색", "자막 스타일", "라이선스", "17955ZnMGRO", "파란색", "빨간색", "창 불투명도", "자막켜기", "초록색", "잠시 ", "iOS에서 Dash 비디오를 재생할 수 없습니다.", "글꼴 크기", "노란색", "라이선스가 유효하지 않습니다.", "110sMwczw", "엔딩 건너뛰기", "창 색상", "엔딩 자동 스킵", "필수 모듈이 로드되지 않았습니다. (dash.js)", "인증 실패", "19452CztrJS", "자동재생", "글꼴 색상", "플레이어 실행 실패", "동영상을 재생할 수 없음", "오프닝 자동 스킵", "DRM 토큰이 잘못되었습니다.", "이 영상은 12세 미만의 청소년이 시청하기에 부적절하므로 보호자의 시청지도가 필요한 영상입니다.", "124923dtBMmx", "267964mGhfuJ", "월 기본 제공 호출 건수를 초과하였습니다. 유료 버전으로 전환 후 사용 부탁 드립니다.", "FairPlay 인증서 검증에 실패하였습니다.", "텍스트 불투명도", "기본 스타일 적용", "296205QRXsOx", "배경 불투명도", "플레이어 구동 실패", "Standard 요금제가 필요한 기능입니다.", "그림자", "오프닝 건너뛰기", "성적 표현", "URL 형식이 잘못되었습니다.", "재생 속도", "이 영상은 청소년이 시청하기에 부적절한 영상입니다.", "음소거 해제", "필수 모듈이 로드되지 않았습니다. (hls.js)", "{timeTxt}초 후 다음 영상이 재생됩니다.", "이전 동영상", "약간 굵게", "인트로 건너뛰기", "전체화면 해제", "자막 사용 불가", "DRM 라이선스 서버와 통신에 실패하였습니다."];
|
|
42
43
|
return Ee = function() {
|
|
43
44
|
return x;
|
|
44
45
|
}, Ee();
|
|
45
46
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
function R0(x, t) {
|
|
49
|
-
x = x - 381;
|
|
47
|
+
function Ot(x, t) {
|
|
48
|
+
x = x - 421;
|
|
50
49
|
var e = Te(), i = e[x];
|
|
51
50
|
return i;
|
|
52
51
|
}
|
|
52
|
+
var g = Ot;
|
|
53
53
|
(function(x, t) {
|
|
54
|
-
for (var e =
|
|
54
|
+
for (var e = Ot, i = x(); ; )
|
|
55
55
|
try {
|
|
56
|
-
var
|
|
57
|
-
if (
|
|
56
|
+
var n = -parseInt(e(484)) / 1 + parseInt(e(454)) / 2 * (parseInt(e(465)) / 3) + parseInt(e(477)) / 4 * (parseInt(e(431)) / 5) + parseInt(e(434)) / 6 * (-parseInt(e(425)) / 7) + -parseInt(e(459)) / 8 + -parseInt(e(460)) / 9 * (-parseInt(e(466)) / 10) + parseInt(e(453)) / 11;
|
|
57
|
+
if (n === t) break;
|
|
58
58
|
i.push(i.shift());
|
|
59
59
|
} catch {
|
|
60
60
|
i.push(i.shift());
|
|
61
61
|
}
|
|
62
|
-
})(Te,
|
|
62
|
+
})(Te, 921790);
|
|
63
63
|
function Te() {
|
|
64
|
-
var x = ["
|
|
64
|
+
var x = ["不正なアクセスです。access_keyを確認してください。", "ライセンスが無効です。", "全画面表示", "ドロップシャドウ", "刺激的な場面", "デフォルト", "2992099UjLHPS", "2OdImyN", "ミュート状態です。", "沈み込み", "字幕スタイル", "模倣危険", "7235008qzgGwa", "9sQstHb", "自動再生", "時間後", "エンディングをスキップ", "シアン", "5214099NsHfLZ", "15000890HPrUOQ", "動画を再生できませんでした。", "オープニング自動スキップ", "iOSではDASHビデオを再生できません。", "イントロ自動スキップ", "ライブストリームはオフラインです。", "テキスト不透明度", "リプレイ", "字幕は利用できません", "ミュート", "しばらくして", "60bQizeW", "ライセンス", "やや太い", "前の動画", "フォント色", "ライブ", "DRMライセンスサーバーとの通信に失敗しました。", "725357tBuvfC", "ウィンドウ不透明度", "字幕をオンにする", "月間の基本提供呼び出し回数を超過しました。有料版に切り替えてご利用ください。", "全画面表示を終了", "この機能にはStandardプランが必要です。", "フォントサイズ", "文字エッジスタイル", "212583iXUzXy", "デフォルトスタイルを適用", "一時停止", "背景色", "ミニプレーヤー", "プレーヤーの起動に失敗しました", "55015EWOtVt", "ネットワーク接続が不安定です。", "この映像は全年齢対象です。", "222dxPcSV", "次の動画", "文字の太さ", "この映像は未成年者の視聴には不適切な内容を含みます。", "動画を再生できません", "性的表現", "認証に失敗しました", "背景不透明度", "サポートされていない形式です。", "イントロをスキップ", "必須モジュールが読み込まれていません。(hls.js)", "{timeTxt}秒後に次の動画が再生されます。", "オープニングをスキップ"];
|
|
65
65
|
return Te = function() {
|
|
66
66
|
return x;
|
|
67
67
|
}, Te();
|
|
68
68
|
}
|
|
69
|
-
const
|
|
69
|
+
const Zt = { common: { cancel: "キャンセル", auto: "自動", normal: "標準", notUse: "使用しない", prev: g(480), next: g(435), delayText: "秒後に自動再生", license: g(478), play: "再生", pause: g(427), replay: g(473), fullOn: g(449), fullOff: g(421), muteOn: g(475), muteOff: "ミュート解除", captionOff: "字幕をオフにする", captionOn: g(486), setting: "設定", live: g(482), miniPlayer: g(429), isMute: g(455), subtitle: "字幕", subtitleNot: g(474) }, settings: { autoplay: g(461), playbackRate: "再生速度", captions: "字幕", quality: "画質" }, skip: { introSkip: g(443), openingSkip: g(446), endingSkip: g(463), autoSkipIntro: g(470), autoSkipOpening: g(468), autoSkipEnding: "エンディング自動スキップ", autoSkipOpeningEnding: "OP/ED自動スキップ" }, ageRating: { noticeAll: g(433), notice12: "この映像は12歳未満の視聴には不適切な内容を含むため、保護者の指導が必要です。", notice15: "この映像は15歳未満の視聴には不適切な内容を含むため、保護者の指導が必要です。", notice19: g(437) }, contentWarning: { sexuality: g(439), violence: "暴力", language: "暴言", drugs: "薬物", horror: "恐怖", imitation: g(458), provocative: g(451) }, error: { "01": { title: g(438), desc: g(447) }, "02": { title: g(438), desc: "この動画を再生する権限がありません。" }, "03": { title: g(440), desc: g(432) }, "04": { title: g(438), desc: g(467) }, "05": { title: g(438), desc: g(448) }, "06": { title: "動画を再生できません", desc: g(487) }, "07": { title: g(438), desc: g(442) }, "08": { title: g(438), desc: "URLの形式が正しくありません。" }, "09": { title: g(438), desc: g(471) }, 10: { title: g(438), desc: g(469) }, 11: { title: g(438), desc: "DRMトークンが無効です。" }, 12: { title: g(438), desc: g(483) }, 13: { title: g(438), desc: "FairPlay証明書の検証に失敗しました。" }, 14: { title: g(438), desc: "画面キャプチャ/画面録画が検出されました。" }, 15: { title: g(430), desc: g(444) }, 16: { title: "プレーヤーの起動に失敗しました", desc: "必須モジュールが読み込まれていません。(dash.js)" }, 17: { title: g(430), desc: g(422) } }, tv: { default: g(452), quality: "画質", subtitleStyle: g(457), subtitleStyleDesc: "テキスト、色、背景スタイルを変更", applyDefaultStyle: g(426), fontColor: g(481), fontSize: g(423), textOpacity: g(472), edgeStyle: g(424), bgColor: g(428), bgOpacity: g(441), windowColor: "ウィンドウ色", windowOpacity: g(485), fontWeight: g(436), weight: { thin: "細い", normal: "標準", semiBold: g(479), bold: "太い", extraBold: "極太" }, color: { white: "白", black: "黒", red: "赤", green: "緑", blue: "青", yellow: "黄", magenta: "マゼンタ", cyan: g(464) }, edge: { none: "なし", dropShadow: g(450), raised: "浮き出し", depressed: g(456), uniform: "均一" } }, alternative: { hour: "時間", minute: "分", second: "秒", after: g(476), afterMin: "分後", afterHour: g(462), afterDay: "日後", startPlay: "{timeTxt}後に動画が始まります。", nextPlay: g(445), afterPlay: "予定" } }, Xe = Nt;
|
|
70
70
|
(function(x, t) {
|
|
71
|
-
const e =
|
|
71
|
+
const e = Nt, i = x();
|
|
72
72
|
for (; ; )
|
|
73
73
|
try {
|
|
74
|
-
if (
|
|
74
|
+
if (parseInt(e(500)) / 1 * (parseInt(e(504)) / 2) + -parseInt(e(496)) / 3 * (-parseInt(e(497)) / 4) + -parseInt(e(498)) / 5 * (parseInt(e(508)) / 6) + -parseInt(e(495)) / 7 * (parseInt(e(501)) / 8) + -parseInt(e(499)) / 9 * (parseInt(e(506)) / 10) + -parseInt(e(505)) / 11 + -parseInt(e(502)) / 12 * (-parseInt(e(509)) / 13) === t) break;
|
|
75
75
|
i.push(i.shift());
|
|
76
76
|
} catch {
|
|
77
77
|
i.push(i.shift());
|
|
78
78
|
}
|
|
79
|
-
})(
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
79
|
+
})(Ce, 191791);
|
|
80
|
+
const Pt = { en: Jt, ko: Xt, ja: Zt };
|
|
81
|
+
function Ce() {
|
|
82
|
+
const x = ["24TtxNGb", "1704hENzjY", "language", "2102RDSvVu", "3327885oPnhpC", "30MaowDw", "undefined", "18HlGjNi", "61321LvulmT", "217609AfJAEH", "3pMfQbV", "607188cRbecM", "621545YZjsAn", "131913JZgrYK", "174omoSle"];
|
|
83
|
+
return Ce = function() {
|
|
83
84
|
return x;
|
|
84
|
-
},
|
|
85
|
+
}, Ce();
|
|
85
86
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
function Q0(x) {
|
|
91
|
-
const t = Ce, e = x[t(434)]("-")[0];
|
|
92
|
-
return e in P0 ? e : "en";
|
|
87
|
+
const Qt = () => typeof navigator !== Xe(507) && typeof navigator.language !== Xe(507);
|
|
88
|
+
function $t(x) {
|
|
89
|
+
const t = x.split("-")[0];
|
|
90
|
+
return t in Pt ? t : "en";
|
|
93
91
|
}
|
|
94
92
|
function Ze(x) {
|
|
95
|
-
const t =
|
|
93
|
+
const t = Xe;
|
|
96
94
|
let e = "en";
|
|
97
|
-
x ? e = x :
|
|
98
|
-
const i =
|
|
99
|
-
return
|
|
95
|
+
x ? e = x : Qt() && (e = navigator[t(503)]);
|
|
96
|
+
const i = $t(e);
|
|
97
|
+
return Pt[i];
|
|
98
|
+
}
|
|
99
|
+
function Nt(x, t) {
|
|
100
|
+
return x = x - 495, Ce()[x];
|
|
100
101
|
}
|
|
101
102
|
Ze();
|
|
102
|
-
var
|
|
103
|
+
var e0 = "2.0.9", t0 = 500, dt = "user-agent", re = "", lt = "?", E = {
|
|
103
104
|
FUNCTION: "function",
|
|
104
105
|
OBJECT: "object",
|
|
105
106
|
STRING: "string",
|
|
106
107
|
UNDEFINED: "undefined"
|
|
107
|
-
}, P = "browser",
|
|
108
|
+
}, P = "browser", Y = "cpu", H = "device", L = "engine", N = "os", oe = "result", d = "name", s = "type", u = "vendor", l = "version", M = "architecture", he = "major", c = "model", Ie = "console", S = "mobile", k = "tablet", C = "smarttv", F = "wearable", ge = "xr", pe = "embedded", i0 = "fetcher", te = "inapp", it = "brands", Q = "formFactors", xt = "fullVersionList", se = "platform", at = "platformVersion", Le = "bitness", J = "sec-ch-ua", x0 = J + "-full-version-list", a0 = J + "-arch", n0 = J + "-" + Le, r0 = J + "-form-factors", o0 = J + "-" + S, s0 = J + "-" + c, Ut = J + "-" + se, c0 = Ut + "-version", Lt = [it, xt, S, c, se, at, M, Q, Le], me = "Amazon", ie = "Apple", ut = "ASUS", ft = "BlackBerry", Z = "Google", pt = "Huawei", Ge = "Lenovo", ht = "Honor", ye = "LG", Ve = "Microsoft", ze = "Motorola", bt = "Nvidia", wt = "OnePlus", Ye = "OPPO", de = "Samsung", gt = "Sharp", le = "Sony", qe = "Xiaomi", Ke = "Zebra", mt = "Chrome", yt = "Chromium", K = "Chromecast", ke = "Edge", ue = "Firefox", xe = "Opera", We = "Facebook", vt = "Sogou", ae = "Mobile ", ne = " Browser", Qe = "Windows", d0 = typeof window !== E.UNDEFINED, O = d0 && window.navigator ? window.navigator : void 0, $ = O && O.userAgentData ? O.userAgentData : void 0, l0 = function(x, t) {
|
|
108
109
|
var e = {}, i = t;
|
|
109
|
-
if (!
|
|
110
|
+
if (!Ae(t)) {
|
|
110
111
|
i = {};
|
|
111
|
-
for (var
|
|
112
|
-
for (var r in t[
|
|
113
|
-
i[r] = t[
|
|
112
|
+
for (var n in t)
|
|
113
|
+
for (var r in t[n])
|
|
114
|
+
i[r] = t[n][r].concat(i[r] ? i[r] : []);
|
|
114
115
|
}
|
|
115
116
|
for (var o in x)
|
|
116
117
|
e[o] = i[o] && i[o].length % 2 === 0 ? i[o].concat(x[o]) : x[o];
|
|
117
118
|
return e;
|
|
118
|
-
},
|
|
119
|
+
}, Be = function(x) {
|
|
119
120
|
for (var t = {}, e = 0; e < x.length; e++)
|
|
120
121
|
t[x[e].toUpperCase()] = x[e];
|
|
121
122
|
return t;
|
|
122
123
|
}, $e = function(x, t) {
|
|
123
124
|
if (typeof x === E.OBJECT && x.length > 0) {
|
|
124
125
|
for (var e in x)
|
|
125
|
-
if (
|
|
126
|
+
if (W(t) == W(x[e])) return !0;
|
|
126
127
|
return !1;
|
|
127
128
|
}
|
|
128
|
-
return
|
|
129
|
-
},
|
|
129
|
+
return be(x) ? W(t) == W(x) : !1;
|
|
130
|
+
}, Ae = function(x, t) {
|
|
130
131
|
for (var e in x)
|
|
131
|
-
return /^(browser|cpu|device|engine|os)$/.test(e) || (t ?
|
|
132
|
-
},
|
|
132
|
+
return /^(browser|cpu|device|engine|os)$/.test(e) || (t ? Ae(x[e]) : !1);
|
|
133
|
+
}, be = function(x) {
|
|
133
134
|
return typeof x === E.STRING;
|
|
134
|
-
},
|
|
135
|
+
}, je = function(x) {
|
|
135
136
|
if (x) {
|
|
136
137
|
for (var t = [], e = ce(/\\?\"/g, x).split(","), i = 0; i < e.length; i++)
|
|
137
138
|
if (e[i].indexOf(";") > -1) {
|
|
138
|
-
var
|
|
139
|
-
t[i] = { brand:
|
|
139
|
+
var n = De(e[i]).split(";v=");
|
|
140
|
+
t[i] = { brand: n[0], version: n[1] };
|
|
140
141
|
} else
|
|
141
|
-
t[i] =
|
|
142
|
+
t[i] = De(e[i]);
|
|
142
143
|
return t;
|
|
143
144
|
}
|
|
144
|
-
},
|
|
145
|
-
return
|
|
146
|
-
},
|
|
147
|
-
return
|
|
148
|
-
},
|
|
145
|
+
}, W = function(x) {
|
|
146
|
+
return be(x) ? x.toLowerCase() : x;
|
|
147
|
+
}, et = function(x) {
|
|
148
|
+
return be(x) ? ce(/[^\d\.]/g, x).split(".")[0] : void 0;
|
|
149
|
+
}, z = function(x) {
|
|
149
150
|
for (var t in x)
|
|
150
151
|
if (x.hasOwnProperty(t)) {
|
|
151
152
|
var e = x[t];
|
|
@@ -153,19 +154,19 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
153
154
|
}
|
|
154
155
|
return this;
|
|
155
156
|
}, ce = function(x, t) {
|
|
156
|
-
return
|
|
157
|
-
},
|
|
157
|
+
return be(t) ? t.replace(x, re) : t;
|
|
158
|
+
}, fe = function(x) {
|
|
158
159
|
return ce(/\\?\"/g, x);
|
|
159
|
-
},
|
|
160
|
+
}, De = function(x, t) {
|
|
160
161
|
return x = ce(/^\s\s*/, String(x)), typeof t === E.UNDEFINED ? x : x.substring(0, t);
|
|
161
|
-
},
|
|
162
|
+
}, tt = function(x, t) {
|
|
162
163
|
if (!(!x || !t))
|
|
163
|
-
for (var e = 0, i,
|
|
164
|
-
var v = t[e],
|
|
165
|
-
for (i =
|
|
164
|
+
for (var e = 0, i, n, r, o, p, f; e < t.length && !p; ) {
|
|
165
|
+
var v = t[e], I = t[e + 1];
|
|
166
|
+
for (i = n = 0; i < v.length && !p && v[i]; )
|
|
166
167
|
if (p = v[i++].exec(x), p)
|
|
167
|
-
for (r = 0; r <
|
|
168
|
-
|
|
168
|
+
for (r = 0; r < I.length; r++)
|
|
169
|
+
f = p[++n], o = I[r], typeof o === E.OBJECT && o.length > 0 ? o.length === 2 ? typeof o[1] == E.FUNCTION ? this[o[0]] = o[1].call(this, f) : this[o[0]] = o[1] : o.length >= 3 && (typeof o[1] === E.FUNCTION && !(o[1].exec && o[1].test) ? o.length > 3 ? this[o[0]] = f ? o[1].apply(this, o.slice(2)) : void 0 : this[o[0]] = f ? o[1].call(this, f, o[2]) : void 0 : o.length == 3 ? this[o[0]] = f ? f.replace(o[1], o[2]) : void 0 : o.length == 4 ? this[o[0]] = f ? o[3].call(this, f.replace(o[1], o[2])) : void 0 : o.length > 4 && (this[o[0]] = f ? o[3].apply(this, [f.replace(o[1], o[2])].concat(o.slice(4))) : void 0)) : this[o] = f || void 0;
|
|
169
170
|
e += 2;
|
|
170
171
|
}
|
|
171
172
|
}, U = function(x, t) {
|
|
@@ -173,11 +174,11 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
173
174
|
if (typeof t[e] === E.OBJECT && t[e].length > 0) {
|
|
174
175
|
for (var i = 0; i < t[e].length; i++)
|
|
175
176
|
if ($e(t[e][i], x))
|
|
176
|
-
return e ===
|
|
177
|
+
return e === lt ? void 0 : e;
|
|
177
178
|
} else if ($e(t[e], x))
|
|
178
|
-
return e ===
|
|
179
|
+
return e === lt ? void 0 : e;
|
|
179
180
|
return t.hasOwnProperty("*") ? t["*"] : x;
|
|
180
|
-
},
|
|
181
|
+
}, St = {
|
|
181
182
|
ME: "4.90",
|
|
182
183
|
"NT 3.51": "3.51",
|
|
183
184
|
"NT 4.0": "4.0",
|
|
@@ -189,7 +190,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
189
190
|
"8.1": "6.3",
|
|
190
191
|
10: ["6.4", "10.0"],
|
|
191
192
|
NT: ""
|
|
192
|
-
},
|
|
193
|
+
}, It = {
|
|
193
194
|
embedded: "Automotive",
|
|
194
195
|
mobile: "Mobile",
|
|
195
196
|
tablet: ["Tablet", "EInk"],
|
|
@@ -198,7 +199,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
198
199
|
xr: ["VR", "XR"],
|
|
199
200
|
"?": ["Desktop", "Unknown"],
|
|
200
201
|
"*": void 0
|
|
201
|
-
},
|
|
202
|
+
}, u0 = {
|
|
202
203
|
Chrome: "Google Chrome",
|
|
203
204
|
Edge: "Microsoft Edge",
|
|
204
205
|
"Edge WebView2": "Microsoft Edge WebView2",
|
|
@@ -208,7 +209,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
208
209
|
"MIUI Browser": "Miui Browser",
|
|
209
210
|
"Opera Mobi": "OperaMobile",
|
|
210
211
|
Yandex: "YaBrowser"
|
|
211
|
-
},
|
|
212
|
+
}, kt = {
|
|
212
213
|
browser: [
|
|
213
214
|
[
|
|
214
215
|
// Most common regardless engine
|
|
@@ -326,7 +327,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
326
327
|
/slbrowser\/([\w\.]+)/i
|
|
327
328
|
// Smart Lenovo Browser
|
|
328
329
|
],
|
|
329
|
-
[l, [d, "Smart " +
|
|
330
|
+
[l, [d, "Smart " + Ge + ne]],
|
|
330
331
|
[
|
|
331
332
|
/(av(?:ast|g|ira))\/([\w\.]+)/i
|
|
332
333
|
// Avast/AVG/Avira Secure Browser
|
|
@@ -401,12 +402,12 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
401
402
|
/metasr[\/ ]?([\d\.]+)/i
|
|
402
403
|
// Sogou Explorer
|
|
403
404
|
],
|
|
404
|
-
[l, [d,
|
|
405
|
+
[l, [d, vt + " Explorer"]],
|
|
405
406
|
[
|
|
406
407
|
/(sogou)mo\w+\/([\d\.]+)/i
|
|
407
408
|
// Sogou Mobile
|
|
408
409
|
],
|
|
409
|
-
[[d,
|
|
410
|
+
[[d, vt + " Mobile"], l],
|
|
410
411
|
[
|
|
411
412
|
/(electron)\/([\w\.]+) safari/i,
|
|
412
413
|
// Electron-based App
|
|
@@ -431,7 +432,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
431
432
|
/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i
|
|
432
433
|
// Facebook App for iOS & Android
|
|
433
434
|
],
|
|
434
|
-
[[d,
|
|
435
|
+
[[d, We], l, [s, te]],
|
|
435
436
|
[
|
|
436
437
|
/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
|
|
437
438
|
// Kakao App
|
|
@@ -482,12 +483,12 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
482
483
|
/ome-(lighthouse)$/i
|
|
483
484
|
// Chrome Lighthouse
|
|
484
485
|
],
|
|
485
|
-
[d, [s,
|
|
486
|
+
[d, [s, i0]],
|
|
486
487
|
[
|
|
487
488
|
/headlesschrome(?:\/([\w\.]+)| )/i
|
|
488
489
|
// Chrome Headless
|
|
489
490
|
],
|
|
490
|
-
[l, [d,
|
|
491
|
+
[l, [d, mt + " Headless"]],
|
|
491
492
|
[
|
|
492
493
|
/wv\).+chrome\/([\w\.]+).+edgw\//i
|
|
493
494
|
// Edge WebView2
|
|
@@ -497,7 +498,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
497
498
|
/ wv\).+(chrome)\/([\w\.]+)/i
|
|
498
499
|
// Chrome WebView
|
|
499
500
|
],
|
|
500
|
-
[[d,
|
|
501
|
+
[[d, mt + " WebView"], l],
|
|
501
502
|
[
|
|
502
503
|
/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i
|
|
503
504
|
// Android Browser
|
|
@@ -624,7 +625,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
624
625
|
/(?:osf1|[freopnt]{3,4}bsd) (alpha)/i
|
|
625
626
|
// Alpha
|
|
626
627
|
],
|
|
627
|
-
[[M, /ower/, re,
|
|
628
|
+
[[M, /ower/, re, W]],
|
|
628
629
|
[
|
|
629
630
|
/mc680.0/i
|
|
630
631
|
],
|
|
@@ -648,13 +649,13 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
648
649
|
/samsung[- ]((?!sm-[lr]|browser)[-\w]+)/i,
|
|
649
650
|
/sec-(sgh\w+)/i
|
|
650
651
|
],
|
|
651
|
-
[c, [u, de], [s,
|
|
652
|
+
[c, [u, de], [s, S]],
|
|
652
653
|
[
|
|
653
654
|
// Apple
|
|
654
655
|
/(?:\/|\()(ip(?:hone|od)[\w, ]*)[\/\);]/i
|
|
655
656
|
// iPod/iPhone
|
|
656
657
|
],
|
|
657
|
-
[c, [u, ie], [s,
|
|
658
|
+
[c, [u, ie], [s, S]],
|
|
658
659
|
[
|
|
659
660
|
/\b(?:ios|apple\w+)\/.+[\(\/](ipad)/i,
|
|
660
661
|
// iPad
|
|
@@ -669,33 +670,33 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
669
670
|
// Sharp
|
|
670
671
|
/\b(sh-?[altvz]?\d\d[a-ekm]?)/i
|
|
671
672
|
],
|
|
672
|
-
[c, [u,
|
|
673
|
+
[c, [u, gt], [s, S]],
|
|
673
674
|
[
|
|
674
675
|
// Honor
|
|
675
676
|
/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i
|
|
676
677
|
],
|
|
677
|
-
[c, [u,
|
|
678
|
+
[c, [u, ht], [s, k]],
|
|
678
679
|
[
|
|
679
680
|
/honor([-\w ]+)[;\)]/i
|
|
680
681
|
],
|
|
681
|
-
[c, [u,
|
|
682
|
+
[c, [u, ht], [s, S]],
|
|
682
683
|
[
|
|
683
684
|
// Huawei
|
|
684
685
|
/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i
|
|
685
686
|
],
|
|
686
|
-
[c, [u,
|
|
687
|
+
[c, [u, pt], [s, k]],
|
|
687
688
|
[
|
|
688
689
|
/(?:huawei) ?([-\w ]+)[;\)]/i,
|
|
689
690
|
/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][\dc][adnt]?)\b(?!.+d\/s)/i
|
|
690
691
|
],
|
|
691
|
-
[c, [u,
|
|
692
|
+
[c, [u, pt], [s, S]],
|
|
692
693
|
[
|
|
693
694
|
// Xiaomi
|
|
694
695
|
/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i,
|
|
695
696
|
/\b(?:xiao)?((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i
|
|
696
697
|
// Mi Pad tablets
|
|
697
698
|
],
|
|
698
|
-
[[c, /_/g, " "], [u,
|
|
699
|
+
[[c, /_/g, " "], [u, qe], [s, k]],
|
|
699
700
|
[
|
|
700
701
|
/\b; (\w+) build\/hm\1/i,
|
|
701
702
|
// Xiaomi Hongmi 'numeric' models
|
|
@@ -707,57 +708,57 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
707
708
|
/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note|max|cc)?[_ ]?(?:\d{0,2}\w?)[_ ]?(?:plus|se|lite|pro)?( 5g|lte)?)(?: bui|\))/i,
|
|
708
709
|
/ ([\w ]+) miui\/v?\d/i
|
|
709
710
|
],
|
|
710
|
-
[[c, /_/g, " "], [u,
|
|
711
|
+
[[c, /_/g, " "], [u, qe], [s, S]],
|
|
711
712
|
[
|
|
712
713
|
// OnePlus
|
|
713
714
|
/droid.+; (cph2[3-6]\d[13579]|((gm|hd)19|(ac|be|in|kb)20|(d[en]|eb|le|mt)21|ne22)[0-2]\d|p[g-l]\w[1m]10)\b/i,
|
|
714
715
|
/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
|
|
715
716
|
],
|
|
716
|
-
[c, [u,
|
|
717
|
+
[c, [u, wt], [s, S]],
|
|
717
718
|
[
|
|
718
719
|
// OPPO
|
|
719
720
|
/; (\w+) bui.+ oppo/i,
|
|
720
721
|
/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
|
|
721
722
|
],
|
|
722
|
-
[c, [u,
|
|
723
|
+
[c, [u, Ye], [s, S]],
|
|
723
724
|
[
|
|
724
725
|
/\b(opd2(\d{3}a?))(?: bui|\))/i
|
|
725
726
|
],
|
|
726
|
-
[c, [u, U, { OnePlus: ["203", "304", "403", "404", "413", "415"], "*":
|
|
727
|
+
[c, [u, U, { OnePlus: ["203", "304", "403", "404", "413", "415"], "*": Ye }], [s, k]],
|
|
727
728
|
[
|
|
728
729
|
// BLU
|
|
729
730
|
/(vivo (5r?|6|8l?|go|one|s|x[il]?[2-4]?)[\w\+ ]*)(?: bui|\))/i
|
|
730
731
|
// Vivo series
|
|
731
732
|
],
|
|
732
|
-
[c, [u, "BLU"], [s,
|
|
733
|
+
[c, [u, "BLU"], [s, S]],
|
|
733
734
|
[
|
|
734
735
|
// Vivo
|
|
735
736
|
/; vivo (\w+)(?: bui|\))/i,
|
|
736
737
|
/\b(v[12]\d{3}\w?[at])(?: bui|;)/i
|
|
737
738
|
],
|
|
738
|
-
[c, [u, "Vivo"], [s,
|
|
739
|
+
[c, [u, "Vivo"], [s, S]],
|
|
739
740
|
[
|
|
740
741
|
// Realme
|
|
741
742
|
/\b(rmx[1-3]\d{3})(?: bui|;|\))/i
|
|
742
743
|
],
|
|
743
|
-
[c, [u, "Realme"], [s,
|
|
744
|
+
[c, [u, "Realme"], [s, S]],
|
|
744
745
|
[
|
|
745
746
|
// Lenovo
|
|
746
747
|
/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i,
|
|
747
748
|
/lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i
|
|
748
749
|
],
|
|
749
|
-
[c, [u,
|
|
750
|
+
[c, [u, Ge], [s, k]],
|
|
750
751
|
[
|
|
751
752
|
/lenovo[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i
|
|
752
753
|
],
|
|
753
|
-
[c, [u,
|
|
754
|
+
[c, [u, Ge], [s, S]],
|
|
754
755
|
[
|
|
755
756
|
// Motorola
|
|
756
757
|
/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
|
|
757
758
|
/\bmot(?:orola)?[- ]([\w\s]+)(\)| bui)/i,
|
|
758
759
|
/((?:moto(?! 360)[-\w\(\) ]+|xt\d{3,4}[cgkosw\+]?[-\d]*|nexus 6)(?= bui|\)))/i
|
|
759
760
|
],
|
|
760
|
-
[c, [u, ze], [s,
|
|
761
|
+
[c, [u, ze], [s, S]],
|
|
761
762
|
[
|
|
762
763
|
/\b(mz60\d|xoom[2 ]{0,2}) build\//i
|
|
763
764
|
],
|
|
@@ -772,7 +773,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
772
773
|
/\blg[-e;\/ ]+(?!.*(?:browser|netcast|android tv|watch|webos))(\w+)/i,
|
|
773
774
|
/\blg-?([\d\w]+) bui/i
|
|
774
775
|
],
|
|
775
|
-
[c, [u, ye], [s,
|
|
776
|
+
[c, [u, ye], [s, S]],
|
|
776
777
|
[
|
|
777
778
|
// Nokia
|
|
778
779
|
/(nokia) (t[12][01])/i
|
|
@@ -782,7 +783,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
782
783
|
/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i,
|
|
783
784
|
/nokia[-_ ]?(([-\w\. ]*?))( bui|\)|;|\/)/i
|
|
784
785
|
],
|
|
785
|
-
[[c, /_/g, " "], [s,
|
|
786
|
+
[[c, /_/g, " "], [s, S], [u, "Nokia"]],
|
|
786
787
|
[
|
|
787
788
|
// Google
|
|
788
789
|
/(pixel (c|tablet))\b/i
|
|
@@ -793,7 +794,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
793
794
|
// Google Pixel
|
|
794
795
|
/droid.+;(?: google)? (g(01[13]a|020[aem]|025[jn]|1b60|1f8f|2ybb|4s1m|576d|5nz6|8hhn|8vou|a02099|c15s|d1yq|e2ae|ec77|gh2x|kv4x|p4bc|pj41|r83y|tt9q|ur25|wvk6)|pixel[\d ]*a?( pro)?( xl)?( fold)?( \(5g\))?)( bui|\))/i
|
|
795
796
|
],
|
|
796
|
-
[c, [u, Z], [s,
|
|
797
|
+
[c, [u, Z], [s, S]],
|
|
797
798
|
[
|
|
798
799
|
/(google) (pixelbook( go)?)/i
|
|
799
800
|
],
|
|
@@ -802,7 +803,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
802
803
|
// Sony
|
|
803
804
|
/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-\w\w\d\d)(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i
|
|
804
805
|
],
|
|
805
|
-
[c, [u, le], [s,
|
|
806
|
+
[c, [u, le], [s, S]],
|
|
806
807
|
[
|
|
807
808
|
/sony tablet [ps]/i,
|
|
808
809
|
/\b(?:sony)?sgp\w+(?: bui|\))/i
|
|
@@ -821,7 +822,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
821
822
|
/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i
|
|
822
823
|
// Fire Phone
|
|
823
824
|
],
|
|
824
|
-
[[c, /(.+)/g, "Fire Phone $1"], [u, me], [s,
|
|
825
|
+
[[c, /(.+)/g, "Fire Phone $1"], [u, me], [s, S]],
|
|
825
826
|
[
|
|
826
827
|
// BlackBerry
|
|
827
828
|
/(playbook);[-\w\),; ]+(rim)/i
|
|
@@ -832,16 +833,16 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
832
833
|
/\b((?:bb[a-f]|st[hv])100-\d)/i,
|
|
833
834
|
/(?:blackberry|\(bb10;) (\w+)/i
|
|
834
835
|
],
|
|
835
|
-
[c, [u,
|
|
836
|
+
[c, [u, ft], [s, S]],
|
|
836
837
|
[
|
|
837
838
|
// Asus
|
|
838
839
|
/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
|
|
839
840
|
],
|
|
840
|
-
[c, [u,
|
|
841
|
+
[c, [u, ut], [s, k]],
|
|
841
842
|
[
|
|
842
843
|
/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
|
|
843
844
|
],
|
|
844
|
-
[c, [u,
|
|
845
|
+
[c, [u, ut], [s, S]],
|
|
845
846
|
[
|
|
846
847
|
// HTC
|
|
847
848
|
/(nexus 9)/i
|
|
@@ -856,7 +857,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
856
857
|
/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i
|
|
857
858
|
// Alcatel/GeeksPhone/Nexian/Panasonic/Sony
|
|
858
859
|
],
|
|
859
|
-
[u, [c, /_/g, " "], [s,
|
|
860
|
+
[u, [c, /_/g, " "], [s, S]],
|
|
860
861
|
[
|
|
861
862
|
// TCL
|
|
862
863
|
/tcl (xess p17aa)/i,
|
|
@@ -866,12 +867,12 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
866
867
|
[
|
|
867
868
|
/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i
|
|
868
869
|
],
|
|
869
|
-
[c, [u, "TCL"], [s,
|
|
870
|
+
[c, [u, "TCL"], [s, S]],
|
|
870
871
|
[
|
|
871
872
|
// itel
|
|
872
873
|
/(itel) ((\w+))/i
|
|
873
874
|
],
|
|
874
|
-
[[u,
|
|
875
|
+
[[u, W], c, [s, U, { tablet: ["p10001l", "w7001"], "*": "mobile" }]],
|
|
875
876
|
[
|
|
876
877
|
// Acer
|
|
877
878
|
/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
|
|
@@ -882,34 +883,34 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
882
883
|
/droid.+; (m[1-5] note) bui/i,
|
|
883
884
|
/\bmz-([-\w]{2,})/i
|
|
884
885
|
],
|
|
885
|
-
[c, [u, "Meizu"], [s,
|
|
886
|
+
[c, [u, "Meizu"], [s, S]],
|
|
886
887
|
[
|
|
887
888
|
// Ulefone
|
|
888
889
|
/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i
|
|
889
890
|
],
|
|
890
|
-
[c, [u, "Ulefone"], [s,
|
|
891
|
+
[c, [u, "Ulefone"], [s, S]],
|
|
891
892
|
[
|
|
892
893
|
// Energizer
|
|
893
894
|
/; (energy ?\w+)(?: bui|\))/i,
|
|
894
895
|
/; energizer ([\w ]+)(?: bui|\))/i
|
|
895
896
|
],
|
|
896
|
-
[c, [u, "Energizer"], [s,
|
|
897
|
+
[c, [u, "Energizer"], [s, S]],
|
|
897
898
|
[
|
|
898
899
|
// Cat
|
|
899
900
|
/; cat (b35);/i,
|
|
900
901
|
/; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i
|
|
901
902
|
],
|
|
902
|
-
[c, [u, "Cat"], [s,
|
|
903
|
+
[c, [u, "Cat"], [s, S]],
|
|
903
904
|
[
|
|
904
905
|
// Smartfren
|
|
905
906
|
/((?:new )?andromax[\w- ]+)(?: bui|\))/i
|
|
906
907
|
],
|
|
907
|
-
[c, [u, "Smartfren"], [s,
|
|
908
|
+
[c, [u, "Smartfren"], [s, S]],
|
|
908
909
|
[
|
|
909
910
|
// Nothing
|
|
910
911
|
/droid.+; (a(in)?(0(15|59|6[35])|142)p?)/i
|
|
911
912
|
],
|
|
912
|
-
[c, [u, "Nothing"], [s,
|
|
913
|
+
[c, [u, "Nothing"], [s, S]],
|
|
913
914
|
[
|
|
914
915
|
// Archos
|
|
915
916
|
/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i,
|
|
@@ -920,12 +921,12 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
920
921
|
/archos ([\w ]+)( b|\))/i,
|
|
921
922
|
/; (ac[3-6]\d\w{2,8})( b|\))/i
|
|
922
923
|
],
|
|
923
|
-
[c, [u, "Archos"], [s,
|
|
924
|
+
[c, [u, "Archos"], [s, S]],
|
|
924
925
|
[
|
|
925
926
|
// HMD
|
|
926
927
|
/; (n159v)/i
|
|
927
928
|
],
|
|
928
|
-
[c, [u, "HMD"], [s,
|
|
929
|
+
[c, [u, "HMD"], [s, S]],
|
|
929
930
|
[
|
|
930
931
|
// MIXED
|
|
931
932
|
/(imo) (tab \w+)/i,
|
|
@@ -950,7 +951,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
950
951
|
/droid[^;]+; (philips)[_ ]([sv-x][\d]{3,4}[xz]?)/i
|
|
951
952
|
// Philips
|
|
952
953
|
],
|
|
953
|
-
[u, c, [s,
|
|
954
|
+
[u, c, [s, S]],
|
|
954
955
|
[
|
|
955
956
|
/(kobo)\s(ereader|touch)/i,
|
|
956
957
|
// Kobo
|
|
@@ -964,36 +965,36 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
964
965
|
/(surface duo)/i
|
|
965
966
|
// Surface Duo
|
|
966
967
|
],
|
|
967
|
-
[c, [u,
|
|
968
|
+
[c, [u, Ve], [s, k]],
|
|
968
969
|
[
|
|
969
970
|
/droid [\d\.]+; (fp\du?)(?: b|\))/i
|
|
970
971
|
// Fairphone
|
|
971
972
|
],
|
|
972
|
-
[c, [u, "Fairphone"], [s,
|
|
973
|
+
[c, [u, "Fairphone"], [s, S]],
|
|
973
974
|
[
|
|
974
975
|
/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i
|
|
975
976
|
// Nvidia Tablets
|
|
976
977
|
],
|
|
977
|
-
[c, [u,
|
|
978
|
+
[c, [u, bt], [s, k]],
|
|
978
979
|
[
|
|
979
980
|
/(sprint) (\w+)/i
|
|
980
981
|
// Sprint Phones
|
|
981
982
|
],
|
|
982
|
-
[u, c, [s,
|
|
983
|
+
[u, c, [s, S]],
|
|
983
984
|
[
|
|
984
985
|
/(kin\.[onetw]{3})/i
|
|
985
986
|
// Microsoft Kin
|
|
986
987
|
],
|
|
987
|
-
[[c, /\./g, " "], [u,
|
|
988
|
+
[[c, /\./g, " "], [u, Ve], [s, S]],
|
|
988
989
|
[
|
|
989
990
|
/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i
|
|
990
991
|
// Zebra
|
|
991
992
|
],
|
|
992
|
-
[c, [u,
|
|
993
|
+
[c, [u, Ke], [s, k]],
|
|
993
994
|
[
|
|
994
995
|
/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
|
|
995
996
|
],
|
|
996
|
-
[c, [u,
|
|
997
|
+
[c, [u, Ke], [s, S]],
|
|
997
998
|
[
|
|
998
999
|
///////////////////
|
|
999
1000
|
// SMARTTVS
|
|
@@ -1028,7 +1029,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1028
1029
|
/crkey.*devicetype\/chromecast/i
|
|
1029
1030
|
// Google Chromecast Third Generation
|
|
1030
1031
|
],
|
|
1031
|
-
[[c,
|
|
1032
|
+
[[c, K + " Third Generation"], [u, Z], [s, C]],
|
|
1032
1033
|
[
|
|
1033
1034
|
/crkey.*devicetype\/([^/]*)/i
|
|
1034
1035
|
// Google Chromecast with specific device type
|
|
@@ -1038,17 +1039,17 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1038
1039
|
/fuchsia.*crkey/i
|
|
1039
1040
|
// Google Chromecast Nest Hub
|
|
1040
1041
|
],
|
|
1041
|
-
[[c,
|
|
1042
|
+
[[c, K + " Nest Hub"], [u, Z], [s, C]],
|
|
1042
1043
|
[
|
|
1043
1044
|
/crkey/i
|
|
1044
1045
|
// Google Chromecast, Linux-based or unknown
|
|
1045
1046
|
],
|
|
1046
|
-
[[c,
|
|
1047
|
+
[[c, K], [u, Z], [s, C]],
|
|
1047
1048
|
[
|
|
1048
1049
|
/(portaltv)/i
|
|
1049
1050
|
// Facebook Portal TV
|
|
1050
1051
|
],
|
|
1051
|
-
[c, [u,
|
|
1052
|
+
[c, [u, We], [s, C]],
|
|
1052
1053
|
[
|
|
1053
1054
|
/droid.+aft(\w+)( bui|\))/i
|
|
1054
1055
|
// Fire TV
|
|
@@ -1058,13 +1059,13 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1058
1059
|
/(shield \w+ tv)/i
|
|
1059
1060
|
// Nvidia Shield TV
|
|
1060
1061
|
],
|
|
1061
|
-
[c, [u,
|
|
1062
|
+
[c, [u, bt], [s, C]],
|
|
1062
1063
|
[
|
|
1063
1064
|
/\(dtv[\);].+(aquos)/i,
|
|
1064
1065
|
/(aquos-tv[\w ]+)\)/i
|
|
1065
1066
|
// Sharp
|
|
1066
1067
|
],
|
|
1067
|
-
[c, [u,
|
|
1068
|
+
[c, [u, gt], [s, C]],
|
|
1068
1069
|
[
|
|
1069
1070
|
/(bravia[\w ]+)( bui|\))/i
|
|
1070
1071
|
// Sony
|
|
@@ -1074,7 +1075,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1074
1075
|
/(mi(tv|box)-?\w+) bui/i
|
|
1075
1076
|
// Xiaomi
|
|
1076
1077
|
],
|
|
1077
|
-
[c, [u,
|
|
1078
|
+
[c, [u, qe], [s, C]],
|
|
1078
1079
|
[
|
|
1079
1080
|
/Hbbtv.*(technisat) (.*);/i
|
|
1080
1081
|
// TechniSAT
|
|
@@ -1086,7 +1087,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1086
1087
|
/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i
|
|
1087
1088
|
// HbbTV devices
|
|
1088
1089
|
],
|
|
1089
|
-
[[u, /.+\/(\w+)/, "$1", U, { LG: "lge" }], [c,
|
|
1090
|
+
[[u, /.+\/(\w+)/, "$1", U, { LG: "lge" }], [c, De], [s, C]],
|
|
1090
1091
|
[
|
|
1091
1092
|
///////////////////
|
|
1092
1093
|
// CONSOLES
|
|
@@ -1099,7 +1100,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1099
1100
|
/\b(xbox(?: one)?(?!; xbox))[\); ]/i
|
|
1100
1101
|
// Microsoft Xbox
|
|
1101
1102
|
],
|
|
1102
|
-
[c, [u,
|
|
1103
|
+
[c, [u, Ve], [s, Ie]],
|
|
1103
1104
|
[
|
|
1104
1105
|
/(ouya)/i,
|
|
1105
1106
|
// Ouya
|
|
@@ -1131,7 +1132,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1131
1132
|
/(ow(?:19|20)?we?[1-3]{1,3})/i
|
|
1132
1133
|
// Oppo Watch
|
|
1133
1134
|
],
|
|
1134
|
-
[c, [u,
|
|
1135
|
+
[c, [u, Ye], [s, F]],
|
|
1135
1136
|
[
|
|
1136
1137
|
/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i
|
|
1137
1138
|
// Apple Watch
|
|
@@ -1141,7 +1142,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1141
1142
|
/(opwwe\d{3})/i
|
|
1142
1143
|
// OnePlus Watch
|
|
1143
1144
|
],
|
|
1144
|
-
[c, [u,
|
|
1145
|
+
[c, [u, wt], [s, F]],
|
|
1145
1146
|
[
|
|
1146
1147
|
/(moto 360)/i
|
|
1147
1148
|
// Motorola 360
|
|
@@ -1160,7 +1161,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1160
1161
|
[
|
|
1161
1162
|
/droid.+; (wt63?0{2,3})\)/i
|
|
1162
1163
|
],
|
|
1163
|
-
[c, [u,
|
|
1164
|
+
[c, [u, Ke], [s, F]],
|
|
1164
1165
|
[
|
|
1165
1166
|
///////////////////
|
|
1166
1167
|
// XR
|
|
@@ -1178,7 +1179,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1178
1179
|
/(quest( \d| pro)?s?).+vr/i
|
|
1179
1180
|
// Meta Quest
|
|
1180
1181
|
],
|
|
1181
|
-
[c, [u,
|
|
1182
|
+
[c, [u, We], [s, ge]],
|
|
1182
1183
|
[
|
|
1183
1184
|
/mobile vr; rv.+firefox/i
|
|
1184
1185
|
// Unidentifiable VR device using Firefox Reality / Wolvic
|
|
@@ -1191,22 +1192,22 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1191
1192
|
/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i
|
|
1192
1193
|
// Tesla
|
|
1193
1194
|
],
|
|
1194
|
-
[u, [s,
|
|
1195
|
+
[u, [s, pe]],
|
|
1195
1196
|
[
|
|
1196
1197
|
/(aeobc)\b/i
|
|
1197
1198
|
// Echo Dot
|
|
1198
1199
|
],
|
|
1199
|
-
[c, [u, me], [s,
|
|
1200
|
+
[c, [u, me], [s, pe]],
|
|
1200
1201
|
[
|
|
1201
1202
|
/(homepod).+mac os/i
|
|
1202
1203
|
// Apple HomePod
|
|
1203
1204
|
],
|
|
1204
|
-
[c, [u, ie], [s,
|
|
1205
|
+
[c, [u, ie], [s, pe]],
|
|
1205
1206
|
[
|
|
1206
1207
|
/windows iot/i
|
|
1207
1208
|
// Unidentifiable embedded device using Windows IoT
|
|
1208
1209
|
],
|
|
1209
|
-
[[s,
|
|
1210
|
+
[[s, pe]],
|
|
1210
1211
|
[
|
|
1211
1212
|
////////////////////
|
|
1212
1213
|
// MIXED (GENERIC)
|
|
@@ -1232,7 +1233,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1232
1233
|
/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i
|
|
1233
1234
|
// Unidentifiable Mobile
|
|
1234
1235
|
],
|
|
1235
|
-
[[s,
|
|
1236
|
+
[[s, S]],
|
|
1236
1237
|
[
|
|
1237
1238
|
/droid .+?; ([\w\. -]+)( bui|\))/i
|
|
1238
1239
|
// Generic Android Device
|
|
@@ -1286,7 +1287,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1286
1287
|
/(windows nt) (6\.[23]); arm/i
|
|
1287
1288
|
// Windows RT
|
|
1288
1289
|
],
|
|
1289
|
-
[[d, /N/, "R"], [l, U,
|
|
1290
|
+
[[d, /N/, "R"], [l, U, St]],
|
|
1290
1291
|
[
|
|
1291
1292
|
/(windows (?:phone|mobile|iot))(?: os)?[\/ ]?([\d\.]*( se)?)/i,
|
|
1292
1293
|
// Windows IoT/Mobile/Phone
|
|
@@ -1298,7 +1299,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1298
1299
|
/windows nt ?([\d\.\)]*)(?!.+xbox)/i,
|
|
1299
1300
|
/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d\.;]*)/i
|
|
1300
1301
|
],
|
|
1301
|
-
[[l, /(;|\))/g, "", U,
|
|
1302
|
+
[[l, /(;|\))/g, "", U, St], [d, Qe]],
|
|
1302
1303
|
[
|
|
1303
1304
|
/(windows ce)\/?([\d\.]*)/i
|
|
1304
1305
|
// Windows CE
|
|
@@ -1324,27 +1325,27 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1324
1325
|
/android ([\d\.]+).*crkey/i
|
|
1325
1326
|
// Google Chromecast, Android-based
|
|
1326
1327
|
],
|
|
1327
|
-
[l, [d,
|
|
1328
|
+
[l, [d, K + " Android"]],
|
|
1328
1329
|
[
|
|
1329
1330
|
/fuchsia.*crkey\/([\d\.]+)/i
|
|
1330
1331
|
// Google Chromecast, Fuchsia-based
|
|
1331
1332
|
],
|
|
1332
|
-
[l, [d,
|
|
1333
|
+
[l, [d, K + " Fuchsia"]],
|
|
1333
1334
|
[
|
|
1334
1335
|
/crkey\/([\d\.]+).*devicetype\/smartspeaker/i
|
|
1335
1336
|
// Google Chromecast, Linux-based Smart Speaker
|
|
1336
1337
|
],
|
|
1337
|
-
[l, [d,
|
|
1338
|
+
[l, [d, K + " SmartSpeaker"]],
|
|
1338
1339
|
[
|
|
1339
1340
|
/linux.*crkey\/([\d\.]+)/i
|
|
1340
1341
|
// Google Chromecast, Legacy Linux-based
|
|
1341
1342
|
],
|
|
1342
|
-
[l, [d,
|
|
1343
|
+
[l, [d, K + " Linux"]],
|
|
1343
1344
|
[
|
|
1344
1345
|
/crkey\/([\d\.]+)/i
|
|
1345
1346
|
// Google Chromecast, unknown
|
|
1346
1347
|
],
|
|
1347
|
-
[l, [d,
|
|
1348
|
+
[l, [d, K]],
|
|
1348
1349
|
[
|
|
1349
1350
|
// Mobile OSes
|
|
1350
1351
|
/droid ([\w\.]+)\b.+(android[- ]x86)/i
|
|
@@ -1367,7 +1368,7 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1367
1368
|
/\(bb(10);/i
|
|
1368
1369
|
// BlackBerry 10
|
|
1369
1370
|
],
|
|
1370
|
-
[l, [d,
|
|
1371
|
+
[l, [d, ft]],
|
|
1371
1372
|
[
|
|
1372
1373
|
/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i
|
|
1373
1374
|
// Symbian
|
|
@@ -1456,58 +1457,58 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1456
1457
|
]
|
|
1457
1458
|
}, ve = (function() {
|
|
1458
1459
|
var x = { init: {}, isIgnore: {}, isIgnoreRgx: {}, toString: {} };
|
|
1459
|
-
return
|
|
1460
|
-
[P, [d, l,
|
|
1461
|
-
[
|
|
1462
|
-
[
|
|
1463
|
-
[
|
|
1460
|
+
return z.call(x.init, [
|
|
1461
|
+
[P, [d, l, he, s]],
|
|
1462
|
+
[Y, [M]],
|
|
1463
|
+
[H, [s, c, u]],
|
|
1464
|
+
[L, [d, l]],
|
|
1464
1465
|
[N, [d, l]]
|
|
1465
|
-
]),
|
|
1466
|
-
[P, [l,
|
|
1467
|
-
[
|
|
1466
|
+
]), z.call(x.isIgnore, [
|
|
1467
|
+
[P, [l, he]],
|
|
1468
|
+
[L, [l]],
|
|
1468
1469
|
[N, [l]]
|
|
1469
|
-
]),
|
|
1470
|
+
]), z.call(x.isIgnoreRgx, [
|
|
1470
1471
|
[P, / ?browser$/i],
|
|
1471
1472
|
[N, / ?os$/i]
|
|
1472
|
-
]),
|
|
1473
|
+
]), z.call(x.toString, [
|
|
1473
1474
|
[P, [d, l]],
|
|
1474
|
-
[
|
|
1475
|
-
[
|
|
1476
|
-
[
|
|
1475
|
+
[Y, [M]],
|
|
1476
|
+
[H, [u, c]],
|
|
1477
|
+
[L, [d, l]],
|
|
1477
1478
|
[N, [d, l]]
|
|
1478
1479
|
]), x;
|
|
1479
|
-
})(),
|
|
1480
|
-
var e = ve.init[t], i = ve.isIgnore[t] || 0,
|
|
1480
|
+
})(), f0 = function(x, t) {
|
|
1481
|
+
var e = ve.init[t], i = ve.isIgnore[t] || 0, n = ve.isIgnoreRgx[t] || 0, r = ve.toString[t] || 0;
|
|
1481
1482
|
function o() {
|
|
1482
|
-
|
|
1483
|
+
z.call(this, e);
|
|
1483
1484
|
}
|
|
1484
1485
|
return o.prototype.getItem = function() {
|
|
1485
1486
|
return x;
|
|
1486
1487
|
}, o.prototype.withClientHints = function() {
|
|
1487
|
-
return $ ? $.getHighEntropyValues(
|
|
1488
|
-
return x.setCH(new
|
|
1488
|
+
return $ ? $.getHighEntropyValues(Lt).then(function(p) {
|
|
1489
|
+
return x.setCH(new Bt(p, !1)).parseCH().get();
|
|
1489
1490
|
}) : x.parseCH().get();
|
|
1490
1491
|
}, o.prototype.withFeatureCheck = function() {
|
|
1491
1492
|
return x.detectFeature().get();
|
|
1492
1493
|
}, t != oe && (o.prototype.is = function(p) {
|
|
1493
|
-
var
|
|
1494
|
+
var f = !1;
|
|
1494
1495
|
for (var v in this)
|
|
1495
|
-
if (this.hasOwnProperty(v) && !$e(i, v) &&
|
|
1496
|
-
if (
|
|
1497
|
-
} else if (p == E.UNDEFINED &&
|
|
1498
|
-
|
|
1496
|
+
if (this.hasOwnProperty(v) && !$e(i, v) && W(n ? ce(n, this[v]) : this[v]) == W(n ? ce(n, p) : p)) {
|
|
1497
|
+
if (f = !0, p != E.UNDEFINED) break;
|
|
1498
|
+
} else if (p == E.UNDEFINED && f) {
|
|
1499
|
+
f = !f;
|
|
1499
1500
|
break;
|
|
1500
1501
|
}
|
|
1501
|
-
return
|
|
1502
|
+
return f;
|
|
1502
1503
|
}, o.prototype.toString = function() {
|
|
1503
1504
|
var p = re;
|
|
1504
|
-
for (var
|
|
1505
|
-
typeof this[r[
|
|
1505
|
+
for (var f in r)
|
|
1506
|
+
typeof this[r[f]] !== E.UNDEFINED && (p += (p ? " " : re) + this[r[f]]);
|
|
1506
1507
|
return p || E.UNDEFINED;
|
|
1507
1508
|
}), o.prototype.then = function(p) {
|
|
1508
|
-
var
|
|
1509
|
-
for (var T in
|
|
1510
|
-
|
|
1509
|
+
var f = this, v = function() {
|
|
1510
|
+
for (var T in f)
|
|
1511
|
+
f.hasOwnProperty(T) && (this[T] = f[T]);
|
|
1511
1512
|
};
|
|
1512
1513
|
v.prototype = {
|
|
1513
1514
|
is: o.prototype.is,
|
|
@@ -1515,53 +1516,53 @@ var $0 = "2.0.9", et = 500, c0 = "user-agent", re = "", d0 = "?", E = {
|
|
|
1515
1516
|
withClientHints: o.prototype.withClientHints,
|
|
1516
1517
|
withFeatureCheck: o.prototype.withFeatureCheck
|
|
1517
1518
|
};
|
|
1518
|
-
var
|
|
1519
|
-
return p(
|
|
1519
|
+
var I = new v();
|
|
1520
|
+
return p(I), I;
|
|
1520
1521
|
}, new o();
|
|
1521
1522
|
};
|
|
1522
|
-
function
|
|
1523
|
-
if (x = x || {},
|
|
1524
|
-
|
|
1525
|
-
[
|
|
1526
|
-
[
|
|
1527
|
-
[
|
|
1528
|
-
[c,
|
|
1529
|
-
[se,
|
|
1530
|
-
[
|
|
1531
|
-
[M,
|
|
1532
|
-
[Q,
|
|
1533
|
-
[Le,
|
|
1523
|
+
function Bt(x, t) {
|
|
1524
|
+
if (x = x || {}, z.call(this, Lt), t)
|
|
1525
|
+
z.call(this, [
|
|
1526
|
+
[it, je(x[J])],
|
|
1527
|
+
[xt, je(x[x0])],
|
|
1528
|
+
[S, /\?1/.test(x[o0])],
|
|
1529
|
+
[c, fe(x[s0])],
|
|
1530
|
+
[se, fe(x[Ut])],
|
|
1531
|
+
[at, fe(x[c0])],
|
|
1532
|
+
[M, fe(x[a0])],
|
|
1533
|
+
[Q, je(x[r0])],
|
|
1534
|
+
[Le, fe(x[n0])]
|
|
1534
1535
|
]);
|
|
1535
1536
|
else
|
|
1536
1537
|
for (var e in x)
|
|
1537
1538
|
this.hasOwnProperty(e) && typeof x[e] !== E.UNDEFINED && (this[e] = x[e]);
|
|
1538
1539
|
}
|
|
1539
|
-
function
|
|
1540
|
-
return
|
|
1540
|
+
function j(x, t, e, i) {
|
|
1541
|
+
return z.call(this, [
|
|
1541
1542
|
["itemType", x],
|
|
1542
1543
|
["ua", t],
|
|
1543
1544
|
["uaCH", i],
|
|
1544
1545
|
["rgxMap", e],
|
|
1545
|
-
["data",
|
|
1546
|
+
["data", f0(this, x)]
|
|
1546
1547
|
]), this;
|
|
1547
1548
|
}
|
|
1548
|
-
|
|
1549
|
+
j.prototype.get = function(x) {
|
|
1549
1550
|
return x ? this.data.hasOwnProperty(x) ? this.data[x] : void 0 : this.data;
|
|
1550
1551
|
};
|
|
1551
|
-
|
|
1552
|
+
j.prototype.set = function(x, t) {
|
|
1552
1553
|
return this.data[x] = t, this;
|
|
1553
1554
|
};
|
|
1554
|
-
|
|
1555
|
+
j.prototype.setCH = function(x) {
|
|
1555
1556
|
return this.uaCH = x, this;
|
|
1556
1557
|
};
|
|
1557
|
-
|
|
1558
|
+
j.prototype.detectFeature = function() {
|
|
1558
1559
|
if (O && O.userAgent == this.ua)
|
|
1559
1560
|
switch (this.itemType) {
|
|
1560
1561
|
case P:
|
|
1561
1562
|
O.brave && typeof O.brave.isBrave == E.FUNCTION && this.set(d, "Brave");
|
|
1562
1563
|
break;
|
|
1563
|
-
case
|
|
1564
|
-
!this.get(s) && $ && $[
|
|
1564
|
+
case H:
|
|
1565
|
+
!this.get(s) && $ && $[S] && this.set(s, S), this.get(c) == "Macintosh" && O && typeof O.standalone !== E.UNDEFINED && O.maxTouchPoints && O.maxTouchPoints > 2 && this.set(c, "iPad").set(s, k);
|
|
1565
1566
|
break;
|
|
1566
1567
|
case N:
|
|
1567
1568
|
!this.get(d) && $ && $[se] && this.set(d, $[se]);
|
|
@@ -1570,14 +1571,14 @@ q.prototype.detectFeature = function() {
|
|
|
1570
1571
|
var x = this.data, t = function(e) {
|
|
1571
1572
|
return x[e].getItem().detectFeature().get();
|
|
1572
1573
|
};
|
|
1573
|
-
this.set(P, t(P)).set(
|
|
1574
|
+
this.set(P, t(P)).set(Y, t(Y)).set(H, t(H)).set(L, t(L)).set(N, t(N));
|
|
1574
1575
|
}
|
|
1575
1576
|
return this;
|
|
1576
1577
|
};
|
|
1577
|
-
|
|
1578
|
-
switch (this.itemType != oe &&
|
|
1578
|
+
j.prototype.parseUA = function() {
|
|
1579
|
+
switch (this.itemType != oe && tt.call(this.data, this.ua, this.rgxMap), this.itemType) {
|
|
1579
1580
|
case P:
|
|
1580
|
-
this.set(
|
|
1581
|
+
this.set(he, et(this.get(l)));
|
|
1581
1582
|
break;
|
|
1582
1583
|
case N:
|
|
1583
1584
|
if (this.get(d) == "iOS" && this.get(l) == "18.6") {
|
|
@@ -1588,775 +1589,799 @@ q.prototype.parseUA = function() {
|
|
|
1588
1589
|
}
|
|
1589
1590
|
return this;
|
|
1590
1591
|
};
|
|
1591
|
-
|
|
1592
|
+
j.prototype.parseCH = function() {
|
|
1592
1593
|
var x = this.uaCH, t = this.rgxMap;
|
|
1593
1594
|
switch (this.itemType) {
|
|
1594
1595
|
case P:
|
|
1595
|
-
case
|
|
1596
|
-
var e = x[
|
|
1596
|
+
case L:
|
|
1597
|
+
var e = x[xt] || x[it], i;
|
|
1597
1598
|
if (e)
|
|
1598
|
-
for (var
|
|
1599
|
-
var r = e[
|
|
1600
|
-
this.itemType == P && !/not.a.brand/i.test(r) && (!i || /Chrom/.test(i) && r !=
|
|
1599
|
+
for (var n = 0; n < e.length; n++) {
|
|
1600
|
+
var r = e[n].brand || e[n], o = e[n].version;
|
|
1601
|
+
this.itemType == P && !/not.a.brand/i.test(r) && (!i || /Chrom/.test(i) && r != yt || i == ke && /WebView2/.test(r)) && (r = U(r, u0), i = this.get(d), i && !/Chrom/.test(i) && /Chrom/.test(r) || this.set(d, r).set(l, o).set(he, et(o)), i = r), this.itemType == L && r == yt && this.set(l, o);
|
|
1601
1602
|
}
|
|
1602
1603
|
break;
|
|
1603
|
-
case
|
|
1604
|
+
case Y:
|
|
1604
1605
|
var p = x[M];
|
|
1605
|
-
p && (p && x[Le] == "64" && (p += "64"),
|
|
1606
|
+
p && (p && x[Le] == "64" && (p += "64"), tt.call(this.data, p + ";", t));
|
|
1606
1607
|
break;
|
|
1607
|
-
case
|
|
1608
|
-
if (x[
|
|
1609
|
-
var
|
|
1610
|
-
|
|
1608
|
+
case H:
|
|
1609
|
+
if (x[S] && this.set(s, S), x[c] && (this.set(c, x[c]), !this.get(s) || !this.get(u))) {
|
|
1610
|
+
var f = {};
|
|
1611
|
+
tt.call(f, "droid 9; " + x[c] + ")", t), !this.get(s) && f.type && this.set(s, f.type), !this.get(u) && f.vendor && this.set(u, f.vendor);
|
|
1611
1612
|
}
|
|
1612
1613
|
if (x[Q]) {
|
|
1613
1614
|
var v;
|
|
1614
1615
|
if (typeof x[Q] != "string")
|
|
1615
|
-
for (var
|
|
1616
|
-
v = U(x[Q][
|
|
1616
|
+
for (var I = 0; !v && I < x[Q].length; )
|
|
1617
|
+
v = U(x[Q][I++], It);
|
|
1617
1618
|
else
|
|
1618
|
-
v = U(x[Q],
|
|
1619
|
+
v = U(x[Q], It);
|
|
1619
1620
|
this.set(s, v);
|
|
1620
1621
|
}
|
|
1621
1622
|
break;
|
|
1622
1623
|
case N:
|
|
1623
1624
|
var T = x[se];
|
|
1624
1625
|
if (T) {
|
|
1625
|
-
var R = x[
|
|
1626
|
-
T == Qe && (R = parseInt(
|
|
1626
|
+
var R = x[at];
|
|
1627
|
+
T == Qe && (R = parseInt(et(R), 10) >= 13 ? "11" : "10"), this.set(d, T).set(l, R);
|
|
1627
1628
|
}
|
|
1628
1629
|
this.get(d) == Qe && x[c] == "Xbox" && this.set(d, "Xbox").set(l, void 0);
|
|
1629
1630
|
break;
|
|
1630
1631
|
case oe:
|
|
1631
|
-
var X = this.data,
|
|
1632
|
+
var X = this.data, G = function(V) {
|
|
1632
1633
|
return X[V].getItem().setCH(x).parseCH().get();
|
|
1633
1634
|
};
|
|
1634
|
-
this.set(P,
|
|
1635
|
+
this.set(P, G(P)).set(Y, G(Y)).set(H, G(H)).set(L, G(L)).set(N, G(N));
|
|
1635
1636
|
}
|
|
1636
1637
|
return this;
|
|
1637
1638
|
};
|
|
1638
|
-
function
|
|
1639
|
-
if (typeof x === E.OBJECT ? (
|
|
1639
|
+
function q(x, t, e) {
|
|
1640
|
+
if (typeof x === E.OBJECT ? (Ae(x, !0) ? (typeof t === E.OBJECT && (e = t), t = x) : (e = x, t = void 0), x = void 0) : typeof x === E.STRING && !Ae(t, !0) && (e = t, t = void 0), e)
|
|
1640
1641
|
if (typeof e.append === E.FUNCTION) {
|
|
1641
1642
|
var i = {};
|
|
1642
|
-
e.forEach(function(
|
|
1643
|
-
i[String(T).toLowerCase()] =
|
|
1643
|
+
e.forEach(function(I, T) {
|
|
1644
|
+
i[String(T).toLowerCase()] = I;
|
|
1644
1645
|
}), e = i;
|
|
1645
1646
|
} else {
|
|
1646
|
-
var
|
|
1647
|
+
var n = {};
|
|
1647
1648
|
for (var r in e)
|
|
1648
|
-
e.hasOwnProperty(r) && (
|
|
1649
|
-
e =
|
|
1649
|
+
e.hasOwnProperty(r) && (n[String(r).toLowerCase()] = e[r]);
|
|
1650
|
+
e = n;
|
|
1650
1651
|
}
|
|
1651
|
-
if (!(this instanceof
|
|
1652
|
-
return new
|
|
1652
|
+
if (!(this instanceof q))
|
|
1653
|
+
return new q(x, t, e).getResult();
|
|
1653
1654
|
var o = typeof x === E.STRING ? x : (
|
|
1654
1655
|
// Passed user-agent string
|
|
1655
|
-
e && e[
|
|
1656
|
+
e && e[dt] ? e[dt] : (
|
|
1656
1657
|
// User-Agent from passed headers
|
|
1657
1658
|
O && O.userAgent ? O.userAgent : (
|
|
1658
1659
|
// navigator.userAgent
|
|
1659
1660
|
re
|
|
1660
1661
|
)
|
|
1661
1662
|
)
|
|
1662
|
-
), p = new
|
|
1663
|
-
return
|
|
1664
|
-
return new
|
|
1663
|
+
), p = new Bt(e, !0), f = t ? l0(kt, t) : kt, v = function(I) {
|
|
1664
|
+
return I == oe ? function() {
|
|
1665
|
+
return new j(I, o, f, p).set("ua", o).set(P, this.getBrowser()).set(Y, this.getCPU()).set(H, this.getDevice()).set(L, this.getEngine()).set(N, this.getOS()).get();
|
|
1665
1666
|
} : function() {
|
|
1666
|
-
return new
|
|
1667
|
+
return new j(I, o, f[I], p).parseUA().get();
|
|
1667
1668
|
};
|
|
1668
1669
|
};
|
|
1669
|
-
return
|
|
1670
|
+
return z.call(this, [
|
|
1670
1671
|
["getBrowser", v(P)],
|
|
1671
|
-
["getCPU", v(
|
|
1672
|
-
["getDevice", v(
|
|
1673
|
-
["getEngine", v(
|
|
1672
|
+
["getCPU", v(Y)],
|
|
1673
|
+
["getDevice", v(H)],
|
|
1674
|
+
["getEngine", v(L)],
|
|
1674
1675
|
["getOS", v(N)],
|
|
1675
1676
|
["getResult", v(oe)],
|
|
1676
1677
|
["getUA", function() {
|
|
1677
1678
|
return o;
|
|
1678
1679
|
}],
|
|
1679
|
-
["setUA", function(
|
|
1680
|
-
return
|
|
1680
|
+
["setUA", function(I) {
|
|
1681
|
+
return be(I) && (o = De(I, t0)), this;
|
|
1681
1682
|
}]
|
|
1682
1683
|
]).setUA(o), this;
|
|
1683
1684
|
}
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
const
|
|
1685
|
+
q.VERSION = e0;
|
|
1686
|
+
q.BROWSER = Be([d, l, he, s]);
|
|
1687
|
+
q.CPU = Be([M]);
|
|
1688
|
+
q.DEVICE = Be([c, u, s, Ie, S, C, k, F, pe]);
|
|
1689
|
+
q.ENGINE = q.OS = Be([d, l]);
|
|
1690
|
+
const _t = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1690
1691
|
__proto__: null,
|
|
1691
|
-
UAParser:
|
|
1692
|
+
UAParser: q
|
|
1692
1693
|
}, Symbol.toStringTag, { value: "Module" })), D = [];
|
|
1693
1694
|
for (let x = 0; x < 256; ++x)
|
|
1694
1695
|
D.push((x + 256).toString(16).slice(1));
|
|
1695
|
-
function
|
|
1696
|
+
function p0(x, t = 0) {
|
|
1696
1697
|
return (D[x[t + 0]] + D[x[t + 1]] + D[x[t + 2]] + D[x[t + 3]] + "-" + D[x[t + 4]] + D[x[t + 5]] + "-" + D[x[t + 6]] + D[x[t + 7]] + "-" + D[x[t + 8]] + D[x[t + 9]] + "-" + D[x[t + 10]] + D[x[t + 11]] + D[x[t + 12]] + D[x[t + 13]] + D[x[t + 14]] + D[x[t + 15]]).toLowerCase();
|
|
1697
1698
|
}
|
|
1698
|
-
let
|
|
1699
|
-
const
|
|
1700
|
-
function
|
|
1701
|
-
if (!
|
|
1699
|
+
let Je;
|
|
1700
|
+
const h0 = new Uint8Array(16);
|
|
1701
|
+
function b0() {
|
|
1702
|
+
if (!Je) {
|
|
1702
1703
|
if (typeof crypto > "u" || !crypto.getRandomValues)
|
|
1703
1704
|
throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
|
|
1704
|
-
|
|
1705
|
+
Je = crypto.getRandomValues.bind(crypto);
|
|
1705
1706
|
}
|
|
1706
|
-
return
|
|
1707
|
+
return Je(h0);
|
|
1707
1708
|
}
|
|
1708
|
-
const
|
|
1709
|
-
function
|
|
1709
|
+
const w0 = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), Et = { randomUUID: w0 };
|
|
1710
|
+
function g0(x, t, e) {
|
|
1710
1711
|
x = x || {};
|
|
1711
|
-
const i = x.random ?? x.rng?.() ??
|
|
1712
|
+
const i = x.random ?? x.rng?.() ?? b0();
|
|
1712
1713
|
if (i.length < 16)
|
|
1713
1714
|
throw new Error("Random bytes length must be >= 16");
|
|
1714
|
-
return i[6] = i[6] & 15 | 64, i[8] = i[8] & 63 | 128,
|
|
1715
|
+
return i[6] = i[6] & 15 | 64, i[8] = i[8] & 63 | 128, p0(i);
|
|
1715
1716
|
}
|
|
1716
|
-
function
|
|
1717
|
-
return
|
|
1717
|
+
function Ft(x, t, e) {
|
|
1718
|
+
return Et.randomUUID && !x ? Et.randomUUID() : g0(x);
|
|
1718
1719
|
}
|
|
1719
|
-
function
|
|
1720
|
-
|
|
1720
|
+
function Me() {
|
|
1721
|
+
const x = ["Iceland", "Monaco", "Montserrat", "Gibraltar", "Ukraine", "Singapore", "Poland", "1273934HuBKwz", "Tajikistan", "Antigua and Barbuda", "Cambodia", "Ecuador", "Sierra Leone", "Pitcairn", "Botswana", "Canada", "Gambia", "Tokelau", "Guadeloupe", "New Caledonia", "British Indian Ocean Territory", "Timor-Leste", "Suriname", "Switzerland", "Iraq", "271075MuXgne", "Korea (Democratic People's Republic of)", "Qatar", "Thailand", "Faroe Islands", "Venezuela (Bolivarian Republic of)", "Mozambique", "Jordan", "Liechtenstein", "Antarctica", "Heard Island and McDonald Islands", "Comoros", "Ethiopia", "Guatemala", "Solomon Islands", "Spain", "Nigeria", "Togo", "Greenland", "Tanzania, United Republic of", "Benin", "United States of America", "Cabo Verde", "Curaçao", "New Zealand", "Iran (Islamic Republic of)", "Aruba", "French Polynesia", "Falkland Islands (Malvinas)", "Serbia", "Bangladesh", "Belarus", "Morocco", "Barbados", "Sri Lanka", "Uzbekistan", "Svalbard and Jan Mayen", "Israel", "Kenya", "Belgium", "Macedonia (the former Yugoslav Republic of)", "Cyprus", "Mongolia", "United Arab Emirates", "South Africa", "France", "Bosnia and Herzegovina", "Dominican Republic", "Colombia", "Anguilla", "San Marino", "Czech Republic", "Egypt", "Fiji", "Lebanon", "Seychelles", "Trinidad and Tobago", "Chad", "784167zZgLDv", "Netherlands", "Niue", "French Southern Territories", "Northern Mariana Islands", "Bouvet Island", "Niger", "French Guiana", "Central African Republic", "Lao People's Democratic Republic", "Papua New Guinea", "Albania", "Somalia", "Nauru", "Austria", "Norway", "Bahrain", "Bolivia (Plurinational State of)", "Turks and Caicos Islands", "Germany", "Mayotte", "Estonia", "Latvia", "Liberia", "Korea, Republic of", "Guernsey", "Georgia", "China", "Finland", "Romania", "Haiti", "Brunei Darussalam", "Moldova (Republic of)", "Tonga", "Honduras", "522ctlmiS", "Samoa", "Palau", "Taiwan", "Azerbaijan", "Ireland", "Guinea", "Christmas Island", "Sweden", "Mauritania", "Turkey", "Marshall Islands", "South Sudan", "Saint Barthélemy", "Isle of Man", "Saint Martin (French part)", "2536536dIKRXq", "2673200tlMuAP", "Kyrgyzstan", "Luxembourg", "Western Sahara", "Jersey", "Chile", "Cameroon", "Greece", "Saint Helena, Ascension and Tristan da Cunha", "Uruguay", "Sao Tome and Principe", "Guinea-Bissau", "Sint Maarten (Dutch part)", "Micronesia (Federated States of)", "Yemen", "Tuvalu", "Macao", "Gabon", "Armenia", "Turkmenistan", "Namibia", "Kiribati", "Maldives", "Argentina", "136PSqect", "Guyana", "United States Minor Outlying Islands", "Russian Federation", "Brazil", "3NDfhyV", "Lithuania", "Myanmar", "Portugal", "Puerto Rico", "Libya", "Malta", "Madagascar", "Bonaire, Sint Eustatius and Saba", "South Georgia and the South Sandwich Islands", "Congo (Democratic Republic of the)", "Cayman Islands", "Indonesia", "1918686puGVqd", "Croatia", "India", "Denmark", "Palestine, State of", "Slovakia", "Mauritius", "Italy", "Bhutan", "United Kingdom", "Peru", "228060lmmafb", "Bermuda", "Saint Pierre and Miquelon", "Swaziland", "Hungary", "Syrian Arab Republic", "Norfolk Island", "Vanuatu", "Ghana", "Dominica", "Burkina Faso", "Cook Islands", "Saint Vincent and the Grenadines", "Montenegro", "Costa Rica", "Wallis and Futuna", "Hong Kong", "Panama"];
|
|
1722
|
+
return Me = function() {
|
|
1723
|
+
return x;
|
|
1724
|
+
}, Me();
|
|
1721
1725
|
}
|
|
1722
|
-
const
|
|
1726
|
+
const a = Ht;
|
|
1723
1727
|
(function(x, t) {
|
|
1724
|
-
const e =
|
|
1728
|
+
const e = Ht, i = x();
|
|
1725
1729
|
for (; ; )
|
|
1726
1730
|
try {
|
|
1727
|
-
if (
|
|
1731
|
+
if (parseInt(e(317)) / 1 + -parseInt(e(447)) / 2 * (parseInt(e(398)) / 3) + -parseInt(e(368)) / 4 + parseInt(e(369)) / 5 + -parseInt(e(411)) / 6 + parseInt(e(465)) / 7 * (-parseInt(e(393)) / 8) + parseInt(e(352)) / 9 * (parseInt(e(422)) / 10) === t) break;
|
|
1728
1732
|
i.push(i.shift());
|
|
1729
1733
|
} catch {
|
|
1730
1734
|
i.push(i.shift());
|
|
1731
1735
|
}
|
|
1732
|
-
})(
|
|
1733
|
-
function
|
|
1734
|
-
|
|
1735
|
-
return Re = function() {
|
|
1736
|
-
return x;
|
|
1737
|
-
}, Re();
|
|
1736
|
+
})(Me, 392348);
|
|
1737
|
+
function Ht(x, t) {
|
|
1738
|
+
return x = x - 311, Me()[x];
|
|
1738
1739
|
}
|
|
1739
|
-
const
|
|
1740
|
+
const Gt = { AF: "Afghanistan", AX: "Åland Islands", AL: a(328), DZ: "Algeria", AS: "American Samoa", AD: "Andorra", AO: "Angola", AI: a(514), AQ: a(474), AG: a(449), AR: a(392), AM: a(387), AW: a(491), AU: "Australia", AT: a(331), AZ: a(356), BS: "Bahamas", BH: a(333), BD: a(495), BB: a(498), BY: a(496), BE: a(504), BZ: "Belize", BJ: a(485), BM: a(423), BT: a(419), BO: a(334), BQ: a(406), BA: a(511), BW: a(454), BV: a(322), BR: a(397), IO: a(460), BN: a(348), BG: "Bulgaria", BF: a(432), BI: "Burundi", CV: a(487), KH: a(450), CM: a(375), CA: a(455), KY: a(409), CF: a(325), TD: a(316), CL: a(374), CN: a(344), CX: a(359), CC: "Cocos (Keeling) Islands", CO: a(513), KM: a(476), CG: "Congo", CD: a(408), CK: a(433), CR: a(436), CI: "Côte d'Ivoire", HR: a(412), CU: "Cuba", CW: a(488), CY: a(506), CZ: a(516), DK: a(414), DJ: "Djibouti", DM: a(431), DO: a(512), EC: a(451), EG: a(311), SV: "El Salvador", GQ: "Equatorial Guinea", ER: "Eritrea", EE: a(338), ET: a(477), FK: a(493), FO: a(469), FJ: a(312), FI: a(345), FR: a(510), GF: a(324), PF: a(492), TF: a(320), GA: a(386), GM: a(456), GE: a(343), DE: a(336), GH: a(430), GI: a(443), GR: a(376), GL: a(483), GD: "Grenada", GP: a(458), GU: "Guam", GT: a(478), GG: a(342), GN: a(358), GW: a(380), GY: a(394), HT: a(347), HM: a(475), VA: "Holy See", HN: a(351), HK: a(438), HU: a(426), IS: a(440), IN: a(413), ID: a(410), IR: a(490), IQ: a(464), IE: a(357), IM: a(366), IL: a(502), IT: a(418), JM: "Jamaica", JP: "Japan", JE: a(373), JO: a(472), KZ: "Kazakhstan", KE: a(503), KI: a(390), KP: a(466), KR: a(341), KW: "Kuwait", KG: a(370), LA: a(326), LV: a(339), LB: a(313), LS: "Lesotho", LR: a(340), LY: a(403), LI: a(473), LT: a(399), LU: a(371), MO: a(385), MK: a(505), MG: a(405), MW: "Malawi", MY: "Malaysia", MV: a(391), ML: "Mali", MT: a(404), MH: a(363), MQ: "Martinique", MR: a(361), MU: a(417), YT: a(337), MX: "Mexico", FM: a(382), MD: a(349), MC: a(441), MN: a(507), ME: a(435), MS: a(442), MA: a(497), MZ: a(471), MM: a(400), NA: a(389), NR: a(330), NP: "Nepal", NL: a(318), NC: a(459), NZ: a(489), NI: "Nicaragua", NE: a(323), NG: a(481), NU: a(319), NF: a(428), MP: a(321), NO: a(332), OM: "Oman", PK: "Pakistan", PW: a(354), PS: a(415), PA: a(439), PG: a(327), PY: "Paraguay", PE: a(421), PH: "Philippines", PN: a(453), PL: a(446), PT: a(401), PR: a(402), QA: a(467), RE: "Réunion", RO: a(346), RU: a(396), RW: "Rwanda", BL: a(365), SH: a(377), KN: "Saint Kitts and Nevis", LC: "Saint Lucia", MF: a(367), PM: a(424), VC: a(434), WS: a(353), SM: a(515), ST: a(379), SA: "Saudi Arabia", SN: "Senegal", RS: a(494), SC: a(314), SL: a(452), SG: a(445), SX: a(381), SK: a(416), SI: "Slovenia", SB: a(479), SO: a(329), ZA: a(509), GS: a(407), SS: a(364), ES: a(480), LK: a(499), SD: "Sudan", SR: a(462), SJ: a(501), SZ: a(425), SE: a(360), CH: a(463), SY: a(427), TW: a(355), TJ: a(448), TZ: a(484), TH: a(468), TL: a(461), TG: a(482), TK: a(457), TO: a(350), TT: a(315), TN: "Tunisia", TR: a(362), TM: a(388), TC: a(335), TV: a(384), UG: "Uganda", UA: a(444), AE: a(508), GB: a(420), US: a(486), UM: a(395), UY: a(378), UZ: a(500), VU: a(429), VE: a(470), VN: "Viet Nam", VG: "Virgin Islands (British)", VI: "Virgin Islands (U.S.)", WF: a(437), EH: a(372), YE: a(383), ZM: "Zambia", ZW: "Zimbabwe" }, _ = ot;
|
|
1740
1741
|
(function(x, t) {
|
|
1741
|
-
const e =
|
|
1742
|
+
const e = ot, i = x();
|
|
1742
1743
|
for (; ; )
|
|
1743
1744
|
try {
|
|
1744
|
-
if (
|
|
1745
|
+
if (parseInt(e(219)) / 1 * (parseInt(e(238)) / 2) + -parseInt(e(234)) / 3 * (parseInt(e(255)) / 4) + parseInt(e(225)) / 5 + -parseInt(e(214)) / 6 + -parseInt(e(229)) / 7 * (parseInt(e(230)) / 8) + parseInt(e(281)) / 9 + parseInt(e(250)) / 10 * (parseInt(e(266)) / 11) === t) break;
|
|
1745
1746
|
i.push(i.shift());
|
|
1746
1747
|
} catch {
|
|
1747
1748
|
i.push(i.shift());
|
|
1748
1749
|
}
|
|
1749
|
-
})(
|
|
1750
|
-
const
|
|
1751
|
-
let A = { video: {}, browser: {}, device: {}, connection: {}, screen: {}, player_version: _(
|
|
1752
|
-
const
|
|
1750
|
+
})(Re, 271727);
|
|
1751
|
+
const Fe = { gov: { prod: { log: "https://papi.vpe.gov-ntruss.com/player/maSync", report: _(261) }, beta: { log: _(198), report: _(254) } }, pub: { prod: { log: _(211), report: _(273) }, beta: { log: _(231), report: _(200) } } };
|
|
1752
|
+
let A = { video: {}, browser: {}, device: {}, connection: {}, screen: {}, player_version: _(279), extra: { sessionId: null, playerType: _(248) }, log_type: _(218), privacy: { cookie_enabled: !0 } }, B = { platform: _(260), stage: _(286), sync: !1, syncResult: {} };
|
|
1753
|
+
const m0 = (/* @__PURE__ */ new Date()).getTime(), Vt = (x) => x;
|
|
1753
1754
|
function Se() {
|
|
1754
|
-
return
|
|
1755
|
+
return Ft();
|
|
1755
1756
|
}
|
|
1756
|
-
function
|
|
1757
|
-
return
|
|
1757
|
+
function Tt() {
|
|
1758
|
+
return Ft();
|
|
1758
1759
|
}
|
|
1759
|
-
const
|
|
1760
|
-
const x = _, t = /* @__PURE__ */ new Date(), e = (o) => String(o)[x(
|
|
1761
|
-
return { logDate: i, logDateUnix:
|
|
1760
|
+
const zt = () => {
|
|
1761
|
+
const x = _, t = /* @__PURE__ */ new Date(), e = (o) => String(o)[x(228)](2, "0"), i = t.getFullYear() + "-" + e(t[x(213)]() + 1) + "-" + e(t[x(284)]()) + " " + e(t[x(271)]()) + ":" + e(t.getMinutes()) + ":" + e(t[x(267)]()), n = Math.floor(t[x(235)]() / 1e3), r = (/* @__PURE__ */ new Date())[x(235)]() - m0;
|
|
1762
|
+
return { logDate: i, logDateUnix: n, thisSec: r };
|
|
1762
1763
|
};
|
|
1763
|
-
function
|
|
1764
|
+
function y0(x) {
|
|
1764
1765
|
const t = _;
|
|
1765
|
-
return typeof x === t(
|
|
1766
|
+
return typeof x === t(203) && x !== null && !Array[t(227)](x);
|
|
1766
1767
|
}
|
|
1767
|
-
function
|
|
1768
|
+
function nt(x, t) {
|
|
1768
1769
|
Object.entries(t).forEach(([e, i]) => {
|
|
1769
|
-
const
|
|
1770
|
-
|
|
1770
|
+
const n = ot;
|
|
1771
|
+
y0(i) ? (!x[e] && (x[e] = {}), Object[n(239)](i)[n(263)](([r, o]) => {
|
|
1771
1772
|
o != null && (x[e][r] = o);
|
|
1772
1773
|
})) : i != null && (x[e] = i);
|
|
1773
1774
|
});
|
|
1774
1775
|
}
|
|
1775
|
-
function
|
|
1776
|
-
const x = ["timeupdate", "log_type", "vpeKey", "mp4", "MA config initialization failed:", "isp", "videoStartTime", "sync", "stringify", "getSeconds", "hls", "getMonth", "dash", "latest", "sendBeacon", "nation", "MA init report failed:", "15827cBzXoh", "UUID", "2673850BYdTmz", "1751244lyIZnu", "video", "https://log.beta-vpe.naverncp.com/stats", "Korea, Republic of", "padStart", "error", "POST", "3034278zbmDJE", "653697acwyvs", "------------------------------------------------", "actionType", "logDate", "MA vpe init", "vpePackageId", "platform", "type", "mpd", "actionDuration", "syncResult", "host", "created_at", "assign", "indexOf", "getHours", "seekedTime", "https://papi.vpe.gov-ntruss.com/player/maSync", "extra", "playerStartTime", "680vhkYOJ", "logDateUnix", "vpe", "VPE React Native", "934940BstXTb", "TID", "getMinutes", "getDate", "totalStartTime", "isArray", "log", "forEach", "object", "sessionId", "application/json", "m3u8", "https://papi.beta-vpe.naverncp.com/player/maSync", "pub", "push", "floor", "MA report failed:", "address", "country", "150172RuDoCv", "https://log.vpe.gov-ntruss.com/stats", "prod", "result", "1.0", "url", "entries", "getTime", "browser", "videoFormat", "parse", "report", "getFullYear", "stage", "geoLocation"];
|
|
1777
|
-
return Oe = function() {
|
|
1778
|
-
return x;
|
|
1779
|
-
}, Oe();
|
|
1780
|
-
}
|
|
1781
|
-
function yt(x) {
|
|
1776
|
+
function v0(x) {
|
|
1782
1777
|
const t = _;
|
|
1783
|
-
return x[t(
|
|
1784
|
-
}
|
|
1785
|
-
function r0(x, t) {
|
|
1786
|
-
return x = x - 365, Oe()[x];
|
|
1778
|
+
return x[t(201)](t(275)) > -1 ? t(265) : x[t(201)](t(285)) > -1 ? t(206) : t(195);
|
|
1787
1779
|
}
|
|
1788
|
-
function
|
|
1780
|
+
function S0(x) {
|
|
1789
1781
|
const t = _, e = [];
|
|
1790
|
-
return x?.r1 && e[t(
|
|
1782
|
+
return x?.r1 && e[t(246)](x.r1), x?.r2 && e[t(246)](x.r2), x?.r3 && e[t(246)](x.r3), e[t(197)](" ");
|
|
1791
1783
|
}
|
|
1792
|
-
function
|
|
1784
|
+
function rt(x) {
|
|
1793
1785
|
const t = _;
|
|
1794
|
-
|
|
1786
|
+
if (!x || typeof x !== t(203)) return;
|
|
1787
|
+
const e = String(x[t(212)] ?? "");
|
|
1788
|
+
if (!(e === "v2" || /^2(?:\.|$)/[t(280)](e))) return;
|
|
1789
|
+
(!x[t(202)] || typeof x[t(202)] !== t(203)) && (x[t(202)] = {});
|
|
1790
|
+
const n = x[t(208)] && typeof x[t(208)] === t(203) ? x[t(208)] : {}, r = (f) => f == null || f === "" || f === "0p";
|
|
1791
|
+
r(x[t(202)].quality) && (x[t(202)].quality = r(n[t(252)]) ? t(216) : n[t(252)]);
|
|
1792
|
+
const o = r(x[t(202)].type) ? r(n[t(278)]) ? r(n[t(242)]) ? t(276) : n.video_type : n[t(278)] : x[t(202)][t(278)], p = String(o)[t(207)]();
|
|
1793
|
+
x[t(202)][t(278)] = p === t(196) ? t(196) : t(276), r(x[t(202)][t(257)]) && !r(n[t(257)]) && (x[t(202)][t(257)] = n[t(257)]);
|
|
1794
|
+
}
|
|
1795
|
+
function Yt(x) {
|
|
1796
|
+
const t = _;
|
|
1797
|
+
x.actionDuration === t(240) && (x[t(249)] = 0), x.actionDuration === void 0 && (x[t(249)] = 0), [t(277), t(215), t(251), "seekedTime"][t(263)]((i) => {
|
|
1795
1798
|
x[i] === void 0 && (x[i] = 0);
|
|
1796
|
-
}), x.type === void 0 && A.video?.[t(
|
|
1799
|
+
}), x.type === void 0 && A.video?.[t(278)] && (x[t(278)] = A.video.type), x[t(257)] === void 0 && A.video?.[t(257)] && (x[t(257)] = A[t(202)].url, x[t(243)] = v0(x[t(257)]));
|
|
1797
1800
|
}
|
|
1798
|
-
function
|
|
1801
|
+
function qt(x) {
|
|
1799
1802
|
const t = _;
|
|
1800
|
-
return !!(x
|
|
1803
|
+
return !!(x[t(262)] && x[t(223)] && x.host);
|
|
1801
1804
|
}
|
|
1802
1805
|
function He(x) {
|
|
1803
1806
|
const t = _;
|
|
1804
1807
|
try {
|
|
1805
|
-
const e =
|
|
1806
|
-
e && (x
|
|
1808
|
+
const e = B[t(221)]?.geoLocation;
|
|
1809
|
+
e && (x.address = S0(e), x[t(270)] = e.net || "", x.ip = B[t(221)]?.ip || "", x.nation = e.country || "");
|
|
1807
1810
|
} catch {
|
|
1808
1811
|
}
|
|
1809
1812
|
}
|
|
1810
|
-
const
|
|
1813
|
+
const I0 = async (x) => {
|
|
1811
1814
|
const t = _;
|
|
1812
1815
|
if (!x) return;
|
|
1813
|
-
const { platform: e, stage: i } =
|
|
1816
|
+
const { platform: e, stage: i } = B, n = Fe[e][i].log;
|
|
1814
1817
|
try {
|
|
1815
|
-
const r = await fetch(
|
|
1816
|
-
|
|
1817
|
-
const { logDate: p, logDateUnix:
|
|
1818
|
-
return A
|
|
1818
|
+
const r = await fetch(n, { method: t(217), headers: { "Content-Type": t(222) }, body: JSON[t(232)]({ access_key: x }) }), o = await r.json();
|
|
1819
|
+
B.sync = o[t(220)]?.[t(247)] || !1, B.syncResult = o[t(220)] || {};
|
|
1820
|
+
const { logDate: p, logDateUnix: f } = zt();
|
|
1821
|
+
return A.extra.logDate = p, A.extra[t(209)] = f, B[t(221)]?.[t(204)] && He(A[t(208)]), o;
|
|
1819
1822
|
} catch (r) {
|
|
1820
|
-
return console
|
|
1823
|
+
return console.error("MA config initialization failed:", r), null;
|
|
1821
1824
|
}
|
|
1822
|
-
},
|
|
1823
|
-
const t = _, { platform: e, stage: i } =
|
|
1824
|
-
r[t(
|
|
1825
|
+
}, k0 = async (x) => {
|
|
1826
|
+
const t = _, { platform: e, stage: i } = B, n = Vt(Fe[e][i][t(226)]), r = { ...x };
|
|
1827
|
+
r[t(224)] = t(218), He(r[t(208)]), rt(r);
|
|
1825
1828
|
try {
|
|
1826
|
-
await fetch(
|
|
1829
|
+
await fetch(n, { method: t(217), headers: { "Content-Type": "application/json" }, body: JSON[t(232)](r) });
|
|
1827
1830
|
} catch (o) {
|
|
1828
|
-
console[t(
|
|
1831
|
+
console[t(269)]("MA init report failed:", o);
|
|
1829
1832
|
}
|
|
1830
|
-
}
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
+
};
|
|
1834
|
+
function ot(x, t) {
|
|
1835
|
+
return x = x - 195, Re()[x];
|
|
1836
|
+
}
|
|
1837
|
+
function Re() {
|
|
1838
|
+
const x = ["hls", "11sMXeZC", "getSeconds", "browser", "error", "isp", "getHours", "host", "https://log.vpe.naverncp.com/stats", "MA vpe init", "m3u8", "vod", "playerStartTime", "type", "latest", "test", "675783wamEHA", "nation", "timeupdate", "getDate", "mpd", "prod", "mp4", "live", "join", "https://papi.beta-vpe.gov-ntruss.com/player/maSync", "parse", "https://log.beta-vpe.naverncp.com/stats", "indexOf", "video", "object", "geoLocation", "MA report failed:", "dash", "toLowerCase", "extra", "logDateUnix", "Korea, Republic of", "https://papi.vpe.naverncp.com/player/maSync", "player_version", "getMonth", "2764494TZSYbv", "videoStartTime", "unknown", "POST", "vpe", "70853czAefr", "result", "syncResult", "application/json", "TID", "log_type", "2219735dCBgGY", "report", "isArray", "padStart", "38717uZXuoT", "328AJkDMk", "https://papi.beta-vpe.naverncp.com/player/maSync", "stringify", "log", "3UvMisE", "getTime", "logDate", "floor", "12Iehaaz", "entries", "1.0", "sessionId", "video_type", "videoFormat", "created_at", "vpePackageId", "push", "sync", "VPE React Native", "actionDuration", "2461330hXDWnw", "totalStartTime", "quality", "actionType", "https://log.beta-vpe.gov-ntruss.com/stats", "924152BQMyGn", "platform", "url", "country", "MA report actionType ->", "pub", "https://log.vpe.gov-ntruss.com/stats", "UUID", "forEach", "------------------------------------------------"];
|
|
1839
|
+
return Re = function() {
|
|
1840
|
+
return x;
|
|
1841
|
+
}, Re();
|
|
1842
|
+
}
|
|
1843
|
+
const _0 = async (x) => {
|
|
1844
|
+
const t = _, { platform: e, stage: i } = B, n = Vt(Fe[e][i][t(226)]), r = JSON.parse(JSON[t(232)](A));
|
|
1845
|
+
if (nt(r, x), r[t(224)] = "MA", He(r.extra), Yt(r[t(208)]), rt(r), !!qt(r[t(208)]))
|
|
1833
1846
|
try {
|
|
1834
|
-
r[t(
|
|
1847
|
+
r[t(278)] != t(283), await fetch(n, { method: "POST", headers: { "Content-Type": t(222) }, body: JSON[t(232)](r) });
|
|
1835
1848
|
} catch (o) {
|
|
1836
|
-
console
|
|
1849
|
+
console[t(233)](t(205), o);
|
|
1837
1850
|
}
|
|
1838
1851
|
};
|
|
1839
|
-
async function
|
|
1852
|
+
async function E0(x, t, e, i, n) {
|
|
1840
1853
|
const r = _;
|
|
1841
|
-
|
|
1842
|
-
const { logDate: o, logDateUnix: p } =
|
|
1843
|
-
A[r(
|
|
1844
|
-
}
|
|
1845
|
-
async function Et(x) {
|
|
1846
|
-
const t = _, e = JSON[t(408)](JSON[t(421)](A));
|
|
1847
|
-
x[t(373)] && Object[t(368)](e[t(373)], x.extra), e[t(434)] = x[t(434)], await It(e), console[t(385)](t(445));
|
|
1854
|
+
B[r(256)] = x, B.stage = t, nt(A, e), i && (A[r(208)][r(245)] = i), n && (A[r(208)].vpeKey = n), A[r(208)].nation ? A.browser.country = Gt[A[r(208)][r(282)]] || r(210) : A[r(268)][r(258)] = r(210);
|
|
1855
|
+
const { logDate: o, logDateUnix: p } = zt();
|
|
1856
|
+
A[r(208)][r(236)] = o, A[r(208)][r(209)] = p, A[r(208)][r(244)] = p;
|
|
1848
1857
|
}
|
|
1849
|
-
function
|
|
1850
|
-
const t = _, { platform: e, stage: i } =
|
|
1851
|
-
if (!
|
|
1852
|
-
const r = JSON[t(
|
|
1853
|
-
if (
|
|
1858
|
+
function T0(x) {
|
|
1859
|
+
const t = _, { platform: e, stage: i } = B, n = Fe[e]?.[i]?.[t(226)];
|
|
1860
|
+
if (!n) return !1;
|
|
1861
|
+
const r = JSON[t(199)](JSON[t(232)](A));
|
|
1862
|
+
if (nt(r, x), r[t(224)] = "MA", He(r[t(208)]), Yt(r[t(208)]), rt(r), !qt(r[t(208)])) return !1;
|
|
1854
1863
|
try {
|
|
1855
|
-
const o = new Blob([JSON
|
|
1856
|
-
return navigator
|
|
1864
|
+
const o = new Blob([JSON[t(232)](r)], { type: t(222) });
|
|
1865
|
+
return navigator.sendBeacon(n, o);
|
|
1857
1866
|
} catch {
|
|
1858
1867
|
return !1;
|
|
1859
1868
|
}
|
|
1860
1869
|
}
|
|
1861
|
-
|
|
1862
|
-
return x = x - 442, Pe()[x];
|
|
1863
|
-
}
|
|
1864
|
-
const T0 = o0;
|
|
1870
|
+
const Ct = st;
|
|
1865
1871
|
(function(x, t) {
|
|
1866
|
-
const e =
|
|
1872
|
+
const e = st, i = x();
|
|
1867
1873
|
for (; ; )
|
|
1868
1874
|
try {
|
|
1869
|
-
if (parseInt(e(
|
|
1875
|
+
if (-parseInt(e(178)) / 1 + parseInt(e(173)) / 2 + parseInt(e(159)) / 3 + parseInt(e(163)) / 4 * (-parseInt(e(171)) / 5) + parseInt(e(164)) / 6 + parseInt(e(158)) / 7 * (parseInt(e(177)) / 8) + parseInt(e(162)) / 9 === t) break;
|
|
1870
1876
|
i.push(i.shift());
|
|
1871
1877
|
} catch {
|
|
1872
1878
|
i.push(i.shift());
|
|
1873
1879
|
}
|
|
1874
|
-
})(
|
|
1880
|
+
})(Oe, 521746);
|
|
1881
|
+
function Oe() {
|
|
1882
|
+
const x = ["1555690IbShhL", "all", "1602460DhJzTp", "pay", "controlBtn", "rgba(0, 0, 0, 0.4)", "156392VieQLL", "716227jlsByA", "#ffffff", "35WnYeuV", "1615500lZPmBJ", "#4299f5", "16/9", "961713SOyOpw", "4AZfBRr", "28674sANghc", "dropshadow", "captionStyle", "contain", "watermarkConfig", "#009dff", "progressBar"];
|
|
1883
|
+
return Oe = function() {
|
|
1884
|
+
return x;
|
|
1885
|
+
}, Oe();
|
|
1886
|
+
}
|
|
1887
|
+
const C0 = (x = {}, t) => {
|
|
1888
|
+
const e = st, i = { autostart: !0, muted: !1, aspectRatio: e(161), objectFit: e(167), controls: !0, keyboardShortcut: !0, startMutedInfoNotVisible: !1, allowsPictureInPicture: !1, staysActiveInBackground: !1, screenRecordingPrevention: !1, modalFullscreen: !1, seekingPreview: !0, lang: "ko", ui: e(172), controlBtn: { play: !0, fullscreen: !0, progressBar: !0, volume: !1, times: !0, pictureInPicture: !0, setting: !0, subtitle: !0 }, progressBarColor: e(160), controlActiveTime: 3e3, playRateSetting: [0.5, 0.75, 1, 1.5, 2], autoPause: !1, repeat: !1, setStartTime: void 0, playIndex: 0, lowLatencyMode: !0, touchGestures: !0, descriptionNotVisible: !1, devTestAppId: void 0, token: "", visibleWatermark: !1, iosFullscreenNativeMode: !0, watermarkText: "NAVER CLOUD PLATFORM", watermarkConfig: { randPosition: !0, randPositionInterVal: 3e3, x: 10, y: 10, opacity: 0.5 }, captionStyle: { fontSize: 12, color: e(179), backgroundColor: e(176), edgeStyle: e(165) }, override: null };
|
|
1889
|
+
if (t !== e(174)) return { ...i, ...A0 };
|
|
1890
|
+
const n = { ...i, ...x };
|
|
1891
|
+
return x[e(175)] && (n[e(175)] = { ...i[e(175)], ...x.controlBtn }), x.watermarkConfig && (n[e(168)] = { ...i[e(168)], ...x[e(168)] }), x[e(166)] && (n[e(166)] = { ...i[e(166)], ...x.captionStyle }), n[e(175)]?.[e(170)] === void 0 && (n.controlBtn[e(170)] = !0), n;
|
|
1892
|
+
};
|
|
1893
|
+
function st(x, t) {
|
|
1894
|
+
return x = x - 158, Oe()[x];
|
|
1895
|
+
}
|
|
1896
|
+
const A0 = { free: !0, startMutedInfoNotVisible: !1, lowLatencyMode: !1, progressBarColor: Ct(169), playRateSetting: [0.5, 0.75, 1, 1.5, 2], descriptionNotVisible: !0, seekingPreview: !1, controlActiveTime: 1500, ui: Ct(172), token: "", setStartTime: null, controlBtn: { play: !0, fullscreen: !0, volume: !0, times: !0, setting: !1, pictureInPicture: !1, progressBar: !0 } };
|
|
1875
1897
|
function Pe() {
|
|
1876
|
-
const x = ["
|
|
1898
|
+
const x = ["prevTrack", "playbackRate", "handleFullscreenChange", "data", "reportData", "boundBeforeUnload", "playing", "nation", "ratechange", "sendSessionBeacon", "RATE_CHANGE", "CANPLAY", "getSeconds", "vpeReportScheduled", "getFullYear", "PLAYER_START", "contentId", "NEXT_TRACK", "VPE", "prevTime", "ERROR", "next", "hidden", "seekedTime", "errorMessage", "introSkip", "isSeeking", "handlePause", "handleSeeking", "WAITING_END", "watch_percent", "report", "catch", "url", "22305fGTqpv", "startup", "logDate", "object", "round", "forEach", "handleSeeked", "extra", "FULLSCREEN_CHANGE", "visibilitychange", "QUALITY_CHANGE", "handleStartup", "handleEnded", "handleTimeUpdateFocus", "getMonth", "percent", "handleWaiting", "UUID", "removeEventListener", "toFixed", "actionType", "Korea, Republic of", "isBuffering", "getHours", "handleCanplay", "isPlaying", "errorCode", "ENDED", "now", "opening_skip", "handlePlayerStart", "handleTimeUpdate", "getMinutes", "stageData", "maInit", "contentDuration", "seekCnt", "ended", "nextTrack", "then", "seeked", "isEnded", "timeupdateFocus", "fullscreenDuration", "scheduleVpeReport", "isCompleted", "VPE_REPORT_DELAY_MS", "vpe", "ENDING_SKIP", "633420QCchQT", "39426PKKfpB", "entries", "firstPlaying", "prevAction", "handleAutoSkip", "TIMEUPDATE", "handleError", "PLAY", "player_start", "bufferingEnd", "beaconSent", "fullscreenEnterTime", "floor", "handleTrackChange", "assign", "WAITING", "PAUSED", "quality", "initializeReportData", "7502sMrFfR", "OPENING_SKIP", "TIMEUPDATE_FOCUS", "getTime", "code", "browser", "handlePlay", "PLAYING", "initTimeupdate", "buildSessionMetrics", "prevQuality", "seekStartTime", "fullscreenYn", "pause", "video", "destroy", "INTRO_SKIP", "PREV_TRACK", "firstError", "sessionId", "132xuezhH", "isBounce", "openingSkip", "REBUFFERING", "message", "suppressNextSeek", "21rFmEgo", "parse", "rebuffering", "speedChangeCnt", "handleVisibilityChange", "isPlainObject", "logDateUnix", "Unknown Error", "state", "E0000", "8230FdLvkG", "country", "110392HveFQV", "maSync", "lastPlaybackSpeed", "playAttempt", "handleQualityChange", "STARTUP", "104624RPCbeL", "watchPercent", "loadingEnd", "playedTime", "addEventListener", "timeupdate", "prevUrl", "pauseCnt", "seeking", "handleBeforeUnload", "SEEKING", "quality_change", "startTime", "resetStateForNewTrack", "intro_skip", "handleRateChange", "isArray", "boundVisibilityChange", "endingSkip", "99dWdXbJ", "currentTime", "beforeunload", "273777gWENpm", "vpeReportTimerId", "firstPlay", "duration", "bufferingStart", "getDate", "TID", "isFullscreen"];
|
|
1877
1899
|
return Pe = function() {
|
|
1878
1900
|
return x;
|
|
1879
1901
|
}, Pe();
|
|
1880
1902
|
}
|
|
1881
|
-
const
|
|
1882
|
-
const e = o0, i = { autostart: !0, muted: !1, aspectRatio: e(456), objectFit: "contain", controls: !0, keyboardShortcut: !0, startMutedInfoNotVisible: !1, allowsPictureInPicture: !1, staysActiveInBackground: !1, screenRecordingPrevention: !1, modalFullscreen: !1, seekingPreview: !0, lang: "ko", ui: "all", controlBtn: { play: !0, fullscreen: !0, progressBar: !0, volume: !1, times: !0, pictureInPicture: !0, setting: !0, subtitle: !0 }, progressBarColor: e(452), controlActiveTime: 3e3, playRateSetting: [0.5, 0.75, 1, 1.5, 2], autoPause: !1, repeat: !1, setStartTime: void 0, playIndex: 0, lowLatencyMode: !0, touchGestures: !0, descriptionNotVisible: !1, devTestAppId: void 0, token: "", visibleWatermark: !1, iosFullscreenNativeMode: !0, watermarkText: "NAVER CLOUD PLATFORM", watermarkConfig: { randPosition: !0, randPositionInterVal: 3e3, x: 10, y: 10, opacity: 0.5 }, captionStyle: { fontSize: 12, color: e(453), backgroundColor: "rgba(0, 0, 0, 0.4)", edgeStyle: e(454) }, override: null };
|
|
1883
|
-
if (t !== "pay") return { ...i, ...At };
|
|
1884
|
-
const a = { ...i, ...x };
|
|
1885
|
-
return x.controlBtn && (a.controlBtn = { ...i[e(449)], ...x[e(449)] }), x[e(457)] && (a[e(457)] = { ...i.watermarkConfig, ...x[e(457)] }), x[e(442)] && (a[e(442)] = { ...i[e(442)], ...x[e(442)] }), a[e(449)]?.[e(459)] === void 0 && (a[e(449)][e(459)] = !0), a;
|
|
1886
|
-
}, At = { free: !0, startMutedInfoNotVisible: !1, lowLatencyMode: !1, progressBarColor: T0(443), playRateSetting: [0.5, 0.75, 1, 1.5, 2], descriptionNotVisible: !0, seekingPreview: !1, controlActiveTime: 1500, ui: T0(445), token: "", setStartTime: null, controlBtn: { play: !0, fullscreen: !0, volume: !0, times: !0, setting: !1, pictureInPicture: !1, progressBar: !0 } };
|
|
1887
|
-
function Ne() {
|
|
1888
|
-
const x = ["Korea, Republic of", "prevUrl", "isPlainObject", "rebuffering", "1392795KUPhYM", "PREV_TRACK", "seeked", "extra", "prevQuality", "initTimeupdate", "83243uzaRJx", "getHours", "handlePlayerStart", "isPlaying", "handleRateChange", "handleBeforeUnload", "ERROR", "introSkip", "PAUSE", "latest", "state", "code", "getMinutes", "CANPLAY", "floor", "handleSeeking", "dispatchEvent", "pause", "372792FnmisG", "visibilitychange", "prevTrack", "PLAY", "handleVisibilityChange", "openingSkip", "QUALITY_CHANGE", "getTime", "VPE", "ENDED", "handleWaiting", "handleTimeUpdate", "browser", "contentDuration", "buildSessionMetrics", "seeking", "792654ZZVKVb", "REBUFFERING", "type", "padStart", "currentTime", "WAITING", "RATE_CHANGE", "SEEKING", "bufferingStart", "getSeconds", "message", "quality_change", "PLAYER_START", "data", "isSeeking", "fullscreenEnterTime", "waiting", "now", "seekCnt", "speedChangeCnt", "TID", "errorMessage", "getDate", "lastPlaybackSpeed", "startup", "isEnded", "seekStartTime", "handleCanplay", "pauseCnt", "Unknown Error", "intro_skip", "handleError", "waitingEnd", "player_start", "duration", "then", "toFixed", "isBuffering", "resetStateForNewTrack", "handleQualityChange", "timeupdateFocus", "isFullscreen", "watchPercent", "PAUSED", "firstPlay", "getFullYear", "3820wAoMQc", "nextTrack", "destroy", "country", "handlePlay", "endingSkip", "FULLSCREEN_CHANGE", "next", "playAttempt", "contentId", "handleEnded", "isArray", "PLAYING", "beaconSent", "bind", "handleStartup", "play", "initializeReportData", "OPENING_SKIP", "error", "boundVisibilityChange", "1200Codqwf", "boundBeforeUnload", "report", "object", "playbackRate", "isBounce", "1681687FfsacJ", "startTime", "4pOdxuM", "firstPlaying", "prevTime", "handlePause", "fullscreenYn", "handleTrackChange", "sessionId", "sendSessionBeacon", "WAITING_END", "loadingEnd", "percent", "visibilityState", "beforeunload", "video", "next_track", "quality", "ratechange", "playedTime", "forEach", "TIMEUPDATE_FOCUS", "removeEventListener", "vpe", "handleFullscreenChange", "4oxPUgg", "bufferingEnd", "handleAutoSkip", "opening_skip", "addEventListener", "canplay", "reportData", "558370VVKVGf", "prevAction", "handleSeeked", "fullscreenDuration", "errorCode", "suppressNextSeek", "maInit", "STARTUP", "isCompleted", "UUID", "firstError", "TIMEUPDATE", "stageData", "round", "entries", "watch_percent", "prev_track", "ended"];
|
|
1889
|
-
return Ne = function() {
|
|
1890
|
-
return x;
|
|
1891
|
-
}, Ne();
|
|
1892
|
-
}
|
|
1893
|
-
const f = K0;
|
|
1903
|
+
const b = Kt;
|
|
1894
1904
|
(function(x, t) {
|
|
1895
|
-
const e =
|
|
1905
|
+
const e = Kt, i = x();
|
|
1896
1906
|
for (; ; )
|
|
1897
1907
|
try {
|
|
1898
|
-
if (parseInt(e(
|
|
1908
|
+
if (-parseInt(e(351)) / 1 + parseInt(e(329)) / 2 + -parseInt(e(393)) / 3 * (-parseInt(e(305)) / 4) + -parseInt(e(442)) / 5 + -parseInt(e(443)) / 6 * (parseInt(e(311)) / 7) + parseInt(e(323)) / 8 * (-parseInt(e(348)) / 9) + parseInt(e(321)) / 10 * (parseInt(e(462)) / 11) === t) break;
|
|
1899
1909
|
i.push(i.shift());
|
|
1900
1910
|
} catch {
|
|
1901
1911
|
i.push(i.shift());
|
|
1902
1912
|
}
|
|
1903
|
-
})(
|
|
1904
|
-
function
|
|
1905
|
-
return x = x -
|
|
1913
|
+
})(Pe, 286990);
|
|
1914
|
+
function Kt(x, t) {
|
|
1915
|
+
return x = x - 300, Pe()[x];
|
|
1906
1916
|
}
|
|
1907
|
-
const
|
|
1908
|
-
class
|
|
1909
|
-
[
|
|
1910
|
-
[
|
|
1911
|
-
[
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
[
|
|
1917
|
+
const At = "0p", D0 = 6e4, M0 = 1, y = { PLAYER_START: b(451), STARTUP: b(394), PLAY: "play", PAUSE: b(475), PLAYING: b(365), PAUSED: b(475), SEEKING: b(337), SEEKED: b(433), WAITING: "waiting", WAITING_END: "waitingEnd", CANPLAY: "canplay", ENDED: b(430), NEXT_TRACK: "next_track", PREV_TRACK: "prev_track", ERROR: "error", QUALITY_CHANGE: b(340), REBUFFERING: b(313), TIMEUPDATE: b(334), TIMEUPDATE_FOCUS: b(435), RATE_CHANGE: b(367), FULLSCREEN_CHANGE: "fullscreenchange", INTRO_SKIP: b(343), OPENING_SKIP: b(422), ENDING_SKIP: "ending_skip" };
|
|
1918
|
+
class R0 {
|
|
1919
|
+
[b(363)];
|
|
1920
|
+
[b(426)];
|
|
1921
|
+
[b(319)];
|
|
1922
|
+
beaconSent = !1;
|
|
1923
|
+
[b(364)];
|
|
1924
|
+
[b(346)];
|
|
1925
|
+
vpeReportScheduled = !1;
|
|
1926
|
+
[b(352)] = null;
|
|
1927
|
+
[b(439)] = 3e3;
|
|
1915
1928
|
constructor(t, e, i) {
|
|
1916
|
-
const
|
|
1917
|
-
this[
|
|
1929
|
+
const n = b;
|
|
1930
|
+
this[n(426)] = { platform: t, stage: e, sync: !1, syncResult: {} }, this[n(363)] = { video: {}, browser: {}, device: {}, connection: {}, screen: {}, player_version: "latest", extra: { UUID: null, TID: null, sessionId: null, playerType: n(377), playAttempt: !1 }, log_type: "vpe", privacy: { cookie_enabled: !0 } }, this[n(319)] = { prevAction: null, isPlaying: !1, isSeeking: !1, initTimeupdate: !1, isBuffering: !1, firstError: !1, isEnded: !1, firstPlay: !0, firstPlaying: !0, startTime: 0, prevTime: 0, startUpDuration: 0, prevUrl: "", prevQuality: At, pauseCnt: 0, seekCnt: 0, speedChangeCnt: 0, lastPlaybackSpeed: 1, fullscreenYn: !1, fullscreenEnterTime: 0, fullscreenDuration: 0, contentId: null, contentDuration: 0, seekStartTime: 0, suppressNextSeek: !1 }, this[n(461)](i), this[n(426)], this[n(364)] = this[n(338)].bind(this), this[n(346)] = this[n(315)].bind(this), window.addEventListener("beforeunload", this[n(364)]), document[n(333)]("visibilitychange", this[n(346)]);
|
|
1918
1931
|
}
|
|
1919
1932
|
initializeReportData(t) {
|
|
1920
|
-
const e =
|
|
1921
|
-
this[e(
|
|
1933
|
+
const e = b;
|
|
1934
|
+
this[e(363)] = { ...this.reportData, ...t }, this[e(363)][e(400)][e(366)] ? this[e(363)][e(467)][e(322)] = Gt[this[e(363)][e(400)][e(366)]] || e(414) : this.reportData.browser[e(322)] = "Korea, Republic of";
|
|
1922
1935
|
}
|
|
1923
|
-
|
|
1924
|
-
const t =
|
|
1925
|
-
return { logDate:
|
|
1936
|
+
getTime() {
|
|
1937
|
+
const t = b, e = /* @__PURE__ */ new Date(), i = (o) => String(o).padStart(2, "0"), n = e[t(373)]() + "-" + i(e[t(407)]() + 1) + "-" + i(e[t(356)]()) + " " + i(e[t(416)]()) + ":" + i(e[t(425)]()) + ":" + i(e[t(371)]()), r = Math[t(455)](e[t(465)]() / 1e3);
|
|
1938
|
+
return { logDate: n, logDateUnix: r };
|
|
1926
1939
|
}
|
|
1927
|
-
|
|
1928
|
-
const e =
|
|
1929
|
-
return typeof t === e(
|
|
1940
|
+
[b(316)](t) {
|
|
1941
|
+
const e = b;
|
|
1942
|
+
return typeof t === e(396) && t !== null && !Array[e(345)](t);
|
|
1930
1943
|
}
|
|
1931
|
-
async [
|
|
1932
|
-
const i =
|
|
1933
|
-
if (this
|
|
1934
|
-
const { logDate:
|
|
1935
|
-
for (const ee of
|
|
1944
|
+
async [b(390)](t, e) {
|
|
1945
|
+
const i = b;
|
|
1946
|
+
if (this.state.firstError) return;
|
|
1947
|
+
const { logDate: n, logDateUnix: r } = this.getTime(), o = Date[i(421)](), p = this.state[i(378)] > 0 ? o - this.state[i(378)] : 0, f = p, v = e && typeof e === i(396) && e[i(362)] ? e.data : {}, I = [i(375), i(428), i(408), i(389), i(330), i(438), i(306), i(336), i(429), i(314), i(325), i(474), "fullscreenDuration", "dropOffPosition", i(382), "errorCode", i(383), i(466), i(309)], T = {};
|
|
1948
|
+
for (const ee of I)
|
|
1936
1949
|
v[ee] !== void 0 && (T[ee] = v[ee]);
|
|
1937
|
-
const R = this[i(
|
|
1938
|
-
this[i(
|
|
1950
|
+
const R = this[i(319)][i(428)], X = R > 0 ? Math[i(455)](R / 1e3) : this.reportData[i(400)].duration || 0, G = this.reportData[i(400)][i(349)] || 0, V = X > 0 ? Math[i(397)](G / X * 1e4) / 100 : 0, we = { ...this[i(363)], video: this[i(363)].video, percent: V, extra: { ...this[i(363)].extra, actionType: t, actionDuration: f ? f.toFixed(2) : 0, duration: X, contentDuration: R, percent: V, watch_percent: V, logDate: n, logDateUnix: r, ...T } };
|
|
1951
|
+
this[i(319)].prevTime = o, await _0(we);
|
|
1939
1952
|
}
|
|
1940
|
-
async [
|
|
1941
|
-
const e =
|
|
1942
|
-
!this[e(
|
|
1953
|
+
async [b(427)](t) {
|
|
1954
|
+
const e = b;
|
|
1955
|
+
!this.reportData[e(400)][e(304)] && (this.reportData.extra[e(304)] = Tt(), this[e(363)][e(400)][e(357)] = Se(), this.reportData.extra[e(410)] = Se()), t?.[e(400)] && typeof t[e(400)] === e(396) && (t[e(400)][e(304)] = this.reportData[e(400)].sessionId, Object[e(457)](this[e(363)][e(400)], t[e(400)])), t?.[e(476)] && typeof t.video === e(396) && (this.reportData[e(476)] = { ...this[e(363)].video, ...t.video });
|
|
1956
|
+
}
|
|
1957
|
+
[b(437)]() {
|
|
1958
|
+
const t = b;
|
|
1959
|
+
this.vpeReportScheduled || (this[t(372)] = !0, this[t(352)] = setTimeout(() => {
|
|
1960
|
+
const e = t;
|
|
1961
|
+
this[e(352)] = null;
|
|
1962
|
+
const i = JSON[e(312)](JSON.stringify(this[e(363)]));
|
|
1963
|
+
i.log_type = e(440);
|
|
1964
|
+
const { logDate: n, logDateUnix: r } = this[e(465)]();
|
|
1965
|
+
i[e(400)] = i.extra || {}, i[e(400)][e(395)] = n, i[e(400)][e(317)] = r, i[e(400)][e(413)] = i[e(400)][e(413)] || "vpe_init", k0(i)[e(391)](() => {
|
|
1966
|
+
});
|
|
1967
|
+
}, this[t(439)]));
|
|
1943
1968
|
}
|
|
1944
|
-
async
|
|
1945
|
-
const e =
|
|
1946
|
-
!t || typeof t
|
|
1969
|
+
async [b(324)](t) {
|
|
1970
|
+
const e = b;
|
|
1971
|
+
!t || typeof t != "object" || Object[e(444)](t)[e(398)](([i, n]) => {
|
|
1947
1972
|
const r = e;
|
|
1948
|
-
this[r(
|
|
1949
|
-
const
|
|
1950
|
-
p != null && (this[
|
|
1951
|
-
}) :
|
|
1973
|
+
this[r(316)](n) ? Object[r(444)](n).forEach(([o, p]) => {
|
|
1974
|
+
const f = r;
|
|
1975
|
+
p != null && (this[f(363)][i][o] = p);
|
|
1976
|
+
}) : n != null && (this[r(363)][i] = n);
|
|
1952
1977
|
});
|
|
1953
1978
|
}
|
|
1954
|
-
|
|
1955
|
-
const e =
|
|
1956
|
-
switch (o && o > 0 && (this
|
|
1957
|
-
case y[e(
|
|
1958
|
-
this
|
|
1979
|
+
dispatchEvent(t) {
|
|
1980
|
+
const e = b, { type: i, data: n } = t, r = { url: n?.[e(392)] || this[e(319)][e(335)], type: n?.type, quality: n?.[e(460)] || this[e(319)][e(472)], data: n }, o = n?.extra?.[e(354)];
|
|
1981
|
+
switch (o && o > 0 && (this.state.contentDuration = Math.round(o * 1e3)), i) {
|
|
1982
|
+
case y[e(374)]:
|
|
1983
|
+
this[e(423)](r, n);
|
|
1959
1984
|
break;
|
|
1960
|
-
case y[e(
|
|
1961
|
-
this[e(
|
|
1985
|
+
case y[e(328)]:
|
|
1986
|
+
this[e(404)](r, n);
|
|
1962
1987
|
break;
|
|
1963
|
-
case y[e(
|
|
1964
|
-
this
|
|
1988
|
+
case y[e(450)]:
|
|
1989
|
+
this.handlePlay(r, n);
|
|
1965
1990
|
break;
|
|
1966
|
-
case y
|
|
1967
|
-
this
|
|
1991
|
+
case y.PAUSE:
|
|
1992
|
+
this[e(386)](r, n);
|
|
1968
1993
|
break;
|
|
1969
|
-
case y[e(
|
|
1970
|
-
this[e(
|
|
1994
|
+
case y[e(448)]:
|
|
1995
|
+
this[e(424)](r, n);
|
|
1971
1996
|
break;
|
|
1972
|
-
case y[e(
|
|
1973
|
-
this
|
|
1997
|
+
case y[e(464)]:
|
|
1998
|
+
this[e(406)](r, n);
|
|
1974
1999
|
break;
|
|
1975
|
-
case y[e(
|
|
1976
|
-
this[e(
|
|
2000
|
+
case y[e(339)]:
|
|
2001
|
+
this[e(387)](r, n);
|
|
1977
2002
|
break;
|
|
1978
2003
|
case y.SEEKED:
|
|
1979
|
-
this[e(
|
|
2004
|
+
this[e(399)](r, n);
|
|
1980
2005
|
break;
|
|
1981
|
-
case y[e(
|
|
1982
|
-
case e(
|
|
1983
|
-
this[e(
|
|
2006
|
+
case y[e(458)]:
|
|
2007
|
+
case e(355):
|
|
2008
|
+
this[e(409)](r, n);
|
|
1984
2009
|
break;
|
|
1985
|
-
case y[e(
|
|
1986
|
-
case e(
|
|
1987
|
-
case e(
|
|
1988
|
-
this[e(
|
|
2010
|
+
case y[e(388)]:
|
|
2011
|
+
case e(452):
|
|
2012
|
+
case e(331):
|
|
2013
|
+
this[e(417)](r, n);
|
|
1989
2014
|
break;
|
|
1990
|
-
case y[e(
|
|
1991
|
-
this[e(
|
|
2015
|
+
case y[e(370)]:
|
|
2016
|
+
this[e(417)](r, n);
|
|
1992
2017
|
break;
|
|
1993
|
-
case y
|
|
1994
|
-
this.handleEnded(r,
|
|
2018
|
+
case y.ENDED:
|
|
2019
|
+
this.handleEnded(r, n);
|
|
1995
2020
|
break;
|
|
1996
|
-
case e(
|
|
1997
|
-
case e(
|
|
1998
|
-
this[e(
|
|
2021
|
+
case e(431):
|
|
2022
|
+
case e(380):
|
|
2023
|
+
this[e(456)](y[e(376)], r, n);
|
|
1999
2024
|
break;
|
|
2000
|
-
case e(
|
|
2025
|
+
case e(359):
|
|
2001
2026
|
case "prev":
|
|
2002
|
-
this[e(
|
|
2027
|
+
this[e(456)](y[e(302)], r, n);
|
|
2003
2028
|
break;
|
|
2004
|
-
case y
|
|
2005
|
-
this[e(
|
|
2029
|
+
case y[e(379)]:
|
|
2030
|
+
this[e(449)](r, n);
|
|
2006
2031
|
break;
|
|
2007
|
-
case y[e(
|
|
2008
|
-
this
|
|
2032
|
+
case y[e(403)]:
|
|
2033
|
+
this.handleQualityChange(r, n);
|
|
2009
2034
|
break;
|
|
2010
|
-
case y[e(
|
|
2011
|
-
this[e(
|
|
2035
|
+
case y[e(369)]:
|
|
2036
|
+
this[e(344)](r, n);
|
|
2012
2037
|
break;
|
|
2013
|
-
case y[e(
|
|
2014
|
-
this
|
|
2038
|
+
case y[e(401)]:
|
|
2039
|
+
this[e(361)](r, n);
|
|
2015
2040
|
break;
|
|
2016
|
-
case e(
|
|
2017
|
-
this[e(
|
|
2041
|
+
case e(384):
|
|
2042
|
+
this[e(447)](y[e(301)], r, n);
|
|
2018
2043
|
break;
|
|
2019
|
-
case e(
|
|
2020
|
-
this
|
|
2044
|
+
case e(307):
|
|
2045
|
+
this.handleAutoSkip(y[e(463)], r, n);
|
|
2021
2046
|
break;
|
|
2022
|
-
case e(
|
|
2023
|
-
this[e(
|
|
2047
|
+
case e(347):
|
|
2048
|
+
this.handleAutoSkip(y[e(441)], r, n);
|
|
2024
2049
|
break;
|
|
2025
2050
|
}
|
|
2026
2051
|
}
|
|
2027
|
-
[
|
|
2028
|
-
const
|
|
2029
|
-
this[
|
|
2052
|
+
[b(447)](t, e, i) {
|
|
2053
|
+
const n = b;
|
|
2054
|
+
this[n(319)][n(310)] = !0, this.report(t, { ...e, data: i });
|
|
2030
2055
|
}
|
|
2031
|
-
|
|
2032
|
-
const i =
|
|
2033
|
-
!this[i(
|
|
2056
|
+
handlePlayerStart(t, e) {
|
|
2057
|
+
const i = b;
|
|
2058
|
+
!this[i(363)][i(400)][i(304)] && (this[i(363)].extra.sessionId = Tt(), this[i(363)].extra.TID = Se(), this[i(363)].extra[i(410)] = Se()), this[i(319)][i(341)] = Date.now(), this[i(319)][i(378)] = this[i(319)].startTime, this[i(390)](y[i(374)], { ...t, data: e });
|
|
2034
2059
|
}
|
|
2035
|
-
[
|
|
2036
|
-
const i =
|
|
2037
|
-
if (this[i(
|
|
2038
|
-
const
|
|
2039
|
-
|
|
2060
|
+
[b(404)](t, e) {
|
|
2061
|
+
const i = b;
|
|
2062
|
+
if (this[i(319)].firstPlaying) {
|
|
2063
|
+
const n = e?.extra || e || {};
|
|
2064
|
+
n?.contentId && (this[i(319)][i(375)] = n[i(375)]), this.state.isPlaying = !0, this[i(390)](y[i(328)], { ...t, data: { ...e, contentId: this[i(319)][i(375)], contentDuration: this[i(319)][i(428)] } }), this[i(319)][i(445)] = !1, this.scheduleVpeReport();
|
|
2040
2065
|
}
|
|
2041
2066
|
}
|
|
2042
|
-
|
|
2043
|
-
const i =
|
|
2044
|
-
this[i(
|
|
2067
|
+
[b(468)](t, e) {
|
|
2068
|
+
const i = b;
|
|
2069
|
+
this[i(319)][i(418)] || (this.reportData[i(400)][i(332)] = e?.[i(332)], this[i(363)].extra[i(408)] = e?.percent, this[i(319)][i(418)] = !0, this[i(363)][i(400)][i(326)] = !0, this[i(319)].firstPlay && (this[i(319)][i(353)] = !1), this.scheduleVpeReport(), this[i(319)][i(446)] === y.PAUSED && this[i(390)](y[i(469)], { ...t, data: e }), this[i(319)][i(446)] = y.PLAYING);
|
|
2045
2070
|
}
|
|
2046
|
-
[
|
|
2047
|
-
const i =
|
|
2048
|
-
this[i(
|
|
2071
|
+
[b(386)](t, e) {
|
|
2072
|
+
const i = b;
|
|
2073
|
+
this[i(319)][i(385)] || this[i(319)].isBuffering || !this.state[i(418)] || (this[i(319)][i(336)]++, this[i(319)][i(418)] = !1, this.report(y[i(459)], { ...t, data: { ...e, pauseCnt: this[i(319)][i(336)] } }), this.state[i(446)] = y[i(459)]);
|
|
2049
2074
|
}
|
|
2050
|
-
|
|
2051
|
-
const i =
|
|
2052
|
-
this[i(
|
|
2075
|
+
handleTimeUpdate(t, e) {
|
|
2076
|
+
const i = b;
|
|
2077
|
+
this[i(319)][i(418)] = !0, this[i(363)].extra[i(326)] = !0, !(this[i(363)][i(400)].currentTime < M0) && (this[i(319)][i(418)] && Date[i(421)]() - this[i(319)][i(378)] > D0 && this[i(390)](y[i(469)], { ...t, data: e }), this[i(319)].prevUrl = t[i(392)] || "", this[i(319)].prevQuality = t.quality || At);
|
|
2053
2078
|
}
|
|
2054
|
-
|
|
2055
|
-
const i =
|
|
2056
|
-
this
|
|
2079
|
+
[b(406)](t, e) {
|
|
2080
|
+
const i = b;
|
|
2081
|
+
this[i(363)][i(400)][i(349)] > 0 && (this.report(y.PLAYING, { ...t, data: e }), this.state[i(470)] = !0);
|
|
2057
2082
|
}
|
|
2058
|
-
|
|
2059
|
-
const i =
|
|
2060
|
-
this
|
|
2083
|
+
[b(387)](t, e) {
|
|
2084
|
+
const i = b;
|
|
2085
|
+
this[i(319)][i(310)] || this[i(319)][i(385)] || (this[i(319)][i(429)]++, this.state.isSeeking = !0, this[i(319)][i(473)] = Date.now(), this[i(319)].isPlaying ? this.report(y[i(469)], { ...t, data: e }) : this[i(319)][i(446)] === y[i(459)] && this[i(390)](y[i(459)], { ...t, data: e }), this[i(319)][i(446)] = y[i(339)]);
|
|
2061
2086
|
}
|
|
2062
|
-
[
|
|
2063
|
-
const i =
|
|
2064
|
-
if (this.state
|
|
2065
|
-
this
|
|
2087
|
+
[b(399)](t, e) {
|
|
2088
|
+
const i = b;
|
|
2089
|
+
if (this.state.suppressNextSeek) {
|
|
2090
|
+
this[i(319)][i(310)] = !1;
|
|
2066
2091
|
return;
|
|
2067
2092
|
}
|
|
2068
|
-
if (!this[i(
|
|
2069
|
-
const
|
|
2070
|
-
this[i(
|
|
2093
|
+
if (!this[i(319)][i(385)]) return;
|
|
2094
|
+
const n = this.state[i(473)] > 0 ? Date[i(421)]() - this[i(319)][i(473)] : 0;
|
|
2095
|
+
this[i(319)][i(473)] = 0, this[i(319)][i(385)] = !1, this[i(390)](y[i(339)], { ...t, data: { ...e || {}, seekedTime: n } }), this[i(319)].prevAction = this[i(319)][i(418)] ? y[i(469)] : y.PAUSED;
|
|
2071
2096
|
}
|
|
2072
|
-
[
|
|
2073
|
-
const i =
|
|
2074
|
-
this[i(
|
|
2097
|
+
[b(409)](t, e) {
|
|
2098
|
+
const i = b;
|
|
2099
|
+
this[i(319)][i(385)] || this.state[i(415)] || (this.state[i(415)] = !0, this[i(319)][i(418)] && this[i(390)](y[i(469)], { ...t, data: e }), this[i(319)][i(446)] = y[i(308)]);
|
|
2075
2100
|
}
|
|
2076
|
-
[
|
|
2077
|
-
const i =
|
|
2078
|
-
this.state[i(
|
|
2101
|
+
[b(417)](t, e) {
|
|
2102
|
+
const i = b;
|
|
2103
|
+
this.state[i(415)] && (this.state[i(415)] = !1, this.report(y[i(308)], { ...t, data: e }), this.state[i(446)] = this[i(319)][i(418)] ? y[i(469)] : y[i(459)]);
|
|
2079
2104
|
}
|
|
2080
|
-
|
|
2081
|
-
const t =
|
|
2082
|
-
if (this[t(
|
|
2083
|
-
this[t(
|
|
2084
|
-
const { logDate: e, logDateUnix: i } = this
|
|
2085
|
-
|
|
2105
|
+
sendSessionBeacon() {
|
|
2106
|
+
const t = b;
|
|
2107
|
+
if (this[t(453)] || this[t(319)].isEnded || this[t(319)][t(303)] || !this[t(363)][t(400)].UUID || !this[t(363)][t(400)][t(357)]) return;
|
|
2108
|
+
this[t(453)] = !0;
|
|
2109
|
+
const { logDate: e, logDateUnix: i } = this.getTime(), n = Date[t(421)](), r = this[t(319)].prevTime > 0 ? n - this[t(319)][t(378)] : 0, o = (this[t(363)][t(400)][t(349)] || 0) * 1e3, p = this[t(319)][t(428)], f = p > 0 ? Math[t(397)](o / p * 1e4) / 100 : 0, v = this[t(363)][t(400)].playedTime || 0, I = { ...this.reportData, video: this[t(363)][t(476)], percent: f, extra: { ...this[t(363)].extra, actionType: t(430), actionDuration: r ? r[t(412)](2) : 0, duration: p > 0 ? Math[t(455)](p / 1e3) : this[t(363)][t(400)][t(354)] || 0, logDate: e, logDateUnix: i, contentId: this[t(319)][t(375)], contentDuration: p, percent: f, watch_percent: f, watchPercent: f, isCompleted: f >= 95, isBounce: v < 1e4, pauseCnt: this.state[t(336)], seekCnt: this[t(319)][t(429)], speedChangeCnt: this[t(319)][t(314)], lastPlaybackSpeed: this[t(319)][t(325)], fullscreenYn: this[t(319)].fullscreenYn, fullscreenDuration: this[t(319)][t(436)] + (this[t(319)][t(454)] > 0 ? Date[t(421)]() - this[t(319)][t(454)] : 0), dropOffPosition: Math[t(397)](o) } };
|
|
2110
|
+
T0(I);
|
|
2086
2111
|
}
|
|
2087
|
-
[
|
|
2088
|
-
this
|
|
2112
|
+
[b(338)]() {
|
|
2113
|
+
this.sendSessionBeacon();
|
|
2089
2114
|
}
|
|
2090
|
-
|
|
2091
|
-
|
|
2115
|
+
handleVisibilityChange() {
|
|
2116
|
+
const t = b;
|
|
2117
|
+
document.visibilityState === t(381) && this[t(368)]();
|
|
2092
2118
|
}
|
|
2093
|
-
[
|
|
2094
|
-
const t =
|
|
2095
|
-
window.removeEventListener(t(
|
|
2119
|
+
[b(300)]() {
|
|
2120
|
+
const t = b;
|
|
2121
|
+
window.removeEventListener(t(350), this[t(364)]), document[t(411)](t(402), this[t(346)]), this.vpeReportTimerId !== null && (clearTimeout(this[t(352)]), this[t(352)] = null);
|
|
2096
2122
|
}
|
|
2097
|
-
[
|
|
2098
|
-
const i =
|
|
2099
|
-
let v = this[i(
|
|
2100
|
-
return this[i(
|
|
2123
|
+
[b(471)](t, e) {
|
|
2124
|
+
const i = b, n = e?.[i(400)] || e || {}, r = (n?.[i(349)] || 0) * 1e3, o = this[i(319)].contentDuration, p = o > 0 ? Math[i(397)](r / o * 1e4) / 100 : 0, f = this[i(363)].extra[i(332)] || 0;
|
|
2125
|
+
let v = this[i(319)][i(436)];
|
|
2126
|
+
return this[i(319)][i(454)] > 0 && (v += Date.now() - this.state.fullscreenEnterTime), { ...t, data: { ...e, contentId: this[i(319)][i(375)], duration: o > 0 ? Math.floor(o / 1e3) : n?.[i(354)] || 0, contentDuration: o, percent: p, watch_percent: p, watchPercent: p, isCompleted: p >= 95, isBounce: f < 1e4, pauseCnt: this[i(319)][i(336)], seekCnt: this[i(319)][i(429)], speedChangeCnt: this[i(319)][i(314)], lastPlaybackSpeed: this[i(319)].lastPlaybackSpeed, fullscreenYn: this[i(319)].fullscreenYn, fullscreenDuration: v, dropOffPosition: Math.round(r) } };
|
|
2101
2127
|
}
|
|
2102
|
-
[
|
|
2103
|
-
const i =
|
|
2104
|
-
this[i(
|
|
2128
|
+
[b(405)](t, e) {
|
|
2129
|
+
const i = b;
|
|
2130
|
+
this[i(319)][i(434)] || (this[i(319)][i(434)] = !0, this[i(319)].isPlaying = !1, this[i(453)] = !0, this[i(319)][i(446)] !== y[i(459)] && this[i(390)](this.state[i(446)] || y[i(469)], { ...t, data: e }), this[i(390)](y[i(420)], this[i(471)](t, e)));
|
|
2105
2131
|
}
|
|
2106
2132
|
handleTrackChange(t, e, i) {
|
|
2107
|
-
const
|
|
2108
|
-
this[
|
|
2109
|
-
const r =
|
|
2110
|
-
this[r(
|
|
2111
|
-
this[r(
|
|
2133
|
+
const n = b;
|
|
2134
|
+
this[n(390)](this[n(319)][n(446)] || y[n(469)], this[n(471)](e, i))[n(432)](() => {
|
|
2135
|
+
const r = n;
|
|
2136
|
+
this[r(390)](t, { ...e, data: i }).then(() => {
|
|
2137
|
+
this[r(342)]();
|
|
2112
2138
|
});
|
|
2113
2139
|
});
|
|
2114
2140
|
}
|
|
2115
2141
|
handleError(t, e) {
|
|
2116
|
-
const i =
|
|
2117
|
-
this
|
|
2118
|
-
const
|
|
2119
|
-
this[i(
|
|
2142
|
+
const i = b;
|
|
2143
|
+
this[i(319)][i(446)] && !this[i(319)][i(445)] && this.report(this[i(319)][i(446)], this[i(471)](t, e));
|
|
2144
|
+
const n = { errorCode: e?.[i(419)] || e?.extra?.[i(419)] || e?.[i(466)] || i(320), errorMessage: e?.[i(383)] || e?.[i(400)]?.[i(383)] || e?.[i(309)] || i(318) };
|
|
2145
|
+
this[i(390)](y[i(379)], { ...t, data: { ...e, ...n } }), this[i(319)][i(303)] = !0;
|
|
2120
2146
|
}
|
|
2121
|
-
[
|
|
2122
|
-
const i =
|
|
2123
|
-
this
|
|
2147
|
+
[b(327)](t, e) {
|
|
2148
|
+
const i = b;
|
|
2149
|
+
this[i(319)][i(446)] && !this.state.isSeeking && !this[i(319)].isBuffering && !this.state[i(445)] && (this[i(319)].isSeeking = !0, this[i(390)](this.state[i(446)], { ...t, data: e }), this.state[i(446)] = y[i(339)]);
|
|
2124
2150
|
}
|
|
2125
|
-
|
|
2126
|
-
const i =
|
|
2127
|
-
|
|
2151
|
+
handleRateChange(t, e) {
|
|
2152
|
+
const i = b, n = e?.[i(360)] || e?.extra?.[i(360)] || 1;
|
|
2153
|
+
n !== this.state[i(325)] && (this[i(319)].speedChangeCnt++, this[i(319)][i(325)] = n, this.report(y[i(369)], { ...t, data: { ...e, speedChangeCnt: this[i(319)][i(314)], lastPlaybackSpeed: n } }));
|
|
2128
2154
|
}
|
|
2129
|
-
[
|
|
2130
|
-
const i =
|
|
2131
|
-
e?.
|
|
2155
|
+
[b(361)](t, e) {
|
|
2156
|
+
const i = b;
|
|
2157
|
+
e?.isFullscreen || e?.[i(400)]?.[i(358)] ? (this[i(319)][i(474)] = !0, this[i(319)][i(454)] = Date.now()) : this[i(319)][i(454)] > 0 && (this[i(319)][i(436)] += Date.now() - this[i(319)][i(454)], this[i(319)][i(454)] = 0), this[i(390)](y[i(401)], { ...t, data: { ...e, fullscreenYn: this[i(319)][i(474)], fullscreenDuration: this[i(319)][i(436)] } });
|
|
2132
2158
|
}
|
|
2133
|
-
[
|
|
2134
|
-
const t =
|
|
2135
|
-
this[t(
|
|
2159
|
+
[b(342)]() {
|
|
2160
|
+
const t = b;
|
|
2161
|
+
this[t(319)][t(446)] = null, this[t(319)].isPlaying = !1, this.state[t(378)] = 0, this[t(319)][t(445)] = !0, this[t(319)][t(470)] = !1, this[t(319)][t(336)] = 0, this[t(319)].seekCnt = 0, this[t(319)][t(314)] = 0, this[t(319)][t(325)] = 1, this[t(319)][t(474)] = !1, this[t(319)][t(454)] = 0, this[t(319)].fullscreenDuration = 0, this[t(319)][t(375)] = null, this[t(319)].contentDuration = 0;
|
|
2136
2162
|
}
|
|
2137
2163
|
}
|
|
2138
|
-
const m =
|
|
2164
|
+
const m = Wt;
|
|
2139
2165
|
(function(x, t) {
|
|
2140
|
-
const e =
|
|
2166
|
+
const e = Wt, i = x();
|
|
2141
2167
|
for (; ; )
|
|
2142
2168
|
try {
|
|
2143
|
-
if (
|
|
2169
|
+
if (parseInt(e(176)) / 1 + parseInt(e(267)) / 2 * (parseInt(e(265)) / 3) + parseInt(e(222)) / 4 + parseInt(e(253)) / 5 + -parseInt(e(195)) / 6 * (parseInt(e(251)) / 7) + -parseInt(e(268)) / 8 * (-parseInt(e(285)) / 9) + -parseInt(e(288)) / 10 === t) break;
|
|
2144
2170
|
i.push(i.shift());
|
|
2145
2171
|
} catch {
|
|
2146
2172
|
i.push(i.shift());
|
|
2147
2173
|
}
|
|
2148
|
-
})(
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2174
|
+
})(Ne, 231873);
|
|
2175
|
+
const O0 = { gov: { prod: { config: m(259), report: "aHR0cHM6Ly9sb2cudnBlLmdvdi1udHJ1c3MuY29tL3N0YXRz" }, beta: { config: m(112), report: m(158) } }, pub: { prod: { config: m(256), report: m(243) }, beta: { config: m(203), report: m(215) } } };
|
|
2176
|
+
function Ne() {
|
|
2177
|
+
const x = ["getPlaylist", "errorCode", "Base64 decoding failed:", "E0001", "type", "isInitialized", "round", "516KJzlmn", ".mpd", "startTimeAt", "prev", "serverConfig", "errorMessage", "hasFirstPlayReported", "ratechange", "aHR0cHM6Ly9wYXBpLmJldGEtdnBlLm5hdmVybmNwLmNvbS9wbGF5ZXIvY29uZmln", "VPE", "accessKey", "HLS 파싱 실패:", "test", "maManager", "host", "videoHeight", "platform", "translator", "join", "video", "aHR0cHM6Ly9sb2cuYmV0YS12cGUubmF2ZXJuY3AuY29tL3N0YXRz", ".m3u8", "Auto", "volumechange", "floor", "title", "Unknown", "956036MCJMSz", "watermarkConfig", "connection", "ncplayer : ", "report", "options", "startup", "E0003", "Chrome", "appId", "quality", "Edge", "extra", "duration", "stateChange", "name", "playerName", "Other", "contentId", "sync", "width", "aHR0cHM6Ly9sb2cudnBlLm5hdmVybmNwLmNvbS9zdGF0cw==", "browser", "setErrorRun", "#EXT-X-STREAM-INF", "origin", "kbps", "?preview=true", "performKeyCheck", "13783RMiNZR", "prevTrack", "2126845SLopeX", "player_name", "Edg", "aHR0cHM6Ly9wYXBpLnZwZS5uYXZlcm5jcC5jb20vcGxheWVyL2NvbmZpZw==", "trim", "playerStateReport", "aHR0cHM6Ly9wYXBpLnZwZS5nb3YtbnRydXNzLmNvbS9wbGF5ZXIvY29uZmln", "rtt", "text", "getElapsedMilliseconds", "userAgent", "url", "3WqypdS", "hls", "454456RJceRQ", "2889096agKGXN", "error", "device", "E0002", "player_start", "getVideoProtocol", "navigator", "data", "controlBtn", "updateTranslator", "play", "map", "playlist", "slice", "isDev", "isArray", "stage", "9deEvaG", "toLowerCase", "kakao", "11183260rrPNZL", "lang", "Whale", "version", "playerVersion", "downlink", "match", "errorState", "protocol", "result", "getErrorState", "location", "nextTrack", "application/json", "aHR0cHM6Ly9wYXBpLmJldGEtdnBlLmdvdi1udHJ1c3MuY29tL3BsYXllci9jb25maWc=", "unknown", "indexOf", "domain", "effectiveType", "auto", "vendor", "model", "next", "playerInfo", "length", "pricing", "mpd", "code", "dash", "playerStartTimeMs", " / ", "port", "config", "saveData", "live", "string", "vpe", "getResult", "Error:", "initialize", "deviceMemory", "undefined", "Kakao webview", "naverncp.com/live/video/ls-", "LIVE", "whale", "getValidatedOptions", "getTime", "split", "maUse", "errorInfo", "currentTime", "includes", "hlsPaser", "API", "maInit", "pay", "screen", "meta", "playbackRate", "aHR0cHM6Ly9sb2cuYmV0YS12cGUuZ292LW50cnVzcy5jb20vc3RhdHM=", "Safari", "statusText", "status", "incomingType", "reduce", "webkitConnection", "naver", "createPlayerInfo", "language", "ready", "poster", "filter", "href", "isPaidTier", "UAParser", "some", "Content-Type", "266790FeXIzb", "mozConnection", "Firefox", "push", "warn", "getBrowserInfo", "mobile", "Naver webview", "startsWith", "json", "VPE Player: accessKey 또는 appId가 없어 키 인증을 건너뜁니다.", "fullscreenchange"];
|
|
2178
|
+
return Ne = function() {
|
|
2152
2179
|
return x;
|
|
2153
|
-
},
|
|
2180
|
+
}, Ne();
|
|
2154
2181
|
}
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
function W0(x, t) {
|
|
2158
|
-
return x = x - 445, Ue()[x];
|
|
2182
|
+
function Wt(x, t) {
|
|
2183
|
+
return x = x - 106, Ne()[x];
|
|
2159
2184
|
}
|
|
2160
|
-
|
|
2185
|
+
let Dt = [];
|
|
2186
|
+
const P0 = (x) => {
|
|
2161
2187
|
const t = m;
|
|
2162
2188
|
try {
|
|
2163
2189
|
return atob(x);
|
|
2164
2190
|
} catch (e) {
|
|
2165
|
-
return console[t(
|
|
2191
|
+
return console[t(269)](t(190), e), "";
|
|
2166
2192
|
}
|
|
2167
2193
|
};
|
|
2168
|
-
class
|
|
2169
|
-
[m(
|
|
2170
|
-
[m(
|
|
2171
|
-
[m(
|
|
2172
|
-
[m(
|
|
2173
|
-
|
|
2174
|
-
[m(
|
|
2175
|
-
[m(
|
|
2176
|
-
[m(
|
|
2177
|
-
[m(
|
|
2178
|
-
[m(
|
|
2179
|
-
[m(
|
|
2180
|
-
|
|
2181
|
-
[m(
|
|
2182
|
-
[m(
|
|
2183
|
-
constructor({ accessKey: t, appId: e, platform: i, stage:
|
|
2194
|
+
class U0 {
|
|
2195
|
+
[m(199)] = {};
|
|
2196
|
+
[m(121)] = null;
|
|
2197
|
+
[m(205)];
|
|
2198
|
+
[m(231)];
|
|
2199
|
+
platform;
|
|
2200
|
+
[m(284)];
|
|
2201
|
+
[m(282)];
|
|
2202
|
+
[m(212)] = Ze();
|
|
2203
|
+
[m(295)];
|
|
2204
|
+
[m(208)] = null;
|
|
2205
|
+
[m(197)] = null;
|
|
2206
|
+
[m(162)] = null;
|
|
2207
|
+
[m(201)] = !1;
|
|
2208
|
+
[m(127)] = 0;
|
|
2209
|
+
constructor({ accessKey: t, appId: e, platform: i, stage: n, isDev: r = !1, language: o }) {
|
|
2184
2210
|
const p = m;
|
|
2185
|
-
this
|
|
2211
|
+
this[p(205)] = t, this[p(231)] = e || location[p(247)], this.platform = i, this[p(284)] = n, this[p(282)] = r, this[p(277)](o), this[p(295)] = { errorCode: null, errorMessage: null };
|
|
2186
2212
|
}
|
|
2187
|
-
async
|
|
2188
|
-
const t = m, e = [t(
|
|
2189
|
-
if ([this[e[0]], this[e[1]]][t(
|
|
2213
|
+
async [m(137)]() {
|
|
2214
|
+
const t = m, e = [t(205), t(231), t(271), t(191), t(229)], i = t(186);
|
|
2215
|
+
if ([this[e[0]], this[e[1]]][t(174)]((o) => !o)) return console[t(180)](i), { error: this[t(245)](e[2]) };
|
|
2190
2216
|
const r = (o) => {
|
|
2191
2217
|
const p = t;
|
|
2192
|
-
return this
|
|
2218
|
+
return this.serverConfig = o, this[p(121)] = this.createPlayerInfo(o), this[p(121)];
|
|
2193
2219
|
};
|
|
2194
2220
|
try {
|
|
2195
|
-
const o = await this
|
|
2196
|
-
if (o
|
|
2221
|
+
const o = await this.performKeyCheck();
|
|
2222
|
+
if (o[t(125)] !== 200) return { error: this[t(245)](e[3]) };
|
|
2197
2223
|
const p = r(o);
|
|
2198
|
-
if (window[t(
|
|
2199
|
-
await
|
|
2200
|
-
const
|
|
2201
|
-
this[t(
|
|
2224
|
+
if (window[t(134)] && (window[t(134)][t(238)] = p?.[t(254)], window[t(134)][t(292)] = window[t(134)][t(292)] || p?.player_version, window[t(134)][t(254)] = p.player_name + "|" + window[t(134)].playerVersion, window.vpe.state = this[t(284)]), p?.[t(147)] === "Y") {
|
|
2225
|
+
await E0(this[t(211)], this[t(284)], p, this[t(231)], this[t(205)]);
|
|
2226
|
+
const f = await I0(this.accessKey);
|
|
2227
|
+
this[t(208)] = new R0(this[t(211)], this.stage, p), this[t(197)] = Date.now(), f?.[t(107)]?.[t(241)] && await this.maManager[t(153)]({ video: p.video || {}, extra: { ...p[t(234)] } });
|
|
2202
2228
|
}
|
|
2203
|
-
return { options: this.
|
|
2229
|
+
return { options: this[t(199)].result?.[t(227)], playerInfo: p };
|
|
2204
2230
|
} catch (o) {
|
|
2205
|
-
return console[t(
|
|
2231
|
+
return console[t(269)]("VPE SDK Initialization failed:", o), { error: this[t(245)](e[4]) };
|
|
2206
2232
|
}
|
|
2207
2233
|
}
|
|
2208
|
-
async [m(
|
|
2209
|
-
const t = m, e = [
|
|
2234
|
+
async [m(250)]() {
|
|
2235
|
+
const t = m, e = [t(249), t(130), t(175), t(111), "access_key", t(115), "POST"], i = this[t(282)] ? e[0] : "", n = P0(O0[this[t(211)]][this[t(284)]][e[1]]) + i, r = this.appId, o = JSON.stringify([e[4], e[5]][t(163)]((f, v, I) => {
|
|
2210
2236
|
const T = t;
|
|
2211
|
-
return
|
|
2212
|
-
}, {})), p = await fetch(
|
|
2213
|
-
if (!p.ok) throw new Error([t(
|
|
2214
|
-
return p[t(
|
|
2237
|
+
return f[v] = [this[T(205)], r][I], f;
|
|
2238
|
+
}, {})), p = await fetch(n, { method: e[6], headers: { [e[2]]: e[3] }, body: o });
|
|
2239
|
+
if (!p.ok) throw new Error([t(152), t(136), p[t(161)], p[t(160)]][t(213)](" "));
|
|
2240
|
+
return p[t(185)]();
|
|
2215
2241
|
}
|
|
2216
|
-
|
|
2217
|
-
const t = m, e = navigator
|
|
2218
|
-
return /Edg\/(\d+\.\d+)
|
|
2242
|
+
[m(181)]() {
|
|
2243
|
+
const t = m, e = navigator[t(263)];
|
|
2244
|
+
return /Edg\/(\d+\.\d+)/.test(e) ? { origin: t(233), version: RegExp.$1 } : /Chrome\/(\d+\.\d+)/[t(207)](e) && !e[t(150)](t(255)) ? { origin: t(230), version: RegExp.$1 } : /Firefox\/(\d+\.\d+)/[t(207)](e) ? { origin: t(178), version: RegExp.$1 } : /Version\/(\d+\.\d+)/[t(207)](e) && e[t(150)](t(159)) ? { origin: t(159), version: RegExp.$1 } : { origin: t(221), version: "Unknown" };
|
|
2219
2245
|
}
|
|
2220
|
-
[m(
|
|
2221
|
-
const e = m, [i,
|
|
2222
|
-
window[e(
|
|
2223
|
-
const v = typeof window !== e(
|
|
2224
|
-
return { cid: t
|
|
2246
|
+
[m(166)](t) {
|
|
2247
|
+
const e = m, [i, n] = t.result[e(237)][e(146)]("|"), r = navigator[e(224)] || navigator[e(177)] || navigator[e(164)], o = this[e(181)](), p = navigator.userAgentData, f = new _t[e(173)](window[e(274)][e(263)]).getResult();
|
|
2248
|
+
window[e(274)].userAgent.toLowerCase()[e(150)](e(143)) ? f[e(244)].name = e(290) : window[e(274)][e(263)][e(286)]()[e(150)]("kakaotalk") ? f[e(244)][e(237)] = e(140) : window.navigator.userAgent[e(286)]().includes(e(165)) ? f.browser[e(237)] = e(183) : window[e(274)].userAgent[e(286)]().includes(e(287)) ? f[e(244)].name = e(140) : window.navigator.userAgent[e(286)]().includes("naver") && (f[e(244)][e(237)] = e(183));
|
|
2249
|
+
const v = typeof window !== e(139) && window[e(134)]?.playerVersion || n;
|
|
2250
|
+
return { cid: t[e(107)].cid, player_name: i, player_version: v, pricing: t.result.pricing, maUse: t[e(107)].options?.[e(147)] === "Y" ? "Y" : "N", browser: { lang: navigator[e(167)], ua: navigator[e(263)] }, screen: { width: window[e(155)][e(242)], height: window[e(155)].height }, connection: { network: r?.[e(116)] ?? e(113), downlink: r?.[e(293)] ?? null, rtt: r?.rtt ?? null, save_data: r?.[e(131)] ?? !1 }, device: { platform: p?.platform ?? "Unknown", mobile: p?.[e(182)] ?? !1, memory: navigator[e(138)] ?? null, processor: navigator.hardwareConcurrency ?? null }, video: { url: "" }, extra: { vpeKey: this[e(205)], playerType: e(204), playerVersion: v, os: (f.os.name || e(221)) + e(128) + (f.os[e(291)] || ""), osOrigin: f.os[e(237)] || e(221), osVersion: f.os[e(291)], vpePackageId: null, actionDuration: this[e(262)](), actionType: e(168), browser: o[e(247)], browserOrigin: o.origin, browserVersion: o[e(291)], quality: e(239), qualityOrigin: e(217), device: f[e(270)][e(118)] + " " + f[e(270)][e(119)], location: window[e(109)][e(171)], host: window[e(109)][e(209)], port: window[e(109)][e(129)], protocol: window.location[e(106)], title: "" } };
|
|
2225
2251
|
}
|
|
2226
|
-
[m(
|
|
2227
|
-
const e = m, i = t[e(
|
|
2228
|
-
return this.errorState = r, console
|
|
2252
|
+
[m(245)](t) {
|
|
2253
|
+
const e = m, i = t[e(281)](-2), n = this.translator[e(269)][i] || this[e(212)][e(269)]["01"], r = { errorCode: t, errorMessage: n };
|
|
2254
|
+
return this.errorState = r, console[e(269)](e(225), r), r;
|
|
2229
2255
|
}
|
|
2230
|
-
[m(
|
|
2231
|
-
|
|
2232
|
-
this[e(609)] = Ze(t);
|
|
2256
|
+
[m(277)](t) {
|
|
2257
|
+
this.translator = Ze(t);
|
|
2233
2258
|
}
|
|
2234
|
-
[m(
|
|
2235
|
-
return this
|
|
2259
|
+
[m(108)]() {
|
|
2260
|
+
return this.errorState;
|
|
2236
2261
|
}
|
|
2237
|
-
[m(
|
|
2262
|
+
[m(172)]() {
|
|
2238
2263
|
const t = m;
|
|
2239
|
-
return this[t(
|
|
2264
|
+
return this.serverConfig[t(107)]?.pricing === "pay";
|
|
2240
2265
|
}
|
|
2241
|
-
[m(
|
|
2242
|
-
|
|
2266
|
+
[m(193)]() {
|
|
2267
|
+
const t = m;
|
|
2268
|
+
return !!this[t(199)][t(107)];
|
|
2243
2269
|
}
|
|
2244
|
-
|
|
2245
|
-
const e = m, i =
|
|
2246
|
-
this[e(
|
|
2247
|
-
const
|
|
2248
|
-
return
|
|
2270
|
+
[m(144)](t) {
|
|
2271
|
+
const e = m, i = C0(this[e(199)].result?.[e(227)], this.serverConfig[e(107)]?.[e(123)]);
|
|
2272
|
+
this[e(199)].result?.pricing !== e(154) && (t = { ...t, ...i });
|
|
2273
|
+
const n = { ...i, ...t ?? {} };
|
|
2274
|
+
return n?.[e(289)] && (n?.[e(289)] == e(117) || this.updateTranslator(n[e(289)])), t?.[e(276)] && (n[e(276)] = { ...i[e(276)], ...t[e(276)] }), t?.[e(223)] && (n.watermarkConfig = { ...i[e(223)], ...t[e(223)] }), n.playlist && !Array[e(283)](n.playlist) && (n[e(280)] = [{ file: n[e(280)] }]), Dt = n.playlist || [], n;
|
|
2249
2275
|
}
|
|
2250
|
-
[m(
|
|
2251
|
-
return
|
|
2276
|
+
[m(188)]() {
|
|
2277
|
+
return Dt || [];
|
|
2252
2278
|
}
|
|
2253
2279
|
$t(t) {
|
|
2254
|
-
const e = m, i = t
|
|
2255
|
-
let
|
|
2280
|
+
const e = m, i = t.split(".");
|
|
2281
|
+
let n = this.translator;
|
|
2256
2282
|
for (const r of i)
|
|
2257
|
-
if (
|
|
2283
|
+
if (n && typeof n == "object" && r in n) n = n[r];
|
|
2258
2284
|
else return t;
|
|
2259
|
-
return typeof
|
|
2285
|
+
return typeof n === e(133) ? n : t;
|
|
2260
2286
|
}
|
|
2261
|
-
async [m(
|
|
2287
|
+
async [m(151)](t) {
|
|
2262
2288
|
const e = m, i = [];
|
|
2263
|
-
if (!t || t[e(
|
|
2264
|
-
const
|
|
2265
|
-
const v = e;
|
|
2289
|
+
if (!t || t[e(114)](".m3u8") === -1) return i;
|
|
2290
|
+
const n = (p, f) => {
|
|
2266
2291
|
try {
|
|
2267
|
-
return new URL(
|
|
2292
|
+
return new URL(f, p).toString();
|
|
2268
2293
|
} catch {
|
|
2269
|
-
return
|
|
2294
|
+
return f;
|
|
2270
2295
|
}
|
|
2271
2296
|
}, r = (p) => {
|
|
2272
|
-
const
|
|
2297
|
+
const f = e, v = p[f(294)](/RESOLUTION=(\d+)x(\d+)/);
|
|
2273
2298
|
if (v) return v[2] + "p";
|
|
2274
|
-
const
|
|
2275
|
-
return
|
|
2299
|
+
const I = p.match(/BANDWIDTH=(\d+)/);
|
|
2300
|
+
return I ? Math[f(194)](Number(I[1]) / 1e3) + f(248) : f(117);
|
|
2276
2301
|
}, o = (p) => {
|
|
2277
|
-
const
|
|
2278
|
-
for (let
|
|
2279
|
-
const T = v[
|
|
2280
|
-
if (T[
|
|
2281
|
-
const R = v[
|
|
2282
|
-
R && !R[
|
|
2302
|
+
const f = e, v = p[f(146)](/\r?\n/)[f(279)]((I) => I[f(257)]())[f(170)]((I) => I.length > 0);
|
|
2303
|
+
for (let I = 0; I < v[f(122)]; I += 1) {
|
|
2304
|
+
const T = v[I];
|
|
2305
|
+
if (T[f(184)](f(246))) {
|
|
2306
|
+
const R = v[I + 1];
|
|
2307
|
+
R && !R[f(184)]("#") && (i[f(179)]({ quality: r(T), url: n(t, R), levelIndex: i[f(122)] }), I += 1);
|
|
2283
2308
|
}
|
|
2284
2309
|
}
|
|
2285
2310
|
};
|
|
2286
2311
|
try {
|
|
2287
2312
|
const p = await fetch(t);
|
|
2288
2313
|
if (!p.ok) return i;
|
|
2289
|
-
const
|
|
2290
|
-
return
|
|
2314
|
+
const f = await p[e(261)]();
|
|
2315
|
+
return f && o(f), i;
|
|
2291
2316
|
} catch (p) {
|
|
2292
|
-
return console
|
|
2317
|
+
return console.error(e(206), p), i;
|
|
2293
2318
|
}
|
|
2294
2319
|
}
|
|
2295
|
-
async [m(
|
|
2320
|
+
async [m(258)](t) {
|
|
2296
2321
|
const e = m;
|
|
2297
|
-
if (!t?.[e(
|
|
2298
|
-
const i = new
|
|
2299
|
-
if (t
|
|
2300
|
-
if (t[e(
|
|
2301
|
-
await this[e(
|
|
2322
|
+
if (!t?.[e(192)] || !this.maManager || this[e(121)]?.[e(147)] !== "Y") return;
|
|
2323
|
+
const i = new _t[e(173)](window[e(274)].userAgent)[e(135)]();
|
|
2324
|
+
if (t[e(192)] == e(218) || t[e(192)] == e(236)) return;
|
|
2325
|
+
if (t[e(192)] == e(202)) {
|
|
2326
|
+
await this[e(226)](e(202), { extra: { playbackRate: t?.data?.playbackRate || t?.[e(214)]?.[e(275)]?.[e(157)] || 1 } }, t[e(192)]);
|
|
2302
2327
|
return;
|
|
2303
2328
|
}
|
|
2304
|
-
if (t[e(
|
|
2305
|
-
await this
|
|
2329
|
+
if (t[e(192)] == e(187)) {
|
|
2330
|
+
await this[e(226)](e(187), { extra: { isFullscreen: t?.data?.isFullscreen || !1 } }, t.type);
|
|
2306
2331
|
return;
|
|
2307
2332
|
}
|
|
2308
|
-
const
|
|
2309
|
-
t[e(
|
|
2310
|
-
const r = t?.
|
|
2311
|
-
this[e(
|
|
2312
|
-
const v = this
|
|
2313
|
-
v && (this
|
|
2314
|
-
const T = t?.video?.[e(
|
|
2333
|
+
const n = t.type;
|
|
2334
|
+
t[e(192)] == e(168) && (t[e(192)] = e(272)), (t[e(192)] === e(120) || t.type === e(198) || t.type === e(110) || t[e(192)] === e(252)) && (this[e(201)] = !1);
|
|
2335
|
+
const r = t?.[e(214)]?.url ?? "", o = /\.mp4(?:[?#]|$)/i[e(207)](r) && !r[e(150)](e(216)) && !r[e(150)](e(196)), p = !o && (t?.[e(214)]?.[e(192)] == e(132) || r[e(150)](e(141))), f = navigator.connection || navigator[e(177)] || navigator[e(164)] || null;
|
|
2336
|
+
this[e(162)] = t?.[e(192)] || null;
|
|
2337
|
+
const v = this[e(162)] === e(278) && !this[e(201)], I = v ? "startup" : this[e(162)];
|
|
2338
|
+
v && (this[e(201)] = !0);
|
|
2339
|
+
const T = t?.video?.[e(275)]?.[e(235)] || 0, R = t?.video?.data?.[e(149)] || 0, X = t?.[e(214)]?.videoWidth || 0, G = t?.[e(214)]?.[e(210)] || 0;
|
|
2315
2340
|
let V = 0, we = 0, ee = 0;
|
|
2316
|
-
if (
|
|
2317
|
-
const
|
|
2318
|
-
we =
|
|
2341
|
+
if (I == e(272) && (V = this.getElapsedMilliseconds(), this[e(127)] = V), I == e(228)) {
|
|
2342
|
+
const ct = this[e(262)]();
|
|
2343
|
+
we = ct - this[e(127)], ee = ct;
|
|
2319
2344
|
}
|
|
2320
|
-
const
|
|
2321
|
-
await this.report(
|
|
2345
|
+
const jt = { type: I, video: { type: p ? e(142) : "VOD", quality: t?.[e(214)]?.quality ? t?.video?.quality : "auto", url: t?.[e(214)]?.[e(264)] }, connection: f ? { network: f[e(116)], downlink: f[e(293)], rtt: f[e(260)], save_data: f[e(131)] } : void 0, extra: { actionType: I, url: t?.video?.url, type: p ? e(142) : "VOD", videoFormat: this[e(273)](t?.[e(214)]?.[e(264)]), ...t?.[e(214)]?.[e(169)] ? { poster: t[e(214)][e(169)] } : {}, video_type: p ? e(142) : "VOD", title: t?.meta?.[e(220)], contentId: t?.[e(214)]?.[e(240)] || t?.meta?.[e(240)] || null, metaData: t?.[e(156)], videoWidth: Math[e(194)](X), videoHeight: Math[e(194)](G), video_protocols: this.getVideoProtocol(t?.[e(214)]?.[e(264)]), duration: Math[e(219)](T), currentTime: Math.floor(R), playedTime: this[e(262)](), viewingTime: Math[e(194)](this.getElapsedMilliseconds() / 1e3), playerStartTime: V, videoStartTime: we, totalStartTime: ee, percent: Math.round(R / T * 100), quality: t?.[e(214)]?.quality ? t?.[e(214)]?.[e(232)] : e(117), errorCode: t?.data?.[e(189)] ?? t?.[e(148)]?.[e(189)], errorMessage: t?.[e(275)]?.[e(200)] ?? t?.[e(148)]?.[e(200)], actionDuration: this[e(262)]() / 1e3, device: i[e(270)][e(118)] + " " + i.device.model, location: window[e(109)][e(171)], host: window[e(109)][e(209)], port: window[e(109)][e(129)], protocol: window[e(109)][e(106)] }, browser: { lang: navigator[e(167)], ua: navigator[e(263)] }, screen: { width: window[e(155)][e(242)], height: window[e(155)].height } };
|
|
2346
|
+
await this.report(I, jt, n);
|
|
2322
2347
|
}
|
|
2323
|
-
async
|
|
2324
|
-
const
|
|
2325
|
-
if (!this
|
|
2326
|
-
const r = e && typeof e == "object" ? e : { extra: { actionDuration: this[
|
|
2327
|
-
await this[
|
|
2348
|
+
async report(t, e, i) {
|
|
2349
|
+
const n = m;
|
|
2350
|
+
if (!this[n(208)]) return;
|
|
2351
|
+
const r = e && typeof e == "object" ? e : { extra: { actionDuration: this[n(262)]() } };
|
|
2352
|
+
await this[n(208)].maSync(r), await this[n(208)].dispatchEvent({ type: t, data: r });
|
|
2328
2353
|
}
|
|
2329
|
-
[m(
|
|
2354
|
+
[m(273)](t) {
|
|
2330
2355
|
const e = m;
|
|
2331
|
-
return t
|
|
2356
|
+
return t[e(114)]("m3u8") > -1 ? e(266) : t[e(114)](e(124)) > -1 ? e(126) : "mp4";
|
|
2332
2357
|
}
|
|
2333
|
-
[m(
|
|
2358
|
+
[m(262)]() {
|
|
2334
2359
|
const t = m;
|
|
2335
|
-
return this[t(
|
|
2360
|
+
return this[t(197)] ? (/* @__PURE__ */ new Date())[t(145)]() - this.startTimeAt : 0;
|
|
2336
2361
|
}
|
|
2337
2362
|
}
|
|
2338
|
-
function Be() {
|
|
2339
|
-
var x = ["34709184LlXWBu", "9642016MWksSH", "2NXhmSY", "4853149datVQW", "2877099zICSHb", "256WNRyyf", "1100315RaueIu", "36935ufNlAb", "832020jvpEuw"];
|
|
2340
|
-
return Be = function() {
|
|
2341
|
-
return x;
|
|
2342
|
-
}, Be();
|
|
2343
|
-
}
|
|
2344
2363
|
(function(x, t) {
|
|
2345
|
-
for (var e =
|
|
2364
|
+
for (var e = N0, i = x(); ; )
|
|
2346
2365
|
try {
|
|
2347
|
-
var
|
|
2348
|
-
if (
|
|
2366
|
+
var n = -parseInt(e(247)) / 1 + -parseInt(e(253)) / 2 * (parseInt(e(251)) / 3) + parseInt(e(248)) / 4 * (-parseInt(e(258)) / 5) + -parseInt(e(252)) / 6 * (-parseInt(e(255)) / 7) + -parseInt(e(249)) / 8 * (-parseInt(e(250)) / 9) + -parseInt(e(256)) / 10 + parseInt(e(254)) / 11 * (parseInt(e(257)) / 12);
|
|
2367
|
+
if (n === t) break;
|
|
2349
2368
|
i.push(i.shift());
|
|
2350
2369
|
} catch {
|
|
2351
2370
|
i.push(i.shift());
|
|
2352
2371
|
}
|
|
2353
|
-
})(
|
|
2354
|
-
function
|
|
2355
|
-
x = x -
|
|
2356
|
-
var e =
|
|
2372
|
+
})(Ue, 360288);
|
|
2373
|
+
function N0(x, t) {
|
|
2374
|
+
x = x - 247;
|
|
2375
|
+
var e = Ue(), i = e[x];
|
|
2357
2376
|
return i;
|
|
2358
2377
|
}
|
|
2378
|
+
function Ue() {
|
|
2379
|
+
var x = ["62223aUDMfB", "39268gZyoxh", "16VHToId", "1342287gkiLsp", "1018503AlargQ", "123978HsEudH", "4HBXsZR", "3471061OKMwzq", "133mrUuFO", "648070eIiwXe", "36RhEUnB", "240HotBYx"];
|
|
2380
|
+
return Ue = function() {
|
|
2381
|
+
return x;
|
|
2382
|
+
}, Ue();
|
|
2383
|
+
}
|
|
2359
2384
|
export {
|
|
2360
|
-
|
|
2385
|
+
U0 as default,
|
|
2361
2386
|
Ze as getTranslator
|
|
2362
2387
|
};
|